mis-crystal-design-system 14.0.75 → 17.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (524) hide show
  1. package/action-list/action-list.component.d.ts +1 -1
  2. package/analytics/analytics.service.d.ts +1 -1
  3. package/async-search-dropdown/async-dropdown.component.d.ts +2 -2
  4. package/button/button.component.d.ts +1 -1
  5. package/button/button.directive.d.ts +1 -1
  6. package/checkbox/checkbox.component.d.ts +1 -1
  7. package/chip/chip.component.d.ts +1 -1
  8. package/datepicker_v2/models/dp-config.model.d.ts +1 -1
  9. package/datepicker_v2/tz-datepicker.directive.d.ts +1 -1
  10. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +1 -1
  11. package/daterangepicker_v2/models/drp-config.model.d.ts +1 -1
  12. package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +1 -1
  13. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +1 -1
  14. package/drawer/drawer-body/drawer-body.component.d.ts +1 -1
  15. package/dropdown/calculate-container-height.directive.d.ts +1 -1
  16. package/dropdown/dropdown.component.d.ts +1 -1
  17. package/dynamic-form/dynamic-form.component.d.ts +1 -1
  18. package/{esm2020 → esm2022}/action-list/action-list.component.mjs +103 -110
  19. package/{esm2020 → esm2022}/action-list/action-list.module.mjs +5 -5
  20. package/{esm2020 → esm2022}/analytics/analytics.module.mjs +5 -5
  21. package/{esm2020 → esm2022}/analytics/analytics.service.mjs +6 -6
  22. package/esm2022/async-search-dropdown/async-dropdown.component.mjs +518 -0
  23. package/{esm2020 → esm2022}/async-search-dropdown/async-dropdown.module.mjs +5 -5
  24. package/esm2022/button/button.component.mjs +88 -0
  25. package/{esm2020 → esm2022}/button/button.directive.mjs +7 -7
  26. package/{esm2020 → esm2022}/button/button.module.mjs +5 -5
  27. package/esm2022/checkbox/checkbox.component.mjs +124 -0
  28. package/{esm2020 → esm2022}/checkbox/checkbox.module.mjs +5 -5
  29. package/esm2022/chip/chip.component.mjs +82 -0
  30. package/{esm2020 → esm2022}/chip/chip.module.mjs +5 -5
  31. package/{esm2020 → esm2022}/datepicker_v2/datepicker.module.mjs +5 -5
  32. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +183 -0
  33. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +432 -0
  34. package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker.module.mjs +5 -5
  35. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +156 -0
  36. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +466 -0
  37. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +59 -0
  38. package/{esm2020 → esm2022}/drawer/drawer-ref.mjs +4 -4
  39. package/{esm2020 → esm2022}/drawer/drawer.module.mjs +5 -5
  40. package/{esm2020 → esm2022}/drawer/drawer.service.mjs +5 -5
  41. package/{esm2020 → esm2022}/dropdown/calculate-container-height.directive.mjs +5 -5
  42. package/esm2022/dropdown/dropdown.component.mjs +464 -0
  43. package/{esm2020 → esm2022}/dropdown/dropdown.module.mjs +5 -5
  44. package/esm2022/dynamic-form/dynamic-form.component.mjs +1088 -0
  45. package/{esm2020 → esm2022}/dynamic-form/dynamic-form.module.mjs +13 -13
  46. package/esm2022/fab/fab.component.mjs +145 -0
  47. package/{esm2020 → esm2022}/fab/fab.module.mjs +5 -5
  48. package/esm2022/filter/filter-panel/filter-panel.component.mjs +396 -0
  49. package/{esm2020 → esm2022}/filter/filters.module.mjs +17 -17
  50. package/{esm2020 → esm2022}/filter/has-value.pipe.mjs +4 -4
  51. package/{esm2020 → esm2022}/input/directives/input/input.directive.mjs +6 -6
  52. package/{fesm2020/mis-crystal-design-system-input.mjs → esm2022/input/mis-input.component.mjs} +49 -109
  53. package/{esm2020 → esm2022}/input/mis-input.module.mjs +5 -5
  54. package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +75 -0
  55. package/{esm2020 → esm2022}/input-stepper/input-stepper.module.mjs +5 -5
  56. package/esm2022/loader/loader.component.mjs +25 -0
  57. package/{esm2020 → esm2022}/loader/loader.module.mjs +5 -5
  58. package/esm2022/menu/menu-close.directive.mjs +25 -0
  59. package/{esm2020 → esm2022}/menu/menu.directive.mjs +7 -7
  60. package/{esm2020 → esm2022}/menu/menu.module.mjs +5 -5
  61. package/esm2022/mobile-filter/mobile-filter.component.mjs +180 -0
  62. package/{esm2020 → esm2022}/mobile-filter/mobile-filter.module.mjs +5 -5
  63. package/{esm2020 → esm2022}/modal/modal.module.mjs +5 -5
  64. package/{esm2020 → esm2022}/modal/modal.service.mjs +5 -5
  65. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +56 -0
  66. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +489 -0
  67. package/{esm2020 → esm2022}/multi-select-dropdown/multi-select-dropdown.module.mjs +5 -5
  68. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +516 -0
  69. package/{esm2020 → esm2022}/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +5 -5
  70. package/esm2022/phone-input/phone-input.component.mjs +72 -0
  71. package/{esm2020 → esm2022}/phone-input/phone-input.module.mjs +5 -5
  72. package/esm2022/radio-button/radio-button.component.mjs +57 -0
  73. package/{esm2020 → esm2022}/radio-button/radio-button.module.mjs +5 -5
  74. package/esm2022/ske-loader/ske-loader.component.mjs +54 -0
  75. package/{esm2020 → esm2022}/ske-loader/ske-loader.module.mjs +5 -5
  76. package/esm2022/slider/slider.component.mjs +46 -0
  77. package/{esm2020 → esm2022}/slider/slider.module.mjs +7 -7
  78. package/esm2022/snackbar/snackbar/snackbar.component.mjs +72 -0
  79. package/{esm2020 → esm2022}/snackbar/snackbar.module.mjs +5 -5
  80. package/{esm2020 → esm2022}/snackbar/snackbar.service.mjs +5 -5
  81. package/{esm2020 → esm2022}/specificdatepicker/specificdatepicker.module.mjs +5 -5
  82. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +632 -0
  83. package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +196 -0
  84. package/esm2022/star-rating/star-rating.component.mjs +113 -0
  85. package/{esm2020 → esm2022}/star-rating/star-rating.module.mjs +5 -5
  86. package/esm2022/switch/switch.component.mjs +56 -0
  87. package/{esm2020 → esm2022}/switch/switch.module.mjs +5 -5
  88. package/esm2022/table/custom-table-cell.directive.mjs +42 -0
  89. package/esm2022/table/filter/filter.component.mjs +177 -0
  90. package/esm2022/table/sub-table/sub-table.component.mjs +192 -0
  91. package/esm2022/table/table.component.mjs +485 -0
  92. package/{esm2020 → esm2022}/table/table.module.mjs +5 -5
  93. package/esm2022/timepicker/timepicker.component.mjs +347 -0
  94. package/{esm2020 → esm2022}/timepicker/timepicker.directive.mjs +11 -11
  95. package/{esm2020 → esm2022}/timepicker/timepicker.module.mjs +5 -5
  96. package/{esm2020 → esm2022}/timerangepicker/timerangepicker.component.mjs +23 -22
  97. package/{esm2020 → esm2022}/timerangepicker/timerangepicker.module.mjs +5 -5
  98. package/esm2022/toast/toast.component.mjs +51 -0
  99. package/{esm2020 → esm2022}/toast/toast.data.service.mjs +8 -8
  100. package/{esm2020 → esm2022}/toast/toast.module.mjs +5 -5
  101. package/{esm2020 → esm2022}/toast/toast.service.mjs +5 -5
  102. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +79 -0
  103. package/esm2022/tooltip/tooltip.directive.mjs +143 -0
  104. package/{esm2020 → esm2022}/tooltip/tooltip.module.mjs +5 -5
  105. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +188 -0
  106. package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.module.mjs +7 -7
  107. package/{esm2020 → esm2022}/widgets/services/widget.service.mjs +5 -5
  108. package/{esm2020 → esm2022}/widgets/widgets.module.mjs +5 -5
  109. package/fab/fab.component.d.ts +4 -4
  110. package/{fesm2020 → fesm2022}/mis-crystal-design-system-action-list.mjs +107 -114
  111. package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -0
  112. package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs +9 -9
  113. package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs.map +1 -1
  114. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +543 -0
  115. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -0
  116. package/fesm2022/mis-crystal-design-system-button.mjs +173 -0
  117. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -0
  118. package/fesm2022/mis-crystal-design-system-checkbox.mjs +150 -0
  119. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -0
  120. package/fesm2022/mis-crystal-design-system-chip.mjs +108 -0
  121. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -0
  122. package/{fesm2020 → fesm2022}/mis-crystal-design-system-datepicker_v2.mjs +133 -140
  123. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -0
  124. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +690 -0
  125. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -0
  126. package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs +34 -33
  127. package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs.map +1 -1
  128. package/{fesm2020 → fesm2022}/mis-crystal-design-system-dropdown.mjs +177 -185
  129. package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -0
  130. package/{fesm2020 → fesm2022}/mis-crystal-design-system-dynamic-form.mjs +442 -457
  131. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -0
  132. package/{fesm2020 → fesm2022}/mis-crystal-design-system-fab.mjs +49 -48
  133. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -0
  134. package/{fesm2020 → fesm2022}/mis-crystal-design-system-filter.mjs +113 -120
  135. package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -0
  136. package/fesm2022/mis-crystal-design-system-input-stepper.mjs +104 -0
  137. package/fesm2022/mis-crystal-design-system-input-stepper.mjs.map +1 -0
  138. package/fesm2022/mis-crystal-design-system-input.mjs +146 -0
  139. package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -0
  140. package/fesm2022/mis-crystal-design-system-loader.mjs +51 -0
  141. package/{fesm2020 → fesm2022}/mis-crystal-design-system-loader.mjs.map +1 -1
  142. package/{fesm2020 → fesm2022}/mis-crystal-design-system-menu.mjs +17 -17
  143. package/fesm2022/mis-crystal-design-system-menu.mjs.map +1 -0
  144. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +205 -0
  145. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -0
  146. package/{fesm2020 → fesm2022}/mis-crystal-design-system-modal.mjs +34 -33
  147. package/{fesm2015 → fesm2022}/mis-crystal-design-system-modal.mjs.map +1 -1
  148. package/{fesm2020 → fesm2022}/mis-crystal-design-system-multi-select-dropdown.mjs +108 -110
  149. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -0
  150. package/{fesm2020 → fesm2022}/mis-crystal-design-system-nested-multi-select-dropdown.mjs +129 -130
  151. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -0
  152. package/{fesm2020 → fesm2022}/mis-crystal-design-system-phone-input.mjs +22 -21
  153. package/fesm2022/mis-crystal-design-system-phone-input.mjs.map +1 -0
  154. package/fesm2022/mis-crystal-design-system-radio-button.mjs +83 -0
  155. package/{fesm2020 → fesm2022}/mis-crystal-design-system-radio-button.mjs.map +1 -1
  156. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +77 -0
  157. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -0
  158. package/fesm2022/mis-crystal-design-system-slider.mjs +80 -0
  159. package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -0
  160. package/{fesm2020 → fesm2022}/mis-crystal-design-system-snackbar.mjs +33 -33
  161. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -0
  162. package/{fesm2020 → fesm2022}/mis-crystal-design-system-specificdatepicker.mjs +205 -205
  163. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -0
  164. package/{fesm2020 → fesm2022}/mis-crystal-design-system-star-rating.mjs +30 -29
  165. package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -0
  166. package/fesm2022/mis-crystal-design-system-switch.mjs +82 -0
  167. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -0
  168. package/fesm2022/mis-crystal-design-system-table.mjs +912 -0
  169. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -0
  170. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timepicker.mjs +79 -75
  171. package/fesm2022/mis-crystal-design-system-timepicker.mjs.map +1 -0
  172. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timerangepicker.mjs +27 -26
  173. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs.map +1 -0
  174. package/{fesm2020 → fesm2022}/mis-crystal-design-system-toast.mjs +35 -34
  175. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -0
  176. package/{fesm2020 → fesm2022}/mis-crystal-design-system-tooltip.mjs +48 -48
  177. package/fesm2022/mis-crystal-design-system-tooltip.mjs.map +1 -0
  178. package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs.map +1 -1
  179. package/{fesm2020 → fesm2022}/mis-crystal-design-system-virtual-scroll.mjs +51 -53
  180. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -0
  181. package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs +4 -4
  182. package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs.map +1 -1
  183. package/filter/filter-panel/filter-panel.component.d.ts +1 -1
  184. package/input/directives/input/input.directive.d.ts +1 -1
  185. package/input/mis-input.component.d.ts +1 -1
  186. package/input-stepper/input-stepper/input-stepper.component.d.ts +1 -1
  187. package/loader/loader.component.d.ts +1 -1
  188. package/menu/menu-close.directive.d.ts +1 -1
  189. package/menu/menu.directive.d.ts +1 -1
  190. package/mobile-filter/mobile-filter.component.d.ts +1 -1
  191. package/modal/module-wrapper/module-wrapper.component.d.ts +1 -1
  192. package/multi-select-dropdown/multi-select-dropdown.component.d.ts +1 -1
  193. package/nested-multi-select-dropdown/nested-multi-select-dropdown.component.d.ts +1 -1
  194. package/package.json +128 -210
  195. package/phone-input/phone-input.component.d.ts +1 -1
  196. package/radio-button/radio-button.component.d.ts +1 -1
  197. package/ske-loader/ske-loader.component.d.ts +1 -1
  198. package/slider/slider.component.d.ts +1 -1
  199. package/snackbar/snackbar/snackbar.component.d.ts +1 -1
  200. package/specificdatepicker/models/sdp-config.model.d.ts +1 -1
  201. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +1 -1
  202. package/specificdatepicker/tz-specificdatepicker.directive.d.ts +1 -1
  203. package/star-rating/star-rating.component.d.ts +1 -1
  204. package/styles/mis-old-icon-styles.scss +498 -0
  205. package/switch/switch.component.d.ts +1 -1
  206. package/table/custom-table-cell.directive.d.ts +1 -1
  207. package/table/filter/filter.component.d.ts +1 -1
  208. package/table/sub-table/sub-table.component.d.ts +1 -1
  209. package/table/table.component.d.ts +1 -1
  210. package/timepicker/timepicker.component.d.ts +1 -1
  211. package/timepicker/timepicker.directive.d.ts +1 -1
  212. package/timerangepicker/timerange.namespace.d.ts +1 -1
  213. package/timerangepicker/timerangepicker.component.d.ts +1 -1
  214. package/toast/toast.component.d.ts +1 -1
  215. package/toast/toast.service.d.ts +1 -1
  216. package/tooltip/models/tooltip.model.d.ts +1 -1
  217. package/tooltip/tooltip-container/tooltip.component.d.ts +1 -1
  218. package/tooltip/tooltip.directive.d.ts +1 -1
  219. package/virtual-scroll/virtual-scroll.component.d.ts +1 -1
  220. package/widgets/interfaces/widgets.model.d.ts +1 -1
  221. package/esm2020/async-search-dropdown/async-dropdown.component.mjs +0 -524
  222. package/esm2020/button/button.component.mjs +0 -87
  223. package/esm2020/checkbox/checkbox.component.mjs +0 -124
  224. package/esm2020/chip/chip.component.mjs +0 -82
  225. package/esm2020/datepicker_v2/tz-datepicker.directive.mjs +0 -183
  226. package/esm2020/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +0 -439
  227. package/esm2020/daterangepicker_v2/tz-daterangepicker.directive.mjs +0 -156
  228. package/esm2020/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +0 -465
  229. package/esm2020/drawer/drawer-body/drawer-body.component.mjs +0 -58
  230. package/esm2020/dropdown/dropdown.component.mjs +0 -472
  231. package/esm2020/dynamic-form/dynamic-form.component.mjs +0 -1103
  232. package/esm2020/fab/fab.component.mjs +0 -144
  233. package/esm2020/filter/filter-panel/filter-panel.component.mjs +0 -403
  234. package/esm2020/input/mis-input.component.mjs +0 -84
  235. package/esm2020/input-stepper/input-stepper/input-stepper.component.mjs +0 -74
  236. package/esm2020/loader/loader.component.mjs +0 -24
  237. package/esm2020/menu/menu-close.directive.mjs +0 -25
  238. package/esm2020/mobile-filter/mobile-filter.component.mjs +0 -181
  239. package/esm2020/modal/module-wrapper/module-wrapper.component.mjs +0 -55
  240. package/esm2020/multi-select-dropdown/multi-select-dropdown.component.mjs +0 -491
  241. package/esm2020/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +0 -517
  242. package/esm2020/phone-input/phone-input.component.mjs +0 -71
  243. package/esm2020/radio-button/radio-button.component.mjs +0 -56
  244. package/esm2020/ske-loader/ske-loader.component.mjs +0 -53
  245. package/esm2020/slider/slider.component.mjs +0 -45
  246. package/esm2020/snackbar/snackbar/snackbar.component.mjs +0 -72
  247. package/esm2020/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +0 -632
  248. package/esm2020/specificdatepicker/tz-specificdatepicker.directive.mjs +0 -196
  249. package/esm2020/star-rating/star-rating.component.mjs +0 -112
  250. package/esm2020/switch/switch.component.mjs +0 -55
  251. package/esm2020/table/custom-table-cell.directive.mjs +0 -42
  252. package/esm2020/table/filter/filter.component.mjs +0 -176
  253. package/esm2020/table/sub-table/sub-table.component.mjs +0 -193
  254. package/esm2020/table/table.component.mjs +0 -492
  255. package/esm2020/timepicker/timepicker.component.mjs +0 -343
  256. package/esm2020/toast/toast.component.mjs +0 -50
  257. package/esm2020/tooltip/tooltip-container/tooltip.component.mjs +0 -79
  258. package/esm2020/tooltip/tooltip.directive.mjs +0 -143
  259. package/esm2020/virtual-scroll/virtual-scroll.component.mjs +0 -190
  260. package/fesm2015/mis-crystal-design-system-action-list.mjs +0 -446
  261. package/fesm2015/mis-crystal-design-system-action-list.mjs.map +0 -1
  262. package/fesm2015/mis-crystal-design-system-analytics.mjs +0 -87
  263. package/fesm2015/mis-crystal-design-system-analytics.mjs.map +0 -1
  264. package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs +0 -617
  265. package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
  266. package/fesm2015/mis-crystal-design-system-button.mjs +0 -189
  267. package/fesm2015/mis-crystal-design-system-button.mjs.map +0 -1
  268. package/fesm2015/mis-crystal-design-system-checkbox.mjs +0 -166
  269. package/fesm2015/mis-crystal-design-system-checkbox.mjs.map +0 -1
  270. package/fesm2015/mis-crystal-design-system-chip.mjs +0 -123
  271. package/fesm2015/mis-crystal-design-system-chip.mjs.map +0 -1
  272. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs +0 -741
  273. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
  274. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs +0 -729
  275. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
  276. package/fesm2015/mis-crystal-design-system-drawer.mjs +0 -185
  277. package/fesm2015/mis-crystal-design-system-drawer.mjs.map +0 -1
  278. package/fesm2015/mis-crystal-design-system-dropdown.mjs +0 -616
  279. package/fesm2015/mis-crystal-design-system-dropdown.mjs.map +0 -1
  280. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +0 -1331
  281. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
  282. package/fesm2015/mis-crystal-design-system-fab.mjs +0 -186
  283. package/fesm2015/mis-crystal-design-system-fab.mjs.map +0 -1
  284. package/fesm2015/mis-crystal-design-system-filter.mjs +0 -560
  285. package/fesm2015/mis-crystal-design-system-filter.mjs.map +0 -1
  286. package/fesm2015/mis-crystal-design-system-input-stepper.mjs +0 -110
  287. package/fesm2015/mis-crystal-design-system-input-stepper.mjs.map +0 -1
  288. package/fesm2015/mis-crystal-design-system-input.mjs +0 -165
  289. package/fesm2015/mis-crystal-design-system-input.mjs.map +0 -1
  290. package/fesm2015/mis-crystal-design-system-loader.mjs +0 -57
  291. package/fesm2015/mis-crystal-design-system-loader.mjs.map +0 -1
  292. package/fesm2015/mis-crystal-design-system-menu.mjs +0 -135
  293. package/fesm2015/mis-crystal-design-system-menu.mjs.map +0 -1
  294. package/fesm2015/mis-crystal-design-system-mobile-filter.mjs +0 -227
  295. package/fesm2015/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
  296. package/fesm2015/mis-crystal-design-system-modal.mjs +0 -184
  297. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs +0 -550
  298. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
  299. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -559
  300. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
  301. package/fesm2015/mis-crystal-design-system-phone-input.mjs +0 -107
  302. package/fesm2015/mis-crystal-design-system-phone-input.mjs.map +0 -1
  303. package/fesm2015/mis-crystal-design-system-radio-button.mjs +0 -89
  304. package/fesm2015/mis-crystal-design-system-radio-button.mjs.map +0 -1
  305. package/fesm2015/mis-crystal-design-system-ske-loader.mjs +0 -86
  306. package/fesm2015/mis-crystal-design-system-ske-loader.mjs.map +0 -1
  307. package/fesm2015/mis-crystal-design-system-slider.mjs +0 -88
  308. package/fesm2015/mis-crystal-design-system-slider.mjs.map +0 -1
  309. package/fesm2015/mis-crystal-design-system-snackbar.mjs +0 -175
  310. package/fesm2015/mis-crystal-design-system-snackbar.mjs.map +0 -1
  311. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs +0 -956
  312. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
  313. package/fesm2015/mis-crystal-design-system-star-rating.mjs +0 -145
  314. package/fesm2015/mis-crystal-design-system-star-rating.mjs.map +0 -1
  315. package/fesm2015/mis-crystal-design-system-switch.mjs +0 -88
  316. package/fesm2015/mis-crystal-design-system-switch.mjs.map +0 -1
  317. package/fesm2015/mis-crystal-design-system-table.mjs +0 -1045
  318. package/fesm2015/mis-crystal-design-system-table.mjs.map +0 -1
  319. package/fesm2015/mis-crystal-design-system-timepicker.mjs +0 -452
  320. package/fesm2015/mis-crystal-design-system-timepicker.mjs.map +0 -1
  321. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs +0 -270
  322. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs.map +0 -1
  323. package/fesm2015/mis-crystal-design-system-toast.mjs +0 -214
  324. package/fesm2015/mis-crystal-design-system-toast.mjs.map +0 -1
  325. package/fesm2015/mis-crystal-design-system-tooltip.mjs +0 -272
  326. package/fesm2015/mis-crystal-design-system-tooltip.mjs.map +0 -1
  327. package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs +0 -259
  328. package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
  329. package/fesm2015/mis-crystal-design-system-widgets.mjs +0 -131
  330. package/fesm2015/mis-crystal-design-system-widgets.mjs.map +0 -1
  331. package/fesm2020/mis-crystal-design-system-action-list.mjs.map +0 -1
  332. package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs +0 -549
  333. package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
  334. package/fesm2020/mis-crystal-design-system-button.mjs +0 -172
  335. package/fesm2020/mis-crystal-design-system-button.mjs.map +0 -1
  336. package/fesm2020/mis-crystal-design-system-checkbox.mjs +0 -150
  337. package/fesm2020/mis-crystal-design-system-checkbox.mjs.map +0 -1
  338. package/fesm2020/mis-crystal-design-system-chip.mjs +0 -108
  339. package/fesm2020/mis-crystal-design-system-chip.mjs.map +0 -1
  340. package/fesm2020/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
  341. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs +0 -689
  342. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
  343. package/fesm2020/mis-crystal-design-system-dropdown.mjs.map +0 -1
  344. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
  345. package/fesm2020/mis-crystal-design-system-fab.mjs.map +0 -1
  346. package/fesm2020/mis-crystal-design-system-filter.mjs.map +0 -1
  347. package/fesm2020/mis-crystal-design-system-input-stepper.mjs +0 -103
  348. package/fesm2020/mis-crystal-design-system-input-stepper.mjs.map +0 -1
  349. package/fesm2020/mis-crystal-design-system-input.mjs.map +0 -1
  350. package/fesm2020/mis-crystal-design-system-loader.mjs +0 -50
  351. package/fesm2020/mis-crystal-design-system-menu.mjs.map +0 -1
  352. package/fesm2020/mis-crystal-design-system-mobile-filter.mjs +0 -206
  353. package/fesm2020/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
  354. package/fesm2020/mis-crystal-design-system-modal.mjs.map +0 -1
  355. package/fesm2020/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
  356. package/fesm2020/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
  357. package/fesm2020/mis-crystal-design-system-phone-input.mjs.map +0 -1
  358. package/fesm2020/mis-crystal-design-system-radio-button.mjs +0 -82
  359. package/fesm2020/mis-crystal-design-system-ske-loader.mjs +0 -76
  360. package/fesm2020/mis-crystal-design-system-ske-loader.mjs.map +0 -1
  361. package/fesm2020/mis-crystal-design-system-slider.mjs +0 -79
  362. package/fesm2020/mis-crystal-design-system-slider.mjs.map +0 -1
  363. package/fesm2020/mis-crystal-design-system-snackbar.mjs.map +0 -1
  364. package/fesm2020/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
  365. package/fesm2020/mis-crystal-design-system-star-rating.mjs.map +0 -1
  366. package/fesm2020/mis-crystal-design-system-styles.mjs +0 -4
  367. package/fesm2020/mis-crystal-design-system-styles.mjs.map +0 -1
  368. package/fesm2020/mis-crystal-design-system-switch.mjs +0 -81
  369. package/fesm2020/mis-crystal-design-system-switch.mjs.map +0 -1
  370. package/fesm2020/mis-crystal-design-system-table.mjs +0 -919
  371. package/fesm2020/mis-crystal-design-system-table.mjs.map +0 -1
  372. package/fesm2020/mis-crystal-design-system-timepicker.mjs.map +0 -1
  373. package/fesm2020/mis-crystal-design-system-timerangepicker.mjs.map +0 -1
  374. package/fesm2020/mis-crystal-design-system-toast.mjs.map +0 -1
  375. package/fesm2020/mis-crystal-design-system-tooltip.mjs.map +0 -1
  376. package/fesm2020/mis-crystal-design-system-utils.mjs +0 -24
  377. package/fesm2020/mis-crystal-design-system-utils.mjs.map +0 -1
  378. package/fesm2020/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
  379. package/fesm2020/mis-crystal-design-system.mjs +0 -24
  380. package/fesm2020/mis-crystal-design-system.mjs.map +0 -1
  381. /package/{esm2020 → esm2022}/action-list/index.mjs +0 -0
  382. /package/{esm2020 → esm2022}/action-list/mis-crystal-design-system-action-list.mjs +0 -0
  383. /package/{esm2020 → esm2022}/action-list/public_api.mjs +0 -0
  384. /package/{esm2020 → esm2022}/analytics/index.mjs +0 -0
  385. /package/{esm2020 → esm2022}/analytics/mis-crystal-design-system-analytics.mjs +0 -0
  386. /package/{esm2020 → esm2022}/analytics/public_api.mjs +0 -0
  387. /package/{esm2020 → esm2022}/async-search-dropdown/index.mjs +0 -0
  388. /package/{esm2020 → esm2022}/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.mjs +0 -0
  389. /package/{esm2020 → esm2022}/async-search-dropdown/public_api.mjs +0 -0
  390. /package/{esm2020 → esm2022}/button/index.mjs +0 -0
  391. /package/{esm2020 → esm2022}/button/mis-crystal-design-system-button.mjs +0 -0
  392. /package/{esm2020 → esm2022}/button/public_api.mjs +0 -0
  393. /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
  394. /package/{esm2020 → esm2022}/checkbox/mis-crystal-design-system-checkbox.mjs +0 -0
  395. /package/{esm2020 → esm2022}/checkbox/public_api.mjs +0 -0
  396. /package/{esm2020 → esm2022}/chip/index.mjs +0 -0
  397. /package/{esm2020 → esm2022}/chip/mis-crystal-design-system-chip.mjs +0 -0
  398. /package/{esm2020 → esm2022}/chip/public_api.mjs +0 -0
  399. /package/{esm2020 → esm2022}/datepicker_v2/datepicker-constants.mjs +0 -0
  400. /package/{esm2020 → esm2022}/datepicker_v2/index.mjs +0 -0
  401. /package/{esm2020 → esm2022}/datepicker_v2/mis-crystal-design-system-datepicker_v2.mjs +0 -0
  402. /package/{esm2020 → esm2022}/datepicker_v2/models/dp-config.model.mjs +0 -0
  403. /package/{esm2020 → esm2022}/datepicker_v2/public_api.mjs +0 -0
  404. /package/{esm2020 → esm2022}/datepicker_v2/utils/index.mjs +0 -0
  405. /package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker-constants.mjs +0 -0
  406. /package/{esm2020 → esm2022}/daterangepicker_v2/index.mjs +0 -0
  407. /package/{esm2020 → esm2022}/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.mjs +0 -0
  408. /package/{esm2020 → esm2022}/daterangepicker_v2/models/drp-config.model.mjs +0 -0
  409. /package/{esm2020 → esm2022}/daterangepicker_v2/public_api.mjs +0 -0
  410. /package/{esm2020 → esm2022}/daterangepicker_v2/utils/index.mjs +0 -0
  411. /package/{esm2020 → esm2022}/drawer/drawer-constants.mjs +0 -0
  412. /package/{esm2020 → esm2022}/drawer/index.mjs +0 -0
  413. /package/{esm2020 → esm2022}/drawer/mis-crystal-design-system-drawer.mjs +0 -0
  414. /package/{esm2020 → esm2022}/drawer/public_api.mjs +0 -0
  415. /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
  416. /package/{esm2020 → esm2022}/dropdown/mis-crystal-design-system-dropdown.mjs +0 -0
  417. /package/{esm2020 → esm2022}/dropdown/public_api.mjs +0 -0
  418. /package/{esm2020 → esm2022}/dynamic-form/dynamic-form.namespace.mjs +0 -0
  419. /package/{esm2020 → esm2022}/dynamic-form/index.mjs +0 -0
  420. /package/{esm2020 → esm2022}/dynamic-form/mis-crystal-design-system-dynamic-form.mjs +0 -0
  421. /package/{esm2020 → esm2022}/dynamic-form/public_api.mjs +0 -0
  422. /package/{esm2020 → esm2022}/fab/index.mjs +0 -0
  423. /package/{esm2020 → esm2022}/fab/mis-crystal-design-system-fab.mjs +0 -0
  424. /package/{esm2020 → esm2022}/fab/public_api.mjs +0 -0
  425. /package/{esm2020 → esm2022}/filter/animations/slideFromRight.mjs +0 -0
  426. /package/{esm2020 → esm2022}/filter/index.mjs +0 -0
  427. /package/{esm2020 → esm2022}/filter/mis-crystal-design-system-filter.mjs +0 -0
  428. /package/{esm2020 → esm2022}/filter/public_api.mjs +0 -0
  429. /package/{esm2020 → esm2022}/index.mjs +0 -0
  430. /package/{esm2020 → esm2022}/input/index.mjs +0 -0
  431. /package/{esm2020 → esm2022}/input/mis-crystal-design-system-input.mjs +0 -0
  432. /package/{esm2020 → esm2022}/input/public_api.mjs +0 -0
  433. /package/{esm2020 → esm2022}/input-stepper/index.mjs +0 -0
  434. /package/{esm2020 → esm2022}/input-stepper/mis-crystal-design-system-input-stepper.mjs +0 -0
  435. /package/{esm2020 → esm2022}/input-stepper/public_api.mjs +0 -0
  436. /package/{esm2020 → esm2022}/loader/index.mjs +0 -0
  437. /package/{esm2020 → esm2022}/loader/mis-crystal-design-system-loader.mjs +0 -0
  438. /package/{esm2020 → esm2022}/loader/public_api.mjs +0 -0
  439. /package/{esm2020 → esm2022}/menu/index.mjs +0 -0
  440. /package/{esm2020 → esm2022}/menu/mis-crystal-design-system-menu.mjs +0 -0
  441. /package/{esm2020 → esm2022}/menu/public_api.mjs +0 -0
  442. /package/{esm2020 → esm2022}/mis-crystal-design-system.mjs +0 -0
  443. /package/{esm2020 → esm2022}/mobile-filter/index.mjs +0 -0
  444. /package/{esm2020 → esm2022}/mobile-filter/mis-crystal-design-system-mobile-filter.mjs +0 -0
  445. /package/{esm2020 → esm2022}/mobile-filter/public_api.mjs +0 -0
  446. /package/{esm2020 → esm2022}/modal/index.mjs +0 -0
  447. /package/{esm2020 → esm2022}/modal/mis-crystal-design-system-modal.mjs +0 -0
  448. /package/{esm2020 → esm2022}/modal/modal-constants.mjs +0 -0
  449. /package/{esm2020 → esm2022}/modal/modal-ref.mjs +0 -0
  450. /package/{esm2020 → esm2022}/modal/public_api.mjs +0 -0
  451. /package/{esm2020 → esm2022}/multi-select-dropdown/index.mjs +0 -0
  452. /package/{esm2020 → esm2022}/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.mjs +0 -0
  453. /package/{esm2020 → esm2022}/multi-select-dropdown/public_api.mjs +0 -0
  454. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/index.mjs +0 -0
  455. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -0
  456. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/public_api.mjs +0 -0
  457. /package/{esm2020 → esm2022}/phone-input/index.mjs +0 -0
  458. /package/{esm2020 → esm2022}/phone-input/mis-crystal-design-system-phone-input.mjs +0 -0
  459. /package/{esm2020 → esm2022}/phone-input/public_api.mjs +0 -0
  460. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  461. /package/{esm2020 → esm2022}/radio-button/index.mjs +0 -0
  462. /package/{esm2020 → esm2022}/radio-button/mis-crystal-design-system-radio-button.mjs +0 -0
  463. /package/{esm2020 → esm2022}/radio-button/public_api.mjs +0 -0
  464. /package/{esm2020 → esm2022}/ske-loader/index.mjs +0 -0
  465. /package/{esm2020 → esm2022}/ske-loader/mis-crystal-design-system-ske-loader.mjs +0 -0
  466. /package/{esm2020 → esm2022}/ske-loader/public_api.mjs +0 -0
  467. /package/{esm2020 → esm2022}/slider/index.mjs +0 -0
  468. /package/{esm2020 → esm2022}/slider/mis-crystal-design-system-slider.mjs +0 -0
  469. /package/{esm2020 → esm2022}/slider/public_api.mjs +0 -0
  470. /package/{esm2020 → esm2022}/snackbar/index.mjs +0 -0
  471. /package/{esm2020 → esm2022}/snackbar/mis-crystal-design-system-snackbar.mjs +0 -0
  472. /package/{esm2020 → esm2022}/snackbar/public_api.mjs +0 -0
  473. /package/{esm2020 → esm2022}/specificdatepicker/daterangepicker-constants.mjs +0 -0
  474. /package/{esm2020 → esm2022}/specificdatepicker/index.mjs +0 -0
  475. /package/{esm2020 → esm2022}/specificdatepicker/mis-crystal-design-system-specificdatepicker.mjs +0 -0
  476. /package/{esm2020 → esm2022}/specificdatepicker/models/sdp-config.model.mjs +0 -0
  477. /package/{esm2020 → esm2022}/specificdatepicker/public_api.mjs +0 -0
  478. /package/{esm2020 → esm2022}/specificdatepicker/utils/index.mjs +0 -0
  479. /package/{esm2020 → esm2022}/star-rating/index.mjs +0 -0
  480. /package/{esm2020 → esm2022}/star-rating/mis-crystal-design-system-star-rating.mjs +0 -0
  481. /package/{esm2020 → esm2022}/star-rating/public_api.mjs +0 -0
  482. /package/{esm2020 → esm2022}/styles/index.mjs +0 -0
  483. /package/{esm2020 → esm2022}/styles/mis-crystal-design-system-styles.mjs +0 -0
  484. /package/{esm2020 → esm2022}/styles/public_api.mjs +0 -0
  485. /package/{esm2020 → esm2022}/switch/index.mjs +0 -0
  486. /package/{esm2020 → esm2022}/switch/mis-crystal-design-system-switch.mjs +0 -0
  487. /package/{esm2020 → esm2022}/switch/public_api.mjs +0 -0
  488. /package/{esm2020 → esm2022}/table/index.mjs +0 -0
  489. /package/{esm2020 → esm2022}/table/mis-crystal-design-system-table.mjs +0 -0
  490. /package/{esm2020 → esm2022}/table/public_api.mjs +0 -0
  491. /package/{esm2020 → esm2022}/timepicker/index.mjs +0 -0
  492. /package/{esm2020 → esm2022}/timepicker/mis-crystal-design-system-timepicker.mjs +0 -0
  493. /package/{esm2020 → esm2022}/timepicker/public_api.mjs +0 -0
  494. /package/{esm2020 → esm2022}/timepicker/time.namespace.mjs +0 -0
  495. /package/{esm2020 → esm2022}/timerangepicker/index.mjs +0 -0
  496. /package/{esm2020 → esm2022}/timerangepicker/mis-crystal-design-system-timerangepicker.mjs +0 -0
  497. /package/{esm2020 → esm2022}/timerangepicker/public_api.mjs +0 -0
  498. /package/{esm2020 → esm2022}/timerangepicker/timerange.namespace.mjs +0 -0
  499. /package/{esm2020 → esm2022}/toast/index.mjs +0 -0
  500. /package/{esm2020 → esm2022}/toast/mis-crystal-design-system-toast.mjs +0 -0
  501. /package/{esm2020 → esm2022}/toast/public_api.mjs +0 -0
  502. /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
  503. /package/{esm2020 → esm2022}/tooltip/mis-crystal-design-system-tooltip.mjs +0 -0
  504. /package/{esm2020 → esm2022}/tooltip/models/tooltip.model.mjs +0 -0
  505. /package/{esm2020 → esm2022}/tooltip/public_api.mjs +0 -0
  506. /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
  507. /package/{esm2020 → esm2022}/utils/mis-crystal-design-system-utils.mjs +0 -0
  508. /package/{esm2020 → esm2022}/virtual-scroll/index.mjs +0 -0
  509. /package/{esm2020 → esm2022}/virtual-scroll/mis-crystal-design-system-virtual-scroll.mjs +0 -0
  510. /package/{esm2020 → esm2022}/virtual-scroll/public_api.mjs +0 -0
  511. /package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.constants.mjs +0 -0
  512. /package/{esm2020 → esm2022}/widgets/classes/async-widget.mjs +0 -0
  513. /package/{esm2020 → esm2022}/widgets/classes/base-widget.mjs +0 -0
  514. /package/{esm2020 → esm2022}/widgets/classes/sync-widget.mjs +0 -0
  515. /package/{esm2020 → esm2022}/widgets/classes/widget-group.mjs +0 -0
  516. /package/{esm2020 → esm2022}/widgets/index.mjs +0 -0
  517. /package/{esm2020 → esm2022}/widgets/interfaces/widgets.model.mjs +0 -0
  518. /package/{esm2020 → esm2022}/widgets/mis-crystal-design-system-widgets.mjs +0 -0
  519. /package/{esm2020 → esm2022}/widgets/public_api.mjs +0 -0
  520. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs +0 -0
  521. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs.map +0 -0
  522. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs +0 -0
  523. /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs +0 -0
  524. /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs.map +0 -0
@@ -1,465 +0,0 @@
1
- import { Component, HostListener, Inject } from "@angular/core";
2
- import { CONTAINER_DATA, DATE_FORMAT } from "../daterangepicker-constants";
3
- import { parseZone, tz } from "moment-timezone";
4
- import { getMonth } from "../utils";
5
- import moment from "moment-timezone";
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "mis-crystal-design-system/toast";
8
- import * as i2 from "@angular/common";
9
- import * as i3 from "mis-crystal-design-system/button";
10
- import * as i4 from "@angular/cdk/a11y";
11
- const _c0 = function (a0) { return { "active-range": a0 }; };
12
- function TzDrpContainerComponent_div_3_div_1_Template(rf, ctx) { if (rf & 1) {
13
- const _r8 = i0.ɵɵgetCurrentView();
14
- i0.ɵɵelementStart(0, "div")(1, "button", 23);
15
- i0.ɵɵlistener("click", function TzDrpContainerComponent_div_3_div_1_Template_button_click_1_listener() { const restoredCtx = i0.ɵɵrestoreView(_r8); const item_r6 = restoredCtx.$implicit; const ctx_r7 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r7.selectRange(item_r6)); });
16
- i0.ɵɵtext(2);
17
- i0.ɵɵelementEnd()();
18
- } if (rf & 2) {
19
- const item_r6 = ctx.$implicit;
20
- const ctx_r5 = i0.ɵɵnextContext(2);
21
- i0.ɵɵadvance(1);
22
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c0, ctx_r5.selectedItemLabel === item_r6.label));
23
- i0.ɵɵadvance(1);
24
- i0.ɵɵtextInterpolate1(" ", item_r6.label, " ");
25
- } }
26
- const _c1 = function () { return []; };
27
- function TzDrpContainerComponent_div_3_Template(rf, ctx) { if (rf & 1) {
28
- i0.ɵɵelementStart(0, "div", 20);
29
- i0.ɵɵtemplate(1, TzDrpContainerComponent_div_3_div_1_Template, 3, 4, "div", 21);
30
- i0.ɵɵelementStart(2, "div")(3, "button", 22);
31
- i0.ɵɵtext(4, "Custom Range");
32
- i0.ɵɵelementEnd()()();
33
- } if (rf & 2) {
34
- const ctx_r0 = i0.ɵɵnextContext();
35
- let tmp_0_0;
36
- i0.ɵɵadvance(1);
37
- i0.ɵɵproperty("ngForOf", (tmp_0_0 = ctx_r0.data == null ? null : ctx_r0.data.dpConfig == null ? null : ctx_r0.data.dpConfig.ranges) !== null && tmp_0_0 !== undefined ? tmp_0_0 : i0.ɵɵpureFunction0(2, _c1));
38
- i0.ɵɵadvance(2);
39
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c0, ctx_r0.selectedItemLabel === "Custom Range"));
40
- } }
41
- function TzDrpContainerComponent_div_17_Template(rf, ctx) { if (rf & 1) {
42
- i0.ɵɵelementStart(0, "div", 24)(1, "span");
43
- i0.ɵɵtext(2);
44
- i0.ɵɵelementEnd()();
45
- } if (rf & 2) {
46
- const weekDay_r9 = ctx.$implicit;
47
- i0.ɵɵadvance(2);
48
- i0.ɵɵtextInterpolate(weekDay_r9.label);
49
- } }
50
- function TzDrpContainerComponent_div_19_span_1_Template(rf, ctx) { if (rf & 1) {
51
- i0.ɵɵelementStart(0, "span", 27);
52
- i0.ɵɵtext(1);
53
- i0.ɵɵelementEnd();
54
- } if (rf & 2) {
55
- const day_r10 = i0.ɵɵnextContext().$implicit;
56
- const ctx_r11 = i0.ɵɵnextContext();
57
- i0.ɵɵproperty("tabindex", day_r10.isDisabledDay ? -1 : 0);
58
- i0.ɵɵattribute("aria-label", ctx_r11.retractDayMonth(day_r10.date, ctx_r11.currentMonth, ctx_r11.currentYearNumber));
59
- i0.ɵɵadvance(1);
60
- i0.ɵɵtextInterpolate1(" ", day_r10.date, " ");
61
- } }
62
- const _c2 = function (a0, a1, a2, a3, a4, a5) { return { "selected-same-day": a0, "selected-start-day": a1, "selected-end-day": a2, "disabled-day": a3, "in-range-day": a4, "is-valid-date": a5 }; };
63
- function TzDrpContainerComponent_div_19_Template(rf, ctx) { if (rf & 1) {
64
- const _r14 = i0.ɵɵgetCurrentView();
65
- i0.ɵɵelementStart(0, "div", 25);
66
- i0.ɵɵlistener("click", function TzDrpContainerComponent_div_19_Template_div_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r14); const day_r10 = restoredCtx.$implicit; const ctx_r13 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r13.selectDay("LEFT", day_r10)); })("keyup.enter", function TzDrpContainerComponent_div_19_Template_div_keyup_enter_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r14); const day_r10 = restoredCtx.$implicit; const ctx_r15 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r15.selectDay("LEFT", day_r10)); });
67
- i0.ɵɵtemplate(1, TzDrpContainerComponent_div_19_span_1_Template, 2, 3, "span", 26);
68
- i0.ɵɵelementEnd();
69
- } if (rf & 2) {
70
- const day_r10 = ctx.$implicit;
71
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction6(2, _c2, day_r10.isSelectedStartDay && day_r10.isSelectedEndDay, day_r10.isSelectedStartDay, day_r10.isSelectedEndDay, day_r10.isDisabledDay, day_r10.inRangeDay, day_r10.date > 0 && !(day_r10.isSelectedStartDay && day_r10.isSelectedEndDay)));
72
- i0.ɵɵadvance(1);
73
- i0.ɵɵproperty("ngIf", day_r10.date > 0);
74
- } }
75
- function TzDrpContainerComponent_div_30_Template(rf, ctx) { if (rf & 1) {
76
- i0.ɵɵelementStart(0, "div", 24)(1, "span");
77
- i0.ɵɵtext(2);
78
- i0.ɵɵelementEnd()();
79
- } if (rf & 2) {
80
- const weekDay_r16 = ctx.$implicit;
81
- i0.ɵɵadvance(2);
82
- i0.ɵɵtextInterpolate(weekDay_r16.label);
83
- } }
84
- function TzDrpContainerComponent_div_32_span_1_Template(rf, ctx) { if (rf & 1) {
85
- i0.ɵɵelementStart(0, "span", 27);
86
- i0.ɵɵtext(1);
87
- i0.ɵɵelementEnd();
88
- } if (rf & 2) {
89
- const day_r17 = i0.ɵɵnextContext().$implicit;
90
- const ctx_r18 = i0.ɵɵnextContext();
91
- i0.ɵɵproperty("tabindex", day_r17.isDisabledDay ? -1 : 0);
92
- i0.ɵɵattribute("aria-label", ctx_r18.retractDayMonth(day_r17.date, ctx_r18.nextMonth, ctx_r18.nextYearNumber));
93
- i0.ɵɵadvance(1);
94
- i0.ɵɵtextInterpolate1(" ", day_r17.date, " ");
95
- } }
96
- function TzDrpContainerComponent_div_32_Template(rf, ctx) { if (rf & 1) {
97
- const _r21 = i0.ɵɵgetCurrentView();
98
- i0.ɵɵelementStart(0, "div", 25);
99
- i0.ɵɵlistener("click", function TzDrpContainerComponent_div_32_Template_div_click_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r21); const day_r17 = restoredCtx.$implicit; const ctx_r20 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r20.selectDay("RIGHT", day_r17)); })("keyup.enter", function TzDrpContainerComponent_div_32_Template_div_keyup_enter_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r21); const day_r17 = restoredCtx.$implicit; const ctx_r22 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r22.selectDay("RIGHT", day_r17)); });
100
- i0.ɵɵtemplate(1, TzDrpContainerComponent_div_32_span_1_Template, 2, 3, "span", 26);
101
- i0.ɵɵelementEnd();
102
- } if (rf & 2) {
103
- const day_r17 = ctx.$implicit;
104
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction6(2, _c2, day_r17.isSelectedStartDay && day_r17.isSelectedEndDay, day_r17.isSelectedStartDay, day_r17.isSelectedEndDay, day_r17.isDisabledDay, day_r17.inRangeDay, day_r17.date > 0 && !(day_r17.isSelectedStartDay && day_r17.isSelectedEndDay)));
105
- i0.ɵɵadvance(1);
106
- i0.ɵɵproperty("ngIf", day_r17.date > 0);
107
- } }
108
- const _c3 = function (a0) { return { "disabled-month": a0 }; };
109
- export class TzDrpContainerComponent {
110
- constructor(data, toast) {
111
- this.toast = toast;
112
- this.parseZoneInstance = (...args) => {
113
- return tz(args[0], args[1], this.data.dpConfig.timezone);
114
- };
115
- this.rawWeekDays = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"];
116
- this.weekDays = [];
117
- this.currentMonthDates = [];
118
- this.nextMonthDates = [];
119
- this.isPreviousMonthDisabled = false;
120
- this.isNextMonthDisabled = false;
121
- this.selectionStarted = false;
122
- this.isDatesValid = false;
123
- this.selectedItemLabel = "Custom Range";
124
- this.data = data;
125
- this.localSelectedDates = this.data.dates;
126
- this.isDatesValid = false;
127
- if (this.localSelectedDates.startDate && this.localSelectedDates.endDate) {
128
- this.isDatesValid = true;
129
- }
130
- if (this.data?.dpConfig?.timezone) {
131
- this.parseZoneInstance = (...args) => {
132
- return tz(args[0], args[1], this.data.dpConfig.timezone);
133
- };
134
- }
135
- this.currentMonthNumber = this.parseZoneInstance().month();
136
- this.nextMonthNumber = this.parseZoneInstance().add(1, "month").month();
137
- this.currentMonth = getMonth(this.currentMonthNumber);
138
- this.nextMonth = getMonth(this.nextMonthNumber);
139
- this.currentYearNumber = this.parseZoneInstance().year();
140
- this.nextYearNumber = this.parseZoneInstance().add(1, "month").year();
141
- this.weekDays = this.rawWeekDays.map((day, index) => ({
142
- label: `${day[0]}${day.slice(1).toLowerCase()}`,
143
- isCurrentDay: this.parseZoneInstance().day() === index
144
- }));
145
- if (!this.data?.dpConfig?.format) {
146
- this.data.dpConfig = {
147
- ...this.data.dpConfig,
148
- format: DATE_FORMAT
149
- };
150
- }
151
- }
152
- ngOnInit() {
153
- this.currentDateInstance();
154
- this.calculateMinMaxDays();
155
- }
156
- retractDayMonth(day, month, year) {
157
- return `${day} ${month} ${year}`;
158
- }
159
- closeOnEsc() {
160
- this.cancelDatePicker();
161
- }
162
- currentDateInstance() {
163
- if (!this.localSelectedDates?.startDate) {
164
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
165
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
166
- return;
167
- }
168
- const selectedStartDate = this.parseZoneInstance(this.localSelectedDates?.startDate, this.data.dpConfig.format);
169
- if (selectedStartDate.isValid()) {
170
- this.currentYearNumber = selectedStartDate.year();
171
- this.nextYearNumber = selectedStartDate.add(1, "month").year();
172
- this.currentMonthNumber = selectedStartDate.get("month") - 1;
173
- this.nextMonthNumber = selectedStartDate.add(1, "month").month() - 1;
174
- if (this.currentMonthNumber === -1) {
175
- this.currentMonthNumber = 11;
176
- }
177
- if (this.nextMonthNumber === -1) {
178
- this.nextMonthNumber = 11;
179
- }
180
- this.currentMonth = getMonth(this.currentMonthNumber);
181
- this.nextMonth = getMonth(this.nextMonthNumber);
182
- }
183
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
184
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
185
- }
186
- calculateMinMaxDays() {
187
- const currentInstance = this.parseZoneInstance().year(this.currentYearNumber).month(this.currentMonthNumber);
188
- const minDate = this.parseZoneInstance(this.data.dpConfig.minDate, this.data.dpConfig.format);
189
- if (minDate.isValid()) {
190
- this.isPreviousMonthDisabled = minDate.isSameOrAfter(currentInstance, "month");
191
- }
192
- const maxDate = this.parseZoneInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format);
193
- if (maxDate.isValid()) {
194
- this.isNextMonthDisabled = maxDate.isSameOrBefore(currentInstance, "month");
195
- }
196
- }
197
- navigateMonth(direction) {
198
- let thisMonth = parseZone().year(this.currentYearNumber).month(this.currentMonthNumber);
199
- if (direction === "NEXT") {
200
- thisMonth = thisMonth.add(1, "month");
201
- }
202
- else if (direction === "PREVIOUS") {
203
- thisMonth = thisMonth.subtract(1, "month");
204
- }
205
- this.currentMonthNumber = thisMonth.month();
206
- this.nextMonthNumber = thisMonth.clone().add(1, "month").month();
207
- this.currentMonth = getMonth(this.currentMonthNumber);
208
- this.nextMonth = getMonth(this.nextMonthNumber);
209
- if (this.nextMonthNumber === 0 && direction === "PREVIOUS") {
210
- this.currentYearNumber--;
211
- }
212
- else if (this.currentMonthNumber === 11 && direction === "NEXT") {
213
- this.nextYearNumber++;
214
- }
215
- else if (this.currentMonthNumber === 0 && direction === "NEXT") {
216
- this.currentYearNumber++;
217
- }
218
- else if (this.nextMonthNumber === 11 && direction === "PREVIOUS") {
219
- this.nextYearNumber--;
220
- }
221
- else {
222
- this.nextYearNumber = this.currentYearNumber;
223
- }
224
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
225
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
226
- this.calculateMinMaxDays();
227
- }
228
- generateDates(month, currentYearNumber) {
229
- let dates = [];
230
- const daysInMonth = parseZone().year(currentYearNumber).month(month).daysInMonth();
231
- for (let currentDate = 1; currentDate <= daysInMonth; currentDate++) {
232
- const date = moment().year(currentYearNumber).month(month).date(currentDate);
233
- const dateString = date.format(this.data.dpConfig.format);
234
- let isDisabledDay = this.data.datesDisabled.some(d => d === dateString);
235
- const minDate = this.parseZoneInstance(this.data.dpConfig.minDate, this.data.dpConfig.format);
236
- if (!isDisabledDay && minDate.isValid()) {
237
- let Date = this.parseZoneInstance().year(currentYearNumber).month(month).date(currentDate);
238
- isDisabledDay = minDate.isAfter(Date, "day");
239
- }
240
- const maxDate = this.parseZoneInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format);
241
- if (!isDisabledDay && maxDate.isValid()) {
242
- isDisabledDay = maxDate.isBefore(date, "day");
243
- }
244
- if (this.data?.dpConfig?.maxAllowedRange > 0 &&
245
- !isDisabledDay &&
246
- (this.localSelectedDates?.startDate ?? false) && (!(this.localSelectedDates.endDate ?? false))) {
247
- const startDate = moment(this.localSelectedDates.startDate, this.data.dpConfig.format).startOf('day');
248
- const maxEndDate = startDate.clone().add(this.data.dpConfig.maxAllowedRange - 1, 'days');
249
- isDisabledDay = date.isAfter(maxEndDate, 'day');
250
- }
251
- const isCurrentDay = this.parseZoneInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data.dpConfig.format) ===
252
- this.parseZoneInstance().format(this.data.dpConfig.format);
253
- const isSelectedStartDay = !isDisabledDay &&
254
- (this.localSelectedDates?.startDate ?? false) &&
255
- date.format(this.data.dpConfig.format) === this.localSelectedDates?.startDate;
256
- const isAfterSelectedStartDate = moment(date, this.data?.dpConfig?.format).startOf('day').isAfter(moment(this.localSelectedDates.startDate, this.data?.dpConfig?.format).startOf('day'), 'day');
257
- const isBeforeSelectedEndDate = moment(date, this.data?.dpConfig?.format).startOf('day').isBefore(moment(this.localSelectedDates.endDate, this.data?.dpConfig?.format).startOf('day'), 'day');
258
- const inRangeDay = (this.localSelectedDates.startDate ?? false) &&
259
- (this.localSelectedDates.endDate ?? false) &&
260
- isAfterSelectedStartDate &&
261
- isBeforeSelectedEndDate;
262
- const isSelectedEndDay = !isDisabledDay &&
263
- ((this.localSelectedDates?.startDate && this.localSelectedDates?.endDate) ?? false) &&
264
- date.format(this.data.dpConfig.format) === this.localSelectedDates?.endDate;
265
- dates.push({
266
- date: currentDate,
267
- weekDay: date.day(),
268
- isCurrentDay,
269
- isSelectedStartDay,
270
- isSelectedEndDay,
271
- inRangeDay,
272
- toastMessage: this.data.messages.find(q => date.format(this.data.dpConfig.format) === q.date)?.message || "",
273
- isDisabledDay
274
- });
275
- }
276
- for (let i = dates[0].weekDay; i > 0; i--) {
277
- dates.unshift({ date: 0, weekDay: i - 1 });
278
- }
279
- return dates;
280
- }
281
- selectDay(from, day) {
282
- if (day.date <= 0)
283
- return;
284
- if (!day.isDisabledDay) {
285
- this.selectedItemLabel = "Custom Range";
286
- if (this.selectionStarted) {
287
- const momentDay = parseZone()
288
- .year(from === "LEFT" ? this.currentYearNumber : this.nextYearNumber)
289
- .month(from === "LEFT" ? this.currentMonthNumber : this.nextMonthNumber)
290
- .date(day.date);
291
- const startDate = parseZone(this.localSelectedDates.startDate, this.data.dpConfig.format);
292
- if (momentDay.isBefore(startDate, "day")) {
293
- this.localSelectedDates = {
294
- startDate: momentDay.format(this.data.dpConfig.format),
295
- endDate: null
296
- };
297
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
298
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
299
- return;
300
- }
301
- this.selectionStarted = false;
302
- this.localSelectedDates = {
303
- ...this.localSelectedDates,
304
- endDate: momentDay.format(this.data.dpConfig.format)
305
- };
306
- }
307
- else {
308
- this.selectionStarted = true;
309
- this.localSelectedDates = {
310
- startDate: parseZone()
311
- .year(from === "LEFT" ? this.currentYearNumber : this.nextYearNumber)
312
- .month(from === "LEFT" ? this.currentMonthNumber : this.nextMonthNumber)
313
- .date(day.date)
314
- .format(this.data.dpConfig.format),
315
- endDate: null
316
- };
317
- }
318
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
319
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
320
- this.isDatesValid = false;
321
- if (this.localSelectedDates.startDate && this.localSelectedDates.endDate) {
322
- this.isDatesValid = true;
323
- }
324
- }
325
- if (day.toastMessage) {
326
- this.toast.displayMsg(day.toastMessage, 4000);
327
- }
328
- }
329
- selectRange(item) {
330
- if (!item)
331
- return;
332
- let startDate = moment(item.value[0]);
333
- let endDate = moment(item.value[1]);
334
- const startDateStr = startDate.format(this.data.dpConfig.format);
335
- const endDateStr = endDate.format(this.data.dpConfig.format);
336
- const isAnyDateDisabled = this.data.datesDisabled.some((date) => moment(date, this.data.dpConfig.format).isBetween(startDate, endDate, null, "[]"));
337
- const minDate = moment(this.data.dpConfig.minDate, this.data.dpConfig.format);
338
- const maxDate = moment(this.data.dpConfig.maxDate, this.data.dpConfig.format);
339
- const isWithinLimits = (!minDate.isValid() || !startDate.isBefore(minDate, "day")) &&
340
- (!maxDate.isValid() || !endDate.isAfter(maxDate, "day"));
341
- if (!isWithinLimits || isAnyDateDisabled) {
342
- this.toast.displayMsg("Selected range contains disabled dates or is out of bounds.", 4000);
343
- return;
344
- }
345
- this.selectedItemLabel = item.label;
346
- this.currentMonthNumber = startDate.month();
347
- this.currentYearNumber = startDate.year();
348
- if (this.currentMonthNumber === 11) {
349
- this.nextMonthNumber = 0;
350
- this.nextYearNumber = this.currentYearNumber + 1;
351
- }
352
- else {
353
- this.nextMonthNumber = this.currentMonthNumber + 1;
354
- this.nextYearNumber = this.currentYearNumber;
355
- }
356
- this.localSelectedDates = { startDate: startDateStr, endDate: endDateStr };
357
- this.currentMonth = getMonth(this.currentMonthNumber);
358
- this.nextMonth = getMonth(this.nextMonthNumber);
359
- this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
360
- this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
361
- this.isDatesValid = false;
362
- if (this.localSelectedDates.startDate && this.localSelectedDates.endDate) {
363
- this.isDatesValid = true;
364
- }
365
- }
366
- applyDates() {
367
- this.data.dateChange(this.localSelectedDates);
368
- }
369
- cancelDatePicker() {
370
- this.data.close();
371
- }
372
- }
373
- TzDrpContainerComponent.ɵfac = function TzDrpContainerComponent_Factory(t) { return new (t || TzDrpContainerComponent)(i0.ɵɵdirectiveInject(CONTAINER_DATA), i0.ɵɵdirectiveInject(i1.ToastService)); };
374
- TzDrpContainerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TzDrpContainerComponent, selectors: [["mis-tz-drp"]], hostBindings: function TzDrpContainerComponent_HostBindings(rf, ctx) { if (rf & 1) {
375
- i0.ɵɵlistener("keydown.esc", function TzDrpContainerComponent_keydown_esc_HostBindingHandler() { return ctx.closeOnEsc(); });
376
- } }, decls: 38, vars: 20, consts: [["aria-label", "date range picker", "cdkTrapFocus", "", 1, "daterangepicker-container", 3, "cdkTrapFocusAutoCapture"], [1, "daterangepicker-container__view"], ["tabindex", "-1", "cdkFocusInitial", ""], ["class", "daterangepicker-container__ranges", 4, "ngIf"], [1, "datepicker__left"], [1, "daterangepicker-container__header__prabu"], ["tabindex", "0", "aria-label", "Previous Month", 1, "daterangepicker-container__arrow__icon", 3, "ngClass", "click", "keyup.enter"], ["width", "20", "height", "16", "viewBox", "0 0 20 16", "fill", "none", "xmlns", "http://www.w3.org/2000/svg"], ["d", "M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z", "fill", "#181F33"], ["tabindex", "0", "aria-label", "Next Month", 1, "daterangepicker-container__arrow__icon", "mobile_view", 3, "ngClass", "click", "keyup.enter"], [1, "daterangepicker-container__body"], [1, "daterangepicker-container__weekdays"], ["class", "daterangepicker-container__weekday", 4, "ngFor", "ngForOf"], [1, "daterangepicker-container__days"], ["class", "daterangepicker-container__day", 3, "ngClass", "click", "keyup.enter", 4, "ngFor", "ngForOf"], [1, "datepicker__right"], ["tabindex", "0", 1, "daterangepicker-container__arrow__icon", "pc_view", 3, "ngClass", "click", "keyup.enter"], [1, "daterangepicker__footer"], ["mis-button", "", "type", "none", "id", "mobile-footer-btn", 3, "click"], ["mis-button", "", "type", "primary", "id", "mobile-footer-btn", 3, "disabled", "click"], [1, "daterangepicker-container__ranges"], [4, "ngFor", "ngForOf"], [1, "mis-btn", 3, "ngClass"], [1, "mis-btn", 3, "ngClass", "click"], [1, "daterangepicker-container__weekday"], [1, "daterangepicker-container__day", 3, "ngClass", "click", "keyup.enter"], [3, "tabindex", 4, "ngIf"], [3, "tabindex"]], template: function TzDrpContainerComponent_Template(rf, ctx) { if (rf & 1) {
377
- i0.ɵɵelementStart(0, "div", 0)(1, "div", 1);
378
- i0.ɵɵelement(2, "div", 2);
379
- i0.ɵɵtemplate(3, TzDrpContainerComponent_div_3_Template, 5, 5, "div", 3);
380
- i0.ɵɵelementStart(4, "div", 4)(5, "div", 5)(6, "div", 6);
381
- i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_div_click_6_listener() { return !ctx.isPreviousMonthDisabled && ctx.navigateMonth("PREVIOUS"); })("keyup.enter", function TzDrpContainerComponent_Template_div_keyup_enter_6_listener() { return !ctx.isPreviousMonthDisabled && ctx.navigateMonth("PREVIOUS"); });
382
- i0.ɵɵnamespaceSVG();
383
- i0.ɵɵelementStart(7, "svg", 7);
384
- i0.ɵɵelement(8, "path", 8);
385
- i0.ɵɵelementEnd()();
386
- i0.ɵɵnamespaceHTML();
387
- i0.ɵɵelementStart(9, "span");
388
- i0.ɵɵtext(10);
389
- i0.ɵɵelementEnd();
390
- i0.ɵɵelement(11, "div");
391
- i0.ɵɵelementStart(12, "div", 9);
392
- i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_div_click_12_listener() { return !ctx.isNextMonthDisabled && ctx.navigateMonth("NEXT"); })("keyup.enter", function TzDrpContainerComponent_Template_div_keyup_enter_12_listener() { return !ctx.isNextMonthDisabled && ctx.navigateMonth("NEXT"); });
393
- i0.ɵɵnamespaceSVG();
394
- i0.ɵɵelementStart(13, "svg", 7);
395
- i0.ɵɵelement(14, "path", 8);
396
- i0.ɵɵelementEnd()()();
397
- i0.ɵɵnamespaceHTML();
398
- i0.ɵɵelementStart(15, "div", 10)(16, "div", 11);
399
- i0.ɵɵtemplate(17, TzDrpContainerComponent_div_17_Template, 3, 1, "div", 12);
400
- i0.ɵɵelementEnd();
401
- i0.ɵɵelementStart(18, "div", 13);
402
- i0.ɵɵtemplate(19, TzDrpContainerComponent_div_19_Template, 2, 9, "div", 14);
403
- i0.ɵɵelementEnd()()();
404
- i0.ɵɵelementStart(20, "div", 15)(21, "div", 5);
405
- i0.ɵɵelement(22, "div");
406
- i0.ɵɵelementStart(23, "span");
407
- i0.ɵɵtext(24);
408
- i0.ɵɵelementEnd();
409
- i0.ɵɵelementStart(25, "div", 16);
410
- i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_div_click_25_listener() { return !ctx.isNextMonthDisabled && ctx.navigateMonth("NEXT"); })("keyup.enter", function TzDrpContainerComponent_Template_div_keyup_enter_25_listener() { return !ctx.isNextMonthDisabled && ctx.navigateMonth("NEXT"); });
411
- i0.ɵɵnamespaceSVG();
412
- i0.ɵɵelementStart(26, "svg", 7);
413
- i0.ɵɵelement(27, "path", 8);
414
- i0.ɵɵelementEnd()()();
415
- i0.ɵɵnamespaceHTML();
416
- i0.ɵɵelementStart(28, "div", 10)(29, "div", 11);
417
- i0.ɵɵtemplate(30, TzDrpContainerComponent_div_30_Template, 3, 1, "div", 12);
418
- i0.ɵɵelementEnd();
419
- i0.ɵɵelementStart(31, "div", 13);
420
- i0.ɵɵtemplate(32, TzDrpContainerComponent_div_32_Template, 2, 9, "div", 14);
421
- i0.ɵɵelementEnd()()()();
422
- i0.ɵɵelementStart(33, "div", 17)(34, "button", 18);
423
- i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_button_click_34_listener() { return ctx.cancelDatePicker(); });
424
- i0.ɵɵtext(35, "Cancel");
425
- i0.ɵɵelementEnd();
426
- i0.ɵɵelementStart(36, "button", 19);
427
- i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_button_click_36_listener() { return ctx.applyDates(); });
428
- i0.ɵɵtext(37, "Apply");
429
- i0.ɵɵelementEnd()()();
430
- } if (rf & 2) {
431
- i0.ɵɵproperty("cdkTrapFocusAutoCapture", true);
432
- i0.ɵɵadvance(3);
433
- i0.ɵɵproperty("ngIf", (ctx.data == null ? null : ctx.data.dpConfig == null ? null : ctx.data.dpConfig.ranges == null ? null : ctx.data.dpConfig.ranges.length) > 0);
434
- i0.ɵɵadvance(3);
435
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(14, _c3, ctx.isPreviousMonthDisabled));
436
- i0.ɵɵadvance(4);
437
- i0.ɵɵtextInterpolate2(" ", ctx.currentMonth, " ", ctx.currentYearNumber, " ");
438
- i0.ɵɵadvance(2);
439
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(16, _c3, ctx.isNextMonthDisabled));
440
- i0.ɵɵadvance(5);
441
- i0.ɵɵproperty("ngForOf", ctx.weekDays);
442
- i0.ɵɵadvance(2);
443
- i0.ɵɵproperty("ngForOf", ctx.currentMonthDates);
444
- i0.ɵɵadvance(5);
445
- i0.ɵɵtextInterpolate2(" ", ctx.nextMonth, " ", ctx.nextYearNumber, " ");
446
- i0.ɵɵadvance(1);
447
- i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(18, _c3, ctx.isNextMonthDisabled));
448
- i0.ɵɵadvance(5);
449
- i0.ɵɵproperty("ngForOf", ctx.weekDays);
450
- i0.ɵɵadvance(2);
451
- i0.ɵɵproperty("ngForOf", ctx.nextMonthDates);
452
- i0.ɵɵadvance(4);
453
- i0.ɵɵproperty("disabled", !ctx.isDatesValid);
454
- } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.ButtonDirective, i4.CdkTrapFocus], styles: ["[_ngcontent-%COMP%]:root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-disabled: #929DAB;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3}.daterangepicker-container[_ngcontent-%COMP%]{background:#ffffff;border:1px solid #e0e0e0;box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:12px;display:flex;flex-direction:column;font-family:Lato;overflow:hidden;-webkit-user-select:none;user-select:none}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%]{max-width:100vw;border:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]{display:flex;gap:24px;padding:16px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__ranges[_ngcontent-%COMP%]{display:flex;flex-direction:column}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .mis-btn[_ngcontent-%COMP%]{background:none;outline:none;border:none;cursor:pointer;border-radius:4px;vertical-align:middle;text-align:center;box-sizing:border-box;display:flex;align-items:center;text-decoration:none;justify-content:center;padding:10px 16px;font-size:16px;line-height:24px;background-color:transparent;color:#0937b2}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .active-range[_ngcontent-%COMP%]{background-color:#cadcfb}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]{flex-direction:column;align-items:center;position:fixed;bottom:0;left:0;background-color:#fff;width:100%;max-height:68vh;overflow-y:auto;border-radius:30px;gap:24px;padding:10% 0 30%;box-shadow:0 -4px 8px 10000px #0000001f;scrollbar-width:none;-ms-overflow-style:none}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__left[_ngcontent-%COMP%], .daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__right[_ngcontent-%COMP%]{display:flex;flex-direction:column}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__left[_ngcontent-%COMP%], .daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__right[_ngcontent-%COMP%]{width:90%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%]{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:10%}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:16px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.2px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{margin:0 auto;font-size:4vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]{height:20px;width:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon.disabled-month[_ngcontent-%COMP%]{opacity:.5;cursor:not-allowed}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]:not(.disabled-month):hover{cursor:pointer;background-color:#cbddfb}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]:nth-child(1){transform:rotate(180deg)}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]{width:7%}}@media only screen and (min-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .mobile_view[_ngcontent-%COMP%]{display:none}}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .pc_view[_ngcontent-%COMP%]{display:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%]{height:100%;width:252px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%]{width:100%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%]{width:100%;display:flex;padding-bottom:10px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%]{width:36px;height:18px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%]{margin:0 auto}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:12px;font-style:normal;font-weight:400;line-height:18px;letter-spacing:.2px;text-align:center;color:#6a737d}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:3vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span.current-day[_ngcontent-%COMP%]{font-weight:700;letter-spacing:.25px;color:#181f33}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]{width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]{flex:0 0 14.2857142857%;width:14.2857142857%;height:14.2857142857%;aspect-ratio:1}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]:not(.in-range-day):not(.selected-start-day):not(.selected-end-day){border-radius:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%]{cursor:default}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%]:hover{background-color:transparent}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#6a737d}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.is-valid-date[_ngcontent-%COMP%]:not(.disabled-day):not(.selected-start-day):not(.selected-end-day) > span[_ngcontent-%COMP%]{color:#181f33}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.is-valid-date[_ngcontent-%COMP%]:not(.disabled-day):not(.selected-start-day):not(.selected-end-day):hover{background-color:#cbddfb;cursor:pointer}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.2px;text-align:center;color:#181f33}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:3.4vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.current-day[_ngcontent-%COMP%]{font-weight:700;letter-spacing:.25px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.selected-day[_ngcontent-%COMP%]{color:#fff}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.disabled-day[_ngcontent-%COMP%]{color:#6a737d}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-same-day[_ngcontent-%COMP%]{background-color:#0937b2;border-radius:50%!important}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-same-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#fff}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-start-day[_ngcontent-%COMP%]{background-color:#0937b2;border-radius:20px 4px 4px 20px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-start-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#fff}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-end-day[_ngcontent-%COMP%]{background-color:#0937b2;border-radius:0 20px 20px 0}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-end-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#fff}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .in-range-day[_ngcontent-%COMP%]:not(.disabled-day){background-color:#cbddfb}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;border-top:1px solid #e0e0e0;padding:16px 24px;gap:24px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%]{justify-content:space-evenly;padding:2% 0;background-color:#fff;position:fixed;bottom:0;left:0;width:100%;height:8vh;border-top:2px solid #C8CDD3}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] #mobile-footer-btn[_ngcontent-%COMP%]{width:36%;font-size:3.8vw}}"] });
455
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TzDrpContainerComponent, [{
456
- type: Component,
457
- args: [{ selector: "mis-tz-drp", template: "<div class=\"daterangepicker-container\" aria-label=\"date range picker\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\">\n <div class=\"daterangepicker-container__view\">\n <div tabindex=\"-1\" cdkFocusInitial></div>\n <div *ngIf=\"data?.dpConfig?.ranges?.length > 0\" class=\"daterangepicker-container__ranges\">\n <div *ngFor=\"let item of data?.dpConfig?.ranges ?? []\" >\n <button\n [ngClass]=\"{'active-range' : selectedItemLabel === item.label}\"\n (click)=\"selectRange(item)\"\n class=\"mis-btn\"\n >\n {{ item.label }}\n </button>\n </div>\n <div> <button class=\"mis-btn\" [ngClass]=\"{'active-range' : selectedItemLabel === 'Custom Range'}\">Custom Range</button> </div>\n </div>\n <div class=\"datepicker__left\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div\n class=\"daterangepicker-container__arrow__icon\"\n tabindex=\"0\"\n (click)=\"!isPreviousMonthDisabled && navigateMonth('PREVIOUS')\"\n (keyup.enter)=\"!isPreviousMonthDisabled && navigateMonth('PREVIOUS')\"\n aria-label=\"Previous Month\"\n [ngClass]=\"{\n 'disabled-month': isPreviousMonthDisabled\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n <span> {{ currentMonth }} {{ currentYearNumber }} </span>\n <div></div>\n <!-- Button visible in mobile view -->\n <div\n class=\"daterangepicker-container__arrow__icon mobile_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled && navigateMonth('NEXT')\"\n aria-label=\"Next Month\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\" \n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of currentMonthDates\"\n (click)=\"selectDay('LEFT', day)\"\n (keyup.enter)=\"selectDay('LEFT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, currentMonth, currentYearNumber)\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n <div class=\"datepicker__right\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div></div>\n <span> {{ nextMonth }} {{ nextYearNumber }} </span>\n <div\n class=\"daterangepicker-container__arrow__icon pc_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled && navigateMonth('NEXT')\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\"\n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of nextMonthDates\"\n (click)=\"selectDay('RIGHT', day)\"\n (keyup.enter)=\"selectDay('RIGHT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, nextMonth, nextYearNumber)\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"daterangepicker__footer\">\n <button mis-button type=\"none\" id='mobile-footer-btn' (click)=\"cancelDatePicker()\">Cancel</button>\n <button mis-button type=\"primary\" id=\"mobile-footer-btn\" (click)=\"applyDates()\" [disabled]=\"!isDatesValid\">Apply</button>\n </div>\n</div>", styles: [":root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-disabled: #929DAB;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3}.daterangepicker-container{background:#ffffff;border:1px solid #e0e0e0;box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:12px;display:flex;flex-direction:column;font-family:Lato;overflow:hidden;-webkit-user-select:none;user-select:none}@media only screen and (max-width: 900px){.daterangepicker-container{max-width:100vw;border:none}}.daterangepicker-container .daterangepicker-container__view{display:flex;gap:24px;padding:16px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__ranges{display:flex;flex-direction:column}.daterangepicker-container .daterangepicker-container__view .mis-btn{background:none;outline:none;border:none;cursor:pointer;border-radius:4px;vertical-align:middle;text-align:center;box-sizing:border-box;display:flex;align-items:center;text-decoration:none;justify-content:center;padding:10px 16px;font-size:16px;line-height:24px;background-color:transparent;color:#0937b2}.daterangepicker-container .daterangepicker-container__view .active-range{background-color:#cadcfb}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view{flex-direction:column;align-items:center;position:fixed;bottom:0;left:0;background-color:#fff;width:100%;max-height:68vh;overflow-y:auto;border-radius:30px;gap:24px;padding:10% 0 30%;box-shadow:0 -4px 8px 10000px #0000001f;scrollbar-width:none;-ms-overflow-style:none}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__view::-webkit-scrollbar{display:none}}.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{display:flex;flex-direction:column}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{width:90%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:10%}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{font-size:16px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.2px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{margin:0 auto;font-size:4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{height:20px;width:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon.disabled-month{opacity:.5;cursor:not-allowed}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:not(.disabled-month):hover{cursor:pointer;background-color:#cbddfb}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:nth-child(1){transform:rotate(180deg)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{width:7%}}@media only screen and (min-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .mobile_view{display:none}}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .pc_view{display:none}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{height:100%;width:252px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{width:100%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{width:100%;display:flex;padding-bottom:10px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{width:36px;height:18px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{margin:0 auto}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:12px;font-style:normal;font-weight:400;line-height:18px;letter-spacing:.2px;text-align:center;color:#6a737d}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:3vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span.current-day{font-weight:700;letter-spacing:.25px;color:#181f33}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-wrap:wrap}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{flex:0 0 14.2857142857%;width:14.2857142857%;height:14.2857142857%;aspect-ratio:1}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day:not(.in-range-day):not(.selected-start-day):not(.selected-end-day){border-radius:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day{cursor:default}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day:hover{background-color:transparent}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day>span{color:#6a737d}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day)>span{color:#181f33}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day):hover{background-color:#cbddfb;cursor:pointer}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.2px;text-align:center;color:#181f33}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:3.4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.current-day{font-weight:700;letter-spacing:.25px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.selected-day{color:#fff}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.disabled-day{color:#6a737d}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day{background-color:#0937b2;border-radius:50%!important}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day>span{color:#fff}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day{background-color:#0937b2;border-radius:20px 4px 4px 20px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day>span{color:#fff}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day{background-color:#0937b2;border-radius:0 20px 20px 0}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day>span{color:#fff}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .in-range-day:not(.disabled-day){background-color:#cbddfb}.daterangepicker-container .daterangepicker__footer{display:flex;justify-content:flex-end;border-top:1px solid #e0e0e0;padding:16px 24px;gap:24px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker__footer{justify-content:space-evenly;padding:2% 0;background-color:#fff;position:fixed;bottom:0;left:0;width:100%;height:8vh;border-top:2px solid #C8CDD3}.daterangepicker-container .daterangepicker__footer #mobile-footer-btn{width:36%;font-size:3.8vw}}\n"] }]
458
- }], function () { return [{ type: undefined, decorators: [{
459
- type: Inject,
460
- args: [CONTAINER_DATA]
461
- }] }, { type: i1.ToastService }]; }, { closeOnEsc: [{
462
- type: HostListener,
463
- args: ["keydown.esc"]
464
- }] }); })();
465
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHotZHJwLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcmFuZ2VwaWNrZXJfdjIvdHotZHJwLWNvbnRhaW5lci90ei1kcnAtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVyYW5nZXBpY2tlcl92Mi90ei1kcnAtY29udGFpbmVyL3R6LWRycC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFM0UsT0FBTyxFQUFFLFNBQVMsRUFBVSxFQUFFLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXBDLE9BQU8sTUFBTSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7SUNGL0IsMkJBQXdELGlCQUFBO0lBR3BELHNPQUFTLGVBQUEsMkJBQWlCLENBQUEsSUFBQztJQUczQixZQUNGO0lBQUEsaUJBQVMsRUFBQTs7OztJQUxULGVBQStEO0lBQS9ELGdHQUErRDtJQUk3RCxlQUNGO0lBREUsOENBQ0Y7Ozs7SUFSSiwrQkFBMEY7SUFDeEYsK0VBUU07SUFDTiwyQkFBSyxpQkFBQTtJQUE2Riw0QkFBWTtJQUFBLGlCQUFTLEVBQUEsRUFBQTs7OztJQVRqRyxlQUErQjtJQUEvQiw2TUFBK0I7SUFTdkIsZUFBbUU7SUFBbkUsaUdBQW1FOzs7SUE0QzdGLCtCQUFpRixXQUFBO0lBQ3pFLFlBQW1CO0lBQUEsaUJBQU8sRUFBQTs7O0lBQTFCLGVBQW1CO0lBQW5CLHNDQUFt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Q1gsNkJBQU07UUFBQyxhQUFxQztRQUFBLGlCQUFPO1FBQ25ELGdDQVFDO1FBTEMsOEhBQWlDLGtCQUFjLE1BQU0sQ0FBQyxJQUFDLDZIQUNoQixrQkFBYyxNQUFNLENBQUMsSUFETDtRQU12RCxtQkFBK0Y7UUFBL0YsK0JBQStGO1FBQzdGLDJCQUdRO1FBQ1YsaUJBQU0sRUFBQSxFQUFBO1FBR1Ysb0JBQTZDO1FBQTdDLGdDQUE2QyxlQUFBO1FBRXpDLDJFQUVNO1FBQ1IsaUJBQU07UUFDTixnQ0FBNkM7UUFDM0MsMkVBbUJNO1FBQ1IsaUJBQU0sRUFBQSxFQUFBLEVBQUE7UUFJWixnQ0FBcUMsa0JBQUE7UUFDbUIscUdBQVMsc0JBQWtCLElBQUM7UUFBQyx1QkFBTTtRQUFBLGlCQUFTO1FBQ2xHLG1DQUEyRztRQUFsRCxxR0FBUyxnQkFBWSxJQUFDO1FBQTRCLHNCQUFLO1FBQUEsaUJBQVMsRUFBQSxFQUFBOztRQTNJMUMsOENBQWdDO1FBR3pHLGVBQXdDO1FBQXhDLG1LQUF3QztRQW9CeEMsZUFFRTtRQUZGLGtGQUVFO1FBU0csZUFBMkM7UUFBM0MsNkVBQTJDO1FBU2hELGVBRUU7UUFGRiw4RUFFRTtRQVlrRSxlQUFXO1FBQVgsc0NBQVc7UUFlN0QsZUFBb0I7UUFBcEIsK0NBQW9CO1FBZ0JqQyxlQUFxQztRQUFyQyx1RUFBcUM7UUFNMUMsZUFFRTtRQUZGLDhFQUVFO1FBWWtFLGVBQVc7UUFBWCxzQ0FBVztRQWU3RCxlQUFpQjtRQUFqQiw0Q0FBaUI7UUFnQnVDLGVBQTBCO1FBQTFCLDRDQUEwQjs7dUZEOUhqRyx1QkFBdUI7Y0FMbkMsU0FBUzsyQkFDRSxZQUFZOztzQkF5QlQsTUFBTTt1QkFBQyxjQUFjO21EQXdDbEMsVUFBVTtrQkFEVCxZQUFZO21CQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5qZWN0LCBPbkluaXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ09OVEFJTkVSX0RBVEEsIERBVEVfRk9STUFUIH0gZnJvbSBcIi4uL2RhdGVyYW5nZXBpY2tlci1jb25zdGFudHNcIjtcbmltcG9ydCB7IElDdXJyZW50TW9udGgsIElDdXJyZW50TW9udGhEYXRlcywgSURhdGVQaWNrZXJEYXRhLCBJV2Vla0RheSwgSVNlbGVjdGVkRGF0ZXNDb25maWcsIFJhbmdlSXRlbSB9IGZyb20gXCIuLi9tb2RlbHMvZHJwLWNvbmZpZy5tb2RlbFwiO1xuaW1wb3J0IHsgcGFyc2Vab25lLCBNb21lbnQsIHR6IH0gZnJvbSBcIm1vbWVudC10aW1lem9uZVwiO1xuaW1wb3J0IHsgZ2V0TW9udGggfSBmcm9tIFwiLi4vdXRpbHNcIjtcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL3RvYXN0XCI7XG5pbXBvcnQgbW9tZW50IGZyb20gXCJtb21lbnQtdGltZXpvbmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcIm1pcy10ei1kcnBcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi90ei1kcnAtY29udGFpbmVyLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi90ei1kcnAtY29udGFpbmVyLmNvbXBvbmVudC5zY3NzXCJdXG59KVxuZXhwb3J0IGNsYXNzIFR6RHJwQ29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgZGF0YTogSURhdGVQaWNrZXJEYXRhO1xuICBwcml2YXRlIHBhcnNlWm9uZUluc3RhbmNlID0gKC4uLmFyZ3MpID0+IHtcbiAgICByZXR1cm4gdHooYXJnc1swXSwgYXJnc1sxXSwgdGhpcy5kYXRhLmRwQ29uZmlnLnRpbWV6b25lKTtcbiAgfTtcbiAgcHJpdmF0ZSByYXdXZWVrRGF5czogc3RyaW5nW10gPSBbXCJTVU5cIiwgXCJNT05cIiwgXCJUVUVcIiwgXCJXRURcIiwgXCJUSFVcIiwgXCJGUklcIiwgXCJTQVRcIl07XG4gIHdlZWtEYXlzOiBJV2Vla0RheVtdID0gW107XG4gIGN1cnJlbnRNb250aE51bWJlcjogbnVtYmVyO1xuICBjdXJyZW50TW9udGg6IElDdXJyZW50TW9udGg7XG4gIGN1cnJlbnRZZWFyTnVtYmVyOiBudW1iZXI7XG4gIGN1cnJlbnRNb250aERhdGVzOiBJQ3VycmVudE1vbnRoRGF0ZXNbXSA9IFtdO1xuICBuZXh0TW9udGhOdW1iZXI6IG51bWJlcjtcbiAgbmV4dE1vbnRoOiBJQ3VycmVudE1vbnRoO1xuICBuZXh0WWVhck51bWJlcjogbnVtYmVyO1xuICBuZXh0TW9udGhEYXRlczogSUN1cnJlbnRNb250aERhdGVzW10gPSBbXTtcbiAgaXNQcmV2aW91c01vbnRoRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNOZXh0TW9udGhEaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBzZWxlY3Rpb25TdGFydGVkID0gZmFsc2U7XG4gIGxvY2FsU2VsZWN0ZWREYXRlczogSVNlbGVjdGVkRGF0ZXNDb25maWc7XG4gIGlzRGF0ZXNWYWxpZCA9IGZhbHNlO1xuICBzZWxlY3RlZEl0ZW1MYWJlbCA9IFwiQ3VzdG9tIFJhbmdlXCI7XG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQ09OVEFJTkVSX0RBVEEpIGRhdGE6IElEYXRlUGlja2VyRGF0YSwgcHJpdmF0ZSB0b2FzdDogVG9hc3RTZXJ2aWNlKSB7XG4gICAgdGhpcy5kYXRhID0gZGF0YTtcbiAgICB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcyA9IHRoaXMuZGF0YS5kYXRlcztcbiAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IGZhbHNlO1xuICAgIGlmICh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5zdGFydERhdGUgJiYgdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMuZW5kRGF0ZSkge1xuICAgICAgdGhpcy5pc0RhdGVzVmFsaWQgPSB0cnVlO1xuICAgIH1cbiAgICBpZiAodGhpcy5kYXRhPy5kcENvbmZpZz8udGltZXpvbmUpIHtcbiAgICAgIHRoaXMucGFyc2Vab25lSW5zdGFuY2UgPSAoLi4uYXJncykgPT4ge1xuICAgICAgICByZXR1cm4gdHooYXJnc1swXSwgYXJnc1sxXSwgdGhpcy5kYXRhLmRwQ29uZmlnLnRpbWV6b25lKTtcbiAgICAgIH07XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLm1vbnRoKCk7XG4gICAgdGhpcy5uZXh0TW9udGhOdW1iZXIgPSB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKCkuYWRkKDEsIFwibW9udGhcIikubW9udGgoKTtcbiAgICB0aGlzLmN1cnJlbnRNb250aCA9IGdldE1vbnRoKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyKTtcbiAgICB0aGlzLm5leHRNb250aCA9IGdldE1vbnRoKHRoaXMubmV4dE1vbnRoTnVtYmVyKTtcbiAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLnllYXIoKTtcbiAgICB0aGlzLm5leHRZZWFyTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLmFkZCgxLCBcIm1vbnRoXCIpLnllYXIoKTtcbiAgICB0aGlzLndlZWtEYXlzID0gdGhpcy5yYXdXZWVrRGF5cy5tYXAoKGRheSwgaW5kZXgpID0+ICh7XG4gICAgICBsYWJlbDogYCR7ZGF5WzBdfSR7ZGF5LnNsaWNlKDEpLnRvTG93ZXJDYXNlKCl9YCxcbiAgICAgIGlzQ3VycmVudERheTogdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLmRheSgpID09PSBpbmRleFxuICAgIH0pKTtcbiAgICBpZiAoIXRoaXMuZGF0YT8uZHBDb25maWc/LmZvcm1hdCkge1xuICAgICAgdGhpcy5kYXRhLmRwQ29uZmlnID0ge1xuICAgICAgICAuLi50aGlzLmRhdGEuZHBDb25maWcsXG4gICAgICAgIGZvcm1hdDogREFURV9GT1JNQVRcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5jdXJyZW50RGF0ZUluc3RhbmNlKCk7XG4gICAgdGhpcy5jYWxjdWxhdGVNaW5NYXhEYXlzKCk7XG4gIH1cblxuICByZXRyYWN0RGF5TW9udGgoZGF5OiBhbnksIG1vbnRoOiBhbnksIHllYXI6IGFueSk6IGFueSB7XG4gICAgcmV0dXJuIGAke2RheX0gJHttb250aH0gJHt5ZWFyfWA7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKFwia2V5ZG93bi5lc2NcIilcbiAgY2xvc2VPbkVzYygpIHtcbiAgICB0aGlzLmNhbmNlbERhdGVQaWNrZXIoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3VycmVudERhdGVJbnN0YW5jZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMubG9jYWxTZWxlY3RlZERhdGVzPy5zdGFydERhdGUpIHtcbiAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgICAgdGhpcy5uZXh0TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLm5leHRNb250aE51bWJlciwgdGhpcy5uZXh0WWVhck51bWJlcik7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IHNlbGVjdGVkU3RhcnREYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcz8uc3RhcnREYXRlLCB0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICBpZiAoc2VsZWN0ZWRTdGFydERhdGUuaXNWYWxpZCgpKSB7XG4gICAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyID0gc2VsZWN0ZWRTdGFydERhdGUueWVhcigpO1xuICAgICAgdGhpcy5uZXh0WWVhck51bWJlciA9IHNlbGVjdGVkU3RhcnREYXRlLmFkZCgxLCBcIm1vbnRoXCIpLnllYXIoKTtcbiAgICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gc2VsZWN0ZWRTdGFydERhdGUuZ2V0KFwibW9udGhcIikgLSAxO1xuICAgICAgdGhpcy5uZXh0TW9udGhOdW1iZXIgPSBzZWxlY3RlZFN0YXJ0RGF0ZS5hZGQoMSwgXCJtb250aFwiKS5tb250aCgpIC0gMTtcbiAgICAgIGlmKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID09PSAtMSl7XG4gICAgICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gMTFcbiAgICAgIH1cbiAgICAgIGlmKHRoaXMubmV4dE1vbnRoTnVtYmVyID09PSAtMSl7XG4gICAgICAgIHRoaXMubmV4dE1vbnRoTnVtYmVyID0gMTFcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gZ2V0TW9udGgodGhpcy5jdXJyZW50TW9udGhOdW1iZXIpO1xuICAgICAgdGhpcy5uZXh0TW9udGggPSBnZXRNb250aCh0aGlzLm5leHRNb250aE51bWJlcik7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVNaW5NYXhEYXlzKCkge1xuICAgIGNvbnN0IGN1cnJlbnRJbnN0YW5jZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UoKS55ZWFyKHRoaXMuY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyKTtcbiAgICBjb25zdCBtaW5EYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSh0aGlzLmRhdGEuZHBDb25maWcubWluRGF0ZSwgdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgaWYgKG1pbkRhdGUuaXNWYWxpZCgpKSB7XG4gICAgICB0aGlzLmlzUHJldmlvdXNNb250aERpc2FibGVkID0gbWluRGF0ZS5pc1NhbWVPckFmdGVyKGN1cnJlbnRJbnN0YW5jZSwgXCJtb250aFwiKTtcbiAgICB9XG4gICAgY29uc3QgbWF4RGF0ZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UodGhpcy5kYXRhLmRwQ29uZmlnLm1heERhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpO1xuICAgIGlmIChtYXhEYXRlLmlzVmFsaWQoKSkge1xuICAgICAgdGhpcy5pc05leHRNb250aERpc2FibGVkID0gbWF4RGF0ZS5pc1NhbWVPckJlZm9yZShjdXJyZW50SW5zdGFuY2UsIFwibW9udGhcIik7XG4gICAgfVxuICB9XG5cbiAgbmF2aWdhdGVNb250aChkaXJlY3Rpb246IFwiTkVYVFwiIHwgXCJQUkVWSU9VU1wiKTogdm9pZCB7XG4gICAgbGV0IHRoaXNNb250aDogTW9tZW50ID0gcGFyc2Vab25lKCkueWVhcih0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKS5tb250aCh0aGlzLmN1cnJlbnRNb250aE51bWJlcik7XG4gICAgaWYgKGRpcmVjdGlvbiA9PT0gXCJORVhUXCIpIHtcbiAgICAgdGhpc01vbnRoID0gdGhpc01vbnRoLmFkZCgxLCBcIm1vbnRoXCIpO1xuICAgIH0gZWxzZSBpZiAoZGlyZWN0aW9uID09PSBcIlBSRVZJT1VTXCIpIHtcbiAgICAgdGhpc01vbnRoID0gdGhpc01vbnRoLnN1YnRyYWN0KDEsIFwibW9udGhcIik7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gdGhpc01vbnRoLm1vbnRoKCk7XG4gICAgdGhpcy5uZXh0TW9udGhOdW1iZXIgPSB0aGlzTW9udGguY2xvbmUoKS5hZGQoMSwgXCJtb250aFwiKS5tb250aCgpO1xuICAgIHRoaXMuY3VycmVudE1vbnRoID0gZ2V0TW9udGgodGhpcy5jdXJyZW50TW9udGhOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoID0gZ2V0TW9udGgodGhpcy5uZXh0TW9udGhOdW1iZXIpO1xuICAgIGlmICh0aGlzLm5leHRNb250aE51bWJlciA9PT0gMCAmJiBkaXJlY3Rpb24gPT09IFwiUFJFVklPVVNcIikge1xuICAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyLS07XG4gICAgfSBlbHNlIGlmICh0aGlzLmN1cnJlbnRNb250aE51bWJlciA9PT0gMTEgJiYgZGlyZWN0aW9uID09PSBcIk5FWFRcIikge1xuICAgICB0aGlzLm5leHRZZWFyTnVtYmVyKys7XG4gICAgfWVsc2UgaWYgKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID09PSAwICYmIGRpcmVjdGlvbiA9PT0gXCJORVhUXCIpIHtcbiAgICAgdGhpcy5jdXJyZW50WWVhck51bWJlcisrO1xuICAgIH0gZWxzZSBpZiAodGhpcy5uZXh0TW9udGhOdW1iZXIgPT09IDExICYmIGRpcmVjdGlvbiA9PT0gXCJQUkVWSU9VU1wiKSB7XG4gICAgIHRoaXMubmV4dFllYXJOdW1iZXItLTtcbiAgICB9ZWxzZXtcbiAgICAgdGhpcy5uZXh0WWVhck51bWJlciA9IHRoaXMuY3VycmVudFllYXJOdW1iZXI7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICAgIHRoaXMuY2FsY3VsYXRlTWluTWF4RGF5cygpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZURhdGVzKG1vbnRoOiBudW1iZXIsIGN1cnJlbnRZZWFyTnVtYmVyOiBudW1iZXIpOiBJQ3VycmVudE1vbnRoRGF0ZXNbXSB7XG4gICAgbGV0IGRhdGVzOiBJQ3VycmVudE1vbnRoRGF0ZXNbXSA9IFtdO1xuICAgIGNvbnN0IGRheXNJbk1vbnRoID0gcGFyc2Vab25lKCkueWVhcihjdXJyZW50WWVhck51bWJlcikubW9udGgobW9udGgpLmRheXNJbk1vbnRoKCk7XG4gICAgZm9yIChsZXQgY3VycmVudERhdGUgPSAxOyBjdXJyZW50RGF0ZSA8PSBkYXlzSW5Nb250aDsgY3VycmVudERhdGUrKykge1xuICAgICAgY29uc3QgZGF0ZSA9IG1vbWVudCgpLnllYXIoY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKG1vbnRoKS5kYXRlKGN1cnJlbnREYXRlKTtcbiAgICAgIGNvbnN0IGRhdGVTdHJpbmcgPSBkYXRlLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICAgIGxldCBpc0Rpc2FibGVkRGF5ID0gdGhpcy5kYXRhLmRhdGVzRGlzYWJsZWQuc29tZShkID0+IGQgPT09IGRhdGVTdHJpbmcpO1xuICAgICAgY29uc3QgbWluRGF0ZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UodGhpcy5kYXRhLmRwQ29uZmlnLm1pbkRhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpO1xuICAgICAgaWYgKCFpc0Rpc2FibGVkRGF5ICYmIG1pbkRhdGUuaXNWYWxpZCgpKSB7XG4gICAgICAgIGxldCBEYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLnllYXIoY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKG1vbnRoKS5kYXRlKGN1cnJlbnREYXRlKTtcbiAgICAgICAgaXNEaXNhYmxlZERheSA9IG1pbkRhdGUuaXNBZnRlcihEYXRlLCBcImRheVwiKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1heERhdGUgPSB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKHRoaXMuZGF0YS5kcENvbmZpZy5tYXhEYXRlLCB0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICAgIGlmICghaXNEaXNhYmxlZERheSAmJiBtYXhEYXRlLmlzVmFsaWQoKSkge1xuICAgICAgICBpc0Rpc2FibGVkRGF5ID0gbWF4RGF0ZS5pc0JlZm9yZShkYXRlLCBcImRheVwiKTtcbiAgICAgIH1cbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5kYXRhPy5kcENvbmZpZz8ubWF4QWxsb3dlZFJhbmdlID4gMCAmJlxuICAgICAgICAhaXNEaXNhYmxlZERheSAmJlxuICAgICAgICAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXM/LnN0YXJ0RGF0ZSA/PyBmYWxzZSkgJiYgKCEodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMuZW5kRGF0ZSA/PyBmYWxzZSkpXG4gICAgICApIHtcbiAgICAgICAgY29uc3Qgc3RhcnREYXRlID0gbW9tZW50KHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLnN0YXJ0RGF0ZSwgdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCkuc3RhcnRPZignZGF5Jyk7XG4gICAgICAgIGNvbnN0IG1heEVuZERhdGUgPSBzdGFydERhdGUuY2xvbmUoKS5hZGQodGhpcy5kYXRhLmRwQ29uZmlnLm1heEFsbG93ZWRSYW5nZSAtIDEsICdkYXlzJyk7XG4gICAgICAgIGlzRGlzYWJsZWREYXkgPSBkYXRlLmlzQWZ0ZXIobWF4RW5kRGF0ZSwgJ2RheScpIFxuICAgICAgfVxuICAgICAgY29uc3QgaXNDdXJyZW50RGF5ID1cbiAgICAgICAgdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLnllYXIoY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKG1vbnRoKS5kYXRlKGN1cnJlbnREYXRlKS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCkgPT09XG4gICAgICAgIHRoaXMucGFyc2Vab25lSW5zdGFuY2UoKS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgICBjb25zdCBpc1NlbGVjdGVkU3RhcnREYXkgPVxuICAgICAgICAhaXNEaXNhYmxlZERheSAmJlxuICAgICAgICAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXM/LnN0YXJ0RGF0ZSA/PyBmYWxzZSkgJiZcbiAgICAgICAgZGF0ZS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCkgPT09IHRoaXMubG9jYWxTZWxlY3RlZERhdGVzPy5zdGFydERhdGU7XG4gICAgICBjb25zdCBpc0FmdGVyU2VsZWN0ZWRTdGFydERhdGUgPSAgbW9tZW50KGRhdGUsdGhpcy5kYXRhPy5kcENvbmZpZz8uZm9ybWF0KS5zdGFydE9mKCdkYXknKS5pc0FmdGVyKG1vbWVudCh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5zdGFydERhdGUsdGhpcy5kYXRhPy5kcENvbmZpZz8uZm9ybWF0KS5zdGFydE9mKCdkYXknKSwgJ2RheScpO1xuXG4gICAgICBjb25zdCBpc0JlZm9yZVNlbGVjdGVkRW5kRGF0ZSA9IG1vbWVudChkYXRlLHRoaXMuZGF0YT8uZHBDb25maWc/LmZvcm1hdCkuc3RhcnRPZignZGF5JykuaXNCZWZvcmUobW9tZW50KHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLmVuZERhdGUsdGhpcy5kYXRhPy5kcENvbmZpZz8uZm9ybWF0KS5zdGFydE9mKCdkYXknKSwgJ2RheScpO1xuICAgICAgY29uc3QgaW5SYW5nZURheSA9XG4gICAgICAgICh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5zdGFydERhdGUgPz8gZmFsc2UpICYmXG4gICAgICAgICh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5lbmREYXRlID8/IGZhbHNlKSAmJlxuICAgICAgICBpc0FmdGVyU2VsZWN0ZWRTdGFydERhdGUgJiZcbiAgICAgICAgaXNCZWZvcmVTZWxlY3RlZEVuZERhdGU7XG4gICAgICBjb25zdCBpc1NlbGVjdGVkRW5kRGF5ID1cbiAgICAgICAgIWlzRGlzYWJsZWREYXkgJiZcbiAgICAgICAgKCh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcz8uc3RhcnREYXRlICYmIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzPy5lbmREYXRlKSA/PyBmYWxzZSkgJiZcbiAgICAgICAgZGF0ZS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCkgPT09IHRoaXMubG9jYWxTZWxlY3RlZERhdGVzPy5lbmREYXRlO1xuICAgICAgZGF0ZXMucHVzaCh7XG4gICAgICAgIGRhdGU6IGN1cnJlbnREYXRlLFxuICAgICAgICB3ZWVrRGF5OiBkYXRlLmRheSgpLFxuICAgICAgICBpc0N1cnJlbnREYXksXG4gICAgICAgIGlzU2VsZWN0ZWRTdGFydERheSxcbiAgICAgICAgaXNTZWxlY3RlZEVuZERheSxcbiAgICAgICAgaW5SYW5nZURheSxcbiAgICAgICAgdG9hc3RNZXNzYWdlOiB0aGlzLmRhdGEubWVzc2FnZXMuZmluZChxID0+IGRhdGUuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpID09PSBxLmRhdGUpPy5tZXNzYWdlIHx8IFwiXCIsXG4gICAgICAgIGlzRGlzYWJsZWREYXlcbiAgICAgIH0pO1xuICAgIH1cbiAgICBmb3IgKGxldCBpID0gZGF0ZXNbMF0ud2Vla0RheTsgaSA+IDA7IGktLSkge1xuICAgICAgZGF0ZXMudW5zaGlmdCh7IGRhdGU6IDAsIHdlZWtEYXk6IGkgLSAxIH0pO1xuICAgIH1cbiAgICByZXR1cm4gZGF0ZXM7XG4gIH1cblxuICBzZWxlY3REYXkoZnJvbTogXCJMRUZUXCIgfCBcIlJJR0hUXCIsIGRheTogSUN1cnJlbnRNb250aERhdGVzKSB7XG4gICAgaWYgKGRheS5kYXRlIDw9IDApIHJldHVybjtcbiAgICBpZiAoIWRheS5pc0Rpc2FibGVkRGF5KSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsID0gXCJDdXN0b20gUmFuZ2VcIjtcbiAgICAgIGlmICh0aGlzLnNlbGVjdGlvblN0YXJ0ZWQpIHtcbiAgICAgICBcbiAgICAgICAgY29uc3QgbW9tZW50RGF5ID0gcGFyc2Vab25lKClcbiAgICAgICAgICAueWVhcihmcm9tID09PSBcIkxFRlRcIiA/IHRoaXMuY3VycmVudFllYXJOdW1iZXIgOiB0aGlzLm5leHRZZWFyTnVtYmVyKVxuICAgICAgICAgIC5tb250aChmcm9tID09PSBcIkxFRlRcIiA/IHRoaXMuY3VycmVudE1vbnRoTnVtYmVyIDogdGhpcy5uZXh0TW9udGhOdW1iZXIpXG4gICAgICAgICAgLmRhdGUoZGF5LmRhdGUpO1xuICAgICAgICBjb25zdCBzdGFydERhdGUgPSBwYXJzZVpvbmUodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMuc3RhcnREYXRlLCB0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTsgICAgXG4gICAgICAgIGlmIChtb21lbnREYXkuaXNCZWZvcmUoc3RhcnREYXRlLCBcImRheVwiKSkge1xuICAgICAgICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0ge1xuICAgICAgICAgICAgc3RhcnREYXRlOiBtb21lbnREYXkuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLFxuICAgICAgICAgICAgZW5kRGF0ZTogbnVsbFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyLCB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKTtcbiAgICAgICAgICB0aGlzLm5leHRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMubmV4dE1vbnRoTnVtYmVyLCB0aGlzLm5leHRZZWFyTnVtYmVyKTtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZWxlY3Rpb25TdGFydGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0ge1xuICAgICAgICAgIC4uLnRoaXMubG9jYWxTZWxlY3RlZERhdGVzLFxuICAgICAgICAgIGVuZERhdGU6IG1vbWVudERheS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdClcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc2VsZWN0aW9uU3RhcnRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0ge1xuICAgICAgICAgIHN0YXJ0RGF0ZTogcGFyc2Vab25lKClcbiAgICAgICAgICAgIC55ZWFyKGZyb20gPT09IFwiTEVGVFwiID8gdGhpcy5jdXJyZW50WWVhck51bWJlciA6IHRoaXMubmV4dFllYXJOdW1iZXIpXG4gICAgICAgICAgICAubW9udGgoZnJvbSA9PT0gXCJMRUZUXCIgPyB0aGlzLmN1cnJlbnRNb250aE51bWJlciA6IHRoaXMubmV4dE1vbnRoTnVtYmVyKVxuICAgICAgICAgICAgLmRhdGUoZGF5LmRhdGUpXG4gICAgICAgICAgICAuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLFxuICAgICAgICAgIGVuZERhdGU6IG51bGxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgICAgdGhpcy5uZXh0TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLm5leHRNb250aE51bWJlciwgdGhpcy5uZXh0WWVhck51bWJlcik7XG4gICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IGZhbHNlO1xuICAgICAgaWYgKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLnN0YXJ0RGF0ZSAmJiB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5lbmREYXRlKSB7XG4gICAgICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGRheS50b2FzdE1lc3NhZ2UpIHtcbiAgICAgIHRoaXMudG9hc3QuZGlzcGxheU1zZyhkYXkudG9hc3RNZXNzYWdlLCA0MDAwKTtcbiAgICB9XG4gIH1cbiAgc2VsZWN0UmFuZ2UoaXRlbTogUmFuZ2VJdGVtKSB7XG4gICAgaWYgKCFpdGVtKSByZXR1cm47XG4gICAgbGV0IHN0YXJ0RGF0ZSA9IG1vbWVudChpdGVtLnZhbHVlWzBdKTsgXG4gICAgbGV0IGVuZERhdGUgPSBtb21lbnQoaXRlbS52YWx1ZVsxXSk7XG4gICAgY29uc3Qgc3RhcnREYXRlU3RyID0gc3RhcnREYXRlLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICBjb25zdCBlbmREYXRlU3RyID0gZW5kRGF0ZS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgY29uc3QgaXNBbnlEYXRlRGlzYWJsZWQgPSB0aGlzLmRhdGEuZGF0ZXNEaXNhYmxlZC5zb21lKChkYXRlKSA9PlxuICAgICAgbW9tZW50KGRhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLmlzQmV0d2VlbihzdGFydERhdGUsIGVuZERhdGUsIG51bGwsIFwiW11cIilcbiAgICApO1xuICBcbiAgICBjb25zdCBtaW5EYXRlID0gbW9tZW50KHRoaXMuZGF0YS5kcENvbmZpZy5taW5EYXRlLCB0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICBjb25zdCBtYXhEYXRlID0gbW9tZW50KHRoaXMuZGF0YS5kcENvbmZpZy5tYXhEYXRlLCB0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICBjb25zdCBpc1dpdGhpbkxpbWl0cyA9XG4gICAgICAoIW1pbkRhdGUuaXNWYWxpZCgpIHx8ICFzdGFydERhdGUuaXNCZWZvcmUobWluRGF0ZSwgXCJkYXlcIikpICYmXG4gICAgICAoIW1heERhdGUuaXNWYWxpZCgpIHx8ICFlbmREYXRlLmlzQWZ0ZXIobWF4RGF0ZSwgXCJkYXlcIikpO1xuICBcbiAgICBpZiAoIWlzV2l0aGluTGltaXRzIHx8IGlzQW55RGF0ZURpc2FibGVkKSB7XG4gICAgICB0aGlzLnRvYXN0LmRpc3BsYXlNc2coXCJTZWxlY3RlZCByYW5nZSBjb250YWlucyBkaXNhYmxlZCBkYXRlcyBvciBpcyBvdXQgb2YgYm91bmRzLlwiLCA0MDAwKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1MYWJlbD0gaXRlbS5sYWJlbDtcbiAgICB0aGlzLmN1cnJlbnRNb250aE51bWJlciA9IHN0YXJ0RGF0ZS5tb250aCgpOyBcbiAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyID0gc3RhcnREYXRlLnllYXIoKTtcbiAgICBpZiAodGhpcy5jdXJyZW50TW9udGhOdW1iZXIgPT09IDExKSB7XG4gICAgICB0aGlzLm5leHRNb250aE51bWJlciA9IDA7XG4gICAgICB0aGlzLm5leHRZZWFyTnVtYmVyID0gdGhpcy5jdXJyZW50WWVhck51bWJlciArIDE7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmV4dE1vbnRoTnVtYmVyID0gdGhpcy5jdXJyZW50TW9udGhOdW1iZXIgKyAxO1xuICAgICAgdGhpcy5uZXh0WWVhck51bWJlciA9IHRoaXMuY3VycmVudFllYXJOdW1iZXI7XG4gICAgfVxuICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0geyBzdGFydERhdGU6IHN0YXJ0RGF0ZVN0ciwgZW5kRGF0ZTogZW5kRGF0ZVN0ciB9O1xuICAgIHRoaXMuY3VycmVudE1vbnRoID0gZ2V0TW9udGgodGhpcy5jdXJyZW50TW9udGhOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoID0gZ2V0TW9udGgodGhpcy5uZXh0TW9udGhOdW1iZXIpO1xuICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gZmFsc2U7XG4gICAgaWYgKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLnN0YXJ0RGF0ZSAmJiB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcy5lbmREYXRlKSB7XG4gICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IHRydWU7XG4gICAgfVxuICB9XG4gIFxuICBhcHBseURhdGVzKCkge1xuICAgIHRoaXMuZGF0YS5kYXRlQ2hhbmdlKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzKTtcbiAgfVxuICBjYW5jZWxEYXRlUGlja2VyKCkge1xuICAgIHRoaXMuZGF0YS5jbG9zZSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lclwiIGFyaWEtbGFiZWw9XCJkYXRlIHJhbmdlIHBpY2tlclwiIGNka1RyYXBGb2N1cyBbY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiPlxuICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fdmlld1wiPlxuICAgIDxkaXYgdGFiaW5kZXg9XCItMVwiIGNka0ZvY3VzSW5pdGlhbD48L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwiZGF0YT8uZHBDb25maWc/LnJhbmdlcz8ubGVuZ3RoID4gMFwiIGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fcmFuZ2VzXCI+XG4gICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGE/LmRwQ29uZmlnPy5yYW5nZXMgPz8gW11cIiA+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgW25nQ2xhc3NdPVwieydhY3RpdmUtcmFuZ2UnIDogc2VsZWN0ZWRJdGVtTGFiZWwgPT09IGl0ZW0ubGFiZWx9XCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UmFuZ2UoaXRlbSlcIlxuICAgICAgICAgIGNsYXNzPVwibWlzLWJ0blwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBpdGVtLmxhYmVsIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2PiA8YnV0dG9uIGNsYXNzPVwibWlzLWJ0blwiIFtuZ0NsYXNzXT1cInsnYWN0aXZlLXJhbmdlJyA6IHNlbGVjdGVkSXRlbUxhYmVsID09PSAnQ3VzdG9tIFJhbmdlJ31cIj5DdXN0b20gUmFuZ2U8L2J1dHRvbj4gPC9kaXY+XG4gIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJkYXRlcGlja2VyX19sZWZ0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9faGVhZGVyX19wcmFidVwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19hcnJvd19faWNvblwiXG4gICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAoY2xpY2spPVwiIWlzUHJldmlvdXNNb250aERpc2FibGVkICYmIG5hdmlnYXRlTW9udGgoJ1BSRVZJT1VTJylcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCIhaXNQcmV2aW91c01vbnRoRGlzYWJsZWQgJiYgbmF2aWdhdGVNb250aCgnUFJFVklPVVMnKVwiXG4gICAgICAgICAgYXJpYS1sYWJlbD1cIlByZXZpb3VzIE1vbnRoXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnZGlzYWJsZWQtbW9udGgnOiBpc1ByZXZpb3VzTW9udGhEaXNhYmxlZFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgICAgPHN2ZyB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDIwIDE2XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBkPVwiTTE5LjcwNzEgOC43MDcxMUMyMC4wOTc2IDguMzE2NTggMjAuMDk3NiA3LjY4MzQyIDE5LjcwNzEgNy4yOTI4OUwxMy4zNDMxIDAuOTI4OTMzQzEyLjk1MjYgMC41Mzg0MDkgMTIuMzE5NSAwLjUzODQwOSAxMS45Mjg5IDAuOTI4OTMzQzExLjUzODQgMS4zMTk0NiAxMS41Mzg0IDEuOTUyNjIgMTEuOTI4OSAyLjM0MzE1TDE3LjU4NTggOEwxMS45Mjg5IDEzLjY1NjlDMTEuNTM4NCAxNC4wNDc0IDExLjUzODQgMTQuNjgwNSAxMS45Mjg5IDE1LjA3MTFDMTIuMzE5NSAxNS40NjE2IDEyLjk1MjYgMTUuNDYxNiAxMy4zNDMxIDE1LjA3MTFMMTkuNzA3MSA4LjcwNzExWk0tOC43NDIyOGUtMDggOUwxOSA5TDE5IDdMOC43NDIyOGUtMDggN0wtOC43NDIyOGUtMDggOVpcIlxuICAgICAgICAgICAgICBmaWxsPVwiIzE4MUYzM1wiXG4gICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4+IHt7IGN1cnJlbnRNb250aCB9fSB7eyBjdXJyZW50WWVhck51bWJlciB9fSA8L3NwYW4+XG4gICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgIDwhLS0gQnV0dG9uIHZpc2libGUgaW4gbW9iaWxlIHZpZXcgLS0+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2Fycm93X19pY29uIG1vYmlsZV92aWV3XCJcbiAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgIChjbGljayk9XCIhaXNOZXh0TW9udGhEaXNhYmxlZCAmJiBuYXZpZ2F0ZU1vbnRoKCdORVhUJylcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCIhaXNOZXh0TW9udGhEaXNhYmxlZCAmJiBuYXZpZ2F0ZU1vbnRoKCdORVhUJylcIlxuICAgICAgICAgIGFyaWEtbGFiZWw9XCJOZXh0IE1vbnRoXCJcbiAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnZGlzYWJsZWQtbW9udGgnOiBpc05leHRNb250aERpc2FibGVkXG4gICAgICAgICAgfVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMjAgMTZcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGQ9XCJNMTkuNzA3MSA4LjcwNzExQzIwLjA5NzYgOC4zMTY1OCAyMC4wOTc2IDcuNjgzNDIgMTkuNzA3MSA3LjI5Mjg5TDEzLjM0MzEgMC45Mjg5MzNDMTIuOTUyNiAwLjUzODQwOSAxMi4zMTk1IDAuNTM4NDA5IDExLjkyODkgMC45Mjg5MzNDMTEuNTM4NCAxLjMxOTQ2IDExLjUzODQgMS45NTI2MiAxMS45Mjg5IDIuMzQzMTVMMTcuNTg1OCA4TDExLjkyODkgMTMuNjU2OUMxMS41Mzg0IDE0LjA0NzQgMTEuNTM4NCAxNC42ODA1IDExLjkyODkgMTUuMDcxMUMxMi4zMTk1IDE1LjQ2MTYgMTIuOTUyNiAxNS40NjE2IDEzLjM0MzEgMTUuMDcxMUwxOS43MDcxIDguNzA3MTFaTS04Ljc0MjI4ZS0wOCA5TDE5IDlMMTkgN0w4Ljc0MjI4ZS0wOCA3TC04Ljc0MjI4ZS0wOCA5WlwiXG4gICAgICAgICAgICAgIGZpbGw9XCIjMTgxRjMzXCJcbiAgICAgICAgICAgID48L3BhdGg+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fYm9keVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fd2Vla2RheXNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fd2Vla2RheVwiICpuZ0Zvcj1cImxldCB3ZWVrRGF5IG9mIHdlZWtEYXlzXCI+XG4gICAgICAgICAgICA8c3Bhbj57eyB3ZWVrRGF5LmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2RheXNcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2RheVwiIFxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAnc2VsZWN0ZWQtc2FtZS1kYXknOiBkYXkuaXNTZWxlY3RlZFN0YXJ0RGF5ICYmIGRheS5pc1NlbGVjdGVkRW5kRGF5LFxuICAgICAgICAgICAgICAnc2VsZWN0ZWQtc3RhcnQtZGF5JzogZGF5LmlzU2VsZWN0ZWRTdGFydERheSxcbiAgICAgICAgICAgICAgJ3NlbGVjdGVkLWVuZC1kYXknOiBkYXkuaXNTZWxlY3RlZEVuZERheSxcbiAgICAgICAgICAgICAgJ2Rpc2FibGVkLWRheSc6IGRheS5pc0Rpc2FibGVkRGF5LFxuICAgICAgICAgICAgICAnaW4tcmFuZ2UtZGF5JzogZGF5LmluUmFuZ2VEYXksXG4gICAgICAgICAgICAgICdpcy12YWxpZC1kYXRlJzogZGF5LmRhdGUgPiAwICYmICEoZGF5LmlzU2VsZWN0ZWRTdGFydERheSAmJiBkYXkuaXNTZWxlY3RlZEVuZERheSlcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGRheSBvZiBjdXJyZW50TW9udGhEYXRlc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0RGF5KCdMRUZUJywgZGF5KVwiXG4gICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwic2VsZWN0RGF5KCdMRUZUJywgZGF5KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXkuZGF0ZSA+IDBcIlxuICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiZGF5LmlzRGlzYWJsZWREYXkgPyAtMSA6IDBcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInJldHJhY3REYXlNb250aChkYXkuZGF0ZSwgY3VycmVudE1vbnRoLCBjdXJyZW50WWVhck51bWJlcilcIj5cbiAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZXBpY2tlcl9fcmlnaHRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19oZWFkZXJfX3ByYWJ1XCI+XG4gICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgIDxzcGFuPiB7eyBuZXh0TW9udGggfX0ge3sgbmV4dFllYXJOdW1iZXIgfX0gPC9zcGFuPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19hcnJvd19faWNvbiBwY192aWV3XCJcbiAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgIChjbGljayk9XCIhaXNOZXh0TW9udGhEaXNhYmxlZCAmJiBuYXZpZ2F0ZU1vbnRoKCdORVhUJylcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCIhaXNOZXh0TW9udGhEaXNhYmxlZCAmJiBuYXZpZ2F0ZU1vbnRoKCdORVhUJylcIlxuICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICdkaXNhYmxlZC1tb250aCc6IGlzTmV4dE1vbnRoRGlzYWJsZWRcbiAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAyMCAxNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgZD1cIk0xOS43MDcxIDguNzA3MTFDMjAuMDk3NiA4LjMxNjU4IDIwLjA5NzYgNy42ODM0MiAxOS43MDcxIDcuMjkyODlMMTMuMzQzMSAwLjkyODkzM0MxMi45NTI2IDAuNTM4NDA5IDEyLjMxOTUgMC41Mzg0MDkgMTEuOTI4OSAwLjkyODkzM0MxMS41Mzg0IDEuMzE5NDYgMTEuNTM4NCAxLjk1MjYyIDExLjkyODkgMi4zNDMxNUwxNy41ODU4IDhMMTEuOTI4OSAxMy42NTY5QzExLjUzODQgMTQuMDQ3NCAxMS41Mzg0IDE0LjY4MDUgMTEuOTI4OSAxNS4wNzExQzEyLjMxOTUgMTUuNDYxNiAxMi45NTI2IDE1LjQ2MTYgMTMuMzQzMSAxNS4wNzExTDE5LjcwNzEgOC43MDcxMVpNLTguNzQyMjhlLTA4IDlMMTkgOUwxOSA3TDguNzQyMjhlLTA4IDdMLTguNzQyMjhlLTA4IDlaXCJcbiAgICAgICAgICAgICAgZmlsbD1cIiMxODFGMzNcIlxuICAgICAgICAgICAgPjwvcGF0aD5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19ib2R5XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX193ZWVrZGF5c1wiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX193ZWVrZGF5XCIgKm5nRm9yPVwibGV0IHdlZWtEYXkgb2Ygd2Vla0RheXNcIj5cbiAgICAgICAgICAgIDxzcGFuPnt7IHdlZWtEYXkubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fZGF5c1wiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fZGF5XCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ3NlbGVjdGVkLXNhbWUtZGF5JzogZGF5LmlzU2VsZWN0ZWRTdGFydERheSAmJiBkYXkuaXNTZWxlY3RlZEVuZERheSxcbiAgICAgICAgICAgICAgJ3NlbGVjdGVkLXN0YXJ0LWRheSc6IGRheS5pc1NlbGVjdGVkU3RhcnREYXksXG4gICAgICAgICAgICAgICdzZWxlY3RlZC1lbmQtZGF5JzogZGF5LmlzU2VsZWN0ZWRFbmREYXksXG4gICAgICAgICAgICAgICdkaXNhYmxlZC1kYXknOiBkYXkuaXNEaXNhYmxlZERheSxcbiAgICAgICAgICAgICAgJ2luLXJhbmdlLWRheSc6IGRheS5pblJhbmdlRGF5LFxuICAgICAgICAgICAgICAnaXMtdmFsaWQtZGF0ZSc6IGRheS5kYXRlID4gMCAmJiAhKGRheS5pc1NlbGVjdGVkU3RhcnREYXkgJiYgZGF5LmlzU2VsZWN0ZWRFbmREYXkpXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXkgb2YgbmV4dE1vbnRoRGF0ZXNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdERheSgnUklHSFQnLCBkYXkpXCJcbiAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzZWxlY3REYXkoJ1JJR0hUJywgZGF5KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXkuZGF0ZSA+IDBcIlxuICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiZGF5LmlzRGlzYWJsZWREYXkgPyAtMSA6IDBcIlxuICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cInJldHJhY3REYXlNb250aChkYXkuZGF0ZSwgbmV4dE1vbnRoLCBuZXh0WWVhck51bWJlcilcIj5cbiAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXJfX2Zvb3RlclwiPlxuICAgIDxidXR0b24gbWlzLWJ1dHRvbiB0eXBlPVwibm9uZVwiIGlkPSdtb2JpbGUtZm9vdGVyLWJ0bicgKGNsaWNrKT1cImNhbmNlbERhdGVQaWNrZXIoKVwiPkNhbmNlbDwvYnV0dG9uPlxuICAgIDxidXR0b24gbWlzLWJ1dHRvbiB0eXBlPVwicHJpbWFyeVwiIGlkPVwibW9iaWxlLWZvb3Rlci1idG5cIiAoY2xpY2spPVwiYXBwbHlEYXRlcygpXCIgW2Rpc2FibGVkXT1cIiFpc0RhdGVzVmFsaWRcIj5BcHBseTwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvZGl2PiJdfQ==