mis-crystal-design-system 4.0.51 → 17.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (838) hide show
  1. package/action-list/action-list.component.d.ts +3 -0
  2. package/action-list/action-list.module.d.ts +9 -0
  3. package/analytics/analytics.module.d.ts +4 -0
  4. package/analytics/analytics.service.d.ts +3 -0
  5. package/async-search-dropdown/async-dropdown.component.d.ts +6 -3
  6. package/async-search-dropdown/async-dropdown.module.d.ts +9 -0
  7. package/button/button.component.d.ts +3 -0
  8. package/button/button.directive.d.ts +3 -0
  9. package/button/button.module.d.ts +7 -0
  10. package/checkbox/checkbox.component.d.ts +3 -0
  11. package/checkbox/checkbox.module.d.ts +7 -0
  12. package/chip/chip.component.d.ts +3 -0
  13. package/chip/chip.module.d.ts +6 -0
  14. package/datepicker_v2/datepicker.module.d.ts +10 -0
  15. package/datepicker_v2/models/dp-config.model.d.ts +1 -1
  16. package/datepicker_v2/public_api.d.ts +1 -0
  17. package/datepicker_v2/tz-datepicker.directive.d.ts +3 -0
  18. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +3 -0
  19. package/daterangepicker_v2/daterangepicker.module.d.ts +10 -0
  20. package/daterangepicker_v2/models/drp-config.model.d.ts +1 -1
  21. package/daterangepicker_v2/public_api.d.ts +1 -0
  22. package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +3 -0
  23. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +3 -0
  24. package/drawer/drawer-body/drawer-body.component.d.ts +3 -1
  25. package/drawer/drawer.module.d.ts +8 -0
  26. package/drawer/drawer.service.d.ts +3 -0
  27. package/dropdown/calculate-container-height.directive.d.ts +3 -0
  28. package/dropdown/dropdown.component.d.ts +3 -0
  29. package/dropdown/dropdown.module.d.ts +11 -0
  30. package/dynamic-form/dynamic-form.component.d.ts +11 -8
  31. package/dynamic-form/dynamic-form.module.d.ts +13 -0
  32. package/esm2022/action-list/action-list.component.mjs +363 -0
  33. package/esm2022/action-list/action-list.module.mjs +25 -0
  34. package/esm2022/analytics/analytics.module.mjs +18 -0
  35. package/esm2022/analytics/analytics.service.mjs +63 -0
  36. package/esm2022/async-search-dropdown/async-dropdown.component.mjs +467 -0
  37. package/esm2022/async-search-dropdown/async-dropdown.module.mjs +22 -0
  38. package/esm2022/button/button.component.mjs +88 -0
  39. package/esm2022/button/button.directive.mjs +61 -0
  40. package/esm2022/button/button.module.mjs +23 -0
  41. package/esm2022/checkbox/checkbox.component.mjs +124 -0
  42. package/esm2022/checkbox/checkbox.module.mjs +23 -0
  43. package/esm2022/chip/chip.component.mjs +82 -0
  44. package/esm2022/chip/chip.module.mjs +22 -0
  45. package/esm2022/datepicker_v2/datepicker.module.mjs +24 -0
  46. package/esm2022/datepicker_v2/mis-crystal-design-system-datepicker_v2.mjs +5 -0
  47. package/esm2022/datepicker_v2/public_api.mjs +4 -0
  48. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +164 -0
  49. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +246 -0
  50. package/{esm2015/daterangepicker_v2/utils/index.js → esm2022/datepicker_v2/utils/index.mjs} +1 -1
  51. package/esm2022/daterangepicker_v2/daterangepicker.module.mjs +25 -0
  52. package/esm2022/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.mjs +5 -0
  53. package/esm2022/daterangepicker_v2/public_api.mjs +4 -0
  54. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +135 -0
  55. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +365 -0
  56. package/esm2022/daterangepicker_v2/utils/index.mjs +45 -0
  57. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +59 -0
  58. package/{esm2015/drawer/drawer-ref.js → esm2022/drawer/drawer-ref.mjs} +4 -4
  59. package/esm2022/drawer/drawer.module.mjs +33 -0
  60. package/esm2022/drawer/drawer.service.mjs +56 -0
  61. package/esm2022/drawer/mis-crystal-design-system-drawer.mjs +5 -0
  62. package/esm2022/dropdown/calculate-container-height.directive.mjs +41 -0
  63. package/esm2022/dropdown/dropdown.component.mjs +404 -0
  64. package/esm2022/dropdown/dropdown.module.mjs +27 -0
  65. package/esm2022/dropdown/mis-crystal-design-system-dropdown.mjs +5 -0
  66. package/esm2022/dynamic-form/dynamic-form.component.mjs +705 -0
  67. package/esm2022/dynamic-form/dynamic-form.module.mjs +56 -0
  68. package/esm2022/fab/fab.component.mjs +145 -0
  69. package/esm2022/fab/fab.module.mjs +22 -0
  70. package/esm2022/input/directives/input/input.directive.mjs +40 -0
  71. package/esm2022/input/mis-input.component.mjs +85 -0
  72. package/esm2022/input/mis-input.module.mjs +21 -0
  73. package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +75 -0
  74. package/esm2022/input-stepper/input-stepper.module.mjs +25 -0
  75. package/esm2022/loader/loader.component.mjs +25 -0
  76. package/esm2022/loader/loader.module.mjs +22 -0
  77. package/esm2022/menu/menu-close.directive.mjs +25 -0
  78. package/esm2022/menu/menu.directive.mjs +77 -0
  79. package/esm2022/menu/menu.module.mjs +23 -0
  80. package/esm2022/mobile-filter/mobile-filter.component.mjs +178 -0
  81. package/esm2022/mobile-filter/mobile-filter.module.mjs +21 -0
  82. package/esm2022/modal/mis-crystal-design-system-modal.mjs +5 -0
  83. package/esm2022/modal/modal.module.mjs +33 -0
  84. package/esm2022/modal/modal.service.mjs +70 -0
  85. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +56 -0
  86. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +477 -0
  87. package/esm2022/multi-select-dropdown/multi-select-dropdown.module.mjs +26 -0
  88. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +509 -0
  89. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +26 -0
  90. package/esm2022/phone-input/phone-input.component.mjs +116 -0
  91. package/esm2022/phone-input/phone-input.module.mjs +27 -0
  92. package/esm2022/radio-button/radio-button.component.mjs +57 -0
  93. package/esm2022/radio-button/radio-button.module.mjs +23 -0
  94. package/esm2022/ske-loader/ske-loader.component.mjs +54 -0
  95. package/esm2022/ske-loader/ske-loader.module.mjs +19 -0
  96. package/esm2022/slider/slider.component.mjs +46 -0
  97. package/esm2022/slider/slider.module.mjs +30 -0
  98. package/esm2022/snackbar/snackbar/snackbar.component.mjs +72 -0
  99. package/esm2022/snackbar/snackbar.module.mjs +36 -0
  100. package/esm2022/snackbar/snackbar.service.mjs +47 -0
  101. package/esm2022/specificdatepicker/mis-crystal-design-system-specificdatepicker.mjs +5 -0
  102. package/esm2022/specificdatepicker/public_api.mjs +5 -0
  103. package/esm2022/specificdatepicker/specificdatepicker.module.mjs +27 -0
  104. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +619 -0
  105. package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +196 -0
  106. package/esm2022/specificdatepicker/utils/index.mjs +45 -0
  107. package/esm2022/star-rating/star-rating.component.mjs +113 -0
  108. package/esm2022/star-rating/star-rating.module.mjs +19 -0
  109. package/esm2022/switch/switch.component.mjs +56 -0
  110. package/esm2022/switch/switch.module.mjs +23 -0
  111. package/esm2022/table/custom-table-cell.directive.mjs +42 -0
  112. package/esm2022/table/filter/filter.component.mjs +169 -0
  113. package/esm2022/table/mis-crystal-design-system-table.mjs +5 -0
  114. package/esm2022/table/public_api.mjs +7 -0
  115. package/esm2022/table/sub-table/sub-table.component.mjs +192 -0
  116. package/esm2022/table/table.component.mjs +469 -0
  117. package/esm2022/table/table.module.mjs +27 -0
  118. package/esm2022/timepicker/mis-crystal-design-system-timepicker.mjs +5 -0
  119. package/esm2022/timepicker/timepicker.component.mjs +343 -0
  120. package/esm2022/timepicker/timepicker.directive.mjs +65 -0
  121. package/esm2022/timepicker/timepicker.module.mjs +26 -0
  122. package/esm2022/timerangepicker/timerangepicker.component.mjs +228 -0
  123. package/esm2022/timerangepicker/timerangepicker.module.mjs +24 -0
  124. package/esm2022/toast/toast.component.mjs +51 -0
  125. package/esm2022/toast/toast.data.service.mjs +30 -0
  126. package/esm2022/toast/toast.module.mjs +33 -0
  127. package/esm2022/toast/toast.service.mjs +91 -0
  128. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +78 -0
  129. package/esm2022/tooltip/tooltip.directive.mjs +137 -0
  130. package/esm2022/tooltip/tooltip.module.mjs +24 -0
  131. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +188 -0
  132. package/esm2022/virtual-scroll/virtual-scroll.module.mjs +34 -0
  133. package/esm2022/widgets/classes/async-widget.mjs +23 -0
  134. package/esm2022/widgets/classes/base-widget.mjs +32 -0
  135. package/esm2022/widgets/classes/sync-widget.mjs +20 -0
  136. package/esm2022/widgets/classes/widget-group.mjs +32 -0
  137. package/esm2022/widgets/services/widget.service.mjs +18 -0
  138. package/esm2022/widgets/widgets.module.mjs +18 -0
  139. package/fab/fab.component.d.ts +6 -3
  140. package/fab/fab.module.d.ts +6 -0
  141. package/fesm2022/mis-crystal-design-system-action-list.mjs +391 -0
  142. package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -0
  143. package/{fesm2015/mis-crystal-design-system-analytics.js → fesm2022/mis-crystal-design-system-analytics.mjs} +21 -15
  144. package/fesm2022/mis-crystal-design-system-analytics.mjs.map +1 -0
  145. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +491 -0
  146. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -0
  147. package/fesm2022/mis-crystal-design-system-button.mjs +173 -0
  148. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -0
  149. package/fesm2022/mis-crystal-design-system-checkbox.mjs +150 -0
  150. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -0
  151. package/fesm2022/mis-crystal-design-system-chip.mjs +108 -0
  152. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -0
  153. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs +478 -0
  154. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -0
  155. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +568 -0
  156. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -0
  157. package/fesm2022/mis-crystal-design-system-drawer.mjs +173 -0
  158. package/fesm2022/mis-crystal-design-system-drawer.mjs.map +1 -0
  159. package/fesm2022/mis-crystal-design-system-dropdown.mjs +472 -0
  160. package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -0
  161. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs +763 -0
  162. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -0
  163. package/fesm2022/mis-crystal-design-system-fab.mjs +171 -0
  164. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -0
  165. package/fesm2022/mis-crystal-design-system-input-stepper.mjs +104 -0
  166. package/fesm2022/mis-crystal-design-system-input-stepper.mjs.map +1 -0
  167. package/fesm2022/mis-crystal-design-system-input.mjs +146 -0
  168. package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -0
  169. package/fesm2022/mis-crystal-design-system-loader.mjs +51 -0
  170. package/fesm2022/mis-crystal-design-system-loader.mjs.map +1 -0
  171. package/fesm2022/mis-crystal-design-system-menu.mjs +124 -0
  172. package/fesm2022/mis-crystal-design-system-menu.mjs.map +1 -0
  173. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +203 -0
  174. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -0
  175. package/fesm2022/mis-crystal-design-system-modal.mjs +173 -0
  176. package/fesm2022/mis-crystal-design-system-modal.mjs.map +1 -0
  177. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs +506 -0
  178. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -0
  179. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs +538 -0
  180. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -0
  181. package/fesm2022/mis-crystal-design-system-phone-input.mjs +145 -0
  182. package/fesm2022/mis-crystal-design-system-phone-input.mjs.map +1 -0
  183. package/fesm2022/mis-crystal-design-system-radio-button.mjs +83 -0
  184. package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -0
  185. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +77 -0
  186. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -0
  187. package/fesm2022/mis-crystal-design-system-slider.mjs +80 -0
  188. package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -0
  189. package/fesm2022/mis-crystal-design-system-snackbar.mjs +155 -0
  190. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -0
  191. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs +884 -0
  192. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -0
  193. package/fesm2022/mis-crystal-design-system-star-rating.mjs +136 -0
  194. package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -0
  195. package/fesm2022/mis-crystal-design-system-styles.mjs +4 -0
  196. package/fesm2022/mis-crystal-design-system-styles.mjs.map +1 -0
  197. package/fesm2022/mis-crystal-design-system-switch.mjs +82 -0
  198. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -0
  199. package/fesm2022/mis-crystal-design-system-table.mjs +888 -0
  200. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -0
  201. package/fesm2022/mis-crystal-design-system-timepicker.mjs +429 -0
  202. package/fesm2022/mis-crystal-design-system-timepicker.mjs.map +1 -0
  203. package/{fesm2015/mis-crystal-design-system-timerangepicker.js → fesm2022/mis-crystal-design-system-timerangepicker.mjs} +73 -35
  204. package/fesm2022/mis-crystal-design-system-timerangepicker.mjs.map +1 -0
  205. package/fesm2022/mis-crystal-design-system-toast.mjs +199 -0
  206. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -0
  207. package/fesm2022/mis-crystal-design-system-tooltip.mjs +238 -0
  208. package/fesm2022/mis-crystal-design-system-tooltip.mjs.map +1 -0
  209. package/{fesm2015/mis-crystal-design-system-utils.js → fesm2022/mis-crystal-design-system-utils.mjs} +1 -1
  210. package/fesm2022/mis-crystal-design-system-utils.mjs.map +1 -0
  211. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs +227 -0
  212. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -0
  213. package/{fesm2015/mis-crystal-design-system-widgets.js → fesm2022/mis-crystal-design-system-widgets.mjs} +13 -7
  214. package/fesm2022/mis-crystal-design-system-widgets.mjs.map +1 -0
  215. package/{fesm2015/mis-crystal-design-system.js → fesm2022/mis-crystal-design-system.mjs} +1 -1
  216. package/fesm2022/mis-crystal-design-system.mjs.map +1 -0
  217. package/input/directives/input/input.directive.d.ts +3 -0
  218. package/input/mis-input.component.d.ts +3 -0
  219. package/input/mis-input.module.d.ts +8 -0
  220. package/input-stepper/input-stepper/input-stepper.component.d.ts +3 -0
  221. package/input-stepper/input-stepper.module.d.ts +6 -0
  222. package/loader/loader.component.d.ts +3 -0
  223. package/loader/loader.module.d.ts +6 -0
  224. package/menu/menu-close.directive.d.ts +3 -0
  225. package/menu/menu.directive.d.ts +3 -0
  226. package/menu/menu.module.d.ts +9 -1
  227. package/mobile-filter/mobile-filter.component.d.ts +3 -0
  228. package/mobile-filter/mobile-filter.module.d.ts +8 -0
  229. package/modal/modal.module.d.ts +8 -0
  230. package/modal/modal.service.d.ts +3 -0
  231. package/modal/module-wrapper/module-wrapper.component.d.ts +3 -0
  232. package/multi-select-dropdown/multi-select-dropdown.component.d.ts +3 -0
  233. package/multi-select-dropdown/multi-select-dropdown.module.d.ts +10 -0
  234. package/nested-multi-select-dropdown/nested-multi-select-dropdown.component.d.ts +3 -0
  235. package/nested-multi-select-dropdown/nested-multi-select-dropdown.module.d.ts +10 -0
  236. package/package.json +240 -9
  237. package/phone-input/phone-input.component.d.ts +5 -2
  238. package/phone-input/phone-input.module.d.ts +10 -0
  239. package/radio-button/radio-button.component.d.ts +3 -0
  240. package/radio-button/radio-button.module.d.ts +7 -0
  241. package/ske-loader/ske-loader.component.d.ts +3 -0
  242. package/ske-loader/ske-loader.module.d.ts +6 -0
  243. package/slider/slider.component.d.ts +6 -3
  244. package/slider/slider.module.d.ts +7 -0
  245. package/snackbar/snackbar/snackbar.component.d.ts +3 -0
  246. package/snackbar/snackbar.module.d.ts +6 -0
  247. package/snackbar/snackbar.service.d.ts +5 -2
  248. package/specificdatepicker/models/sdp-config.model.d.ts +1 -1
  249. package/specificdatepicker/public_api.d.ts +2 -0
  250. package/specificdatepicker/specificdatepicker.module.d.ts +12 -0
  251. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +5 -2
  252. package/specificdatepicker/tz-specificdatepicker.directive.d.ts +3 -0
  253. package/star-rating/star-rating.component.d.ts +3 -0
  254. package/star-rating/star-rating.module.d.ts +6 -0
  255. package/switch/switch.component.d.ts +3 -0
  256. package/switch/switch.module.d.ts +7 -0
  257. package/table/custom-table-cell.directive.d.ts +3 -0
  258. package/table/filter/filter.component.d.ts +4 -1
  259. package/table/public_api.d.ts +2 -0
  260. package/table/sub-table/sub-table.component.d.ts +3 -0
  261. package/table/table.component.d.ts +3 -0
  262. package/table/table.module.d.ts +11 -0
  263. package/timepicker/timepicker.component.d.ts +3 -0
  264. package/timepicker/timepicker.directive.d.ts +3 -0
  265. package/timepicker/timepicker.module.d.ts +10 -0
  266. package/timerangepicker/timerange.namespace.d.ts +1 -1
  267. package/timerangepicker/timerangepicker.component.d.ts +3 -0
  268. package/timerangepicker/timerangepicker.module.d.ts +8 -0
  269. package/toast/toast.component.d.ts +3 -0
  270. package/toast/toast.data.service.d.ts +3 -0
  271. package/toast/toast.module.d.ts +7 -0
  272. package/toast/toast.service.d.ts +4 -1
  273. package/tooltip/models/tooltip.model.d.ts +1 -1
  274. package/tooltip/tooltip-container/tooltip.component.d.ts +3 -0
  275. package/tooltip/tooltip.directive.d.ts +3 -0
  276. package/tooltip/tooltip.module.d.ts +8 -0
  277. package/virtual-scroll/virtual-scroll.component.d.ts +3 -0
  278. package/virtual-scroll/virtual-scroll.module.d.ts +8 -0
  279. package/widgets/interfaces/widgets.model.d.ts +1 -1
  280. package/widgets/services/widget.service.d.ts +3 -0
  281. package/widgets/widgets.module.d.ts +5 -0
  282. package/action-list/mis-crystal-design-system-action-list.d.ts +0 -4
  283. package/action-list/mis-crystal-design-system-action-list.metadata.json +0 -1
  284. package/action-list/package.json +0 -11
  285. package/analytics/mis-crystal-design-system-analytics.d.ts +0 -4
  286. package/analytics/mis-crystal-design-system-analytics.metadata.json +0 -1
  287. package/analytics/package.json +0 -11
  288. package/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.d.ts +0 -4
  289. package/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.metadata.json +0 -1
  290. package/async-search-dropdown/package.json +0 -11
  291. package/bundles/mis-crystal-design-system-action-list.umd.js +0 -509
  292. package/bundles/mis-crystal-design-system-action-list.umd.js.map +0 -1
  293. package/bundles/mis-crystal-design-system-action-list.umd.min.js +0 -16
  294. package/bundles/mis-crystal-design-system-action-list.umd.min.js.map +0 -1
  295. package/bundles/mis-crystal-design-system-analytics.umd.js +0 -422
  296. package/bundles/mis-crystal-design-system-analytics.umd.js.map +0 -1
  297. package/bundles/mis-crystal-design-system-analytics.umd.min.js +0 -16
  298. package/bundles/mis-crystal-design-system-analytics.umd.min.js.map +0 -1
  299. package/bundles/mis-crystal-design-system-async-search-dropdown.umd.js +0 -279
  300. package/bundles/mis-crystal-design-system-async-search-dropdown.umd.js.map +0 -1
  301. package/bundles/mis-crystal-design-system-async-search-dropdown.umd.min.js +0 -2
  302. package/bundles/mis-crystal-design-system-async-search-dropdown.umd.min.js.map +0 -1
  303. package/bundles/mis-crystal-design-system-button.umd.js +0 -134
  304. package/bundles/mis-crystal-design-system-button.umd.js.map +0 -1
  305. package/bundles/mis-crystal-design-system-button.umd.min.js +0 -2
  306. package/bundles/mis-crystal-design-system-button.umd.min.js.map +0 -1
  307. package/bundles/mis-crystal-design-system-checkbox.umd.js +0 -127
  308. package/bundles/mis-crystal-design-system-checkbox.umd.js.map +0 -1
  309. package/bundles/mis-crystal-design-system-checkbox.umd.min.js +0 -2
  310. package/bundles/mis-crystal-design-system-checkbox.umd.min.js.map +0 -1
  311. package/bundles/mis-crystal-design-system-chip.umd.js +0 -64
  312. package/bundles/mis-crystal-design-system-chip.umd.js.map +0 -1
  313. package/bundles/mis-crystal-design-system-chip.umd.min.js +0 -2
  314. package/bundles/mis-crystal-design-system-chip.umd.min.js.map +0 -1
  315. package/bundles/mis-crystal-design-system-datepicker_v2.umd.js +0 -706
  316. package/bundles/mis-crystal-design-system-datepicker_v2.umd.js.map +0 -1
  317. package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js +0 -16
  318. package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js.map +0 -1
  319. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.js +0 -464
  320. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.js.map +0 -1
  321. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js +0 -2
  322. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js.map +0 -1
  323. package/bundles/mis-crystal-design-system-drawer.umd.js +0 -169
  324. package/bundles/mis-crystal-design-system-drawer.umd.js.map +0 -1
  325. package/bundles/mis-crystal-design-system-drawer.umd.min.js +0 -2
  326. package/bundles/mis-crystal-design-system-drawer.umd.min.js.map +0 -1
  327. package/bundles/mis-crystal-design-system-dropdown.umd.js +0 -558
  328. package/bundles/mis-crystal-design-system-dropdown.umd.js.map +0 -1
  329. package/bundles/mis-crystal-design-system-dropdown.umd.min.js +0 -16
  330. package/bundles/mis-crystal-design-system-dropdown.umd.min.js.map +0 -1
  331. package/bundles/mis-crystal-design-system-dynamic-form.umd.js +0 -740
  332. package/bundles/mis-crystal-design-system-dynamic-form.umd.js.map +0 -1
  333. package/bundles/mis-crystal-design-system-dynamic-form.umd.min.js +0 -16
  334. package/bundles/mis-crystal-design-system-dynamic-form.umd.min.js.map +0 -1
  335. package/bundles/mis-crystal-design-system-fab.umd.js +0 -95
  336. package/bundles/mis-crystal-design-system-fab.umd.js.map +0 -1
  337. package/bundles/mis-crystal-design-system-fab.umd.min.js +0 -2
  338. package/bundles/mis-crystal-design-system-fab.umd.min.js.map +0 -1
  339. package/bundles/mis-crystal-design-system-input-stepper.umd.js +0 -85
  340. package/bundles/mis-crystal-design-system-input-stepper.umd.js.map +0 -1
  341. package/bundles/mis-crystal-design-system-input-stepper.umd.min.js +0 -2
  342. package/bundles/mis-crystal-design-system-input-stepper.umd.min.js.map +0 -1
  343. package/bundles/mis-crystal-design-system-input.umd.js +0 -116
  344. package/bundles/mis-crystal-design-system-input.umd.js.map +0 -1
  345. package/bundles/mis-crystal-design-system-input.umd.min.js +0 -2
  346. package/bundles/mis-crystal-design-system-input.umd.min.js.map +0 -1
  347. package/bundles/mis-crystal-design-system-loader.umd.js +0 -53
  348. package/bundles/mis-crystal-design-system-loader.umd.js.map +0 -1
  349. package/bundles/mis-crystal-design-system-loader.umd.min.js +0 -2
  350. package/bundles/mis-crystal-design-system-loader.umd.min.js.map +0 -1
  351. package/bundles/mis-crystal-design-system-menu.umd.js +0 -119
  352. package/bundles/mis-crystal-design-system-menu.umd.js.map +0 -1
  353. package/bundles/mis-crystal-design-system-menu.umd.min.js +0 -2
  354. package/bundles/mis-crystal-design-system-menu.umd.min.js.map +0 -1
  355. package/bundles/mis-crystal-design-system-mobile-filter.umd.js +0 -89
  356. package/bundles/mis-crystal-design-system-mobile-filter.umd.js.map +0 -1
  357. package/bundles/mis-crystal-design-system-mobile-filter.umd.min.js +0 -2
  358. package/bundles/mis-crystal-design-system-mobile-filter.umd.min.js.map +0 -1
  359. package/bundles/mis-crystal-design-system-modal.umd.js +0 -161
  360. package/bundles/mis-crystal-design-system-modal.umd.js.map +0 -1
  361. package/bundles/mis-crystal-design-system-modal.umd.min.js +0 -2
  362. package/bundles/mis-crystal-design-system-modal.umd.min.js.map +0 -1
  363. package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js +0 -623
  364. package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.js.map +0 -1
  365. package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js +0 -16
  366. package/bundles/mis-crystal-design-system-multi-select-dropdown.umd.min.js.map +0 -1
  367. package/bundles/mis-crystal-design-system-nested-multi-select-dropdown.umd.js +0 -636
  368. package/bundles/mis-crystal-design-system-nested-multi-select-dropdown.umd.js.map +0 -1
  369. package/bundles/mis-crystal-design-system-nested-multi-select-dropdown.umd.min.js +0 -16
  370. package/bundles/mis-crystal-design-system-nested-multi-select-dropdown.umd.min.js.map +0 -1
  371. package/bundles/mis-crystal-design-system-phone-input.umd.js +0 -117
  372. package/bundles/mis-crystal-design-system-phone-input.umd.js.map +0 -1
  373. package/bundles/mis-crystal-design-system-phone-input.umd.min.js +0 -2
  374. package/bundles/mis-crystal-design-system-phone-input.umd.min.js.map +0 -1
  375. package/bundles/mis-crystal-design-system-radio-button.umd.js +0 -77
  376. package/bundles/mis-crystal-design-system-radio-button.umd.js.map +0 -1
  377. package/bundles/mis-crystal-design-system-radio-button.umd.min.js +0 -2
  378. package/bundles/mis-crystal-design-system-radio-button.umd.min.js.map +0 -1
  379. package/bundles/mis-crystal-design-system-ske-loader.umd.js +0 -65
  380. package/bundles/mis-crystal-design-system-ske-loader.umd.js.map +0 -1
  381. package/bundles/mis-crystal-design-system-ske-loader.umd.min.js +0 -2
  382. package/bundles/mis-crystal-design-system-ske-loader.umd.min.js.map +0 -1
  383. package/bundles/mis-crystal-design-system-slider.umd.js +0 -73
  384. package/bundles/mis-crystal-design-system-slider.umd.js.map +0 -1
  385. package/bundles/mis-crystal-design-system-slider.umd.min.js +0 -2
  386. package/bundles/mis-crystal-design-system-slider.umd.min.js.map +0 -1
  387. package/bundles/mis-crystal-design-system-snackbar.umd.js +0 -114
  388. package/bundles/mis-crystal-design-system-snackbar.umd.js.map +0 -1
  389. package/bundles/mis-crystal-design-system-snackbar.umd.min.js +0 -2
  390. package/bundles/mis-crystal-design-system-snackbar.umd.min.js.map +0 -1
  391. package/bundles/mis-crystal-design-system-specificdatepicker.umd.js +0 -977
  392. package/bundles/mis-crystal-design-system-specificdatepicker.umd.js.map +0 -1
  393. package/bundles/mis-crystal-design-system-specificdatepicker.umd.min.js +0 -16
  394. package/bundles/mis-crystal-design-system-specificdatepicker.umd.min.js.map +0 -1
  395. package/bundles/mis-crystal-design-system-star-rating.umd.js +0 -112
  396. package/bundles/mis-crystal-design-system-star-rating.umd.js.map +0 -1
  397. package/bundles/mis-crystal-design-system-star-rating.umd.min.js +0 -2
  398. package/bundles/mis-crystal-design-system-star-rating.umd.min.js.map +0 -1
  399. package/bundles/mis-crystal-design-system-styles.umd.js +0 -11
  400. package/bundles/mis-crystal-design-system-styles.umd.js.map +0 -1
  401. package/bundles/mis-crystal-design-system-styles.umd.min.js +0 -2
  402. package/bundles/mis-crystal-design-system-styles.umd.min.js.map +0 -1
  403. package/bundles/mis-crystal-design-system-switch.umd.js +0 -79
  404. package/bundles/mis-crystal-design-system-switch.umd.js.map +0 -1
  405. package/bundles/mis-crystal-design-system-switch.umd.min.js +0 -2
  406. package/bundles/mis-crystal-design-system-switch.umd.min.js.map +0 -1
  407. package/bundles/mis-crystal-design-system-table.umd.js +0 -784
  408. package/bundles/mis-crystal-design-system-table.umd.js.map +0 -1
  409. package/bundles/mis-crystal-design-system-table.umd.min.js +0 -16
  410. package/bundles/mis-crystal-design-system-table.umd.min.js.map +0 -1
  411. package/bundles/mis-crystal-design-system-timepicker.umd.js +0 -688
  412. package/bundles/mis-crystal-design-system-timepicker.umd.js.map +0 -1
  413. package/bundles/mis-crystal-design-system-timepicker.umd.min.js +0 -16
  414. package/bundles/mis-crystal-design-system-timepicker.umd.min.js.map +0 -1
  415. package/bundles/mis-crystal-design-system-timerangepicker.umd.js +0 -248
  416. package/bundles/mis-crystal-design-system-timerangepicker.umd.js.map +0 -1
  417. package/bundles/mis-crystal-design-system-timerangepicker.umd.min.js +0 -2
  418. package/bundles/mis-crystal-design-system-timerangepicker.umd.min.js.map +0 -1
  419. package/bundles/mis-crystal-design-system-toast.umd.js +0 -202
  420. package/bundles/mis-crystal-design-system-toast.umd.js.map +0 -1
  421. package/bundles/mis-crystal-design-system-toast.umd.min.js +0 -2
  422. package/bundles/mis-crystal-design-system-toast.umd.min.js.map +0 -1
  423. package/bundles/mis-crystal-design-system-tooltip.umd.js +0 -214
  424. package/bundles/mis-crystal-design-system-tooltip.umd.js.map +0 -1
  425. package/bundles/mis-crystal-design-system-tooltip.umd.min.js +0 -2
  426. package/bundles/mis-crystal-design-system-tooltip.umd.min.js.map +0 -1
  427. package/bundles/mis-crystal-design-system-utils.umd.js +0 -33
  428. package/bundles/mis-crystal-design-system-utils.umd.js.map +0 -1
  429. package/bundles/mis-crystal-design-system-utils.umd.min.js +0 -2
  430. package/bundles/mis-crystal-design-system-utils.umd.min.js.map +0 -1
  431. package/bundles/mis-crystal-design-system-virtual-scroll.umd.js +0 -471
  432. package/bundles/mis-crystal-design-system-virtual-scroll.umd.js.map +0 -1
  433. package/bundles/mis-crystal-design-system-virtual-scroll.umd.min.js +0 -16
  434. package/bundles/mis-crystal-design-system-virtual-scroll.umd.min.js.map +0 -1
  435. package/bundles/mis-crystal-design-system-widgets.umd.js +0 -478
  436. package/bundles/mis-crystal-design-system-widgets.umd.js.map +0 -1
  437. package/bundles/mis-crystal-design-system-widgets.umd.min.js +0 -16
  438. package/bundles/mis-crystal-design-system-widgets.umd.min.js.map +0 -1
  439. package/bundles/mis-crystal-design-system.umd.js +0 -31
  440. package/bundles/mis-crystal-design-system.umd.js.map +0 -1
  441. package/bundles/mis-crystal-design-system.umd.min.js +0 -2
  442. package/bundles/mis-crystal-design-system.umd.min.js.map +0 -1
  443. package/button/mis-crystal-design-system-button.d.ts +0 -4
  444. package/button/mis-crystal-design-system-button.metadata.json +0 -1
  445. package/button/package.json +0 -11
  446. package/checkbox/mis-crystal-design-system-checkbox.d.ts +0 -4
  447. package/checkbox/mis-crystal-design-system-checkbox.metadata.json +0 -1
  448. package/checkbox/package.json +0 -11
  449. package/chip/mis-crystal-design-system-chip.d.ts +0 -4
  450. package/chip/mis-crystal-design-system-chip.metadata.json +0 -1
  451. package/chip/package.json +0 -11
  452. package/datepicker_v2/mis-crystal-design-system-datepicker_v2.d.ts +0 -7
  453. package/datepicker_v2/mis-crystal-design-system-datepicker_v2.metadata.json +0 -1
  454. package/datepicker_v2/package.json +0 -11
  455. package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.d.ts +0 -7
  456. package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.metadata.json +0 -1
  457. package/daterangepicker_v2/package.json +0 -11
  458. package/drawer/mis-crystal-design-system-drawer.d.ts +0 -5
  459. package/drawer/mis-crystal-design-system-drawer.metadata.json +0 -1
  460. package/drawer/package.json +0 -11
  461. package/dropdown/mis-crystal-design-system-dropdown.d.ts +0 -5
  462. package/dropdown/mis-crystal-design-system-dropdown.metadata.json +0 -1
  463. package/dropdown/package.json +0 -11
  464. package/dynamic-form/mis-crystal-design-system-dynamic-form.d.ts +0 -4
  465. package/dynamic-form/mis-crystal-design-system-dynamic-form.metadata.json +0 -1
  466. package/dynamic-form/package.json +0 -11
  467. package/esm2015/action-list/action-list.component.js +0 -161
  468. package/esm2015/action-list/action-list.module.js +0 -19
  469. package/esm2015/analytics/analytics.module.js +0 -14
  470. package/esm2015/analytics/analytics.service.js +0 -62
  471. package/esm2015/async-search-dropdown/async-dropdown.component.js +0 -243
  472. package/esm2015/async-search-dropdown/async-dropdown.module.js +0 -16
  473. package/esm2015/button/button.component.js +0 -43
  474. package/esm2015/button/button.directive.js +0 -57
  475. package/esm2015/button/button.module.js +0 -17
  476. package/esm2015/checkbox/checkbox.component.js +0 -79
  477. package/esm2015/checkbox/checkbox.module.js +0 -17
  478. package/esm2015/chip/chip.component.js +0 -31
  479. package/esm2015/chip/chip.module.js +0 -16
  480. package/esm2015/datepicker_v2/datepicker.module.js +0 -18
  481. package/esm2015/datepicker_v2/mis-crystal-design-system-datepicker_v2.js +0 -7
  482. package/esm2015/datepicker_v2/public_api.js +0 -3
  483. package/esm2015/datepicker_v2/tz-datepicker.directive.js +0 -144
  484. package/esm2015/datepicker_v2/tz-dp-container/tz-dp-container.component.js +0 -149
  485. package/esm2015/datepicker_v2/utils/index.js +0 -45
  486. package/esm2015/daterangepicker_v2/daterangepicker.module.js +0 -18
  487. package/esm2015/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.js +0 -7
  488. package/esm2015/daterangepicker_v2/public_api.js +0 -3
  489. package/esm2015/daterangepicker_v2/tz-daterangepicker.directive.js +0 -123
  490. package/esm2015/daterangepicker_v2/tz-drp-container/tz-drp-container.component.js +0 -226
  491. package/esm2015/drawer/drawer-body/drawer-body.component.js +0 -41
  492. package/esm2015/drawer/drawer.module.js +0 -28
  493. package/esm2015/drawer/drawer.service.js +0 -59
  494. package/esm2015/drawer/mis-crystal-design-system-drawer.js +0 -6
  495. package/esm2015/dropdown/calculate-container-height.directive.js +0 -40
  496. package/esm2015/dropdown/dropdown.component.js +0 -169
  497. package/esm2015/dropdown/dropdown.module.js +0 -21
  498. package/esm2015/dropdown/mis-crystal-design-system-dropdown.js +0 -6
  499. package/esm2015/dynamic-form/dynamic-form.component.js +0 -308
  500. package/esm2015/dynamic-form/dynamic-form.module.js +0 -34
  501. package/esm2015/fab/fab.component.js +0 -63
  502. package/esm2015/fab/fab.module.js +0 -16
  503. package/esm2015/input/directives/input/input.directive.js +0 -38
  504. package/esm2015/input/mis-input.component.js +0 -45
  505. package/esm2015/input/mis-input.module.js +0 -15
  506. package/esm2015/input-stepper/input-stepper/input-stepper.component.js +0 -49
  507. package/esm2015/input-stepper/input-stepper.module.js +0 -19
  508. package/esm2015/loader/loader.component.js +0 -20
  509. package/esm2015/loader/loader.module.js +0 -16
  510. package/esm2015/menu/menu-close.directive.js +0 -18
  511. package/esm2015/menu/menu.directive.js +0 -70
  512. package/esm2015/menu/menu.module.js +0 -17
  513. package/esm2015/mobile-filter/mobile-filter.component.js +0 -54
  514. package/esm2015/mobile-filter/mobile-filter.module.js +0 -15
  515. package/esm2015/modal/mis-crystal-design-system-modal.js +0 -6
  516. package/esm2015/modal/modal.module.js +0 -28
  517. package/esm2015/modal/modal.service.js +0 -72
  518. package/esm2015/modal/module-wrapper/module-wrapper.component.js +0 -33
  519. package/esm2015/multi-select-dropdown/multi-select-dropdown.component.js +0 -269
  520. package/esm2015/multi-select-dropdown/multi-select-dropdown.module.js +0 -20
  521. package/esm2015/nested-multi-select-dropdown/nested-multi-select-dropdown.component.js +0 -265
  522. package/esm2015/nested-multi-select-dropdown/nested-multi-select-dropdown.module.js +0 -20
  523. package/esm2015/phone-input/phone-input.component.js +0 -85
  524. package/esm2015/phone-input/phone-input.module.js +0 -21
  525. package/esm2015/radio-button/radio-button.component.js +0 -45
  526. package/esm2015/radio-button/radio-button.module.js +0 -17
  527. package/esm2015/ske-loader/ske-loader.component.js +0 -31
  528. package/esm2015/ske-loader/ske-loader.module.js +0 -13
  529. package/esm2015/slider/slider.component.js +0 -38
  530. package/esm2015/slider/slider.module.js +0 -20
  531. package/esm2015/snackbar/snackbar/snackbar.component.js +0 -22
  532. package/esm2015/snackbar/snackbar.module.js +0 -31
  533. package/esm2015/snackbar/snackbar.service.js +0 -48
  534. package/esm2015/specificdatepicker/mis-crystal-design-system-specificdatepicker.js +0 -7
  535. package/esm2015/specificdatepicker/public_api.js +0 -3
  536. package/esm2015/specificdatepicker/specificdatepicker.module.js +0 -20
  537. package/esm2015/specificdatepicker/tz-sdp-container/tz-sdp-container.component.js +0 -356
  538. package/esm2015/specificdatepicker/tz-specificdatepicker.directive.js +0 -179
  539. package/esm2015/specificdatepicker/utils/index.js +0 -45
  540. package/esm2015/star-rating/star-rating.component.js +0 -78
  541. package/esm2015/star-rating/star-rating.module.js +0 -13
  542. package/esm2015/switch/switch.component.js +0 -39
  543. package/esm2015/switch/switch.module.js +0 -17
  544. package/esm2015/table/custom-table-cell.directive.js +0 -42
  545. package/esm2015/table/filter/filter.component.js +0 -75
  546. package/esm2015/table/mis-crystal-design-system-table.js +0 -6
  547. package/esm2015/table/public_api.js +0 -5
  548. package/esm2015/table/sub-table/sub-table.component.js +0 -69
  549. package/esm2015/table/table.component.js +0 -200
  550. package/esm2015/table/table.module.js +0 -21
  551. package/esm2015/timepicker/mis-crystal-design-system-timepicker.js +0 -6
  552. package/esm2015/timepicker/timepicker.component.js +0 -248
  553. package/esm2015/timepicker/timepicker.directive.js +0 -62
  554. package/esm2015/timepicker/timepicker.module.js +0 -20
  555. package/esm2015/timerangepicker/timerangepicker.component.js +0 -194
  556. package/esm2015/timerangepicker/timerangepicker.module.js +0 -18
  557. package/esm2015/toast/toast.component.js +0 -28
  558. package/esm2015/toast/toast.data.service.js +0 -29
  559. package/esm2015/toast/toast.module.js +0 -28
  560. package/esm2015/toast/toast.service.js +0 -96
  561. package/esm2015/tooltip/tooltip-container/tooltip.component.js +0 -35
  562. package/esm2015/tooltip/tooltip.directive.js +0 -128
  563. package/esm2015/tooltip/tooltip.module.js +0 -19
  564. package/esm2015/virtual-scroll/virtual-scroll.component.js +0 -111
  565. package/esm2015/virtual-scroll/virtual-scroll.module.js +0 -24
  566. package/esm2015/widgets/classes/async-widget.js +0 -23
  567. package/esm2015/widgets/classes/base-widget.js +0 -32
  568. package/esm2015/widgets/classes/sync-widget.js +0 -20
  569. package/esm2015/widgets/classes/widget-group.js +0 -32
  570. package/esm2015/widgets/services/widget.service.js +0 -16
  571. package/esm2015/widgets/widgets.module.js +0 -12
  572. package/fab/mis-crystal-design-system-fab.d.ts +0 -4
  573. package/fab/mis-crystal-design-system-fab.metadata.json +0 -1
  574. package/fab/package.json +0 -11
  575. package/fesm2015/mis-crystal-design-system-action-list.js +0 -184
  576. package/fesm2015/mis-crystal-design-system-action-list.js.map +0 -1
  577. package/fesm2015/mis-crystal-design-system-analytics.js.map +0 -1
  578. package/fesm2015/mis-crystal-design-system-async-search-dropdown.js +0 -262
  579. package/fesm2015/mis-crystal-design-system-async-search-dropdown.js.map +0 -1
  580. package/fesm2015/mis-crystal-design-system-button.js +0 -120
  581. package/fesm2015/mis-crystal-design-system-button.js.map +0 -1
  582. package/fesm2015/mis-crystal-design-system-checkbox.js +0 -100
  583. package/fesm2015/mis-crystal-design-system-checkbox.js.map +0 -1
  584. package/fesm2015/mis-crystal-design-system-chip.js +0 -52
  585. package/fesm2015/mis-crystal-design-system-chip.js.map +0 -1
  586. package/fesm2015/mis-crystal-design-system-datepicker_v2.js +0 -357
  587. package/fesm2015/mis-crystal-design-system-datepicker_v2.js.map +0 -1
  588. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js +0 -413
  589. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js.map +0 -1
  590. package/fesm2015/mis-crystal-design-system-drawer.js +0 -153
  591. package/fesm2015/mis-crystal-design-system-drawer.js.map +0 -1
  592. package/fesm2015/mis-crystal-design-system-dropdown.js +0 -232
  593. package/fesm2015/mis-crystal-design-system-dropdown.js.map +0 -1
  594. package/fesm2015/mis-crystal-design-system-dynamic-form.js +0 -346
  595. package/fesm2015/mis-crystal-design-system-dynamic-form.js.map +0 -1
  596. package/fesm2015/mis-crystal-design-system-fab.js +0 -84
  597. package/fesm2015/mis-crystal-design-system-fab.js.map +0 -1
  598. package/fesm2015/mis-crystal-design-system-input-stepper.js +0 -73
  599. package/fesm2015/mis-crystal-design-system-input-stepper.js.map +0 -1
  600. package/fesm2015/mis-crystal-design-system-input.js +0 -99
  601. package/fesm2015/mis-crystal-design-system-input.js.map +0 -1
  602. package/fesm2015/mis-crystal-design-system-loader.js +0 -41
  603. package/fesm2015/mis-crystal-design-system-loader.js.map +0 -1
  604. package/fesm2015/mis-crystal-design-system-menu.js +0 -106
  605. package/fesm2015/mis-crystal-design-system-menu.js.map +0 -1
  606. package/fesm2015/mis-crystal-design-system-mobile-filter.js +0 -74
  607. package/fesm2015/mis-crystal-design-system-mobile-filter.js.map +0 -1
  608. package/fesm2015/mis-crystal-design-system-modal.js +0 -147
  609. package/fesm2015/mis-crystal-design-system-modal.js.map +0 -1
  610. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js +0 -293
  611. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.js.map +0 -1
  612. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.js +0 -289
  613. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.js.map +0 -1
  614. package/fesm2015/mis-crystal-design-system-phone-input.js +0 -109
  615. package/fesm2015/mis-crystal-design-system-phone-input.js.map +0 -1
  616. package/fesm2015/mis-crystal-design-system-radio-button.js +0 -66
  617. package/fesm2015/mis-crystal-design-system-radio-button.js.map +0 -1
  618. package/fesm2015/mis-crystal-design-system-ske-loader.js +0 -49
  619. package/fesm2015/mis-crystal-design-system-ske-loader.js.map +0 -1
  620. package/fesm2015/mis-crystal-design-system-slider.js +0 -62
  621. package/fesm2015/mis-crystal-design-system-slider.js.map +0 -1
  622. package/fesm2015/mis-crystal-design-system-snackbar.js +0 -101
  623. package/fesm2015/mis-crystal-design-system-snackbar.js.map +0 -1
  624. package/fesm2015/mis-crystal-design-system-specificdatepicker.js +0 -599
  625. package/fesm2015/mis-crystal-design-system-specificdatepicker.js.map +0 -1
  626. package/fesm2015/mis-crystal-design-system-star-rating.js +0 -96
  627. package/fesm2015/mis-crystal-design-system-star-rating.js.map +0 -1
  628. package/fesm2015/mis-crystal-design-system-styles.js +0 -4
  629. package/fesm2015/mis-crystal-design-system-styles.js.map +0 -1
  630. package/fesm2015/mis-crystal-design-system-switch.js +0 -60
  631. package/fesm2015/mis-crystal-design-system-switch.js.map +0 -1
  632. package/fesm2015/mis-crystal-design-system-table.js +0 -406
  633. package/fesm2015/mis-crystal-design-system-table.js.map +0 -1
  634. package/fesm2015/mis-crystal-design-system-timepicker.js +0 -330
  635. package/fesm2015/mis-crystal-design-system-timepicker.js.map +0 -1
  636. package/fesm2015/mis-crystal-design-system-timerangepicker.js.map +0 -1
  637. package/fesm2015/mis-crystal-design-system-toast.js +0 -174
  638. package/fesm2015/mis-crystal-design-system-toast.js.map +0 -1
  639. package/fesm2015/mis-crystal-design-system-tooltip.js +0 -183
  640. package/fesm2015/mis-crystal-design-system-tooltip.js.map +0 -1
  641. package/fesm2015/mis-crystal-design-system-utils.js.map +0 -1
  642. package/fesm2015/mis-crystal-design-system-virtual-scroll.js +0 -141
  643. package/fesm2015/mis-crystal-design-system-virtual-scroll.js.map +0 -1
  644. package/fesm2015/mis-crystal-design-system-widgets.js.map +0 -1
  645. package/fesm2015/mis-crystal-design-system.js.map +0 -1
  646. package/input/mis-crystal-design-system-input.d.ts +0 -4
  647. package/input/mis-crystal-design-system-input.metadata.json +0 -1
  648. package/input/package.json +0 -11
  649. package/input-stepper/mis-crystal-design-system-input-stepper.d.ts +0 -4
  650. package/input-stepper/mis-crystal-design-system-input-stepper.metadata.json +0 -1
  651. package/input-stepper/package.json +0 -11
  652. package/loader/mis-crystal-design-system-loader.d.ts +0 -4
  653. package/loader/mis-crystal-design-system-loader.metadata.json +0 -1
  654. package/loader/package.json +0 -11
  655. package/menu/mis-crystal-design-system-menu.d.ts +0 -4
  656. package/menu/mis-crystal-design-system-menu.metadata.json +0 -1
  657. package/menu/package.json +0 -11
  658. package/mis-crystal-design-system.d.ts +0 -4
  659. package/mis-crystal-design-system.metadata.json +0 -1
  660. package/mobile-filter/mis-crystal-design-system-mobile-filter.d.ts +0 -4
  661. package/mobile-filter/mis-crystal-design-system-mobile-filter.metadata.json +0 -1
  662. package/mobile-filter/package.json +0 -11
  663. package/modal/mis-crystal-design-system-modal.d.ts +0 -5
  664. package/modal/mis-crystal-design-system-modal.metadata.json +0 -1
  665. package/modal/package.json +0 -11
  666. package/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.d.ts +0 -4
  667. package/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.metadata.json +0 -1
  668. package/multi-select-dropdown/package.json +0 -11
  669. package/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.d.ts +0 -4
  670. package/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.metadata.json +0 -1
  671. package/nested-multi-select-dropdown/package.json +0 -11
  672. package/phone-input/mis-crystal-design-system-phone-input.d.ts +0 -4
  673. package/phone-input/mis-crystal-design-system-phone-input.metadata.json +0 -1
  674. package/phone-input/package.json +0 -11
  675. package/radio-button/mis-crystal-design-system-radio-button.d.ts +0 -4
  676. package/radio-button/mis-crystal-design-system-radio-button.metadata.json +0 -1
  677. package/radio-button/package.json +0 -11
  678. package/ske-loader/mis-crystal-design-system-ske-loader.d.ts +0 -4
  679. package/ske-loader/mis-crystal-design-system-ske-loader.metadata.json +0 -1
  680. package/ske-loader/package.json +0 -11
  681. package/slider/mis-crystal-design-system-slider.d.ts +0 -4
  682. package/slider/mis-crystal-design-system-slider.metadata.json +0 -1
  683. package/slider/package.json +0 -11
  684. package/snackbar/mis-crystal-design-system-snackbar.d.ts +0 -4
  685. package/snackbar/mis-crystal-design-system-snackbar.metadata.json +0 -1
  686. package/snackbar/package.json +0 -11
  687. package/specificdatepicker/mis-crystal-design-system-specificdatepicker.d.ts +0 -7
  688. package/specificdatepicker/mis-crystal-design-system-specificdatepicker.metadata.json +0 -1
  689. package/specificdatepicker/package.json +0 -11
  690. package/star-rating/mis-crystal-design-system-star-rating.d.ts +0 -4
  691. package/star-rating/mis-crystal-design-system-star-rating.metadata.json +0 -1
  692. package/star-rating/package.json +0 -11
  693. package/styles/mis-crystal-design-system-styles.d.ts +0 -4
  694. package/styles/mis-crystal-design-system-styles.metadata.json +0 -1
  695. package/styles/package.json +0 -11
  696. package/switch/mis-crystal-design-system-switch.d.ts +0 -4
  697. package/switch/mis-crystal-design-system-switch.metadata.json +0 -1
  698. package/switch/package.json +0 -11
  699. package/table/mis-crystal-design-system-table.d.ts +0 -5
  700. package/table/mis-crystal-design-system-table.metadata.json +0 -1
  701. package/table/package.json +0 -11
  702. package/timepicker/mis-crystal-design-system-timepicker.d.ts +0 -5
  703. package/timepicker/mis-crystal-design-system-timepicker.metadata.json +0 -1
  704. package/timepicker/package.json +0 -11
  705. package/timerangepicker/mis-crystal-design-system-timerangepicker.d.ts +0 -4
  706. package/timerangepicker/mis-crystal-design-system-timerangepicker.metadata.json +0 -1
  707. package/timerangepicker/package.json +0 -11
  708. package/toast/mis-crystal-design-system-toast.d.ts +0 -4
  709. package/toast/mis-crystal-design-system-toast.metadata.json +0 -1
  710. package/toast/package.json +0 -11
  711. package/tooltip/mis-crystal-design-system-tooltip.d.ts +0 -4
  712. package/tooltip/mis-crystal-design-system-tooltip.metadata.json +0 -1
  713. package/tooltip/package.json +0 -11
  714. package/utils/mis-crystal-design-system-utils.d.ts +0 -4
  715. package/utils/mis-crystal-design-system-utils.metadata.json +0 -1
  716. package/utils/package.json +0 -11
  717. package/virtual-scroll/mis-crystal-design-system-virtual-scroll.d.ts +0 -4
  718. package/virtual-scroll/mis-crystal-design-system-virtual-scroll.metadata.json +0 -1
  719. package/virtual-scroll/package.json +0 -11
  720. package/widgets/mis-crystal-design-system-widgets.d.ts +0 -4
  721. package/widgets/mis-crystal-design-system-widgets.metadata.json +0 -1
  722. package/widgets/package.json +0 -11
  723. /package/{esm2015/action-list/index.js → esm2022/action-list/index.mjs} +0 -0
  724. /package/{esm2015/action-list/mis-crystal-design-system-action-list.js → esm2022/action-list/mis-crystal-design-system-action-list.mjs} +0 -0
  725. /package/{esm2015/action-list/public_api.js → esm2022/action-list/public_api.mjs} +0 -0
  726. /package/{esm2015/analytics/index.js → esm2022/analytics/index.mjs} +0 -0
  727. /package/{esm2015/analytics/mis-crystal-design-system-analytics.js → esm2022/analytics/mis-crystal-design-system-analytics.mjs} +0 -0
  728. /package/{esm2015/analytics/public_api.js → esm2022/analytics/public_api.mjs} +0 -0
  729. /package/{esm2015/async-search-dropdown/index.js → esm2022/async-search-dropdown/index.mjs} +0 -0
  730. /package/{esm2015/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.js → esm2022/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.mjs} +0 -0
  731. /package/{esm2015/async-search-dropdown/public_api.js → esm2022/async-search-dropdown/public_api.mjs} +0 -0
  732. /package/{esm2015/button/index.js → esm2022/button/index.mjs} +0 -0
  733. /package/{esm2015/button/mis-crystal-design-system-button.js → esm2022/button/mis-crystal-design-system-button.mjs} +0 -0
  734. /package/{esm2015/button/public_api.js → esm2022/button/public_api.mjs} +0 -0
  735. /package/{esm2015/checkbox/index.js → esm2022/checkbox/index.mjs} +0 -0
  736. /package/{esm2015/checkbox/mis-crystal-design-system-checkbox.js → esm2022/checkbox/mis-crystal-design-system-checkbox.mjs} +0 -0
  737. /package/{esm2015/checkbox/public_api.js → esm2022/checkbox/public_api.mjs} +0 -0
  738. /package/{esm2015/chip/index.js → esm2022/chip/index.mjs} +0 -0
  739. /package/{esm2015/chip/mis-crystal-design-system-chip.js → esm2022/chip/mis-crystal-design-system-chip.mjs} +0 -0
  740. /package/{esm2015/chip/public_api.js → esm2022/chip/public_api.mjs} +0 -0
  741. /package/{esm2015/datepicker_v2/datepicker-constants.js → esm2022/datepicker_v2/datepicker-constants.mjs} +0 -0
  742. /package/{esm2015/datepicker_v2/index.js → esm2022/datepicker_v2/index.mjs} +0 -0
  743. /package/{esm2015/datepicker_v2/models/dp-config.model.js → esm2022/datepicker_v2/models/dp-config.model.mjs} +0 -0
  744. /package/{esm2015/daterangepicker_v2/daterangepicker-constants.js → esm2022/daterangepicker_v2/daterangepicker-constants.mjs} +0 -0
  745. /package/{esm2015/daterangepicker_v2/index.js → esm2022/daterangepicker_v2/index.mjs} +0 -0
  746. /package/{esm2015/daterangepicker_v2/models/drp-config.model.js → esm2022/daterangepicker_v2/models/drp-config.model.mjs} +0 -0
  747. /package/{esm2015/drawer/drawer-constants.js → esm2022/drawer/drawer-constants.mjs} +0 -0
  748. /package/{esm2015/drawer/index.js → esm2022/drawer/index.mjs} +0 -0
  749. /package/{esm2015/drawer/public_api.js → esm2022/drawer/public_api.mjs} +0 -0
  750. /package/{esm2015/dropdown/index.js → esm2022/dropdown/index.mjs} +0 -0
  751. /package/{esm2015/dropdown/public_api.js → esm2022/dropdown/public_api.mjs} +0 -0
  752. /package/{esm2015/dynamic-form/dynamic-form.namespace.js → esm2022/dynamic-form/dynamic-form.namespace.mjs} +0 -0
  753. /package/{esm2015/dynamic-form/index.js → esm2022/dynamic-form/index.mjs} +0 -0
  754. /package/{esm2015/dynamic-form/mis-crystal-design-system-dynamic-form.js → esm2022/dynamic-form/mis-crystal-design-system-dynamic-form.mjs} +0 -0
  755. /package/{esm2015/dynamic-form/public_api.js → esm2022/dynamic-form/public_api.mjs} +0 -0
  756. /package/{esm2015/fab/index.js → esm2022/fab/index.mjs} +0 -0
  757. /package/{esm2015/fab/mis-crystal-design-system-fab.js → esm2022/fab/mis-crystal-design-system-fab.mjs} +0 -0
  758. /package/{esm2015/fab/public_api.js → esm2022/fab/public_api.mjs} +0 -0
  759. /package/{esm2015/index.js → esm2022/index.mjs} +0 -0
  760. /package/{esm2015/input/index.js → esm2022/input/index.mjs} +0 -0
  761. /package/{esm2015/input/mis-crystal-design-system-input.js → esm2022/input/mis-crystal-design-system-input.mjs} +0 -0
  762. /package/{esm2015/input/public_api.js → esm2022/input/public_api.mjs} +0 -0
  763. /package/{esm2015/input-stepper/index.js → esm2022/input-stepper/index.mjs} +0 -0
  764. /package/{esm2015/input-stepper/mis-crystal-design-system-input-stepper.js → esm2022/input-stepper/mis-crystal-design-system-input-stepper.mjs} +0 -0
  765. /package/{esm2015/input-stepper/public_api.js → esm2022/input-stepper/public_api.mjs} +0 -0
  766. /package/{esm2015/loader/index.js → esm2022/loader/index.mjs} +0 -0
  767. /package/{esm2015/loader/mis-crystal-design-system-loader.js → esm2022/loader/mis-crystal-design-system-loader.mjs} +0 -0
  768. /package/{esm2015/loader/public_api.js → esm2022/loader/public_api.mjs} +0 -0
  769. /package/{esm2015/menu/index.js → esm2022/menu/index.mjs} +0 -0
  770. /package/{esm2015/menu/mis-crystal-design-system-menu.js → esm2022/menu/mis-crystal-design-system-menu.mjs} +0 -0
  771. /package/{esm2015/menu/public_api.js → esm2022/menu/public_api.mjs} +0 -0
  772. /package/{esm2015/mis-crystal-design-system.js → esm2022/mis-crystal-design-system.mjs} +0 -0
  773. /package/{esm2015/mobile-filter/index.js → esm2022/mobile-filter/index.mjs} +0 -0
  774. /package/{esm2015/mobile-filter/mis-crystal-design-system-mobile-filter.js → esm2022/mobile-filter/mis-crystal-design-system-mobile-filter.mjs} +0 -0
  775. /package/{esm2015/mobile-filter/public_api.js → esm2022/mobile-filter/public_api.mjs} +0 -0
  776. /package/{esm2015/modal/index.js → esm2022/modal/index.mjs} +0 -0
  777. /package/{esm2015/modal/modal-constants.js → esm2022/modal/modal-constants.mjs} +0 -0
  778. /package/{esm2015/modal/modal-ref.js → esm2022/modal/modal-ref.mjs} +0 -0
  779. /package/{esm2015/modal/public_api.js → esm2022/modal/public_api.mjs} +0 -0
  780. /package/{esm2015/multi-select-dropdown/index.js → esm2022/multi-select-dropdown/index.mjs} +0 -0
  781. /package/{esm2015/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.js → esm2022/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.mjs} +0 -0
  782. /package/{esm2015/multi-select-dropdown/public_api.js → esm2022/multi-select-dropdown/public_api.mjs} +0 -0
  783. /package/{esm2015/nested-multi-select-dropdown/index.js → esm2022/nested-multi-select-dropdown/index.mjs} +0 -0
  784. /package/{esm2015/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.js → esm2022/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.mjs} +0 -0
  785. /package/{esm2015/nested-multi-select-dropdown/public_api.js → esm2022/nested-multi-select-dropdown/public_api.mjs} +0 -0
  786. /package/{esm2015/phone-input/index.js → esm2022/phone-input/index.mjs} +0 -0
  787. /package/{esm2015/phone-input/mis-crystal-design-system-phone-input.js → esm2022/phone-input/mis-crystal-design-system-phone-input.mjs} +0 -0
  788. /package/{esm2015/phone-input/public_api.js → esm2022/phone-input/public_api.mjs} +0 -0
  789. /package/{esm2015/public-api.js → esm2022/public-api.mjs} +0 -0
  790. /package/{esm2015/radio-button/index.js → esm2022/radio-button/index.mjs} +0 -0
  791. /package/{esm2015/radio-button/mis-crystal-design-system-radio-button.js → esm2022/radio-button/mis-crystal-design-system-radio-button.mjs} +0 -0
  792. /package/{esm2015/radio-button/public_api.js → esm2022/radio-button/public_api.mjs} +0 -0
  793. /package/{esm2015/ske-loader/index.js → esm2022/ske-loader/index.mjs} +0 -0
  794. /package/{esm2015/ske-loader/mis-crystal-design-system-ske-loader.js → esm2022/ske-loader/mis-crystal-design-system-ske-loader.mjs} +0 -0
  795. /package/{esm2015/ske-loader/public_api.js → esm2022/ske-loader/public_api.mjs} +0 -0
  796. /package/{esm2015/slider/index.js → esm2022/slider/index.mjs} +0 -0
  797. /package/{esm2015/slider/mis-crystal-design-system-slider.js → esm2022/slider/mis-crystal-design-system-slider.mjs} +0 -0
  798. /package/{esm2015/slider/public_api.js → esm2022/slider/public_api.mjs} +0 -0
  799. /package/{esm2015/snackbar/index.js → esm2022/snackbar/index.mjs} +0 -0
  800. /package/{esm2015/snackbar/mis-crystal-design-system-snackbar.js → esm2022/snackbar/mis-crystal-design-system-snackbar.mjs} +0 -0
  801. /package/{esm2015/snackbar/public_api.js → esm2022/snackbar/public_api.mjs} +0 -0
  802. /package/{esm2015/specificdatepicker/daterangepicker-constants.js → esm2022/specificdatepicker/daterangepicker-constants.mjs} +0 -0
  803. /package/{esm2015/specificdatepicker/index.js → esm2022/specificdatepicker/index.mjs} +0 -0
  804. /package/{esm2015/specificdatepicker/models/sdp-config.model.js → esm2022/specificdatepicker/models/sdp-config.model.mjs} +0 -0
  805. /package/{esm2015/star-rating/index.js → esm2022/star-rating/index.mjs} +0 -0
  806. /package/{esm2015/star-rating/mis-crystal-design-system-star-rating.js → esm2022/star-rating/mis-crystal-design-system-star-rating.mjs} +0 -0
  807. /package/{esm2015/star-rating/public_api.js → esm2022/star-rating/public_api.mjs} +0 -0
  808. /package/{esm2015/styles/index.js → esm2022/styles/index.mjs} +0 -0
  809. /package/{esm2015/styles/mis-crystal-design-system-styles.js → esm2022/styles/mis-crystal-design-system-styles.mjs} +0 -0
  810. /package/{esm2015/styles/public_api.js → esm2022/styles/public_api.mjs} +0 -0
  811. /package/{esm2015/switch/index.js → esm2022/switch/index.mjs} +0 -0
  812. /package/{esm2015/switch/mis-crystal-design-system-switch.js → esm2022/switch/mis-crystal-design-system-switch.mjs} +0 -0
  813. /package/{esm2015/switch/public_api.js → esm2022/switch/public_api.mjs} +0 -0
  814. /package/{esm2015/table/index.js → esm2022/table/index.mjs} +0 -0
  815. /package/{esm2015/timepicker/index.js → esm2022/timepicker/index.mjs} +0 -0
  816. /package/{esm2015/timepicker/public_api.js → esm2022/timepicker/public_api.mjs} +0 -0
  817. /package/{esm2015/timepicker/time.namespace.js → esm2022/timepicker/time.namespace.mjs} +0 -0
  818. /package/{esm2015/timerangepicker/index.js → esm2022/timerangepicker/index.mjs} +0 -0
  819. /package/{esm2015/timerangepicker/mis-crystal-design-system-timerangepicker.js → esm2022/timerangepicker/mis-crystal-design-system-timerangepicker.mjs} +0 -0
  820. /package/{esm2015/timerangepicker/public_api.js → esm2022/timerangepicker/public_api.mjs} +0 -0
  821. /package/{esm2015/timerangepicker/timerange.namespace.js → esm2022/timerangepicker/timerange.namespace.mjs} +0 -0
  822. /package/{esm2015/toast/index.js → esm2022/toast/index.mjs} +0 -0
  823. /package/{esm2015/toast/mis-crystal-design-system-toast.js → esm2022/toast/mis-crystal-design-system-toast.mjs} +0 -0
  824. /package/{esm2015/toast/public_api.js → esm2022/toast/public_api.mjs} +0 -0
  825. /package/{esm2015/tooltip/index.js → esm2022/tooltip/index.mjs} +0 -0
  826. /package/{esm2015/tooltip/mis-crystal-design-system-tooltip.js → esm2022/tooltip/mis-crystal-design-system-tooltip.mjs} +0 -0
  827. /package/{esm2015/tooltip/models/tooltip.model.js → esm2022/tooltip/models/tooltip.model.mjs} +0 -0
  828. /package/{esm2015/tooltip/public_api.js → esm2022/tooltip/public_api.mjs} +0 -0
  829. /package/{esm2015/utils/index.js → esm2022/utils/index.mjs} +0 -0
  830. /package/{esm2015/utils/mis-crystal-design-system-utils.js → esm2022/utils/mis-crystal-design-system-utils.mjs} +0 -0
  831. /package/{esm2015/virtual-scroll/index.js → esm2022/virtual-scroll/index.mjs} +0 -0
  832. /package/{esm2015/virtual-scroll/mis-crystal-design-system-virtual-scroll.js → esm2022/virtual-scroll/mis-crystal-design-system-virtual-scroll.mjs} +0 -0
  833. /package/{esm2015/virtual-scroll/public_api.js → esm2022/virtual-scroll/public_api.mjs} +0 -0
  834. /package/{esm2015/virtual-scroll/virtual-scroll.constants.js → esm2022/virtual-scroll/virtual-scroll.constants.mjs} +0 -0
  835. /package/{esm2015/widgets/index.js → esm2022/widgets/index.mjs} +0 -0
  836. /package/{esm2015/widgets/interfaces/widgets.model.js → esm2022/widgets/interfaces/widgets.model.mjs} +0 -0
  837. /package/{esm2015/widgets/mis-crystal-design-system-widgets.js → esm2022/widgets/mis-crystal-design-system-widgets.mjs} +0 -0
  838. /package/{esm2015/widgets/public_api.js → esm2022/widgets/public_api.mjs} +0 -0
@@ -0,0 +1,619 @@
1
+ import { Component, Inject, ViewChild } from "@angular/core";
2
+ import { CONTAINER_DATA, DATE_FORMAT } from "../daterangepicker-constants";
3
+ import { parseZone } from "moment-timezone";
4
+ import { getMonth } from "../utils";
5
+ import { UntypedFormControl } from "@angular/forms";
6
+ import { TzDatepickerDirective } from "mis-crystal-design-system/datepicker_v2";
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "mis-crystal-design-system/toast";
9
+ import * as i2 from "@angular/common";
10
+ import * as i3 from "mis-crystal-design-system/button";
11
+ import * as i4 from "mis-crystal-design-system/radio-button";
12
+ import * as i5 from "mis-crystal-design-system/datepicker_v2";
13
+ const _c0 = ["singleDatePickerElement"];
14
+ const _c1 = a0 => ({ "display": a0 });
15
+ const _c2 = a0 => ({ "disabled-month": a0 });
16
+ const _c3 = a0 => ({ "current-day": a0 });
17
+ const _c4 = (a0, a1, a2, a3, a4, a5) => ({ "selected-day": a0, "disabled-day": a1, "selected-start-day": a2, "selected-end-day": a3, "in-range-day": a4, "is-valid-date": a5 });
18
+ const _c5 = (a0, a1, a2, a3, a4) => ({ "margin-right": a0, "width": a1, "justify-content": a2, "padding-top": a3, "height": a4 });
19
+ const _c6 = a0 => ({ "circular-dot": a0 });
20
+ const _c7 = (a0, a1) => ({ "current-day": a0, "holiday-text": a1 });
21
+ function TzDrpContainerComponent_div_2_Template(rf, ctx) { if (rf & 1) {
22
+ const _r2 = i0.ɵɵgetCurrentView();
23
+ i0.ɵɵelementStart(0, "div", 27)(1, "mis-radio", 28);
24
+ i0.ɵɵlistener("valueChange", function TzDrpContainerComponent_div_2_Template_mis_radio_valueChange_1_listener($event) { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.changePicker($event)); });
25
+ i0.ɵɵelementEnd();
26
+ i0.ɵɵelementStart(2, "span");
27
+ i0.ɵɵtext(3);
28
+ i0.ɵɵelementEnd()();
29
+ } if (rf & 2) {
30
+ const picker_r4 = ctx.$implicit;
31
+ const ctx_r2 = i0.ɵɵnextContext();
32
+ i0.ɵɵadvance();
33
+ i0.ɵɵproperty("name", "dateSelection")("value", picker_r4)("formControl", ctx_r2.formControl);
34
+ i0.ɵɵadvance(2);
35
+ i0.ɵɵtextInterpolate(picker_r4);
36
+ } }
37
+ function TzDrpContainerComponent_div_15_Template(rf, ctx) { if (rf & 1) {
38
+ i0.ɵɵelementStart(0, "div", 29)(1, "span", 30);
39
+ i0.ɵɵtext(2);
40
+ i0.ɵɵelementEnd()();
41
+ } if (rf & 2) {
42
+ const weekDay_r5 = ctx.$implicit;
43
+ const ctx_r2 = i0.ɵɵnextContext();
44
+ i0.ɵɵadvance();
45
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(2, _c3, weekDay_r5.isCurrentDay && ctx_r2.currentMonthNumber === ctx_r2.todayMonthNumber));
46
+ i0.ɵɵadvance();
47
+ i0.ɵɵtextInterpolate(weekDay_r5.label);
48
+ } }
49
+ function TzDrpContainerComponent_div_17_span_2_Template(rf, ctx) { if (rf & 1) {
50
+ i0.ɵɵelementStart(0, "span", 30);
51
+ i0.ɵɵtext(1);
52
+ i0.ɵɵelementEnd();
53
+ } if (rf & 2) {
54
+ const day_r7 = i0.ɵɵnextContext().$implicit;
55
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(2, _c7, day_r7.isCurrentDay, day_r7.isHoliday || day_r7.isWeekOff));
56
+ i0.ɵɵadvance();
57
+ i0.ɵɵtextInterpolate1(" ", day_r7.date, " ");
58
+ } }
59
+ function TzDrpContainerComponent_div_17_Template(rf, ctx) { if (rf & 1) {
60
+ const _r6 = i0.ɵɵgetCurrentView();
61
+ i0.ɵɵelementStart(0, "div", 31);
62
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_div_17_Template_div_click_0_listener() { const day_r7 = i0.ɵɵrestoreView(_r6).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.selectDay("LEFT", day_r7)); });
63
+ i0.ɵɵelement(1, "div", 30);
64
+ i0.ɵɵtemplate(2, TzDrpContainerComponent_div_17_span_2_Template, 2, 5, "span", 32);
65
+ i0.ɵɵelementEnd();
66
+ } if (rf & 2) {
67
+ const day_r7 = ctx.$implicit;
68
+ const ctx_r2 = i0.ɵɵnextContext();
69
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction6(4, _c4, day_r7.isSelectedDay && ctx_r2.data.isSPickerSelected, day_r7.isDisabledDay, day_r7.isSelectedStartDay && !ctx_r2.data.isSPickerSelected, day_r7.isSelectedEndDay && !ctx_r2.data.isSPickerSelected, day_r7.inRangeDay && !ctx_r2.data.isSPickerSelected, day_r7.date > 0 && !ctx_r2.data.isSPickerSelected && !(day_r7.isSelectedStartDay && day_r7.isSelectedEndDay)))("ngStyle", i0.ɵɵpureFunction5(11, _c5, !ctx_r2.data.isSPickerSelected ? "0px" : "1px", !ctx_r2.data.isSPickerSelected ? "36px" : "35px", day_r7.isHoliday ? "flex-start" : "center", day_r7.isHoliday ? "2.8px" : "0px", day_r7.isHoliday ? "33px" : "36px"));
70
+ i0.ɵɵadvance();
71
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(17, _c6, day_r7.isHoliday));
72
+ i0.ɵɵadvance();
73
+ i0.ɵɵproperty("ngIf", day_r7.date > 0);
74
+ } }
75
+ function TzDrpContainerComponent_div_28_Template(rf, ctx) { if (rf & 1) {
76
+ i0.ɵɵelementStart(0, "div", 29)(1, "span");
77
+ i0.ɵɵtext(2);
78
+ i0.ɵɵelementEnd()();
79
+ } if (rf & 2) {
80
+ const weekDay_r8 = ctx.$implicit;
81
+ i0.ɵɵadvance(2);
82
+ i0.ɵɵtextInterpolate(weekDay_r8.label);
83
+ } }
84
+ function TzDrpContainerComponent_div_30_span_2_Template(rf, ctx) { if (rf & 1) {
85
+ i0.ɵɵelementStart(0, "span", 30);
86
+ i0.ɵɵtext(1);
87
+ i0.ɵɵelementEnd();
88
+ } if (rf & 2) {
89
+ const day_r10 = i0.ɵɵnextContext().$implicit;
90
+ const ctx_r2 = i0.ɵɵnextContext();
91
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction2(2, _c7, day_r10.isCurrentDay && ctx_r2.currentMonthNumber === ctx_r2.todayMonthNumber, day_r10.isHoliday || day_r10.isWeekOff));
92
+ i0.ɵɵadvance();
93
+ i0.ɵɵtextInterpolate1(" ", day_r10.date, " ");
94
+ } }
95
+ function TzDrpContainerComponent_div_30_Template(rf, ctx) { if (rf & 1) {
96
+ const _r9 = i0.ɵɵgetCurrentView();
97
+ i0.ɵɵelementStart(0, "div", 31);
98
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_div_30_Template_div_click_0_listener() { const day_r10 = i0.ɵɵrestoreView(_r9).$implicit; const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.selectDay("RIGHT", day_r10)); });
99
+ i0.ɵɵelement(1, "div", 30);
100
+ i0.ɵɵtemplate(2, TzDrpContainerComponent_div_30_span_2_Template, 2, 5, "span", 32);
101
+ i0.ɵɵelementEnd();
102
+ } if (rf & 2) {
103
+ const day_r10 = ctx.$implicit;
104
+ const ctx_r2 = i0.ɵɵnextContext();
105
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction6(4, _c4, day_r10.isSelectedDay && ctx_r2.data.isSPickerSelected, day_r10.isDisabledDay, day_r10.isSelectedStartDay && !ctx_r2.data.isSPickerSelected, day_r10.isSelectedEndDay && !ctx_r2.data.isSPickerSelected, day_r10.inRangeDay && !ctx_r2.data.isSPickerSelected, day_r10.date > 0 && !ctx_r2.data.isSPickerSelected && !(day_r10.isSelectedStartDay && day_r10.isSelectedEndDay)))("ngStyle", i0.ɵɵpureFunction5(11, _c5, !ctx_r2.data.isSPickerSelected ? "0px" : "1px", !ctx_r2.data.isSPickerSelected ? "36px" : "35px", day_r10.isHoliday ? "flex-start" : "center", day_r10.isHoliday ? "3px" : "0px", day_r10.isHoliday ? "33px" : "36px"));
106
+ i0.ɵɵadvance();
107
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(17, _c6, day_r10.isHoliday));
108
+ i0.ɵɵadvance();
109
+ i0.ɵɵproperty("ngIf", day_r10.date > 0);
110
+ } }
111
+ function TzDrpContainerComponent_span_34_span_2_Template(rf, ctx) { if (rf & 1) {
112
+ i0.ɵɵelementStart(0, "span");
113
+ i0.ɵɵtext(1, ",");
114
+ i0.ɵɵelementEnd();
115
+ } }
116
+ function TzDrpContainerComponent_span_34_Template(rf, ctx) { if (rf & 1) {
117
+ i0.ɵɵelementStart(0, "span");
118
+ i0.ɵɵtext(1);
119
+ i0.ɵɵtemplate(2, TzDrpContainerComponent_span_34_span_2_Template, 2, 0, "span", 21);
120
+ i0.ɵɵelementEnd();
121
+ } if (rf & 2) {
122
+ const weekOff_r11 = ctx.$implicit;
123
+ const last_r12 = ctx.last;
124
+ i0.ɵɵadvance();
125
+ i0.ɵɵtextInterpolate1("", weekOff_r11, " ");
126
+ i0.ɵɵadvance();
127
+ i0.ɵɵproperty("ngIf", !last_r12);
128
+ } }
129
+ function TzDrpContainerComponent_span_39_Template(rf, ctx) { if (rf & 1) {
130
+ i0.ɵɵelementStart(0, "span")(1, "span");
131
+ i0.ɵɵtext(2);
132
+ i0.ɵɵelementEnd();
133
+ i0.ɵɵtext(3, "day(s) selected");
134
+ i0.ɵɵelementEnd();
135
+ } if (rf & 2) {
136
+ const ctx_r2 = i0.ɵɵnextContext();
137
+ i0.ɵɵadvance(2);
138
+ i0.ɵɵtextInterpolate1("", (ctx_r2.localSelectedDates[0] == null ? null : ctx_r2.localSelectedDates[0].selectedDate) ? ctx_r2.localSelectedDates.length : ctx_r2.localSelectedDates.length - 1 && 0, " ");
139
+ } }
140
+ function TzDrpContainerComponent_span_40_Template(rf, ctx) { if (rf & 1) {
141
+ i0.ɵɵelementStart(0, "span")(1, "span");
142
+ i0.ɵɵtext(2);
143
+ i0.ɵɵelementEnd();
144
+ i0.ɵɵtext(3, "day(s) selected");
145
+ i0.ɵɵelementEnd();
146
+ } if (rf & 2) {
147
+ const ctx_r2 = i0.ɵɵnextContext();
148
+ i0.ɵɵadvance(2);
149
+ i0.ɵɵtextInterpolate1("", ctx_r2.dateRangeLength > 0 ? ctx_r2.dateRangeLength : 0, " ");
150
+ } }
151
+ function TzDrpContainerComponent_button_44_Template(rf, ctx) { if (rf & 1) {
152
+ const _r13 = i0.ɵɵgetCurrentView();
153
+ i0.ɵɵelementStart(0, "button", 33);
154
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_button_44_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r13); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.applyDates()); });
155
+ i0.ɵɵtext(1, "Apply");
156
+ i0.ɵɵelementEnd();
157
+ } if (rf & 2) {
158
+ const ctx_r2 = i0.ɵɵnextContext();
159
+ i0.ɵɵproperty("disabled", !ctx_r2.isDatesValid);
160
+ } }
161
+ function TzDrpContainerComponent_button_45_Template(rf, ctx) { if (rf & 1) {
162
+ const _r14 = i0.ɵɵgetCurrentView();
163
+ i0.ɵɵelementStart(0, "button", 33);
164
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_button_45_Template_button_click_0_listener() { i0.ɵɵrestoreView(_r14); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.applyDatesRange()); });
165
+ i0.ɵɵtext(1, "Apply");
166
+ i0.ɵɵelementEnd();
167
+ } if (rf & 2) {
168
+ const ctx_r2 = i0.ɵɵnextContext();
169
+ i0.ɵɵproperty("disabled", !ctx_r2.isDatesValid || ctx_r2.dateRangeLength === 0);
170
+ } }
171
+ export class TzDrpContainerComponent {
172
+ constructor(data, toast, cdr) {
173
+ this.toast = toast;
174
+ this.cdr = cdr;
175
+ this.parseZoneInstance = (...args) => {
176
+ return parseZone(...args);
177
+ };
178
+ this.rawWeekDays = ["SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"];
179
+ this.weekDays = [];
180
+ this.currentMonthDates = [];
181
+ this.nextMonthDates = [];
182
+ this.isPreviousMonthDisabled = false;
183
+ this.isNextMonthDisabled = false;
184
+ this.selectionStarted = false;
185
+ this.isDatesValid = false;
186
+ this.today = new Date();
187
+ this.todayMonthNumber = this.today.getMonth();
188
+ this.dateRangeSelected = false;
189
+ this.dateRangeLength = 0;
190
+ this.formControl = new UntypedFormControl('Specific Date(s)');
191
+ this.datePickerValue = ['Specific Date(s)', 'Date Range'];
192
+ this.singleDatePickerSelected = false;
193
+ this.openElement = false;
194
+ this.singleDateSelectedValue = '';
195
+ this.data = data;
196
+ this.localSelectedDatesRange = this.data.datesRange;
197
+ const startDate = new Date(this.localSelectedDatesRange?.startDate);
198
+ const endDate = new Date(this.localSelectedDatesRange?.endDate);
199
+ if (startDate && endDate) {
200
+ this.dateRangeLength = (endDate.getTime() - startDate.getTime()) / (1000 * 60 * 60 * 24) + 1;
201
+ }
202
+ this.localSelectedDates = this.data.dates;
203
+ if (!this.data.isSPickerSelected) {
204
+ this.formControl.setValue("Date Range");
205
+ this.isDatesValid = false;
206
+ if (this.localSelectedDatesRange.startDate && this.localSelectedDatesRange.endDate) {
207
+ this.isDatesValid = true;
208
+ }
209
+ }
210
+ else {
211
+ this.isDatesValid = false;
212
+ if (this.localSelectedDates.length > 0) {
213
+ this.isDatesValid = true;
214
+ }
215
+ }
216
+ if (this.data?.dpConfig?.timezone) {
217
+ this.parseZoneInstance = (...args) => {
218
+ return parseZone(...args).tz(this.data.dpConfig.timezone);
219
+ };
220
+ }
221
+ this.currentMonthNumber = this.parseZoneInstance().month();
222
+ this.nextMonthNumber = this.parseZoneInstance().add(1, "month").month();
223
+ this.currentMonth = getMonth(this.currentMonthNumber);
224
+ this.nextMonth = getMonth(this.nextMonthNumber);
225
+ this.currentYearNumber = this.parseZoneInstance().year();
226
+ this.nextYearNumber = this.parseZoneInstance().add(1, "month").year();
227
+ this.weekDays = this.rawWeekDays.map((day, index) => ({
228
+ label: `${day[0]}${day.slice(1).toLowerCase()}`,
229
+ isCurrentDay: this.parseZoneInstance().day() === index
230
+ }));
231
+ if (!this.data?.dpConfig?.format) {
232
+ this.data.dpConfig = {
233
+ ...this.data.dpConfig,
234
+ format: DATE_FORMAT
235
+ };
236
+ }
237
+ }
238
+ ngOnInit() {
239
+ if (this.data.isSingleDatePickerEnable) {
240
+ this.datePickerValue.unshift('Single Date');
241
+ this.formControl.setValue('Single Date');
242
+ this.singleDatePickerSelected = true;
243
+ this.openElement = true;
244
+ this.singleDateSelectedValue = this.data?.dates[0]?.selectedDate;
245
+ }
246
+ this.currentDateInstance();
247
+ this.calculateMinMaxDays();
248
+ }
249
+ currentDateInstance() {
250
+ let selectedStartDate;
251
+ if (!this.data.isSPickerSelected) {
252
+ if (!this.localSelectedDatesRange?.startDate) {
253
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
254
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
255
+ return;
256
+ }
257
+ selectedStartDate = this.parseZoneInstance(this.localSelectedDatesRange?.startDate, this.data.dpConfig.format);
258
+ }
259
+ else {
260
+ selectedStartDate = this.parseZoneInstance(this.localSelectedDates?.[0].selectedDate, this.data.dpConfig.format);
261
+ }
262
+ if (selectedStartDate.isValid()) {
263
+ this.currentYearNumber = selectedStartDate.year();
264
+ this.nextYearNumber = selectedStartDate.add(1, "month").year();
265
+ this.currentMonthNumber = selectedStartDate.get("month") - 1;
266
+ this.nextMonthNumber = selectedStartDate.add(1, "month").month() - 1;
267
+ if (this.currentMonthNumber === -1) {
268
+ this.currentMonthNumber = 11;
269
+ }
270
+ if (this.nextMonthNumber === -1) {
271
+ this.nextMonthNumber = 11;
272
+ }
273
+ this.currentMonth = getMonth(this.currentMonthNumber);
274
+ this.nextMonth = getMonth(this.nextMonthNumber);
275
+ }
276
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
277
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
278
+ }
279
+ calculateMinMaxDays() {
280
+ const currentInstance = this.parseZoneInstance().year(this.currentYearNumber).month(this.currentMonthNumber);
281
+ const minDate = this.parseZoneInstance(this.data.dpConfig.minDate, this.data.dpConfig.format);
282
+ if (minDate.isValid()) {
283
+ this.isPreviousMonthDisabled = minDate.isSameOrAfter(currentInstance, "month");
284
+ }
285
+ const maxDate = this.parseZoneInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format);
286
+ if (maxDate.isValid()) {
287
+ this.isNextMonthDisabled = maxDate.isSameOrBefore(currentInstance, "month");
288
+ }
289
+ }
290
+ navigateMonth(direction) {
291
+ let thisMonth = parseZone().year(this.currentYearNumber).month(this.currentMonthNumber);
292
+ if (direction === "NEXT") {
293
+ thisMonth = thisMonth.add(1, "month");
294
+ }
295
+ else if (direction === "PREVIOUS") {
296
+ thisMonth = thisMonth.subtract(1, "month");
297
+ }
298
+ this.currentMonthNumber = thisMonth.month();
299
+ this.nextMonthNumber = thisMonth.clone().add(1, "month").month();
300
+ this.currentMonth = getMonth(this.currentMonthNumber);
301
+ this.nextMonth = getMonth(this.nextMonthNumber);
302
+ if (this.nextMonthNumber === 0 && direction === "PREVIOUS") {
303
+ this.currentYearNumber--;
304
+ }
305
+ else if (this.currentMonthNumber === 11 && direction === "NEXT") {
306
+ this.nextYearNumber++;
307
+ }
308
+ else if (this.currentMonthNumber === 0 && direction === "NEXT") {
309
+ this.currentYearNumber++;
310
+ }
311
+ else if (this.nextMonthNumber === 11 && direction === "PREVIOUS") {
312
+ this.nextYearNumber--;
313
+ }
314
+ else {
315
+ this.nextYearNumber = this.currentYearNumber;
316
+ }
317
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
318
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
319
+ this.calculateMinMaxDays();
320
+ }
321
+ generateDates(month, currentYearNumber) {
322
+ let dates = [];
323
+ const daysInMonth = parseZone().year(currentYearNumber).month(month).daysInMonth();
324
+ for (let currentDate = 1; currentDate <= daysInMonth; currentDate++) {
325
+ const date = this.parseZoneInstance().year(currentYearNumber).month(month).date(currentDate);
326
+ const dateString = date.format(this.data.dpConfig.format);
327
+ let isDisabledDay = this.data.datesDisabled.some(d => d === dateString);
328
+ const minDate = this.parseZoneInstance(this.data.dpConfig.minDate, this.data.dpConfig.format);
329
+ if (!isDisabledDay && minDate.isValid()) {
330
+ isDisabledDay = minDate.isAfter(date, "day");
331
+ }
332
+ const maxDate = this.parseZoneInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format);
333
+ if (!isDisabledDay && maxDate.isValid()) {
334
+ isDisabledDay = maxDate.isBefore(date, "day");
335
+ }
336
+ const isCurrentDay = this.parseZoneInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data.dpConfig.format) ===
337
+ this.parseZoneInstance().format(this.data.dpConfig.format);
338
+ let isSelectedDay = false;
339
+ for (const selectedDateConfig of this.localSelectedDates) {
340
+ if (!isSelectedDay && date.format(this.data.dpConfig.format) === selectedDateConfig.selectedDate) {
341
+ isSelectedDay = true;
342
+ }
343
+ }
344
+ let isHoliday = false;
345
+ for (const day of this.data.holidays) {
346
+ if (date.format(this.data.dpConfig.format) === day) {
347
+ isHoliday = true;
348
+ }
349
+ }
350
+ const dayOfWeek = date.format('ddd');
351
+ const isWeekOff = this.data.weekOffs.includes(dayOfWeek);
352
+ const isSelectedStartDay = !isDisabledDay &&
353
+ (this.localSelectedDatesRange?.startDate ?? false) &&
354
+ date.format(this.data.dpConfig.format) === this.localSelectedDatesRange?.startDate;
355
+ const isAfterSelectedStartDate = this.parseZoneInstance(date).isAfter(parseZone(this.localSelectedDatesRange?.startDate, this.data.dpConfig.format), "day");
356
+ const isBeforeSelectedEndDate = this.parseZoneInstance(date).isBefore(parseZone(this.localSelectedDatesRange?.endDate, this.data.dpConfig.format), "day");
357
+ const inRangeDay = (this.localSelectedDatesRange?.startDate ?? false) &&
358
+ (this.localSelectedDatesRange?.endDate ?? false) &&
359
+ isAfterSelectedStartDate &&
360
+ isBeforeSelectedEndDate;
361
+ const isSelectedEndDay = !isDisabledDay &&
362
+ ((this.localSelectedDatesRange?.startDate && this.localSelectedDatesRange?.endDate) ?? false) &&
363
+ date.format(this.data.dpConfig.format) === this.localSelectedDatesRange?.endDate;
364
+ dates.push({
365
+ date: currentDate,
366
+ weekDay: date.day(),
367
+ isSelectedDay,
368
+ isCurrentDay,
369
+ isSelectedStartDay,
370
+ isSelectedEndDay,
371
+ inRangeDay,
372
+ isHoliday,
373
+ isWeekOff,
374
+ toastMessage: this.data.messages.find(q => date.format(this.data.dpConfig.format) === q.date)?.message || "",
375
+ isDisabledDay
376
+ });
377
+ }
378
+ for (let i = dates[0].weekDay; i > 0; i--) {
379
+ dates.unshift({ date: 0, weekDay: i - 1 });
380
+ }
381
+ return dates;
382
+ }
383
+ selectDay(from, day) {
384
+ if (day.date <= 0)
385
+ return;
386
+ if (!this.data.isSPickerSelected) {
387
+ if (!day.isDisabledDay) {
388
+ if (this.selectionStarted) {
389
+ const momentDay = parseZone()
390
+ .year(from === "LEFT" ? this.currentYearNumber : this.nextYearNumber)
391
+ .month(from === "LEFT" ? this.currentMonthNumber : this.nextMonthNumber)
392
+ .date(day.date);
393
+ if (momentDay.isBefore(parseZone(this.localSelectedDatesRange?.startDate, this.data.dpConfig.format), "day")) {
394
+ this.localSelectedDatesRange = {
395
+ startDate: momentDay.format(this.data.dpConfig.format),
396
+ endDate: null
397
+ };
398
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
399
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
400
+ return;
401
+ }
402
+ this.selectionStarted = false;
403
+ this.localSelectedDatesRange = {
404
+ ...this.localSelectedDatesRange,
405
+ endDate: momentDay.format(this.data.dpConfig.format)
406
+ };
407
+ }
408
+ else {
409
+ this.selectionStarted = true;
410
+ this.localSelectedDatesRange = {
411
+ startDate: parseZone()
412
+ .year(from === "LEFT" ? this.currentYearNumber : this.nextYearNumber)
413
+ .month(from === "LEFT" ? this.currentMonthNumber : this.nextMonthNumber)
414
+ .date(day.date)
415
+ .format(this.data.dpConfig.format),
416
+ endDate: null
417
+ };
418
+ }
419
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
420
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
421
+ this.isDatesValid = false;
422
+ if (this.localSelectedDatesRange?.startDate && this.localSelectedDatesRange?.endDate) {
423
+ this.isDatesValid = true;
424
+ }
425
+ }
426
+ const startDate = new Date(this.localSelectedDatesRange?.startDate);
427
+ const endDate = new Date(this.localSelectedDatesRange?.endDate);
428
+ if (startDate && endDate) {
429
+ this.dateRangeLength = (endDate.getTime() - startDate.getTime()) / (1000 * 60 * 60 * 24) + 1;
430
+ }
431
+ }
432
+ else {
433
+ const currentSelection = parseZone()
434
+ .year(from === "LEFT" ? this.currentYearNumber : this.nextYearNumber)
435
+ .month(from === "LEFT" ? this.currentMonthNumber : this.nextMonthNumber)
436
+ .date(day.date).format(this.data.dpConfig.format);
437
+ const existingIndex = this.localSelectedDates.findIndex(selectedDateConfig => selectedDateConfig.selectedDate === currentSelection);
438
+ if (existingIndex !== -1) {
439
+ this.localSelectedDates = this.localSelectedDates.filter((_, index) => index !== existingIndex);
440
+ this.isDatesValid = false;
441
+ if (this.localSelectedDates.length > 0) {
442
+ this.isDatesValid = true;
443
+ }
444
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
445
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
446
+ }
447
+ else if (!day.isDisabledDay) {
448
+ this.localSelectedDates = [
449
+ ...this.localSelectedDates,
450
+ {
451
+ selectedDate: currentSelection
452
+ }
453
+ ];
454
+ this.isDatesValid = false;
455
+ if (this.localSelectedDates.length > 0) {
456
+ this.isDatesValid = true;
457
+ }
458
+ this.currentMonthDates = this.generateDates(this.currentMonthNumber, this.currentYearNumber);
459
+ this.nextMonthDates = this.generateDates(this.nextMonthNumber, this.nextYearNumber);
460
+ }
461
+ else {
462
+ return;
463
+ }
464
+ }
465
+ if (day.toastMessage) {
466
+ this.toast.displayMsg(day.toastMessage, 4000);
467
+ }
468
+ }
469
+ applyDates() {
470
+ this.data.dateChange(this.localSelectedDates);
471
+ }
472
+ applyDatesRange() {
473
+ this.data.dateChangeRange(this.localSelectedDatesRange);
474
+ }
475
+ onSingleDateChange($event) {
476
+ let selectedData = { selectedDate: $event };
477
+ this.singleDateSelectedValue = $event;
478
+ this.data.dateChange([selectedData]);
479
+ }
480
+ cancelDatePicker() {
481
+ this.data.close();
482
+ }
483
+ changePicker(event) {
484
+ this.formControl.setValue(event);
485
+ this.singleDatePickerSelected = false;
486
+ if (event === "Date Range") {
487
+ this.openElement = false;
488
+ this.data.isSPickerSelected = false;
489
+ }
490
+ else if (event === "Single Date") {
491
+ this.singleDatePickerSelected = true;
492
+ this.openElement = true;
493
+ }
494
+ else {
495
+ this.openElement = false;
496
+ this.data.isSPickerSelected = true;
497
+ }
498
+ }
499
+ ngOnDestroy() {
500
+ if (this.singleDatePickerElement) {
501
+ this.singleDatePickerElement.close();
502
+ }
503
+ }
504
+ static { this.ɵfac = function TzDrpContainerComponent_Factory(t) { return new (t || TzDrpContainerComponent)(i0.ɵɵdirectiveInject(CONTAINER_DATA), i0.ɵɵdirectiveInject(i1.ToastService), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
505
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TzDrpContainerComponent, selectors: [["mis-tz-sdp"]], viewQuery: function TzDrpContainerComponent_Query(rf, ctx) { if (rf & 1) {
506
+ i0.ɵɵviewQuery(_c0, 7, TzDatepickerDirective);
507
+ } if (rf & 2) {
508
+ let _t;
509
+ i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.singleDatePickerElement = _t.first);
510
+ } }, decls: 49, vars: 33, consts: [["singleDatePickerElement", ""], [1, "daterangepicker-container", 3, "ngClass"], [1, "radio-container"], ["class", "label", 4, "ngFor", "ngForOf"], [1, "specific-datepicker-container", 3, "ngStyle"], [1, "daterangepicker-container__view"], [1, "datepicker__left"], [1, "daterangepicker-container__header__prabu"], [1, "daterangepicker-container__arrow__icon", 3, "click", "ngClass"], ["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"], [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", "ngStyle", "click", 4, "ngFor", "ngForOf"], [1, "datepicker__right"], [1, "weekOffs_holidays_container"], [4, "ngFor", "ngForOf"], [1, "circular-dot", 2, "display", "inline-block", "margin-left", "10px"], [1, "daterangepicker__footer"], [4, "ngIf"], [1, "footer_action_btn"], ["mis-button", "", "size", "md", "type", "none", 3, "click"], ["mis-button", "", "size", "md", "type", "primary", 3, "disabled", "click", 4, "ngIf"], [1, "single-datepicker-container", 3, "ngStyle"], ["misTzDp", "", "misInput", "", "type", "text", "readonly", "", "placeholder", "Select", "positionX", "center", "positionY", "top", "offsetX", "71", "offsetY", "-1", 1, "date-input", 3, "dateChange", "dpConfig", "selectedDate", "value", "disableBoxShadow", "disableOverLay", "openElement"], [1, "label"], ["ngDefaultControl", "", 1, "input", 3, "valueChange", "name", "value", "formControl"], [1, "daterangepicker-container__weekday"], [3, "ngClass"], [1, "daterangepicker-container__day", 3, "click", "ngClass", "ngStyle"], [3, "ngClass", 4, "ngIf"], ["mis-button", "", "size", "md", "type", "primary", 3, "click", "disabled"]], template: function TzDrpContainerComponent_Template(rf, ctx) { if (rf & 1) {
511
+ const _r1 = i0.ɵɵgetCurrentView();
512
+ i0.ɵɵelementStart(0, "div", 1)(1, "div", 2);
513
+ i0.ɵɵtemplate(2, TzDrpContainerComponent_div_2_Template, 4, 4, "div", 3);
514
+ i0.ɵɵelementEnd();
515
+ i0.ɵɵelementStart(3, "div", 4)(4, "div", 5)(5, "div", 6)(6, "div", 7)(7, "div", 8);
516
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_div_click_7_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(!ctx.isPreviousMonthDisabled && ctx.navigateMonth("PREVIOUS")); });
517
+ i0.ɵɵnamespaceSVG();
518
+ i0.ɵɵelementStart(8, "svg", 9);
519
+ i0.ɵɵelement(9, "path", 10);
520
+ i0.ɵɵelementEnd()();
521
+ i0.ɵɵnamespaceHTML();
522
+ i0.ɵɵelementStart(10, "span");
523
+ i0.ɵɵtext(11);
524
+ i0.ɵɵelementEnd();
525
+ i0.ɵɵelement(12, "div");
526
+ i0.ɵɵelementEnd();
527
+ i0.ɵɵelementStart(13, "div", 11)(14, "div", 12);
528
+ i0.ɵɵtemplate(15, TzDrpContainerComponent_div_15_Template, 3, 4, "div", 13);
529
+ i0.ɵɵelementEnd();
530
+ i0.ɵɵelementStart(16, "div", 14);
531
+ i0.ɵɵtemplate(17, TzDrpContainerComponent_div_17_Template, 3, 19, "div", 15);
532
+ i0.ɵɵelementEnd()()();
533
+ i0.ɵɵelementStart(18, "div", 16)(19, "div", 7);
534
+ i0.ɵɵelement(20, "div");
535
+ i0.ɵɵelementStart(21, "span");
536
+ i0.ɵɵtext(22);
537
+ i0.ɵɵelementEnd();
538
+ i0.ɵɵelementStart(23, "div", 8);
539
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_div_click_23_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(!ctx.isNextMonthDisabled && ctx.navigateMonth("NEXT")); });
540
+ i0.ɵɵnamespaceSVG();
541
+ i0.ɵɵelementStart(24, "svg", 9);
542
+ i0.ɵɵelement(25, "path", 10);
543
+ i0.ɵɵelementEnd()()();
544
+ i0.ɵɵnamespaceHTML();
545
+ i0.ɵɵelementStart(26, "div", 11)(27, "div", 12);
546
+ i0.ɵɵtemplate(28, TzDrpContainerComponent_div_28_Template, 3, 1, "div", 13);
547
+ i0.ɵɵelementEnd();
548
+ i0.ɵɵelementStart(29, "div", 14);
549
+ i0.ɵɵtemplate(30, TzDrpContainerComponent_div_30_Template, 3, 19, "div", 15);
550
+ i0.ɵɵelementEnd()()()();
551
+ i0.ɵɵelementStart(31, "div", 17)(32, "span");
552
+ i0.ɵɵtext(33, "Weekly offs: ");
553
+ i0.ɵɵtemplate(34, TzDrpContainerComponent_span_34_Template, 3, 2, "span", 18);
554
+ i0.ɵɵelementEnd();
555
+ i0.ɵɵelementStart(35, "span");
556
+ i0.ɵɵtext(36, "Holidays ");
557
+ i0.ɵɵelement(37, "span", 19);
558
+ i0.ɵɵelementEnd()();
559
+ i0.ɵɵelementStart(38, "div", 20);
560
+ i0.ɵɵtemplate(39, TzDrpContainerComponent_span_39_Template, 4, 1, "span", 21)(40, TzDrpContainerComponent_span_40_Template, 4, 1, "span", 21);
561
+ i0.ɵɵelementStart(41, "div", 22)(42, "button", 23);
562
+ i0.ɵɵlistener("click", function TzDrpContainerComponent_Template_button_click_42_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.cancelDatePicker()); });
563
+ i0.ɵɵtext(43, "Cancel");
564
+ i0.ɵɵelementEnd();
565
+ i0.ɵɵtemplate(44, TzDrpContainerComponent_button_44_Template, 2, 1, "button", 24)(45, TzDrpContainerComponent_button_45_Template, 2, 1, "button", 24);
566
+ i0.ɵɵelementEnd()()();
567
+ i0.ɵɵelementStart(46, "div", 25)(47, "input", 26, 0);
568
+ i0.ɵɵlistener("dateChange", function TzDrpContainerComponent_Template_input_dateChange_47_listener($event) { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onSingleDateChange($event)); });
569
+ i0.ɵɵelementEnd()()();
570
+ } if (rf & 2) {
571
+ i0.ɵɵproperty("ngClass", ctx.data.isSingleDatePickerEnable ? "single-date-picker-enabled" : "");
572
+ i0.ɵɵadvance(2);
573
+ i0.ɵɵproperty("ngForOf", ctx.datePickerValue);
574
+ i0.ɵɵadvance();
575
+ i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(25, _c1, ctx.singleDatePickerSelected ? "none" : ""));
576
+ i0.ɵɵadvance(4);
577
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(27, _c2, ctx.isPreviousMonthDisabled));
578
+ i0.ɵɵadvance(4);
579
+ i0.ɵɵtextInterpolate2(" ", ctx.currentMonth, " ", ctx.currentYearNumber, " ");
580
+ i0.ɵɵadvance(4);
581
+ i0.ɵɵproperty("ngForOf", ctx.weekDays);
582
+ i0.ɵɵadvance(2);
583
+ i0.ɵɵproperty("ngForOf", ctx.currentMonthDates);
584
+ i0.ɵɵadvance(5);
585
+ i0.ɵɵtextInterpolate2(" ", ctx.nextMonth, " ", ctx.nextYearNumber, " ");
586
+ i0.ɵɵadvance();
587
+ i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(29, _c2, ctx.isNextMonthDisabled));
588
+ i0.ɵɵadvance(5);
589
+ i0.ɵɵproperty("ngForOf", ctx.weekDays);
590
+ i0.ɵɵadvance(2);
591
+ i0.ɵɵproperty("ngForOf", ctx.nextMonthDates);
592
+ i0.ɵɵadvance(4);
593
+ i0.ɵɵproperty("ngForOf", ctx.data.weekOffs);
594
+ i0.ɵɵadvance(5);
595
+ i0.ɵɵproperty("ngIf", ctx.data.isSPickerSelected);
596
+ i0.ɵɵadvance();
597
+ i0.ɵɵproperty("ngIf", !ctx.data.isSPickerSelected);
598
+ i0.ɵɵadvance(4);
599
+ i0.ɵɵproperty("ngIf", ctx.data.isSPickerSelected);
600
+ i0.ɵɵadvance();
601
+ i0.ɵɵproperty("ngIf", !ctx.data.isSPickerSelected);
602
+ i0.ɵɵadvance();
603
+ i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction1(31, _c1, !ctx.singleDatePickerSelected ? "none" : "block"));
604
+ i0.ɵɵadvance();
605
+ i0.ɵɵproperty("dpConfig", ctx.data.dpConfig)("selectedDate", ctx.singleDateSelectedValue)("value", ctx.singleDateSelectedValue)("disableBoxShadow", true)("disableOverLay", true)("openElement", ctx.openElement);
606
+ } }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i2.NgStyle, i3.ButtonDirective, i4.RadioButtonComponent, i5.TzDatepickerDirective], styles: [".daterangepicker-container[_ngcontent-%COMP%]{background:#fff;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}.daterangepicker-container.single-date-picker-enabled[_ngcontent-%COMP%]{flex-direction:row}.daterangepicker-container[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{display:flex;align-items:center;height:48px;padding:8px 0;justify-content:center;border-radius:12px 12px 0 0;border-bottom:1px solid var(--lt-bg-ntrl-seperators, #e0e0e0);background:var(--lt-text-white, #fff)}.daterangepicker-container[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]{display:flex;align-items:center}.daterangepicker-container[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%] .input[_ngcontent-%COMP%]{margin-right:8px;width:20px;height:20px}.daterangepicker-container[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]:first-child{padding-right:16px;border-right:1px solid #e0e0e0}.daterangepicker-container[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]:nth-child(2){padding-left:16px}.daterangepicker-container.single-date-picker-enabled[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:16px;height:288px;padding:20px;border-right:1px solid #e0e0e0!important;border-radius:0}.daterangepicker-container.single-date-picker-enabled[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]:first-child{padding-right:0;border-right:0px}.daterangepicker-container.single-date-picker-enabled[_ngcontent-%COMP%] .radio-container[_ngcontent-%COMP%] .label[_ngcontent-%COMP%]:nth-child(2){padding-left:0}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]{display:flex;gap:24px;padding:16px}.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}.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:16px}.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}.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)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%]{height:100%;width:252px}.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}.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}.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}.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}.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-direction:column;width:35px;height:36px;display:flex;align-items:center;justify-content:center;margin-bottom:1px}.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):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}.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;color:#0937b2}.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-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!important}.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!important}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-end-day.selected-start-day[_ngcontent-%COMP%]{border-radius:50%!important}.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-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-day[_ngcontent-%COMP%]{background-color:#0937b2;border-radius:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#fff!important}.daterangepicker-container[_ngcontent-%COMP%] .weekOffs_holidays_container[_ngcontent-%COMP%]{font-size:12px;color:var(--lt-text-muted, #6a737d);padding:8px 24px 12px}.daterangepicker-container[_ngcontent-%COMP%] .weekOffs_holidays_container[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{margin-right:16px}.daterangepicker-container[_ngcontent-%COMP%] .weekOffs_holidays_container[_ngcontent-%COMP%] > span[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:#181f33}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%]{display:flex;justify-content:space-between;border-top:1px solid #e0e0e0;padding:16px 24px;word-spacing:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-family:Lato;font-size:15px;font-weight:400;align-self:center}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] span[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:700}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] .footer_action_btn[_ngcontent-%COMP%]{display:flex}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:104px;height:44px;border-radius:8px;margin-left:24px;font-weight:700}.circular-dot[_ngcontent-%COMP%]{width:5px;height:5px;background-color:#ed711c;border-radius:50%}.holiday-text[_ngcontent-%COMP%]{color:#6a737d!important}.display-none[_ngcontent-%COMP%]{display:none!important}.single-datepicker-container[_ngcontent-%COMP%]{width:291px}"] }); }
607
+ }
608
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TzDrpContainerComponent, [{
609
+ type: Component,
610
+ args: [{ selector: "mis-tz-sdp", template: "<div class=\"daterangepicker-container\" [ngClass]=\"data.isSingleDatePickerEnable?'single-date-picker-enabled':''\">\n <div class=\"radio-container\">\n <!-- <label>\n <input type=\"radio\" (change)=\"changePicker($event)\" name=\"dateSelection\" value=\"SpecificDate\" [checked]=\"data.isSPickerSelected\"> Specific Date(s)\n</label>\n<label>\n <input type=\"radio\" (change)=\"changePicker($event)\" name=\"dateSelection\" value=\"DateRange\" [checked]=\"!data.isSPickerSelected\" >Date Range\n</label> -->\n<div class=\"label\" *ngFor=\"let picker of datePickerValue\">\n <mis-radio class=\"input\" [name]=\"'dateSelection'\" [value]=\"picker\" (valueChange)=\"changePicker($event)\" ngDefaultControl [formControl]=\"formControl\"></mis-radio>\n <span>{{picker}}</span>\n</div>\n</div>\n<div class=\"specific-datepicker-container\" [ngStyle]=\"{'display': singleDatePickerSelected ? 'none' : ''}\">\n <div class=\"daterangepicker-container__view\">\n <div class=\"datepicker__left\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div\n class=\"daterangepicker-container__arrow__icon\"\n (click)=\"!isPreviousMonthDisabled && navigateMonth('PREVIOUS')\"\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 </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 [ngClass]=\"{\n 'current-day': weekDay.isCurrentDay && (currentMonthNumber === todayMonthNumber)\n }\">{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\"\n [ngClass]=\"{\n 'selected-day': day.isSelectedDay && data.isSPickerSelected,\n 'disabled-day': day.isDisabledDay,\n 'selected-start-day': day.isSelectedStartDay && !data.isSPickerSelected,\n 'selected-end-day': day.isSelectedEndDay && !data.isSPickerSelected,\n 'in-range-day': day.inRangeDay && !data.isSPickerSelected,\n 'is-valid-date': day.date > 0 && !data.isSPickerSelected && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n [ngStyle]=\"{'margin-right': !data.isSPickerSelected ? '0px' : '1px','width': !data.isSPickerSelected ? '36px' : '35px','justify-content': day.isHoliday ? 'flex-start' : 'center','padding-top': day.isHoliday ? '2.8px' : '0px','height': day.isHoliday ? '33px' : '36px'}\"\n *ngFor=\"let day of currentMonthDates\"\n (click)=\"selectDay('LEFT',day)\"\n >\n <div [ngClass]=\"{\n 'circular-dot': day.isHoliday\n }\"></div>\n <span *ngIf=\"day.date > 0\" [ngClass]=\"{\n 'current-day': day.isCurrentDay,\n 'holiday-text': day.isHoliday || day.isWeekOff\n }\" >\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\"\n (click)=\"!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-day': day.isSelectedDay && data.isSPickerSelected,\n 'disabled-day': day.isDisabledDay,\n 'selected-start-day': day.isSelectedStartDay && !data.isSPickerSelected,\n 'selected-end-day': day.isSelectedEndDay && !data.isSPickerSelected,\n 'in-range-day': day.inRangeDay && !data.isSPickerSelected,\n 'is-valid-date': day.date > 0 && !data.isSPickerSelected && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n [ngStyle]=\"{ 'margin-right': !data.isSPickerSelected ? '0px' : '1px','width': !data.isSPickerSelected ? '36px' : '35px','justify-content': day.isHoliday ? 'flex-start' : 'center','padding-top': day.isHoliday ? '3px' : '0px','height': day.isHoliday ? '33px' : '36px'}\"\n *ngFor=\"let day of nextMonthDates\"\n (click)=\"selectDay('RIGHT',day)\"\n >\n <div [ngClass]=\"{\n 'circular-dot': day.isHoliday\n }\"></div>\n <span *ngIf=\"day.date > 0\" [ngClass]=\"{\n 'current-day': day.isCurrentDay && (currentMonthNumber === todayMonthNumber),\n 'holiday-text': day.isHoliday || day.isWeekOff\n }\" >\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div class=\"weekOffs_holidays_container\">\n <span>Weekly offs: <span *ngFor=\"let weekOff of data.weekOffs; let last = last\">{{weekOff}} <span *ngIf=\"!last\">,</span></span></span>\n <span >Holidays <span class=\"circular-dot\" style=\"display: inline-block; margin-left: 10px;\"></span></span>\n </div>\n <div class=\"daterangepicker__footer\">\n <span *ngIf=\"data.isSPickerSelected\"><span>{{localSelectedDates[0]?.selectedDate ? localSelectedDates.length : (localSelectedDates.length -1 && 0)}} </span>day(s) selected</span>\n <span *ngIf=\"!data.isSPickerSelected\"><span>{{dateRangeLength > 0 ? dateRangeLength : 0 }} </span>day(s) selected</span>\n <div class=\"footer_action_btn\">\n <button mis-button size=\"md\" type=\"none\" (click)=\"cancelDatePicker()\" >Cancel</button>\n <button *ngIf=\"data.isSPickerSelected\" mis-button size=\"md\" type=\"primary\" (click)=\"applyDates()\" [disabled]=\"!isDatesValid\" >Apply</button>\n <button *ngIf=\"!data.isSPickerSelected\" mis-button size=\"md\" type=\"primary\" (click)=\"applyDatesRange()\" [disabled]=\"!isDatesValid || (dateRangeLength === 0)\" >Apply</button>\n </div>\n </div>\n </div>\n <div class=\"single-datepicker-container\" [ngStyle]=\"{'display': !singleDatePickerSelected ? 'none' : 'block'}\">\n <input\n misTzDp\n misInput\n type=\"text\"\n readonly\n class=\"date-input\"\n [dpConfig]=\"data.dpConfig\"\n placeholder=\"Select\"\n (dateChange)=\"onSingleDateChange($event)\"\n [selectedDate]=\"singleDateSelectedValue\"\n positionX=\"center\"\n positionY=\"top\"\n offsetX = 71\n offsetY = -1\n [value]=\"singleDateSelectedValue\"\n [disableBoxShadow]=\"true\"\n [disableOverLay]=\"true\"\n [openElement]=\"openElement\"\n #singleDatePickerElement\n />\n </div>\n\n</div>\n", styles: [".daterangepicker-container{background:#fff;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}.daterangepicker-container.single-date-picker-enabled{flex-direction:row}.daterangepicker-container .radio-container{display:flex;align-items:center;height:48px;padding:8px 0;justify-content:center;border-radius:12px 12px 0 0;border-bottom:1px solid var(--lt-bg-ntrl-seperators, #e0e0e0);background:var(--lt-text-white, #fff)}.daterangepicker-container .radio-container .label{display:flex;align-items:center}.daterangepicker-container .radio-container .label .input{margin-right:8px;width:20px;height:20px}.daterangepicker-container .radio-container .label:first-child{padding-right:16px;border-right:1px solid #e0e0e0}.daterangepicker-container .radio-container .label:nth-child(2){padding-left:16px}.daterangepicker-container.single-date-picker-enabled .radio-container{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:16px;height:288px;padding:20px;border-right:1px solid #e0e0e0!important;border-radius:0}.daterangepicker-container.single-date-picker-enabled .radio-container .label:first-child{padding-right:0;border-right:0px}.daterangepicker-container.single-date-picker-enabled .radio-container .label:nth-child(2){padding-left:0}.daterangepicker-container .daterangepicker-container__view{display:flex;gap:24px;padding:16px}.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{display:flex;flex-direction:column}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:16px}.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}.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)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{height:100%;width:252px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{width:100%;display:flex;padding-bottom:10px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{width:36px;height:18px;text-align:center}.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}.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}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{flex-direction:column;width:35px;height:36px;display:flex;align-items:center;justify-content:center;margin-bottom:1px}.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):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}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.current-day{font-weight:700;letter-spacing:.25px;color:#0937b2}.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-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!important}.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!important}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day.selected-start-day{border-radius:50%!important}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .in-range-day:not(.disabled-day){background-color:#cbddfb}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-day{background-color:#0937b2;border-radius:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-day>span{color:#fff!important}.daterangepicker-container .weekOffs_holidays_container{font-size:12px;color:var(--lt-text-muted, #6a737d);padding:8px 24px 12px}.daterangepicker-container .weekOffs_holidays_container>span{margin-right:16px}.daterangepicker-container .weekOffs_holidays_container>span>span{color:#181f33}.daterangepicker-container .daterangepicker__footer{display:flex;justify-content:space-between;border-top:1px solid #e0e0e0;padding:16px 24px;word-spacing:4px}.daterangepicker-container .daterangepicker__footer span{font-family:Lato;font-size:15px;font-weight:400;align-self:center}.daterangepicker-container .daterangepicker__footer span span{font-weight:700}.daterangepicker-container .daterangepicker__footer .footer_action_btn{display:flex}.daterangepicker-container .daterangepicker__footer button{width:104px;height:44px;border-radius:8px;margin-left:24px;font-weight:700}.circular-dot{width:5px;height:5px;background-color:#ed711c;border-radius:50%}.holiday-text{color:#6a737d!important}.display-none{display:none!important}.single-datepicker-container{width:291px}\n"] }]
611
+ }], () => [{ type: undefined, decorators: [{
612
+ type: Inject,
613
+ args: [CONTAINER_DATA]
614
+ }] }, { type: i1.ToastService }, { type: i0.ChangeDetectorRef }], { singleDatePickerElement: [{
615
+ type: ViewChild,
616
+ args: ['singleDatePickerElement', { static: true, read: TzDatepickerDirective }]
617
+ }] }); })();
618
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TzDrpContainerComponent, { className: "TzDrpContainerComponent" }); })();
619
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHotc2RwLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9zcGVjaWZpY2RhdGVwaWNrZXIvdHotc2RwLWNvbnRhaW5lci90ei1zZHAtY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL3NwZWNpZmljZGF0ZXBpY2tlci90ei1zZHAtY29udGFpbmVyL3R6LXNkcC1jb250YWluZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQWMsTUFBTSxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRyxPQUFPLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRTNFLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7OztJQ0U5RSxBQURGLCtCQUEwRCxvQkFDNkY7SUFBbEYsd01BQWUsMkJBQW9CLEtBQUM7SUFBOEMsaUJBQVk7SUFDakssNEJBQU07SUFBQSxZQUFVO0lBQ2xCLEFBRGtCLGlCQUFPLEVBQ25COzs7O0lBRnFCLGNBQXdCO0lBQXdFLEFBQXZFLEFBQXpCLHNDQUF3QixvQkFBaUIsbUNBQWtGO0lBQzlJLGVBQVU7SUFBViwrQkFBVTs7O0lBMkJOLEFBREYsK0JBQWlGLGVBRzVFO0lBQUEsWUFBbUI7SUFDeEIsQUFEd0IsaUJBQU8sRUFDekI7Ozs7SUFIRSxjQUVKO0lBRkksc0lBRUo7SUFBQyxjQUFt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RSxJQUFJLEVBQUUscUJBQXFCLEVBQUU7O2tGQTlCeEUsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDT05UQUlORVJfREFUQSwgREFURV9GT1JNQVQgfSBmcm9tIFwiLi4vZGF0ZXJhbmdlcGlja2VyLWNvbnN0YW50c1wiO1xuaW1wb3J0IHsgSUN1cnJlbnRNb250aCwgSUN1cnJlbnRNb250aERhdGVzLCBJRGF0ZVBpY2tlckRhdGEsIElXZWVrRGF5LCBJU1NlbGVjdGVkRGF0ZXNDb25maWcsIElSU2VsZWN0ZWREYXRlc0NvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvc2RwLWNvbmZpZy5tb2RlbFwiO1xuaW1wb3J0IHsgcGFyc2Vab25lLCBNb21lbnQgfSBmcm9tIFwibW9tZW50LXRpbWV6b25lXCI7XG5pbXBvcnQgeyBnZXRNb250aCB9IGZyb20gXCIuLi91dGlsc1wiO1xuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSBcIm1pcy1jcnlzdGFsLWRlc2lnbi1zeXN0ZW0vdG9hc3RcIjtcbmltcG9ydCB7IFVudHlwZWRGb3JtQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgVHpEYXRlcGlja2VyRGlyZWN0aXZlIH0gZnJvbSBcIm1pcy1jcnlzdGFsLWRlc2lnbi1zeXN0ZW0vZGF0ZXBpY2tlcl92MlwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwibWlzLXR6LXNkcFwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3R6LXNkcC1jb250YWluZXIuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3R6LXNkcC1jb250YWluZXIuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgVHpEcnBDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBkYXRhOiBJRGF0ZVBpY2tlckRhdGE7XG4gIHByaXZhdGUgcGFyc2Vab25lSW5zdGFuY2UgPSAoLi4uYXJncykgPT4ge1xuICAgIHJldHVybiBwYXJzZVpvbmUoLi4uYXJncyk7XG4gIH07XG4gIHByaXZhdGUgcmF3V2Vla0RheXM6IHN0cmluZ1tdID0gW1wiU1VOXCIsIFwiTU9OXCIsIFwiVFVFXCIsIFwiV0VEXCIsIFwiVEhVXCIsIFwiRlJJXCIsIFwiU0FUXCJdO1xuICB3ZWVrRGF5czogSVdlZWtEYXlbXSA9IFtdO1xuICBjdXJyZW50TW9udGhOdW1iZXI6IG51bWJlcjtcbiAgY3VycmVudE1vbnRoOiBJQ3VycmVudE1vbnRoO1xuICBjdXJyZW50WWVhck51bWJlcjogbnVtYmVyO1xuICBjdXJyZW50TW9udGhEYXRlczogSUN1cnJlbnRNb250aERhdGVzW10gPSBbXTtcbiAgbmV4dE1vbnRoTnVtYmVyOiBudW1iZXI7XG4gIG5leHRNb250aDogSUN1cnJlbnRNb250aDtcbiAgbmV4dFllYXJOdW1iZXI6IG51bWJlcjtcbiAgbmV4dE1vbnRoRGF0ZXM6IElDdXJyZW50TW9udGhEYXRlc1tdID0gW107XG4gIGlzUHJldmlvdXNNb250aERpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIGlzTmV4dE1vbnRoRGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgc2VsZWN0aW9uU3RhcnRlZCA9IGZhbHNlO1xuICBsb2NhbFNlbGVjdGVkRGF0ZXM6IElTU2VsZWN0ZWREYXRlc0NvbmZpZ1tdOyBcbiAgbG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U6IElSU2VsZWN0ZWREYXRlc0NvbmZpZztcbiAgaXNEYXRlc1ZhbGlkID0gZmFsc2U7XG4gIHRvZGF5ID0gbmV3IERhdGUoKTtcbiAgdG9kYXlNb250aE51bWJlciA9IHRoaXMudG9kYXkuZ2V0TW9udGgoKVxuICBkYXRlUmFuZ2VTZWxlY3RlZDpib29sZWFuID0gZmFsc2U7XG4gIGRhdGVSYW5nZUxlbmd0aDogbnVtYmVyID0gMDtcbiAgZm9ybUNvbnRyb2w6IFVudHlwZWRGb3JtQ29udHJvbCA9IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woJ1NwZWNpZmljIERhdGUocyknKTtcbiAgZGF0ZVBpY2tlclZhbHVlOnN0cmluZ1tdPSBbJ1NwZWNpZmljIERhdGUocyknLCdEYXRlIFJhbmdlJ107XG4gIHNpbmdsZURhdGVQaWNrZXJTZWxlY3RlZDpib29sZWFuID0gZmFsc2U7XG4gIG9wZW5FbGVtZW50OmJvb2xlYW49ZmFsc2VcbiAgc2luZ2xlRGF0ZVNlbGVjdGVkVmFsdWU6c3RyaW5nPScnXG4gIEBWaWV3Q2hpbGQoJ3NpbmdsZURhdGVQaWNrZXJFbGVtZW50JywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFR6RGF0ZXBpY2tlckRpcmVjdGl2ZSB9KSBzaW5nbGVEYXRlUGlja2VyRWxlbWVudDogVHpEYXRlcGlja2VyRGlyZWN0aXZlO1xuICBjb25zdHJ1Y3RvcihASW5qZWN0KENPTlRBSU5FUl9EQVRBKSBkYXRhOiBJRGF0ZVBpY2tlckRhdGEsIHByaXZhdGUgdG9hc3Q6IFRvYXN0U2VydmljZSxwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLmRhdGEgPSBkYXRhO1xuICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2UgPSB0aGlzLmRhdGEuZGF0ZXNSYW5nZTtcbiAgICBjb25zdCBzdGFydERhdGUgPSBuZXcgRGF0ZSh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlc1JhbmdlPy5zdGFydERhdGUpO1xuICAgICAgY29uc3QgZW5kRGF0ZSA9IG5ldyBEYXRlKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U/LmVuZERhdGUpO1xuICAgICAgaWYoc3RhcnREYXRlICYmIGVuZERhdGUpe1xuICAgICAgICB0aGlzLmRhdGVSYW5nZUxlbmd0aCA9IChlbmREYXRlLmdldFRpbWUoKSAtIHN0YXJ0RGF0ZS5nZXRUaW1lKCkpLyAoMTAwMCAqIDYwICogNjAgKiAyNCkgKyAxO1xuICAgICAgfVxuICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0gdGhpcy5kYXRhLmRhdGVzO1xuICAgIGlmKCF0aGlzLmRhdGEuaXNTUGlja2VyU2VsZWN0ZWQpe1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShcIkRhdGUgUmFuZ2VcIilcbiAgICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gZmFsc2U7XG4gICAgICBpZiAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZS5zdGFydERhdGUgJiYgdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZS5lbmREYXRlKSB7XG4gICAgICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9ZWxzZXtcbiAgICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gZmFsc2U7XG4gICAgICBpZiAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IHRydWU7XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLmRhdGE/LmRwQ29uZmlnPy50aW1lem9uZSkge1xuICAgICAgdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSA9ICguLi5hcmdzKSA9PiB7XG4gICAgICAgIHJldHVybiBwYXJzZVpvbmUoLi4uYXJncykudHoodGhpcy5kYXRhLmRwQ29uZmlnLnRpbWV6b25lKTtcbiAgICAgIH07XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLm1vbnRoKCk7XG4gICAgdGhpcy5uZXh0TW9udGhOdW1iZXIgPSB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKCkuYWRkKDEsIFwibW9udGhcIikubW9udGgoKTtcbiAgICB0aGlzLmN1cnJlbnRNb250aCA9IGdldE1vbnRoKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyKTtcbiAgICB0aGlzLm5leHRNb250aCA9IGdldE1vbnRoKHRoaXMubmV4dE1vbnRoTnVtYmVyKTtcbiAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLnllYXIoKTtcbiAgICB0aGlzLm5leHRZZWFyTnVtYmVyID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLmFkZCgxLCBcIm1vbnRoXCIpLnllYXIoKTtcbiAgICB0aGlzLndlZWtEYXlzID0gdGhpcy5yYXdXZWVrRGF5cy5tYXAoKGRheSwgaW5kZXgpID0+ICh7XG4gICAgICBsYWJlbDogYCR7ZGF5WzBdfSR7ZGF5LnNsaWNlKDEpLnRvTG93ZXJDYXNlKCl9YCxcbiAgICAgIGlzQ3VycmVudERheTogdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLmRheSgpID09PSBpbmRleCBcbiAgICB9KSk7XG4gICAgaWYgKCF0aGlzLmRhdGE/LmRwQ29uZmlnPy5mb3JtYXQpIHtcbiAgICAgIHRoaXMuZGF0YS5kcENvbmZpZyA9IHtcbiAgICAgICAgLi4udGhpcy5kYXRhLmRwQ29uZmlnLFxuICAgICAgICBmb3JtYXQ6IERBVEVfRk9STUFUXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMuZGF0YS5pc1NpbmdsZURhdGVQaWNrZXJFbmFibGUpXG4gICAge1xuICAgICAgdGhpcy5kYXRlUGlja2VyVmFsdWUudW5zaGlmdCgnU2luZ2xlIERhdGUnKVxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSgnU2luZ2xlIERhdGUnKVxuICAgICAgdGhpcy5zaW5nbGVEYXRlUGlja2VyU2VsZWN0ZWQ9dHJ1ZVxuICAgICAgdGhpcy5vcGVuRWxlbWVudD10cnVlXG4gICAgICB0aGlzLnNpbmdsZURhdGVTZWxlY3RlZFZhbHVlPXRoaXMuZGF0YT8uZGF0ZXNbMF0/LnNlbGVjdGVkRGF0ZVxuICAgIH1cbiAgICB0aGlzLmN1cnJlbnREYXRlSW5zdGFuY2UoKTtcbiAgICB0aGlzLmNhbGN1bGF0ZU1pbk1heERheXMoKTtcbiAgfVxuXG4gIHByaXZhdGUgY3VycmVudERhdGVJbnN0YW5jZSgpOiB2b2lkIHtcbiAgICBsZXQgc2VsZWN0ZWRTdGFydERhdGU7XG4gICAgaWYoIXRoaXMuZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCl7XG4gICAgICBpZiAoIXRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U/LnN0YXJ0RGF0ZSkge1xuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyLCB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKTtcbiAgICAgICAgdGhpcy5uZXh0TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLm5leHRNb250aE51bWJlciwgdGhpcy5uZXh0WWVhck51bWJlcik7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgc2VsZWN0ZWRTdGFydERhdGUgPSB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U/LnN0YXJ0RGF0ZSwgdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgfWVsc2V7XG4gICAgICBzZWxlY3RlZFN0YXJ0RGF0ZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXM/LlswXS5zZWxlY3RlZERhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpO1xuICAgIH1cbiAgICBpZiAoc2VsZWN0ZWRTdGFydERhdGUuaXNWYWxpZCgpKSB7XG4gICAgICB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyID0gc2VsZWN0ZWRTdGFydERhdGUueWVhcigpO1xuICAgICAgdGhpcy5uZXh0WWVhck51bWJlciA9IHNlbGVjdGVkU3RhcnREYXRlLmFkZCgxLCBcIm1vbnRoXCIpLnllYXIoKTtcbiAgICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gc2VsZWN0ZWRTdGFydERhdGUuZ2V0KFwibW9udGhcIikgLSAxO1xuICAgICAgdGhpcy5uZXh0TW9udGhOdW1iZXIgPSBzZWxlY3RlZFN0YXJ0RGF0ZS5hZGQoMSwgXCJtb250aFwiKS5tb250aCgpIC0gMTtcbiAgICAgIGlmKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID09PSAtMSl7XG4gICAgICAgICAgIHRoaXMuY3VycmVudE1vbnRoTnVtYmVyID0gMTFcbiAgICAgICAgIH1cbiAgICAgIGlmKHRoaXMubmV4dE1vbnRoTnVtYmVyID09PSAtMSl7XG4gICAgICAgICAgIHRoaXMubmV4dE1vbnRoTnVtYmVyID0gMTFcbiAgICAgICAgIH1cbiAgICAgIHRoaXMuY3VycmVudE1vbnRoID0gZ2V0TW9udGgodGhpcy5jdXJyZW50TW9udGhOdW1iZXIpO1xuICAgICAgdGhpcy5uZXh0TW9udGggPSBnZXRNb250aCh0aGlzLm5leHRNb250aE51bWJlcik7XG4gICAgfVxuICAgIHRoaXMuY3VycmVudE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5jdXJyZW50TW9udGhOdW1iZXIsIHRoaXMuY3VycmVudFllYXJOdW1iZXIpO1xuICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVNaW5NYXhEYXlzKCkge1xuICAgIGNvbnN0IGN1cnJlbnRJbnN0YW5jZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UoKS55ZWFyKHRoaXMuY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyKTtcbiAgICBjb25zdCBtaW5EYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSh0aGlzLmRhdGEuZHBDb25maWcubWluRGF0ZSwgdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgaWYgKG1pbkRhdGUuaXNWYWxpZCgpKSB7XG4gICAgICB0aGlzLmlzUHJldmlvdXNNb250aERpc2FibGVkID0gbWluRGF0ZS5pc1NhbWVPckFmdGVyKGN1cnJlbnRJbnN0YW5jZSwgXCJtb250aFwiKTtcbiAgICB9XG4gICAgY29uc3QgbWF4RGF0ZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UodGhpcy5kYXRhLmRwQ29uZmlnLm1heERhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpO1xuICAgIGlmIChtYXhEYXRlLmlzVmFsaWQoKSkge1xuICAgICAgdGhpcy5pc05leHRNb250aERpc2FibGVkID0gbWF4RGF0ZS5pc1NhbWVPckJlZm9yZShjdXJyZW50SW5zdGFuY2UsIFwibW9udGhcIik7XG4gICAgfVxuICB9XG5cbm5hdmlnYXRlTW9udGgoZGlyZWN0aW9uOiBcIk5FWFRcIiB8IFwiUFJFVklPVVNcIik6IHZvaWQge1xuIGxldCB0aGlzTW9udGg6IE1vbWVudCA9IHBhcnNlWm9uZSgpLnllYXIodGhpcy5jdXJyZW50WWVhck51bWJlcikubW9udGgodGhpcy5jdXJyZW50TW9udGhOdW1iZXIpO1xuIGlmIChkaXJlY3Rpb24gPT09IFwiTkVYVFwiKSB7XG4gIHRoaXNNb250aCA9IHRoaXNNb250aC5hZGQoMSwgXCJtb250aFwiKTtcbiB9IGVsc2UgaWYgKGRpcmVjdGlvbiA9PT0gXCJQUkVWSU9VU1wiKSB7XG4gIHRoaXNNb250aCA9IHRoaXNNb250aC5zdWJ0cmFjdCgxLCBcIm1vbnRoXCIpO1xuIH1cbiB0aGlzLmN1cnJlbnRNb250aE51bWJlciA9IHRoaXNNb250aC5tb250aCgpO1xuIHRoaXMubmV4dE1vbnRoTnVtYmVyID0gdGhpc01vbnRoLmNsb25lKCkuYWRkKDEsIFwibW9udGhcIikubW9udGgoKTtcbiB0aGlzLmN1cnJlbnRNb250aCA9IGdldE1vbnRoKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyKTtcbiB0aGlzLm5leHRNb250aCA9IGdldE1vbnRoKHRoaXMubmV4dE1vbnRoTnVtYmVyKTtcbiBpZiAodGhpcy5uZXh0TW9udGhOdW1iZXIgPT09IDAgJiYgZGlyZWN0aW9uID09PSBcIlBSRVZJT1VTXCIpIHtcbiAgdGhpcy5jdXJyZW50WWVhck51bWJlci0tO1xuIH0gZWxzZSBpZiAodGhpcy5jdXJyZW50TW9udGhOdW1iZXIgPT09IDExICYmIGRpcmVjdGlvbiA9PT0gXCJORVhUXCIpIHtcbiAgdGhpcy5uZXh0WWVhck51bWJlcisrO1xuIH1lbHNlIGlmICh0aGlzLmN1cnJlbnRNb250aE51bWJlciA9PT0gMCAmJiBkaXJlY3Rpb24gPT09IFwiTkVYVFwiKSB7XG4gIHRoaXMuY3VycmVudFllYXJOdW1iZXIrKztcbiB9IGVsc2UgaWYgKHRoaXMubmV4dE1vbnRoTnVtYmVyID09PSAxMSAmJiBkaXJlY3Rpb24gPT09IFwiUFJFVklPVVNcIikge1xuICB0aGlzLm5leHRZZWFyTnVtYmVyLS07XG4gfWVsc2V7XG4gIHRoaXMubmV4dFllYXJOdW1iZXIgPSB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyO1xuIH1cbiB0aGlzLmN1cnJlbnRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyLCB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKTtcbiB0aGlzLm5leHRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMubmV4dE1vbnRoTnVtYmVyLCB0aGlzLm5leHRZZWFyTnVtYmVyKTtcbiB0aGlzLmNhbGN1bGF0ZU1pbk1heERheXMoKTtcbn1cblxuICBwcml2YXRlIGdlbmVyYXRlRGF0ZXMobW9udGg6IG51bWJlciwgY3VycmVudFllYXJOdW1iZXI6IG51bWJlcik6IElDdXJyZW50TW9udGhEYXRlc1tdIHtcbiAgICBsZXQgZGF0ZXM6IElDdXJyZW50TW9udGhEYXRlc1tdID0gW107XG4gICAgY29uc3QgZGF5c0luTW9udGggPSBwYXJzZVpvbmUoKS55ZWFyKGN1cnJlbnRZZWFyTnVtYmVyKS5tb250aChtb250aCkuZGF5c0luTW9udGgoKTtcbiAgICBmb3IgKGxldCBjdXJyZW50RGF0ZSA9IDE7IGN1cnJlbnREYXRlIDw9IGRheXNJbk1vbnRoOyBjdXJyZW50RGF0ZSsrKSB7XG4gICAgICBjb25zdCBkYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLnllYXIoY3VycmVudFllYXJOdW1iZXIpLm1vbnRoKG1vbnRoKS5kYXRlKGN1cnJlbnREYXRlKTtcbiAgICAgIGNvbnN0IGRhdGVTdHJpbmcgPSBkYXRlLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICAgIGxldCBpc0Rpc2FibGVkRGF5ID0gdGhpcy5kYXRhLmRhdGVzRGlzYWJsZWQuc29tZShkID0+IGQgPT09IGRhdGVTdHJpbmcpO1xuICAgICAgY29uc3QgbWluRGF0ZSA9IHRoaXMucGFyc2Vab25lSW5zdGFuY2UodGhpcy5kYXRhLmRwQ29uZmlnLm1pbkRhdGUsIHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpO1xuICAgICAgaWYgKCFpc0Rpc2FibGVkRGF5ICYmIG1pbkRhdGUuaXNWYWxpZCgpKSB7XG4gICAgICAgIGlzRGlzYWJsZWREYXkgPSBtaW5EYXRlLmlzQWZ0ZXIoZGF0ZSwgXCJkYXlcIik7XG4gICAgICB9XG4gICAgICBjb25zdCBtYXhEYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSh0aGlzLmRhdGEuZHBDb25maWcubWF4RGF0ZSwgdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCk7XG4gICAgICBpZiAoIWlzRGlzYWJsZWREYXkgJiYgbWF4RGF0ZS5pc1ZhbGlkKCkpIHtcbiAgICAgICAgaXNEaXNhYmxlZERheSA9IG1heERhdGUuaXNCZWZvcmUoZGF0ZSwgXCJkYXlcIik7XG4gICAgICB9XG4gICAgICBjb25zdCBpc0N1cnJlbnREYXkgPVxuICAgICAgICB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKCkueWVhcihjdXJyZW50WWVhck51bWJlcikubW9udGgobW9udGgpLmRhdGUoY3VycmVudERhdGUpLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KSA9PT1cbiAgICAgICAgdGhpcy5wYXJzZVpvbmVJbnN0YW5jZSgpLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KTtcbiAgICAgIGxldCBpc1NlbGVjdGVkRGF5ID0gZmFsc2U7XG4gICAgICBmb3IgKGNvbnN0IHNlbGVjdGVkRGF0ZUNvbmZpZyBvZiB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcykge1xuICAgICAgaWYgKCFpc1NlbGVjdGVkRGF5ICYmIGRhdGUuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpID09PSBzZWxlY3RlZERhdGVDb25maWcuc2VsZWN0ZWREYXRlKSB7XG4gICAgICAgIGlzU2VsZWN0ZWREYXkgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBsZXQgaXNIb2xpZGF5ID0gZmFsc2U7XG4gICAgICBmb3IgKGNvbnN0IGRheSBvZiB0aGlzLmRhdGEuaG9saWRheXMpIHtcbiAgICAgIGlmICggZGF0ZS5mb3JtYXQodGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCkgPT09IGRheSkge1xuICAgICAgICBpc0hvbGlkYXkgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgIGNvbnN0IGRheU9mV2VlayA9IGRhdGUuZm9ybWF0KCdkZGQnKTtcbiAgICAgY29uc3QgaXNXZWVrT2ZmID0gdGhpcy5kYXRhLndlZWtPZmZzLmluY2x1ZGVzKGRheU9mV2Vlayk7XG4gICAgICBjb25zdCBpc1NlbGVjdGVkU3RhcnREYXkgPVxuICAgICAgICAhaXNEaXNhYmxlZERheSAmJlxuICAgICAgICAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uc3RhcnREYXRlID8/IGZhbHNlKSAmJlxuICAgICAgICBkYXRlLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KSA9PT0gdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uc3RhcnREYXRlO1xuICAgICAgY29uc3QgaXNBZnRlclNlbGVjdGVkU3RhcnREYXRlID0gdGhpcy5wYXJzZVpvbmVJbnN0YW5jZShkYXRlKS5pc0FmdGVyKHBhcnNlWm9uZSh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlc1JhbmdlPy5zdGFydERhdGUsdGhpcy5kYXRhLmRwQ29uZmlnLmZvcm1hdCksIFwiZGF5XCIpO1xuICAgICAgY29uc3QgaXNCZWZvcmVTZWxlY3RlZEVuZERhdGUgPSB0aGlzLnBhcnNlWm9uZUluc3RhbmNlKGRhdGUpLmlzQmVmb3JlKHBhcnNlWm9uZSh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlc1JhbmdlPy5lbmREYXRlLHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLCBcImRheVwiKTtcbiAgICAgIGNvbnN0IGluUmFuZ2VEYXkgPVxuICAgICAgICAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uc3RhcnREYXRlID8/IGZhbHNlKSAmJlxuICAgICAgICAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uZW5kRGF0ZSA/PyBmYWxzZSkgJiZcbiAgICAgICAgaXNBZnRlclNlbGVjdGVkU3RhcnREYXRlICYmXG4gICAgICAgIGlzQmVmb3JlU2VsZWN0ZWRFbmREYXRlO1xuXG4gICAgICBjb25zdCBpc1NlbGVjdGVkRW5kRGF5ID1cbiAgICAgICAgIWlzRGlzYWJsZWREYXkgJiZcbiAgICAgICAgKCh0aGlzLmxvY2FsU2VsZWN0ZWREYXRlc1JhbmdlPy5zdGFydERhdGUgJiYgdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uZW5kRGF0ZSkgPz8gZmFsc2UpICYmXG4gICAgICAgIGRhdGUuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpID09PSB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlc1JhbmdlPy5lbmREYXRlO1xuICAgICAgZGF0ZXMucHVzaCh7XG4gICAgICAgIGRhdGU6IGN1cnJlbnREYXRlLFxuICAgICAgICB3ZWVrRGF5OiBkYXRlLmRheSgpLFxuICAgICAgICBpc1NlbGVjdGVkRGF5LFxuICAgICAgICBpc0N1cnJlbnREYXksXG4gICAgICAgIGlzU2VsZWN0ZWRTdGFydERheSxcbiAgICAgICAgaXNTZWxlY3RlZEVuZERheSxcbiAgICAgICAgaW5SYW5nZURheSxcbiAgICAgICAgaXNIb2xpZGF5LFxuICAgICAgICBpc1dlZWtPZmYsXG4gICAgICAgIHRvYXN0TWVzc2FnZTogdGhpcy5kYXRhLm1lc3NhZ2VzLmZpbmQocSA9PiBkYXRlLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KSA9PT0gcS5kYXRlKT8ubWVzc2FnZSB8fCBcIlwiLFxuICAgICAgICBpc0Rpc2FibGVkRGF5XG4gICAgICB9KTtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IGRhdGVzWzBdLndlZWtEYXk7IGkgPiAwOyBpLS0pIHtcbiAgICAgIGRhdGVzLnVuc2hpZnQoeyBkYXRlOiAwLCB3ZWVrRGF5OiBpIC0gMSB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGRhdGVzO1xuICB9XG5cbiAgc2VsZWN0RGF5KGZyb206IFwiTEVGVFwiIHwgXCJSSUdIVFwiLCBkYXk6IElDdXJyZW50TW9udGhEYXRlcykge1xuICAgIGlmIChkYXkuZGF0ZSA8PSAwKSByZXR1cm47XG4gICAgaWYoIXRoaXMuZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCl7XG4gICAgICBpZiAoIWRheS5pc0Rpc2FibGVkRGF5KSB7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGlvblN0YXJ0ZWQpIHtcbiAgICAgICAgICBjb25zdCBtb21lbnREYXkgPSBwYXJzZVpvbmUoKVxuICAgICAgICAgICAgLnllYXIoZnJvbSA9PT0gXCJMRUZUXCIgPyB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyIDogdGhpcy5uZXh0WWVhck51bWJlcilcbiAgICAgICAgICAgIC5tb250aChmcm9tID09PSBcIkxFRlRcIiA/IHRoaXMuY3VycmVudE1vbnRoTnVtYmVyIDogdGhpcy5uZXh0TW9udGhOdW1iZXIpXG4gICAgICAgICAgICAuZGF0ZShkYXkuZGF0ZSk7XG4gICAgICAgICAgaWYgKG1vbWVudERheS5pc0JlZm9yZShwYXJzZVpvbmUodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uc3RhcnREYXRlLHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLCBcImRheVwiKSkge1xuICAgICAgICAgICAgdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZSA9IHtcbiAgICAgICAgICAgICAgc3RhcnREYXRlOiBtb21lbnREYXkuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLFxuICAgICAgICAgICAgICBlbmREYXRlOiBudWxsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLmN1cnJlbnRNb250aE51bWJlciwgdGhpcy5jdXJyZW50WWVhck51bWJlcik7XG4gICAgICAgICAgICB0aGlzLm5leHRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMubmV4dE1vbnRoTnVtYmVyLCB0aGlzLm5leHRZZWFyTnVtYmVyKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5zZWxlY3Rpb25TdGFydGVkID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZSA9IHtcbiAgICAgICAgICAgIC4uLnRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2UsXG4gICAgICAgICAgICBlbmREYXRlOiBtb21lbnREYXkuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpXG4gICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGlvblN0YXJ0ZWQgPSB0cnVlO1xuICAgICAgICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2UgPSB7XG4gICAgICAgICAgICBzdGFydERhdGU6IHBhcnNlWm9uZSgpXG4gICAgICAgICAgICAgIC55ZWFyKGZyb20gPT09IFwiTEVGVFwiID8gdGhpcy5jdXJyZW50WWVhck51bWJlciA6IHRoaXMubmV4dFllYXJOdW1iZXIpXG4gICAgICAgICAgICAgIC5tb250aChmcm9tID09PSBcIkxFRlRcIiA/IHRoaXMuY3VycmVudE1vbnRoTnVtYmVyIDogdGhpcy5uZXh0TW9udGhOdW1iZXIpXG4gICAgICAgICAgICAgIC5kYXRlKGRheS5kYXRlKVxuICAgICAgICAgICAgICAuZm9ybWF0KHRoaXMuZGF0YS5kcENvbmZpZy5mb3JtYXQpLFxuICAgICAgICAgICAgZW5kRGF0ZTogbnVsbFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLmN1cnJlbnRNb250aE51bWJlciwgdGhpcy5jdXJyZW50WWVhck51bWJlcik7XG4gICAgICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICAgICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IGZhbHNlO1xuICAgICAgICBpZiAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uc3RhcnREYXRlICYmIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U/LmVuZERhdGUpIHtcbiAgICAgICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGNvbnN0IHN0YXJ0RGF0ZSA9IG5ldyBEYXRlKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2U/LnN0YXJ0RGF0ZSk7XG4gICAgICBjb25zdCBlbmREYXRlID0gbmV3IERhdGUodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXNSYW5nZT8uZW5kRGF0ZSk7XG4gICAgICBpZihzdGFydERhdGUgJiYgZW5kRGF0ZSl7XG4gICAgICAgIHRoaXMuZGF0ZVJhbmdlTGVuZ3RoID0gKGVuZERhdGUuZ2V0VGltZSgpIC0gc3RhcnREYXRlLmdldFRpbWUoKSkvICgxMDAwICogNjAgKiA2MCAqIDI0KSArIDE7XG4gICAgICB9XG4gICAgICBcbiAgICB9ZWxzZXtcbiAgICAgIGNvbnN0IGN1cnJlbnRTZWxlY3Rpb24gPSAgcGFyc2Vab25lKClcbiAgICAgIC55ZWFyKGZyb20gPT09IFwiTEVGVFwiID8gdGhpcy5jdXJyZW50WWVhck51bWJlciA6IHRoaXMubmV4dFllYXJOdW1iZXIpXG4gICAgICAubW9udGgoZnJvbSA9PT0gXCJMRUZUXCIgPyB0aGlzLmN1cnJlbnRNb250aE51bWJlciA6IHRoaXMubmV4dE1vbnRoTnVtYmVyKVxuICAgICAgLmRhdGUoZGF5LmRhdGUpLmZvcm1hdCh0aGlzLmRhdGEuZHBDb25maWcuZm9ybWF0KVxuICAgICAgY29uc3QgZXhpc3RpbmdJbmRleCA9IHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLmZpbmRJbmRleChzZWxlY3RlZERhdGVDb25maWcgPT4gc2VsZWN0ZWREYXRlQ29uZmlnLnNlbGVjdGVkRGF0ZSA9PT0gY3VycmVudFNlbGVjdGlvbik7XG4gIFxuICAgICAgaWYgKGV4aXN0aW5nSW5kZXggIT09IC0xKSB7XG4gICAgICB0aGlzLmxvY2FsU2VsZWN0ZWREYXRlcyA9IHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLmZpbHRlcigoXywgaW5kZXgpID0+IGluZGV4ICE9PSBleGlzdGluZ0luZGV4KTtcbiAgICAgIHRoaXMuaXNEYXRlc1ZhbGlkID0gZmFsc2U7XG4gICAgICBpZiAodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLmlzRGF0ZXNWYWxpZCA9IHRydWU7XG4gICAgICB9XG4gICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyLCB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKTtcbiAgICAgIHRoaXMubmV4dE1vbnRoRGF0ZXMgPSB0aGlzLmdlbmVyYXRlRGF0ZXModGhpcy5uZXh0TW9udGhOdW1iZXIsIHRoaXMubmV4dFllYXJOdW1iZXIpO1xuICAgICAgfWVsc2UgaWYoIWRheS5pc0Rpc2FibGVkRGF5KSB7XG4gICAgICAgIHRoaXMubG9jYWxTZWxlY3RlZERhdGVzID0gW1xuICAgICAgICAgIC4uLnRoaXMubG9jYWxTZWxlY3RlZERhdGVzLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHNlbGVjdGVkRGF0ZTogY3VycmVudFNlbGVjdGlvblxuICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICAgICAgdGhpcy5pc0RhdGVzVmFsaWQgPSBmYWxzZTtcbiAgICAgICAgaWYgKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5pc0RhdGVzVmFsaWQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgICB0aGlzLmN1cnJlbnRNb250aERhdGVzID0gdGhpcy5nZW5lcmF0ZURhdGVzKHRoaXMuY3VycmVudE1vbnRoTnVtYmVyLCB0aGlzLmN1cnJlbnRZZWFyTnVtYmVyKTtcbiAgICAgICAgdGhpcy5uZXh0TW9udGhEYXRlcyA9IHRoaXMuZ2VuZXJhdGVEYXRlcyh0aGlzLm5leHRNb250aE51bWJlciwgdGhpcy5uZXh0WWVhck51bWJlcik7XG4gICAgICB9ZWxzZXtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBpZiAoZGF5LnRvYXN0TWVzc2FnZSkge1xuICAgICAgdGhpcy50b2FzdC5kaXNwbGF5TXNnKGRheS50b2FzdE1lc3NhZ2UsIDQwMDApO1xuICAgIH1cbiAgfVxuXG4gIGFwcGx5RGF0ZXMoKSB7XG4gICAgdGhpcy5kYXRhLmRhdGVDaGFuZ2UodGhpcy5sb2NhbFNlbGVjdGVkRGF0ZXMpO1xuICB9XG4gIGFwcGx5RGF0ZXNSYW5nZSgpIHtcbiAgICB0aGlzLmRhdGEuZGF0ZUNoYW5nZVJhbmdlKHRoaXMubG9jYWxTZWxlY3RlZERhdGVzUmFuZ2UpO1xuICB9XG5cbiAgb25TaW5nbGVEYXRlQ2hhbmdlKCRldmVudClcbiAge1xuICAgIGxldCBzZWxlY3RlZERhdGE6SVNTZWxlY3RlZERhdGVzQ29uZmlnPXtzZWxlY3RlZERhdGU6JGV2ZW50fVxuICAgIHRoaXMuc2luZ2xlRGF0ZVNlbGVjdGVkVmFsdWU9JGV2ZW50XG4gICAgdGhpcy5kYXRhLmRhdGVDaGFuZ2UoW3NlbGVjdGVkRGF0YV0pO1xuICB9XG5cbiAgY2FuY2VsRGF0ZVBpY2tlcigpIHtcbiAgICB0aGlzLmRhdGEuY2xvc2UoKTtcbiAgfVxuICBjaGFuZ2VQaWNrZXIoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUoZXZlbnQpXG4gICAgdGhpcy5zaW5nbGVEYXRlUGlja2VyU2VsZWN0ZWQ9ZmFsc2VcbiAgICBpZihldmVudCA9PT0gXCJEYXRlIFJhbmdlXCIpe1xuICAgICAgdGhpcy5vcGVuRWxlbWVudD1mYWxzZVxuICAgICAgdGhpcy5kYXRhLmlzU1BpY2tlclNlbGVjdGVkID0gZmFsc2U7XG4gICAgfVxuICAgIGVsc2UgaWYoZXZlbnQ9PT1cIlNpbmdsZSBEYXRlXCIpXG4gICAge1xuICAgICAgdGhpcy5zaW5nbGVEYXRlUGlja2VyU2VsZWN0ZWQ9dHJ1ZVxuICAgICAgdGhpcy5vcGVuRWxlbWVudD10cnVlXG4gICAgfVxuICAgIGVsc2V7XG4gICAgICB0aGlzLm9wZW5FbGVtZW50PWZhbHNlXG4gICAgICB0aGlzLmRhdGEuaXNTUGlja2VyU2VsZWN0ZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zaW5nbGVEYXRlUGlja2VyRWxlbWVudCkge1xuICAgICAgdGhpcy5zaW5nbGVEYXRlUGlja2VyRWxlbWVudC5jbG9zZSgpO1xuICAgIH1cbiAgfVxufVxuXG4iLCI8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lclwiIFtuZ0NsYXNzXT1cImRhdGEuaXNTaW5nbGVEYXRlUGlja2VyRW5hYmxlPydzaW5nbGUtZGF0ZS1waWNrZXItZW5hYmxlZCc6JydcIj5cbiAgPGRpdiBjbGFzcz1cInJhZGlvLWNvbnRhaW5lclwiPlxuICA8IS0tIDxsYWJlbD5cbiAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgKGNoYW5nZSk9XCJjaGFuZ2VQaWNrZXIoJGV2ZW50KVwiIG5hbWU9XCJkYXRlU2VsZWN0aW9uXCIgdmFsdWU9XCJTcGVjaWZpY0RhdGVcIiBbY2hlY2tlZF09XCJkYXRhLmlzU1BpY2tlclNlbGVjdGVkXCI+IFNwZWNpZmljIERhdGUocylcbjwvbGFiZWw+XG48bGFiZWw+XG4gICAgPGlucHV0IHR5cGU9XCJyYWRpb1wiIChjaGFuZ2UpPVwiY2hhbmdlUGlja2VyKCRldmVudClcIiBuYW1lPVwiZGF0ZVNlbGVjdGlvblwiIHZhbHVlPVwiRGF0ZVJhbmdlXCIgW2NoZWNrZWRdPVwiIWRhdGEuaXNTUGlja2VyU2VsZWN0ZWRcIiA+RGF0ZSBSYW5nZVxuPC9sYWJlbD4gLS0+XG48ZGl2IGNsYXNzPVwibGFiZWxcIiAqbmdGb3I9XCJsZXQgcGlja2VyIG9mIGRhdGVQaWNrZXJWYWx1ZVwiPlxuICA8bWlzLXJhZGlvIGNsYXNzPVwiaW5wdXRcIiBbbmFtZV09XCInZGF0ZVNlbGVjdGlvbidcIiBbdmFsdWVdPVwicGlja2VyXCIgKHZhbHVlQ2hhbmdlKT1cImNoYW5nZVBpY2tlcigkZXZlbnQpXCIgbmdEZWZhdWx0Q29udHJvbCBbZm9ybUNvbnRyb2xdPVwiZm9ybUNvbnRyb2xcIj48L21pcy1yYWRpbz5cbiAgPHNwYW4+e3twaWNrZXJ9fTwvc3Bhbj5cbjwvZGl2PlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwic3BlY2lmaWMtZGF0ZXBpY2tlci1jb250YWluZXJcIiBbbmdTdHlsZV09XCJ7J2Rpc3BsYXknOiBzaW5nbGVEYXRlUGlja2VyU2VsZWN0ZWQgPyAnbm9uZScgOiAnJ31cIj5cbiAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX3ZpZXdcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZXBpY2tlcl9fbGVmdFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2hlYWRlcl9fcHJhYnVcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fYXJyb3dfX2ljb25cIlxuICAgICAgICAgIChjbGljayk9XCIhaXNQcmV2aW91c01vbnRoRGlzYWJsZWQgJiYgbmF2aWdhdGVNb250aCgnUFJFVklPVVMnKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ2Rpc2FibGVkLW1vbnRoJzogaXNQcmV2aW91c01vbnRoRGlzYWJsZWRcbiAgICAgICAgICB9XCJcbiAgICAgICAgPlxuICAgICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMjAgMTZcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZD1cIk0xOS43MDcxIDguNzA3MTFDMjAuMDk3NiA4LjMxNjU4IDIwLjA5NzYgNy42ODM0MiAxOS43MDcxIDcuMjkyODlMMTMuMzQzMSAwLjkyODkzM0MxMi45NTI2IDAuNTM4NDA5IDEyLjMxOTUgMC41Mzg0MDkgMTEuOTI4OSAwLjkyODkzM0MxMS41Mzg0IDEuMzE5NDYgMTEuNTM4NCAxLjk1MjYyIDExLjkyODkgMi4zNDMxNUwxNy41ODU4IDhMMTEuOTI4OSAxMy42NTY5QzExLjUzODQgMTQuMDQ3NCAxMS41Mzg0IDE0LjY4MDUgMTEuOTI4OSAxNS4wNzExQzEyLjMxOTUgMTUuNDYxNiAxMi45NTI2IDE1LjQ2MTYgMTMuMzQzMSAxNS4wNzExTDE5LjcwNzEgOC43MDcxMVpNLTguNzQyMjhlLTA4IDlMMTkgOUwxOSA3TDguNzQyMjhlLTA4IDdMLTguNzQyMjhlLTA4IDlaXCJcbiAgICAgICAgICAgIGZpbGw9XCIjMTgxRjMzXCJcbiAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuPiB7eyBjdXJyZW50TW9udGggfX0ge3sgY3VycmVudFllYXJOdW1iZXIgfX0gPC9zcGFuPlxuICAgICAgICA8ZGl2PjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fYm9keVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fd2Vla2RheXNcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcl9fd2Vla2RheVwiICpuZ0Zvcj1cImxldCB3ZWVrRGF5IG9mIHdlZWtEYXlzXCI+XG4gICAgICAgICAgICA8c3BhbiBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICdjdXJyZW50LWRheSc6IHdlZWtEYXkuaXNDdXJyZW50RGF5ICYmIChjdXJyZW50TW9udGhOdW1iZXIgPT09IHRvZGF5TW9udGhOdW1iZXIpXG4gICAgICAgICAgICB9XCI+e3sgd2Vla0RheS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19kYXlzXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19kYXlcIlxuICAgICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgICAnc2VsZWN0ZWQtZGF5JzogZGF5LmlzU2VsZWN0ZWREYXkgJiYgZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCxcbiAgICAgICAgICAgICAgJ2Rpc2FibGVkLWRheSc6IGRheS5pc0Rpc2FibGVkRGF5LFxuICAgICAgICAgICAgICAnc2VsZWN0ZWQtc3RhcnQtZGF5JzogZGF5LmlzU2VsZWN0ZWRTdGFydERheSAmJiAhZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCxcbiAgICAgICAgICAgICAgJ3NlbGVjdGVkLWVuZC1kYXknOiBkYXkuaXNTZWxlY3RlZEVuZERheSAmJiAhZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCxcbiAgICAgICAgICAgICAgJ2luLXJhbmdlLWRheSc6IGRheS5pblJhbmdlRGF5ICYmICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkLFxuICAgICAgICAgICAgICAnaXMtdmFsaWQtZGF0ZSc6IGRheS5kYXRlID4gMCAmJiAhZGF0YS5pc1NQaWNrZXJTZWxlY3RlZCAmJiAhKGRheS5pc1NlbGVjdGVkU3RhcnREYXkgJiYgZGF5LmlzU2VsZWN0ZWRFbmREYXkpXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIFtuZ1N0eWxlXT1cInsnbWFyZ2luLXJpZ2h0JzogIWRhdGEuaXNTUGlja2VyU2VsZWN0ZWQgPyAnMHB4JyA6ICcxcHgnLCd3aWR0aCc6ICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkID8gJzM2cHgnIDogJzM1cHgnLCdqdXN0aWZ5LWNvbnRlbnQnOiBkYXkuaXNIb2xpZGF5ID8gJ2ZsZXgtc3RhcnQnIDogJ2NlbnRlcicsJ3BhZGRpbmctdG9wJzogZGF5LmlzSG9saWRheSA/ICcyLjhweCcgOiAnMHB4JywnaGVpZ2h0JzogZGF5LmlzSG9saWRheSA/ICczM3B4JyA6ICczNnB4J31cIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IGRheSBvZiBjdXJyZW50TW9udGhEYXRlc1wiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0RGF5KCdMRUZUJyxkYXkpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAnY2lyY3VsYXItZG90JzogZGF5LmlzSG9saWRheVxuICAgICAgICAgIH1cIj48L2Rpdj5cbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZGF5LmRhdGUgPiAwXCIgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgJ2N1cnJlbnQtZGF5JzogZGF5LmlzQ3VycmVudERheSxcbiAgICAgICAgICAgICAgJ2hvbGlkYXktdGV4dCc6IGRheS5pc0hvbGlkYXkgfHwgZGF5LmlzV2Vla09mZlxuICAgICAgICAgICAgfVwiID5cbiAgICAgICAgICAgICAge3sgZGF5LmRhdGUgfX1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZGF0ZXBpY2tlcl9fcmlnaHRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19oZWFkZXJfX3ByYWJ1XCI+XG4gICAgICAgIDxkaXY+PC9kaXY+XG4gICAgICAgIDxzcGFuPiB7eyBuZXh0TW9udGggfX0ge3sgbmV4dFllYXJOdW1iZXIgfX0gPC9zcGFuPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJkYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyX19hcnJvd19faWNvblwiXG4gICAgICAgICAgKGNsaWNrKT1cIiFpc05leHRNb250aERpc2FibGVkICYmIG5hdmlnYXRlTW9udGgoJ05FWFQnKVwiXG4gICAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgICAgJ2Rpc2FibGVkLW1vbnRoJzogaXNOZXh0TW9udGhEaXNhYmxlZFxuICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgIDxzdmcgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAyMCAxNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBkPVwiTTE5LjcwNzEgOC43MDcxMUMyMC4wOTc2IDguMzE2NTggMjAuMDk3NiA3LjY4MzQyIDE5LjcwNzEgNy4yOTI4OUwxMy4zNDMxIDAuOTI4OTMzQzEyLjk1MjYgMC41Mzg0MDkgMTIuMzE5NSAwLjUzODQwOSAxMS45Mjg5IDAuOTI4OTMzQzExLjUzODQgMS4zMTk0NiAxMS41Mzg0IDEuOTUyNjIgMTEuOTI4OSAyLjM0MzE1TDE3LjU4NTggOEwxMS45Mjg5IDEzLjY1NjlDMTEuNTM4NCAxNC4wNDc0IDExLjUzODQgMTQuNjgwNSAxMS45Mjg5IDE1LjA3MTFDMTIuMzE5NSAxNS40NjE2IDEyLjk1MjYgMTUuNDYxNiAxMy4zNDMxIDE1LjA3MTFMMTkuNzA3MSA4LjcwNzExWk0tOC43NDIyOGUtMDggOUwxOSA5TDE5IDdMOC43NDIyOGUtMDggN0wtOC43NDIyOGUtMDggOVpcIlxuICAgICAgICAgICAgZmlsbD1cIiMxODFGMzNcIlxuICAgICAgICAgID48L3BhdGg+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2JvZHlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX3dlZWtkYXlzXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX3dlZWtkYXlcIiAqbmdGb3I9XCJsZXQgd2Vla0RheSBvZiB3ZWVrRGF5c1wiID5cbiAgICAgICAgICAgIDxzcGFuID57eyB3ZWVrRGF5LmxhYmVsIH19PC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2RheXNcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImRhdGVyYW5nZXBpY2tlci1jb250YWluZXJfX2RheVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICdzZWxlY3RlZC1kYXknOiBkYXkuaXNTZWxlY3RlZERheSAmJiBkYXRhLmlzU1BpY2tlclNlbGVjdGVkLFxuICAgICAgICAgICAgICAnZGlzYWJsZWQtZGF5JzogZGF5LmlzRGlzYWJsZWREYXksXG4gICAgICAgICAgICAgICdzZWxlY3RlZC1zdGFydC1kYXknOiBkYXkuaXNTZWxlY3RlZFN0YXJ0RGF5ICYmICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkLFxuICAgICAgICAgICAgICAnc2VsZWN0ZWQtZW5kLWRheSc6IGRheS5pc1NlbGVjdGVkRW5kRGF5ICYmICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkLFxuICAgICAgICAgICAgICAnaW4tcmFuZ2UtZGF5JzogZGF5LmluUmFuZ2VEYXkgJiYgIWRhdGEuaXNTUGlja2VyU2VsZWN0ZWQsXG4gICAgICAgICAgICAgICdpcy12YWxpZC1kYXRlJzogZGF5LmRhdGUgPiAwICYmICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkICYmICEoZGF5LmlzU2VsZWN0ZWRTdGFydERheSAmJiBkYXkuaXNTZWxlY3RlZEVuZERheSlcbiAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgW25nU3R5bGVdPVwieyAnbWFyZ2luLXJpZ2h0JzogIWRhdGEuaXNTUGlja2VyU2VsZWN0ZWQgPyAnMHB4JyA6ICcxcHgnLCd3aWR0aCc6ICFkYXRhLmlzU1BpY2tlclNlbGVjdGVkID8gJzM2cHgnIDogJzM1cHgnLCdqdXN0aWZ5LWNvbnRlbnQnOiBkYXkuaXNIb2xpZGF5ID8gJ2ZsZXgtc3RhcnQnIDogJ2NlbnRlcicsJ3BhZGRpbmctdG9wJzogZGF5LmlzSG9saWRheSA/ICczcHgnIDogJzBweCcsJ2hlaWdodCc6IGRheS5pc0hvbGlkYXkgPyAnMzNweCcgOiAnMzZweCd9XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBkYXkgb2YgbmV4dE1vbnRoRGF0ZXNcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdERheSgnUklHSFQnLGRheSlcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICdjaXJjdWxhci1kb3QnOiBkYXkuaXNIb2xpZGF5XG4gICAgICAgICAgfVwiPjwvZGl2PlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXkuZGF0ZSA+IDBcIiBbbmdDbGFzc109XCJ7XG4gICAgICAgICAgICAgICdjdXJyZW50LWRheSc6IGRheS5pc0N1cnJlbnREYXkgJiYgKGN1cnJlbnRNb250aE51bWJlciA9PT0gdG9kYXlNb250aE51bWJlciksXG4gICAgICAgICAgICAgICdob2xpZGF5LXRleHQnOiBkYXkuaXNIb2xpZGF5IHx8IGRheS5pc1dlZWtPZmZcbiAgICAgICAgICAgIH1cIiA+XG4gICAgICAgICAgICAgIHt7IGRheS5kYXRlIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwid2Vla09mZnNfaG9saWRheXNfY29udGFpbmVyXCI+XG4gICAgPHNwYW4+V2Vla2x5IG9mZnM6IDxzcGFuICpuZ0Zvcj1cImxldCB3ZWVrT2ZmIG9mIGRhdGEud2Vla09mZnM7IGxldCBsYXN0ID0gbGFzdFwiPnt7d2Vla09mZn19IDxzcGFuICpuZ0lmPVwiIWxhc3RcIj4sPC9zcGFuPjwvc3Bhbj48L3NwYW4+XG4gICAgPHNwYW4gPkhvbGlkYXlzIDxzcGFuIGNsYXNzPVwiY2lyY3VsYXItZG90XCIgc3R5bGU9XCJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IG1hcmdpbi1sZWZ0OiAxMHB4O1wiPjwvc3Bhbj48L3NwYW4+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZGF0ZXJhbmdlcGlja2VyX19mb290ZXJcIj5cbiAgICA8c3BhbiAqbmdJZj1cImRhdGEuaXNTUGlja2VyU2VsZWN0ZWRcIj48c3Bhbj57e2xvY2FsU2VsZWN0ZWREYXRlc1swXT8uc2VsZWN0ZWREYXRlID8gbG9jYWxTZWxlY3RlZERhdGVzLmxlbmd0aCA6IChsb2NhbFNlbGVjdGVkRGF0ZXMubGVuZ3RoIC0xICYmIDApfX0gPC9zcGFuPmRheShzKSBzZWxlY3RlZDwvc3Bhbj5cbiAgICA8c3BhbiAqbmdJZj1cIiFkYXRhLmlzU1BpY2tlclNlbGVjdGVkXCI+PHNwYW4+e3tkYXRlUmFuZ2VMZW5ndGggPiAwID8gZGF0ZVJhbmdlTGVuZ3RoIDogMCB9fSA8L3NwYW4+ZGF5KHMpIHNlbGVjdGVkPC9zcGFuPlxuICAgIDxkaXYgY2xhc3M9XCJmb290ZXJfYWN0aW9uX2J0blwiPlxuICAgICAgPGJ1dHRvbiBtaXMtYnV0dG9uIHNpemU9XCJtZFwiIHR5cGU9XCJub25lXCIgKGNsaWNrKT1cImNhbmNlbERhdGVQaWNrZXIoKVwiID5DYW5jZWw8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKm5nSWY9XCJkYXRhLmlzU1BpY2tlclNlbGVjdGVkXCIgbWlzLWJ1dHRvbiBzaXplPVwibWRcIiB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJhcHBseURhdGVzKClcIiBbZGlzYWJsZWRdPVwiIWlzRGF0ZXNWYWxpZFwiID5BcHBseTwvYnV0dG9uPlxuICAgICAgPGJ1dHRvbiAqbmdJZj1cIiFkYXRhLmlzU1BpY2tlclNlbGVjdGVkXCIgbWlzLWJ1dHRvbiBzaXplPVwibWRcIiB0eXBlPVwicHJpbWFyeVwiIChjbGljayk9XCJhcHBseURhdGVzUmFuZ2UoKVwiIFtkaXNhYmxlZF09XCIhaXNEYXRlc1ZhbGlkIHx8IChkYXRlUmFuZ2VMZW5ndGggPT09IDApXCIgPkFwcGx5PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJzaW5nbGUtZGF0ZXBpY2tlci1jb250YWluZXJcIiBbbmdTdHlsZV09XCJ7J2Rpc3BsYXknOiAhc2luZ2xlRGF0ZVBpY2tlclNlbGVjdGVkID8gJ25vbmUnIDogJ2Jsb2NrJ31cIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICBtaXNUekRwXG4gICAgICAgIG1pc0lucHV0XG4gICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgY2xhc3M9XCJkYXRlLWlucHV0XCJcbiAgICAgICAgW2RwQ29uZmlnXT1cImRhdGEuZHBDb25maWdcIlxuICAgICAgICBwbGFjZWhvbGRlcj1cIlNlbGVjdFwiXG4gICAgICAgIChkYXRlQ2hhbmdlKT1cIm9uU2luZ2xlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW3NlbGVjdGVkRGF0ZV09XCJzaW5nbGVEYXRlU2VsZWN0ZWRWYWx1ZVwiXG4gICAgICAgIHBvc2l0aW9uWD1cImNlbnRlclwiXG4gICAgICAgIHBvc2l0aW9uWT1cInRvcFwiXG4gICAgICAgIG9mZnNldFggPSA3MVxuICAgICAgICBvZmZzZXRZID0gLTFcbiAgICAgICAgW3ZhbHVlXT1cInNpbmdsZURhdGVTZWxlY3RlZFZhbHVlXCJcbiAgICAgICAgW2Rpc2FibGVCb3hTaGFkb3ddPVwidHJ1ZVwiXG4gICAgICAgIFtkaXNhYmxlT3ZlckxheV09XCJ0cnVlXCJcbiAgICAgICAgW29wZW5FbGVtZW50XT1cIm9wZW5FbGVtZW50XCJcbiAgICAgICAgI3NpbmdsZURhdGVQaWNrZXJFbGVtZW50XG4gICAgICAvPlxuICA8L2Rpdj5cblxuPC9kaXY+XG4iXX0=