mis-crystal-design-system 18.0.5 → 18.0.6

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 (526) hide show
  1. package/action-list/action-list.component.d.ts +1 -1
  2. package/analytics/analytics.service.d.ts +1 -1
  3. package/async-search-dropdown/async-dropdown.component.d.ts +3 -2
  4. package/button/button.component.d.ts +1 -1
  5. package/button/button.directive.d.ts +1 -1
  6. package/checkbox/checkbox.component.d.ts +1 -1
  7. package/chip/chip.component.d.ts +1 -1
  8. package/datepicker_v2/models/dp-config.model.d.ts +1 -1
  9. package/datepicker_v2/tz-datepicker.directive.d.ts +1 -1
  10. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +1 -1
  11. package/daterangepicker_v2/models/drp-config.model.d.ts +1 -1
  12. package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +1 -1
  13. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +1 -1
  14. package/drawer/drawer-body/drawer-body.component.d.ts +1 -1
  15. package/dropdown/calculate-container-height.directive.d.ts +1 -1
  16. package/dropdown/dropdown.component.d.ts +1 -1
  17. package/dynamic-form/dynamic-form.component.d.ts +1 -1
  18. package/esm2022/action-list/action-list.component.mjs +363 -0
  19. package/{esm2020 → esm2022}/action-list/action-list.module.mjs +5 -5
  20. package/{esm2020 → esm2022}/analytics/analytics.module.mjs +5 -5
  21. package/esm2022/analytics/analytics.service.mjs +64 -0
  22. package/esm2022/async-search-dropdown/async-dropdown.component.mjs +536 -0
  23. package/{esm2020 → esm2022}/async-search-dropdown/async-dropdown.module.mjs +5 -5
  24. package/esm2022/button/button.component.mjs +88 -0
  25. package/esm2022/button/button.directive.mjs +61 -0
  26. package/{esm2020 → esm2022}/button/button.module.mjs +5 -5
  27. package/esm2022/checkbox/checkbox.component.mjs +124 -0
  28. package/{esm2020 → esm2022}/checkbox/checkbox.module.mjs +5 -5
  29. package/esm2022/chip/chip.component.mjs +82 -0
  30. package/{esm2020 → esm2022}/chip/chip.module.mjs +5 -5
  31. package/{esm2020 → esm2022}/datepicker_v2/datepicker.module.mjs +5 -5
  32. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +183 -0
  33. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +442 -0
  34. package/{esm2020/daterangepicker_v2 → esm2022/datepicker_v2}/utils/index.mjs +1 -1
  35. package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker.module.mjs +5 -5
  36. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +165 -0
  37. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +503 -0
  38. package/esm2022/daterangepicker_v2/utils/index.mjs +45 -0
  39. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +59 -0
  40. package/{esm2020 → esm2022}/drawer/drawer-ref.mjs +4 -4
  41. package/{esm2020 → esm2022}/drawer/drawer.module.mjs +5 -5
  42. package/{esm2020 → esm2022}/drawer/drawer.service.mjs +5 -5
  43. package/esm2022/dropdown/calculate-container-height.directive.mjs +41 -0
  44. package/esm2022/dropdown/dropdown.component.mjs +464 -0
  45. package/{esm2020 → esm2022}/dropdown/dropdown.module.mjs +5 -5
  46. package/esm2022/dynamic-form/dynamic-form.component.mjs +1093 -0
  47. package/{esm2020 → esm2022}/dynamic-form/dynamic-form.module.mjs +13 -13
  48. package/esm2022/fab/fab.component.mjs +145 -0
  49. package/{esm2020 → esm2022}/fab/fab.module.mjs +5 -5
  50. package/esm2022/filter/filter-panel/filter-panel.component.mjs +396 -0
  51. package/{esm2020 → esm2022}/filter/filters.module.mjs +17 -17
  52. package/esm2022/filter/has-value.pipe.mjs +31 -0
  53. package/{esm2020 → esm2022}/input/directives/input/input.directive.mjs +6 -6
  54. package/{fesm2020/mis-crystal-design-system-input.mjs → esm2022/input/mis-input.component.mjs} +49 -109
  55. package/{esm2020 → esm2022}/input/mis-input.module.mjs +5 -5
  56. package/esm2022/input-stepper/input-stepper/input-stepper.component.mjs +89 -0
  57. package/{esm2020 → esm2022}/input-stepper/input-stepper.module.mjs +5 -5
  58. package/esm2022/loader/loader.component.mjs +25 -0
  59. package/{esm2020 → esm2022}/loader/loader.module.mjs +5 -5
  60. package/esm2022/menu/menu-close.directive.mjs +25 -0
  61. package/{esm2020 → esm2022}/menu/menu.directive.mjs +7 -7
  62. package/{esm2020 → esm2022}/menu/menu.module.mjs +5 -5
  63. package/esm2022/mobile-filter/mobile-filter.component.mjs +180 -0
  64. package/{esm2020 → esm2022}/mobile-filter/mobile-filter.module.mjs +5 -5
  65. package/{esm2020 → esm2022}/modal/modal.module.mjs +5 -5
  66. package/esm2022/modal/modal.service.mjs +70 -0
  67. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +56 -0
  68. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +489 -0
  69. package/{esm2020 → esm2022}/multi-select-dropdown/multi-select-dropdown.module.mjs +5 -5
  70. package/esm2022/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +516 -0
  71. package/{esm2020 → esm2022}/nested-multi-select-dropdown/nested-multi-select-dropdown.module.mjs +5 -5
  72. package/esm2022/phone-input/phone-input.component.mjs +72 -0
  73. package/{esm2020 → esm2022}/phone-input/phone-input.module.mjs +5 -5
  74. package/esm2022/radio-button/radio-button.component.mjs +57 -0
  75. package/{esm2020 → esm2022}/radio-button/radio-button.module.mjs +5 -5
  76. package/esm2022/ske-loader/ske-loader.component.mjs +54 -0
  77. package/{esm2020 → esm2022}/ske-loader/ske-loader.module.mjs +5 -5
  78. package/esm2022/slider/slider.component.mjs +46 -0
  79. package/{esm2020 → esm2022}/slider/slider.module.mjs +7 -7
  80. package/esm2022/snackbar/snackbar/snackbar.component.mjs +72 -0
  81. package/{esm2020 → esm2022}/snackbar/snackbar.module.mjs +5 -5
  82. package/esm2022/snackbar/snackbar.service.mjs +47 -0
  83. package/{esm2020 → esm2022}/specificdatepicker/specificdatepicker.module.mjs +5 -5
  84. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +646 -0
  85. package/esm2022/specificdatepicker/tz-specificdatepicker.directive.mjs +196 -0
  86. package/esm2022/specificdatepicker/utils/index.mjs +45 -0
  87. package/esm2022/star-rating/star-rating.component.mjs +113 -0
  88. package/{esm2020 → esm2022}/star-rating/star-rating.module.mjs +5 -5
  89. package/esm2022/switch/switch.component.mjs +56 -0
  90. package/{esm2020 → esm2022}/switch/switch.module.mjs +5 -5
  91. package/esm2022/table/custom-table-cell.directive.mjs +42 -0
  92. package/esm2022/table/filter/filter.component.mjs +177 -0
  93. package/esm2022/table/sub-table/sub-table.component.mjs +192 -0
  94. package/esm2022/table/table.component.mjs +485 -0
  95. package/{esm2020 → esm2022}/table/table.module.mjs +5 -5
  96. package/esm2022/timepicker/timepicker.component.mjs +374 -0
  97. package/esm2022/timepicker/timepicker.directive.mjs +69 -0
  98. package/{esm2020 → esm2022}/timepicker/timepicker.module.mjs +5 -5
  99. package/esm2022/timerangepicker/timerangepicker.component.mjs +237 -0
  100. package/{esm2020 → esm2022}/timerangepicker/timerangepicker.module.mjs +5 -5
  101. package/esm2022/toast/toast.component.mjs +51 -0
  102. package/{esm2020 → esm2022}/toast/toast.data.service.mjs +8 -8
  103. package/{esm2020 → esm2022}/toast/toast.module.mjs +5 -5
  104. package/esm2022/toast/toast.service.mjs +91 -0
  105. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +79 -0
  106. package/esm2022/tooltip/tooltip.directive.mjs +143 -0
  107. package/{esm2020 → esm2022}/tooltip/tooltip.module.mjs +5 -5
  108. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +188 -0
  109. package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.module.mjs +7 -7
  110. package/esm2022/widgets/classes/async-widget.mjs +23 -0
  111. package/{esm2020 → esm2022}/widgets/classes/base-widget.mjs +1 -1
  112. package/esm2022/widgets/classes/sync-widget.mjs +20 -0
  113. package/{esm2020 → esm2022}/widgets/services/widget.service.mjs +5 -5
  114. package/{esm2020 → esm2022}/widgets/widgets.module.mjs +5 -5
  115. package/fab/fab.component.d.ts +4 -4
  116. package/{fesm2020 → fesm2022}/mis-crystal-design-system-action-list.mjs +106 -113
  117. package/fesm2022/mis-crystal-design-system-action-list.mjs.map +1 -0
  118. package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs +9 -9
  119. package/{fesm2020 → fesm2022}/mis-crystal-design-system-analytics.mjs.map +1 -1
  120. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs +561 -0
  121. package/fesm2022/mis-crystal-design-system-async-search-dropdown.mjs.map +1 -0
  122. package/fesm2022/mis-crystal-design-system-button.mjs +173 -0
  123. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -0
  124. package/fesm2022/mis-crystal-design-system-checkbox.mjs +150 -0
  125. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -0
  126. package/fesm2022/mis-crystal-design-system-chip.mjs +108 -0
  127. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -0
  128. package/{fesm2020 → fesm2022}/mis-crystal-design-system-datepicker_v2.mjs +133 -140
  129. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -0
  130. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +737 -0
  131. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -0
  132. package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs +34 -33
  133. package/{fesm2020 → fesm2022}/mis-crystal-design-system-drawer.mjs.map +1 -1
  134. package/{fesm2020 → fesm2022}/mis-crystal-design-system-dropdown.mjs +176 -184
  135. package/fesm2022/mis-crystal-design-system-dropdown.mjs.map +1 -0
  136. package/{fesm2020 → fesm2022}/mis-crystal-design-system-dynamic-form.mjs +441 -456
  137. package/fesm2022/mis-crystal-design-system-dynamic-form.mjs.map +1 -0
  138. package/{fesm2020 → fesm2022}/mis-crystal-design-system-fab.mjs +48 -47
  139. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -0
  140. package/{fesm2020 → fesm2022}/mis-crystal-design-system-filter.mjs +113 -120
  141. package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -0
  142. package/{fesm2020 → fesm2022}/mis-crystal-design-system-input-stepper.mjs +35 -34
  143. package/{fesm2020 → fesm2022}/mis-crystal-design-system-input-stepper.mjs.map +1 -1
  144. package/fesm2022/mis-crystal-design-system-input.mjs +146 -0
  145. package/{fesm2020 → fesm2022}/mis-crystal-design-system-input.mjs.map +1 -1
  146. package/fesm2022/mis-crystal-design-system-loader.mjs +51 -0
  147. package/{fesm2020 → fesm2022}/mis-crystal-design-system-loader.mjs.map +1 -1
  148. package/{fesm2020 → fesm2022}/mis-crystal-design-system-menu.mjs +16 -16
  149. package/{fesm2020 → fesm2022}/mis-crystal-design-system-menu.mjs.map +1 -1
  150. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs +205 -0
  151. package/fesm2022/mis-crystal-design-system-mobile-filter.mjs.map +1 -0
  152. package/{fesm2020 → fesm2022}/mis-crystal-design-system-modal.mjs +34 -33
  153. package/{fesm2020 → fesm2022}/mis-crystal-design-system-modal.mjs.map +1 -1
  154. package/{fesm2020 → fesm2022}/mis-crystal-design-system-multi-select-dropdown.mjs +107 -109
  155. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -0
  156. package/{fesm2020 → fesm2022}/mis-crystal-design-system-nested-multi-select-dropdown.mjs +128 -129
  157. package/fesm2022/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +1 -0
  158. package/{fesm2020 → fesm2022}/mis-crystal-design-system-phone-input.mjs +22 -21
  159. package/{fesm2020 → fesm2022}/mis-crystal-design-system-phone-input.mjs.map +1 -1
  160. package/fesm2022/mis-crystal-design-system-radio-button.mjs +83 -0
  161. package/{fesm2020 → fesm2022}/mis-crystal-design-system-radio-button.mjs.map +1 -1
  162. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +77 -0
  163. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -0
  164. package/fesm2022/mis-crystal-design-system-slider.mjs +80 -0
  165. package/{fesm2020 → fesm2022}/mis-crystal-design-system-slider.mjs.map +1 -1
  166. package/{fesm2020 → fesm2022}/mis-crystal-design-system-snackbar.mjs +32 -32
  167. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -0
  168. package/{fesm2020 → fesm2022}/mis-crystal-design-system-specificdatepicker.mjs +204 -204
  169. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -0
  170. package/{fesm2020 → fesm2022}/mis-crystal-design-system-star-rating.mjs +29 -28
  171. package/fesm2022/mis-crystal-design-system-star-rating.mjs.map +1 -0
  172. package/fesm2022/mis-crystal-design-system-switch.mjs +82 -0
  173. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -0
  174. package/{fesm2020 → fesm2022}/mis-crystal-design-system-table.mjs +314 -321
  175. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -0
  176. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timepicker.mjs +78 -74
  177. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timepicker.mjs.map +1 -1
  178. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timerangepicker.mjs +26 -25
  179. package/{fesm2020 → fesm2022}/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
  180. package/{fesm2020 → fesm2022}/mis-crystal-design-system-toast.mjs +35 -34
  181. package/{fesm2020 → fesm2022}/mis-crystal-design-system-toast.mjs.map +1 -1
  182. package/{fesm2020 → fesm2022}/mis-crystal-design-system-tooltip.mjs +47 -47
  183. package/{fesm2020 → fesm2022}/mis-crystal-design-system-tooltip.mjs.map +1 -1
  184. package/{fesm2020 → fesm2022}/mis-crystal-design-system-virtual-scroll.mjs +50 -52
  185. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -0
  186. package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs +4 -4
  187. package/{fesm2020 → fesm2022}/mis-crystal-design-system-widgets.mjs.map +1 -1
  188. package/filter/filter-panel/filter-panel.component.d.ts +1 -1
  189. package/input/directives/input/input.directive.d.ts +1 -1
  190. package/input/mis-input.component.d.ts +1 -1
  191. package/input-stepper/input-stepper/input-stepper.component.d.ts +1 -1
  192. package/loader/loader.component.d.ts +1 -1
  193. package/menu/menu-close.directive.d.ts +1 -1
  194. package/menu/menu.directive.d.ts +1 -1
  195. package/mobile-filter/mobile-filter.component.d.ts +1 -1
  196. package/modal/module-wrapper/module-wrapper.component.d.ts +1 -1
  197. package/multi-select-dropdown/multi-select-dropdown.component.d.ts +1 -1
  198. package/nested-multi-select-dropdown/nested-multi-select-dropdown.component.d.ts +1 -1
  199. package/package.json +125 -207
  200. package/phone-input/phone-input.component.d.ts +1 -1
  201. package/radio-button/radio-button.component.d.ts +1 -1
  202. package/ske-loader/ske-loader.component.d.ts +1 -1
  203. package/slider/slider.component.d.ts +1 -1
  204. package/snackbar/snackbar/snackbar.component.d.ts +1 -1
  205. package/specificdatepicker/models/sdp-config.model.d.ts +1 -1
  206. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +1 -1
  207. package/specificdatepicker/tz-specificdatepicker.directive.d.ts +1 -1
  208. package/star-rating/star-rating.component.d.ts +1 -1
  209. package/switch/switch.component.d.ts +1 -1
  210. package/table/custom-table-cell.directive.d.ts +1 -1
  211. package/table/filter/filter.component.d.ts +1 -1
  212. package/table/sub-table/sub-table.component.d.ts +1 -1
  213. package/table/table.component.d.ts +1 -1
  214. package/timepicker/timepicker.component.d.ts +1 -1
  215. package/timepicker/timepicker.directive.d.ts +1 -1
  216. package/timerangepicker/timerange.namespace.d.ts +1 -1
  217. package/timerangepicker/timerangepicker.component.d.ts +1 -1
  218. package/toast/toast.component.d.ts +1 -1
  219. package/toast/toast.service.d.ts +1 -1
  220. package/tooltip/models/tooltip.model.d.ts +1 -1
  221. package/tooltip/tooltip-container/tooltip.component.d.ts +1 -1
  222. package/tooltip/tooltip.directive.d.ts +1 -1
  223. package/virtual-scroll/virtual-scroll.component.d.ts +1 -1
  224. package/widgets/interfaces/widgets.model.d.ts +1 -1
  225. package/esm2020/action-list/action-list.component.mjs +0 -370
  226. package/esm2020/analytics/analytics.service.mjs +0 -64
  227. package/esm2020/async-search-dropdown/async-dropdown.component.mjs +0 -525
  228. package/esm2020/button/button.component.mjs +0 -87
  229. package/esm2020/button/button.directive.mjs +0 -61
  230. package/esm2020/checkbox/checkbox.component.mjs +0 -124
  231. package/esm2020/chip/chip.component.mjs +0 -82
  232. package/esm2020/datepicker_v2/tz-datepicker.directive.mjs +0 -183
  233. package/esm2020/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +0 -449
  234. package/esm2020/datepicker_v2/utils/index.mjs +0 -45
  235. package/esm2020/daterangepicker_v2/tz-daterangepicker.directive.mjs +0 -165
  236. package/esm2020/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +0 -502
  237. package/esm2020/drawer/drawer-body/drawer-body.component.mjs +0 -58
  238. package/esm2020/dropdown/calculate-container-height.directive.mjs +0 -41
  239. package/esm2020/dropdown/dropdown.component.mjs +0 -472
  240. package/esm2020/dynamic-form/dynamic-form.component.mjs +0 -1108
  241. package/esm2020/fab/fab.component.mjs +0 -144
  242. package/esm2020/filter/filter-panel/filter-panel.component.mjs +0 -403
  243. package/esm2020/filter/has-value.pipe.mjs +0 -31
  244. package/esm2020/input/mis-input.component.mjs +0 -84
  245. package/esm2020/input-stepper/input-stepper/input-stepper.component.mjs +0 -88
  246. package/esm2020/loader/loader.component.mjs +0 -24
  247. package/esm2020/menu/menu-close.directive.mjs +0 -25
  248. package/esm2020/mobile-filter/mobile-filter.component.mjs +0 -181
  249. package/esm2020/modal/modal.service.mjs +0 -70
  250. package/esm2020/modal/module-wrapper/module-wrapper.component.mjs +0 -55
  251. package/esm2020/multi-select-dropdown/multi-select-dropdown.component.mjs +0 -491
  252. package/esm2020/nested-multi-select-dropdown/nested-multi-select-dropdown.component.mjs +0 -517
  253. package/esm2020/phone-input/phone-input.component.mjs +0 -71
  254. package/esm2020/radio-button/radio-button.component.mjs +0 -56
  255. package/esm2020/ske-loader/ske-loader.component.mjs +0 -53
  256. package/esm2020/slider/slider.component.mjs +0 -45
  257. package/esm2020/snackbar/snackbar/snackbar.component.mjs +0 -72
  258. package/esm2020/snackbar/snackbar.service.mjs +0 -47
  259. package/esm2020/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +0 -646
  260. package/esm2020/specificdatepicker/tz-specificdatepicker.directive.mjs +0 -196
  261. package/esm2020/specificdatepicker/utils/index.mjs +0 -45
  262. package/esm2020/star-rating/star-rating.component.mjs +0 -112
  263. package/esm2020/switch/switch.component.mjs +0 -55
  264. package/esm2020/table/custom-table-cell.directive.mjs +0 -42
  265. package/esm2020/table/filter/filter.component.mjs +0 -176
  266. package/esm2020/table/sub-table/sub-table.component.mjs +0 -193
  267. package/esm2020/table/table.component.mjs +0 -492
  268. package/esm2020/timepicker/timepicker.component.mjs +0 -370
  269. package/esm2020/timepicker/timepicker.directive.mjs +0 -69
  270. package/esm2020/timerangepicker/timerangepicker.component.mjs +0 -236
  271. package/esm2020/toast/toast.component.mjs +0 -50
  272. package/esm2020/toast/toast.service.mjs +0 -91
  273. package/esm2020/tooltip/tooltip-container/tooltip.component.mjs +0 -79
  274. package/esm2020/tooltip/tooltip.directive.mjs +0 -143
  275. package/esm2020/virtual-scroll/virtual-scroll.component.mjs +0 -190
  276. package/esm2020/widgets/classes/async-widget.mjs +0 -23
  277. package/esm2020/widgets/classes/sync-widget.mjs +0 -20
  278. package/fesm2015/mis-crystal-design-system-action-list.mjs +0 -446
  279. package/fesm2015/mis-crystal-design-system-action-list.mjs.map +0 -1
  280. package/fesm2015/mis-crystal-design-system-analytics.mjs +0 -87
  281. package/fesm2015/mis-crystal-design-system-analytics.mjs.map +0 -1
  282. package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs +0 -618
  283. package/fesm2015/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
  284. package/fesm2015/mis-crystal-design-system-button.mjs +0 -189
  285. package/fesm2015/mis-crystal-design-system-button.mjs.map +0 -1
  286. package/fesm2015/mis-crystal-design-system-checkbox.mjs +0 -166
  287. package/fesm2015/mis-crystal-design-system-checkbox.mjs.map +0 -1
  288. package/fesm2015/mis-crystal-design-system-chip.mjs +0 -123
  289. package/fesm2015/mis-crystal-design-system-chip.mjs.map +0 -1
  290. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs +0 -751
  291. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
  292. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs +0 -769
  293. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
  294. package/fesm2015/mis-crystal-design-system-drawer.mjs +0 -185
  295. package/fesm2015/mis-crystal-design-system-drawer.mjs.map +0 -1
  296. package/fesm2015/mis-crystal-design-system-dropdown.mjs +0 -616
  297. package/fesm2015/mis-crystal-design-system-dropdown.mjs.map +0 -1
  298. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +0 -1337
  299. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
  300. package/fesm2015/mis-crystal-design-system-fab.mjs +0 -186
  301. package/fesm2015/mis-crystal-design-system-fab.mjs.map +0 -1
  302. package/fesm2015/mis-crystal-design-system-filter.mjs +0 -559
  303. package/fesm2015/mis-crystal-design-system-filter.mjs.map +0 -1
  304. package/fesm2015/mis-crystal-design-system-input-stepper.mjs +0 -124
  305. package/fesm2015/mis-crystal-design-system-input-stepper.mjs.map +0 -1
  306. package/fesm2015/mis-crystal-design-system-input.mjs +0 -165
  307. package/fesm2015/mis-crystal-design-system-input.mjs.map +0 -1
  308. package/fesm2015/mis-crystal-design-system-loader.mjs +0 -57
  309. package/fesm2015/mis-crystal-design-system-loader.mjs.map +0 -1
  310. package/fesm2015/mis-crystal-design-system-menu.mjs +0 -135
  311. package/fesm2015/mis-crystal-design-system-menu.mjs.map +0 -1
  312. package/fesm2015/mis-crystal-design-system-mobile-filter.mjs +0 -227
  313. package/fesm2015/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
  314. package/fesm2015/mis-crystal-design-system-modal.mjs +0 -184
  315. package/fesm2015/mis-crystal-design-system-modal.mjs.map +0 -1
  316. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs +0 -550
  317. package/fesm2015/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
  318. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -559
  319. package/fesm2015/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
  320. package/fesm2015/mis-crystal-design-system-phone-input.mjs +0 -107
  321. package/fesm2015/mis-crystal-design-system-phone-input.mjs.map +0 -1
  322. package/fesm2015/mis-crystal-design-system-radio-button.mjs +0 -89
  323. package/fesm2015/mis-crystal-design-system-radio-button.mjs.map +0 -1
  324. package/fesm2015/mis-crystal-design-system-ske-loader.mjs +0 -86
  325. package/fesm2015/mis-crystal-design-system-ske-loader.mjs.map +0 -1
  326. package/fesm2015/mis-crystal-design-system-slider.mjs +0 -88
  327. package/fesm2015/mis-crystal-design-system-slider.mjs.map +0 -1
  328. package/fesm2015/mis-crystal-design-system-snackbar.mjs +0 -175
  329. package/fesm2015/mis-crystal-design-system-snackbar.mjs.map +0 -1
  330. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs +0 -970
  331. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
  332. package/fesm2015/mis-crystal-design-system-star-rating.mjs +0 -145
  333. package/fesm2015/mis-crystal-design-system-star-rating.mjs.map +0 -1
  334. package/fesm2015/mis-crystal-design-system-switch.mjs +0 -88
  335. package/fesm2015/mis-crystal-design-system-switch.mjs.map +0 -1
  336. package/fesm2015/mis-crystal-design-system-table.mjs +0 -1045
  337. package/fesm2015/mis-crystal-design-system-table.mjs.map +0 -1
  338. package/fesm2015/mis-crystal-design-system-timepicker.mjs +0 -484
  339. package/fesm2015/mis-crystal-design-system-timepicker.mjs.map +0 -1
  340. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs +0 -273
  341. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs.map +0 -1
  342. package/fesm2015/mis-crystal-design-system-toast.mjs +0 -214
  343. package/fesm2015/mis-crystal-design-system-toast.mjs.map +0 -1
  344. package/fesm2015/mis-crystal-design-system-tooltip.mjs +0 -272
  345. package/fesm2015/mis-crystal-design-system-tooltip.mjs.map +0 -1
  346. package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs +0 -259
  347. package/fesm2015/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
  348. package/fesm2015/mis-crystal-design-system-widgets.mjs +0 -131
  349. package/fesm2015/mis-crystal-design-system-widgets.mjs.map +0 -1
  350. package/fesm2020/mis-crystal-design-system-action-list.mjs.map +0 -1
  351. package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs +0 -550
  352. package/fesm2020/mis-crystal-design-system-async-search-dropdown.mjs.map +0 -1
  353. package/fesm2020/mis-crystal-design-system-button.mjs +0 -172
  354. package/fesm2020/mis-crystal-design-system-button.mjs.map +0 -1
  355. package/fesm2020/mis-crystal-design-system-checkbox.mjs +0 -150
  356. package/fesm2020/mis-crystal-design-system-checkbox.mjs.map +0 -1
  357. package/fesm2020/mis-crystal-design-system-chip.mjs +0 -108
  358. package/fesm2020/mis-crystal-design-system-chip.mjs.map +0 -1
  359. package/fesm2020/mis-crystal-design-system-datepicker_v2.mjs.map +0 -1
  360. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs +0 -736
  361. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs.map +0 -1
  362. package/fesm2020/mis-crystal-design-system-dropdown.mjs.map +0 -1
  363. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +0 -1
  364. package/fesm2020/mis-crystal-design-system-fab.mjs.map +0 -1
  365. package/fesm2020/mis-crystal-design-system-filter.mjs.map +0 -1
  366. package/fesm2020/mis-crystal-design-system-loader.mjs +0 -50
  367. package/fesm2020/mis-crystal-design-system-mobile-filter.mjs +0 -206
  368. package/fesm2020/mis-crystal-design-system-mobile-filter.mjs.map +0 -1
  369. package/fesm2020/mis-crystal-design-system-multi-select-dropdown.mjs.map +0 -1
  370. package/fesm2020/mis-crystal-design-system-nested-multi-select-dropdown.mjs.map +0 -1
  371. package/fesm2020/mis-crystal-design-system-radio-button.mjs +0 -82
  372. package/fesm2020/mis-crystal-design-system-ske-loader.mjs +0 -76
  373. package/fesm2020/mis-crystal-design-system-ske-loader.mjs.map +0 -1
  374. package/fesm2020/mis-crystal-design-system-slider.mjs +0 -79
  375. package/fesm2020/mis-crystal-design-system-snackbar.mjs.map +0 -1
  376. package/fesm2020/mis-crystal-design-system-specificdatepicker.mjs.map +0 -1
  377. package/fesm2020/mis-crystal-design-system-star-rating.mjs.map +0 -1
  378. package/fesm2020/mis-crystal-design-system-styles.mjs +0 -4
  379. package/fesm2020/mis-crystal-design-system-styles.mjs.map +0 -1
  380. package/fesm2020/mis-crystal-design-system-switch.mjs +0 -81
  381. package/fesm2020/mis-crystal-design-system-switch.mjs.map +0 -1
  382. package/fesm2020/mis-crystal-design-system-table.mjs.map +0 -1
  383. package/fesm2020/mis-crystal-design-system-utils.mjs +0 -24
  384. package/fesm2020/mis-crystal-design-system-utils.mjs.map +0 -1
  385. package/fesm2020/mis-crystal-design-system-virtual-scroll.mjs.map +0 -1
  386. package/fesm2020/mis-crystal-design-system.mjs +0 -24
  387. package/fesm2020/mis-crystal-design-system.mjs.map +0 -1
  388. /package/{esm2020 → esm2022}/action-list/index.mjs +0 -0
  389. /package/{esm2020 → esm2022}/action-list/mis-crystal-design-system-action-list.mjs +0 -0
  390. /package/{esm2020 → esm2022}/action-list/public_api.mjs +0 -0
  391. /package/{esm2020 → esm2022}/analytics/index.mjs +0 -0
  392. /package/{esm2020 → esm2022}/analytics/mis-crystal-design-system-analytics.mjs +0 -0
  393. /package/{esm2020 → esm2022}/analytics/public_api.mjs +0 -0
  394. /package/{esm2020 → esm2022}/async-search-dropdown/index.mjs +0 -0
  395. /package/{esm2020 → esm2022}/async-search-dropdown/mis-crystal-design-system-async-search-dropdown.mjs +0 -0
  396. /package/{esm2020 → esm2022}/async-search-dropdown/public_api.mjs +0 -0
  397. /package/{esm2020 → esm2022}/button/index.mjs +0 -0
  398. /package/{esm2020 → esm2022}/button/mis-crystal-design-system-button.mjs +0 -0
  399. /package/{esm2020 → esm2022}/button/public_api.mjs +0 -0
  400. /package/{esm2020 → esm2022}/checkbox/index.mjs +0 -0
  401. /package/{esm2020 → esm2022}/checkbox/mis-crystal-design-system-checkbox.mjs +0 -0
  402. /package/{esm2020 → esm2022}/checkbox/public_api.mjs +0 -0
  403. /package/{esm2020 → esm2022}/chip/index.mjs +0 -0
  404. /package/{esm2020 → esm2022}/chip/mis-crystal-design-system-chip.mjs +0 -0
  405. /package/{esm2020 → esm2022}/chip/public_api.mjs +0 -0
  406. /package/{esm2020 → esm2022}/datepicker_v2/datepicker-constants.mjs +0 -0
  407. /package/{esm2020 → esm2022}/datepicker_v2/index.mjs +0 -0
  408. /package/{esm2020 → esm2022}/datepicker_v2/mis-crystal-design-system-datepicker_v2.mjs +0 -0
  409. /package/{esm2020 → esm2022}/datepicker_v2/models/dp-config.model.mjs +0 -0
  410. /package/{esm2020 → esm2022}/datepicker_v2/public_api.mjs +0 -0
  411. /package/{esm2020 → esm2022}/daterangepicker_v2/daterangepicker-constants.mjs +0 -0
  412. /package/{esm2020 → esm2022}/daterangepicker_v2/index.mjs +0 -0
  413. /package/{esm2020 → esm2022}/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.mjs +0 -0
  414. /package/{esm2020 → esm2022}/daterangepicker_v2/models/drp-config.model.mjs +0 -0
  415. /package/{esm2020 → esm2022}/daterangepicker_v2/public_api.mjs +0 -0
  416. /package/{esm2020 → esm2022}/drawer/drawer-constants.mjs +0 -0
  417. /package/{esm2020 → esm2022}/drawer/index.mjs +0 -0
  418. /package/{esm2020 → esm2022}/drawer/mis-crystal-design-system-drawer.mjs +0 -0
  419. /package/{esm2020 → esm2022}/drawer/public_api.mjs +0 -0
  420. /package/{esm2020 → esm2022}/dropdown/index.mjs +0 -0
  421. /package/{esm2020 → esm2022}/dropdown/mis-crystal-design-system-dropdown.mjs +0 -0
  422. /package/{esm2020 → esm2022}/dropdown/public_api.mjs +0 -0
  423. /package/{esm2020 → esm2022}/dynamic-form/dynamic-form.namespace.mjs +0 -0
  424. /package/{esm2020 → esm2022}/dynamic-form/index.mjs +0 -0
  425. /package/{esm2020 → esm2022}/dynamic-form/mis-crystal-design-system-dynamic-form.mjs +0 -0
  426. /package/{esm2020 → esm2022}/dynamic-form/public_api.mjs +0 -0
  427. /package/{esm2020 → esm2022}/fab/index.mjs +0 -0
  428. /package/{esm2020 → esm2022}/fab/mis-crystal-design-system-fab.mjs +0 -0
  429. /package/{esm2020 → esm2022}/fab/public_api.mjs +0 -0
  430. /package/{esm2020 → esm2022}/filter/animations/slideFromRight.mjs +0 -0
  431. /package/{esm2020 → esm2022}/filter/index.mjs +0 -0
  432. /package/{esm2020 → esm2022}/filter/mis-crystal-design-system-filter.mjs +0 -0
  433. /package/{esm2020 → esm2022}/filter/public_api.mjs +0 -0
  434. /package/{esm2020 → esm2022}/index.mjs +0 -0
  435. /package/{esm2020 → esm2022}/input/index.mjs +0 -0
  436. /package/{esm2020 → esm2022}/input/mis-crystal-design-system-input.mjs +0 -0
  437. /package/{esm2020 → esm2022}/input/public_api.mjs +0 -0
  438. /package/{esm2020 → esm2022}/input-stepper/index.mjs +0 -0
  439. /package/{esm2020 → esm2022}/input-stepper/mis-crystal-design-system-input-stepper.mjs +0 -0
  440. /package/{esm2020 → esm2022}/input-stepper/public_api.mjs +0 -0
  441. /package/{esm2020 → esm2022}/loader/index.mjs +0 -0
  442. /package/{esm2020 → esm2022}/loader/mis-crystal-design-system-loader.mjs +0 -0
  443. /package/{esm2020 → esm2022}/loader/public_api.mjs +0 -0
  444. /package/{esm2020 → esm2022}/menu/index.mjs +0 -0
  445. /package/{esm2020 → esm2022}/menu/mis-crystal-design-system-menu.mjs +0 -0
  446. /package/{esm2020 → esm2022}/menu/public_api.mjs +0 -0
  447. /package/{esm2020 → esm2022}/mis-crystal-design-system.mjs +0 -0
  448. /package/{esm2020 → esm2022}/mobile-filter/index.mjs +0 -0
  449. /package/{esm2020 → esm2022}/mobile-filter/mis-crystal-design-system-mobile-filter.mjs +0 -0
  450. /package/{esm2020 → esm2022}/mobile-filter/public_api.mjs +0 -0
  451. /package/{esm2020 → esm2022}/modal/index.mjs +0 -0
  452. /package/{esm2020 → esm2022}/modal/mis-crystal-design-system-modal.mjs +0 -0
  453. /package/{esm2020 → esm2022}/modal/modal-constants.mjs +0 -0
  454. /package/{esm2020 → esm2022}/modal/modal-ref.mjs +0 -0
  455. /package/{esm2020 → esm2022}/modal/public_api.mjs +0 -0
  456. /package/{esm2020 → esm2022}/multi-select-dropdown/index.mjs +0 -0
  457. /package/{esm2020 → esm2022}/multi-select-dropdown/mis-crystal-design-system-multi-select-dropdown.mjs +0 -0
  458. /package/{esm2020 → esm2022}/multi-select-dropdown/public_api.mjs +0 -0
  459. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/index.mjs +0 -0
  460. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/mis-crystal-design-system-nested-multi-select-dropdown.mjs +0 -0
  461. /package/{esm2020 → esm2022}/nested-multi-select-dropdown/public_api.mjs +0 -0
  462. /package/{esm2020 → esm2022}/phone-input/index.mjs +0 -0
  463. /package/{esm2020 → esm2022}/phone-input/mis-crystal-design-system-phone-input.mjs +0 -0
  464. /package/{esm2020 → esm2022}/phone-input/public_api.mjs +0 -0
  465. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  466. /package/{esm2020 → esm2022}/radio-button/index.mjs +0 -0
  467. /package/{esm2020 → esm2022}/radio-button/mis-crystal-design-system-radio-button.mjs +0 -0
  468. /package/{esm2020 → esm2022}/radio-button/public_api.mjs +0 -0
  469. /package/{esm2020 → esm2022}/ske-loader/index.mjs +0 -0
  470. /package/{esm2020 → esm2022}/ske-loader/mis-crystal-design-system-ske-loader.mjs +0 -0
  471. /package/{esm2020 → esm2022}/ske-loader/public_api.mjs +0 -0
  472. /package/{esm2020 → esm2022}/slider/index.mjs +0 -0
  473. /package/{esm2020 → esm2022}/slider/mis-crystal-design-system-slider.mjs +0 -0
  474. /package/{esm2020 → esm2022}/slider/public_api.mjs +0 -0
  475. /package/{esm2020 → esm2022}/snackbar/index.mjs +0 -0
  476. /package/{esm2020 → esm2022}/snackbar/mis-crystal-design-system-snackbar.mjs +0 -0
  477. /package/{esm2020 → esm2022}/snackbar/public_api.mjs +0 -0
  478. /package/{esm2020 → esm2022}/specificdatepicker/daterangepicker-constants.mjs +0 -0
  479. /package/{esm2020 → esm2022}/specificdatepicker/index.mjs +0 -0
  480. /package/{esm2020 → esm2022}/specificdatepicker/mis-crystal-design-system-specificdatepicker.mjs +0 -0
  481. /package/{esm2020 → esm2022}/specificdatepicker/models/sdp-config.model.mjs +0 -0
  482. /package/{esm2020 → esm2022}/specificdatepicker/public_api.mjs +0 -0
  483. /package/{esm2020 → esm2022}/star-rating/index.mjs +0 -0
  484. /package/{esm2020 → esm2022}/star-rating/mis-crystal-design-system-star-rating.mjs +0 -0
  485. /package/{esm2020 → esm2022}/star-rating/public_api.mjs +0 -0
  486. /package/{esm2020 → esm2022}/styles/index.mjs +0 -0
  487. /package/{esm2020 → esm2022}/styles/mis-crystal-design-system-styles.mjs +0 -0
  488. /package/{esm2020 → esm2022}/styles/public_api.mjs +0 -0
  489. /package/{esm2020 → esm2022}/switch/index.mjs +0 -0
  490. /package/{esm2020 → esm2022}/switch/mis-crystal-design-system-switch.mjs +0 -0
  491. /package/{esm2020 → esm2022}/switch/public_api.mjs +0 -0
  492. /package/{esm2020 → esm2022}/table/index.mjs +0 -0
  493. /package/{esm2020 → esm2022}/table/mis-crystal-design-system-table.mjs +0 -0
  494. /package/{esm2020 → esm2022}/table/public_api.mjs +0 -0
  495. /package/{esm2020 → esm2022}/timepicker/index.mjs +0 -0
  496. /package/{esm2020 → esm2022}/timepicker/mis-crystal-design-system-timepicker.mjs +0 -0
  497. /package/{esm2020 → esm2022}/timepicker/public_api.mjs +0 -0
  498. /package/{esm2020 → esm2022}/timepicker/time.namespace.mjs +0 -0
  499. /package/{esm2020 → esm2022}/timerangepicker/index.mjs +0 -0
  500. /package/{esm2020 → esm2022}/timerangepicker/mis-crystal-design-system-timerangepicker.mjs +0 -0
  501. /package/{esm2020 → esm2022}/timerangepicker/public_api.mjs +0 -0
  502. /package/{esm2020 → esm2022}/timerangepicker/timerange.namespace.mjs +0 -0
  503. /package/{esm2020 → esm2022}/toast/index.mjs +0 -0
  504. /package/{esm2020 → esm2022}/toast/mis-crystal-design-system-toast.mjs +0 -0
  505. /package/{esm2020 → esm2022}/toast/public_api.mjs +0 -0
  506. /package/{esm2020 → esm2022}/tooltip/index.mjs +0 -0
  507. /package/{esm2020 → esm2022}/tooltip/mis-crystal-design-system-tooltip.mjs +0 -0
  508. /package/{esm2020 → esm2022}/tooltip/models/tooltip.model.mjs +0 -0
  509. /package/{esm2020 → esm2022}/tooltip/public_api.mjs +0 -0
  510. /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
  511. /package/{esm2020 → esm2022}/utils/mis-crystal-design-system-utils.mjs +0 -0
  512. /package/{esm2020 → esm2022}/virtual-scroll/index.mjs +0 -0
  513. /package/{esm2020 → esm2022}/virtual-scroll/mis-crystal-design-system-virtual-scroll.mjs +0 -0
  514. /package/{esm2020 → esm2022}/virtual-scroll/public_api.mjs +0 -0
  515. /package/{esm2020 → esm2022}/virtual-scroll/virtual-scroll.constants.mjs +0 -0
  516. /package/{esm2020 → esm2022}/widgets/classes/widget-group.mjs +0 -0
  517. /package/{esm2020 → esm2022}/widgets/index.mjs +0 -0
  518. /package/{esm2020 → esm2022}/widgets/interfaces/widgets.model.mjs +0 -0
  519. /package/{esm2020 → esm2022}/widgets/mis-crystal-design-system-widgets.mjs +0 -0
  520. /package/{esm2020 → esm2022}/widgets/public_api.mjs +0 -0
  521. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs +0 -0
  522. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-styles.mjs.map +0 -0
  523. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs +0 -0
  524. /package/{fesm2015 → fesm2022}/mis-crystal-design-system-utils.mjs.map +0 -0
  525. /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs +0 -0
  526. /package/{fesm2015 → fesm2022}/mis-crystal-design-system.mjs.map +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"mis-crystal-design-system-timepicker.mjs","sources":["../../../projects/mis-components/timepicker/timepicker.directive.ts","../../../projects/mis-components/timepicker/timepicker.component.html","../../../projects/mis-components/timepicker/timepicker.component.ts","../../../projects/mis-components/timepicker/timepicker.module.ts","../../../projects/mis-components/timepicker/mis-crystal-design-system-timepicker.ts"],"sourcesContent":["import { Directive, Output, TemplateRef } from '@angular/core';\nimport { EventEmitter, Input, ViewContainerRef } from \"@angular/core\";\nimport { ConnectionPositionPair, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\n\n@Directive({\n selector: '[libTimepicker]'\n})\nexport class TimepickerDirective {\n private openStatus: boolean = false;\n @Input('originEl') originEl : any;\n @Output() statusEmitter = new EventEmitter<boolean>(); \n\n @Input('openStatus') set createOverlayOnInput(openStatus){\n this.openStatus = openStatus;\n if(this.originEl && this.openStatus) this.createOverlay(this.originEl);\n }; \n private overlayRef!: OverlayRef;\n constructor(private templateRef: TemplateRef<Element>, private overlay: Overlay, private viewContainerRef: ViewContainerRef) {}\n\n createOverlay(origin: any): void {\n const positions = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n\n const overlayConfig = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n positionStrategy: this.overlay\n .position()\n //connecting the dropdown overlay to the input element\n .flexibleConnectedTo(origin)\n .withPositions([...positions])\n .withPush(true)\n });\n\n this.overlayRef = this.overlay.create(overlayConfig);\n const dropdownPortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n this.overlayRef.attach(dropdownPortal);\n this.overlayRef.backdropClick().subscribe(resp => {\n this.openStatus = false;\n this.statusEmitter.emit(false);\n if(this.overlay){\n this.overlayRef.detach();\n }\n });\n }\n\n destroyOverlay(){\n if(this.overlay){\n this.overlayRef.detach();\n }\n }\n \n}\n","<div class=\"timepicker-container\" [ngStyle]=\"{ height: height }\" [ngClass]=\"{'disable': disable}\">\n <input\n type=\"text\"\n [(ngModel)]=\"chosenTime\"\n (ngModelChange)=\"onTimeChange(chosenTime)\"\n [ngClass]=\"{ invalid: isInvalid || !rangeValidity }\"\n [ngStyle]=\"{ width: inputWidth }\"\n (click)=\"openDropdown()\"\n misToolTip\n [showToolTip]=\"showTooltip && (isInvalid || !rangeValidity) && dispayToolTip\"\n [text]=\"'Invalid Time'\"\n [position]=\"'top'\"\n [showOnHover]=\"false\"\n #input\n cdkOverlayOrigin\n class=\"h7\"\n />\n\n <ng-template #dropdownContainer libDropdownScroll libTimepicker [originEl]=\"input\" [openStatus]=\"openStatus\" (statusEmitter)=\"closeDropdown()\">\n <div *ngIf=\"openStatus\" class=\"timepicker-dropdown\" [ngStyle]=\"{ width: dropdownWidth || inputWidth }\">\n <ul #dropdown>\n <li #timeInterval (click)=\"onTimeSelect(interval)\" *ngFor=\"let interval of timeIntervals; index as i\" [ngClass]=\"{ highlight: i === isHighlighted }\">\n {{ interval }}\n <div class=\"ic-ui-check-24 selected-icon\" *ngIf=\"interval === chosenTime\"></div>\n </li>\n </ul>\n </div>\n </ng-template>\n</div>\n","import { Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, ViewChild, ViewChildren } from \"@angular/core\";\nimport { ITime } from \"./time.namespace\";\nimport { TimepickerDirective } from \"./timepicker.directive\";\nimport { ToolTipDirective } from \"mis-crystal-design-system/tooltip\";\n\nimport dayjs from 'dayjs';\nimport timezone from 'dayjs/plugin/timezone';\nimport utc from 'dayjs/plugin/utc';\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(customParseFormat);\n\n\n@Component({\n selector: \"mis-timepicker\",\n templateUrl: \"./timepicker.component.html\",\n styleUrls: [\"./timepicker.component.scss\"]\n})\nexport class TimePickerComponent implements OnInit, OnChanges, OnDestroy {\n currTime!: string;\n chosenTime: string;\n openStatus: boolean = false;\n isHighlighted: number = 0;\n isInvalid: boolean = false;\n timeIntervals: string[] = [];\n shouldScroll: boolean = false;\n userInputFlag: boolean = false;\n givenTimeFlag: boolean = true;\n @Input() clockFormat: number = 12;\n timeFormat!: string;\n \n @Input() timezone: string = \"Asia/Kolkata\";\n @Input() height: string = \"max-content\";\n @Input() inputWidth: string = \"100px\";\n @Input() dropdownWidth?: string;\n @Input() interval: number = 15;\n @Input() dateAsEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() firstInterval!: number;\n @Input() rangeValidity: boolean = true;\n @Input() showTooltip: boolean = true;\n dispayToolTip: boolean = this.showTooltip;\n @Input() givenTime: number;\n @Input() minTime?: number;\n @Input() triggerChange: boolean = true;\n @Input() disable: boolean = false;\n @Output() timeEmitter = new EventEmitter<ITime>();\n @ViewChild(\"input\", { static: true }) input: ElementRef;\n @ViewChild(TimepickerDirective) timepickerDirective: TimepickerDirective;\n @ViewChild(ToolTipDirective) tooltipDirective: ToolTipDirective;\n\n // gets all the li elements from the dropdown and scrolls to the highlighted element\n @ViewChildren(\"timeInterval\") set timeIntervalRefs(intervals) {\n intervals.forEach(interval => {\n if (interval.nativeElement.classList[0] === \"highlight\") {\n const highlighted = interval.nativeElement;\n setTimeout(() => highlighted.scrollIntoView({ block: \"center\" }));\n }\n });\n }\n\n constructor(){}\n ngOnInit(): void {\n if(!this.givenTime && !this.minTime) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n }\n }\n\n ngOnChanges(): void {\n this.timeFormat = this.clockFormat === 12 ? \"hh:mm a\" : \"HH:mm\";\n\n if (this.timeFormat) {\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n \n // if the first interval is >= the chosen time\n // then only update the value of chosen time\n // else it remains the same\n if (this.firstInterval >= chosenTimedayjs.valueOf() && this.rangeValidity && !this.userInputFlag) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n }\n\n if((this.givenTimeFlag && this.givenTime) || this.minTime ) {\n this.chosenTime = dayjs.tz(this.minTime || this.givenTime, this.timezone).format(this.timeFormat);\n }\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n\n if (!this.userInputFlag) this.populateDropdown();\n this.userInputFlag = false;\n \n if(this.chosenTime) {\n this.isInvalid = !this.checkTimeValidity(this.chosenTime.trim());\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n this.calculateClosestInterval(this.chosenTime);\n }\n }\n }\n\n emitTime(data: ITime): void {\n this.timeEmitter.emit(data);\n }\n\n // function to get dayjs object when time is given in string\n getdayjs(time: string = '00:00'){;\n if(!time || typeof time !== 'string') {\n throw new Error('Time must be a string');\n }\n\n let hours: number;\n let minutes: number;\n\n if(this.clockFormat === 24) {\n hours = parseInt(time.split(':')[0]);\n minutes = parseInt(time.split(':')[1]);\n } else {\n const timeParts = time.split(' ');\n const AM_PM = timeParts?.[1];\n hours = parseInt(timeParts?.[0]?.split(':')?.[0]);\n minutes = parseInt(timeParts?.[0]?.split(':')?.[1]);\n\n if(AM_PM?.toUpperCase() === 'PM' && hours !== 12) {\n hours += 12;\n } else if(AM_PM?.toUpperCase() === 'AM' && hours === 12) {\n hours = 0;\n }\n }\n\n return dayjs.tz(this.dateAsEpoch, this.timezone).add(hours, 'h').add(minutes, 'm');\n }\n\n closeDropdown() {\n this.dispayToolTip = false;\n this.userInputFlag = false;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // toggle timepicker dropdown\n openDropdown(): void {\n this.dispayToolTip = true;\n this.openStatus = true;\n }\n\n checkTimeValidity(time: string): boolean {\n const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;\n const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;\n const RE = this.clockFormat === 12 ? RE12 : RE24;\n\n const timedayjs = this.getdayjs(time);\n let flag: boolean = false;\n\n // if the first interval is set to the start of the day\n // or a time is already provided to the component to show\n // then we don't check its validity against the current time\n if (\n this.minTime || \n this.givenTime ||\n (this.firstInterval &&\n dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat).valueOf() === dayjs.tz(dayjs(), this.timezone).startOf(\"day\").format(this.timeFormat).valueOf())\n ) {\n flag = time.match(RE) ? true : false;\n } else {\n flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), \"m\") >= 0 ? true: false;\n }\n\n return flag;\n }\n\n // update chosen time as soon as the user clicks on an interval\n onTimeSelect(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n if (!this.isInvalid) {\n this.chosenTime = time;\n this.calculateClosestInterval(this.chosenTime);\n }\n\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // checks validity of time on input change and calculates the closest interval\n onTimeChange(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n\n if (!this.isInvalid) {\n this.userInputFlag = true;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n this.calculateClosestInterval(time);\n }\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n }\n\n calculateClosestInterval(time: string): void {\n let roundedEpoch: number;\n // Converting time and date to a dayjs object \n const chosenDate = dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\"); // 05-01-2024\n const parsedTimeWithDate = dayjs.tz(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n // Converting dayjs object to epoch\n const chosenTimeEpoch = parsedTimeWithDate.valueOf();\n const offset = this.interval - (dayjs.tz(chosenTimeEpoch, this.timezone).minute() % this.interval);\n\n if (this.minTime && !this.givenTime) {\n this.isHighlighted = 0;\n return;\n }\n roundedEpoch = offset >= this.interval / 2 ? (dayjs.tz(chosenTimeEpoch, this.timezone).subtract(this.interval - offset, \"m\")).valueOf() : (dayjs.tz(chosenTimeEpoch, this.timezone).add( offset, \"m\")).valueOf();\n\n // finding the index of element that needs to be highlighted\n if ( chosenTimeEpoch > dayjs.tz(this.dateAsEpoch, this.timezone).endOf(\"day\").subtract(this.interval, \"m\").valueOf()) {\n this.isHighlighted = this.timeIntervals.length - 1;\n } else {\n const roundedEpochdayjs = dayjs.tz(roundedEpoch, this.timezone);\n this.isHighlighted = this.timeIntervals.findIndex(interval => {\n const intervalObj = dayjs.tz(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n return intervalObj.isSame(roundedEpochdayjs);\n });\n }\n }\n\n\n // populates the dropdown according to the first interval received\n populateDropdown(): void {\n this.timeIntervals = [];\n\n // if picker is used as an individual component\n if (!this.firstInterval) {\n // firstInterval is initialised according to the current time\n // if the date is same as the current date\n if (dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\") === dayjs.tz(dayjs(), this.timezone).format(\"DD-MM-YYYY\") && !this.minTime) {\n const offset = this.interval - (dayjs.tz(dayjs(), this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n }\n // if minimum time to show is provided\n else if(this.minTime){\n const offset = this.interval - (dayjs.tz(this.minTime, this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(this.minTime, this.timezone).add(offset, \"m\").valueOf();\n }\n // else the firstInterval is initialised as start of day\n else {\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).startOf(\"day\").valueOf();\n }\n }\n\n if(this.givenTime && this.givenTimeFlag){\n this.firstInterval = dayjs.tz(this.givenTime, this.timezone).startOf('d').valueOf();\n this.givenTimeFlag = false;\n }\n\n const dateAsString = dayjs.tz(this.dateAsEpoch, this.timezone).format('DD-MM-YYYY');\n const intervalAsString = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let start = dayjs.tz(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n const end = dayjs.tz(this.dateAsEpoch, this.timezone).endOf('d');\n while (start.valueOf() < end.valueOf()) {\n this.timeIntervals.push(start.format(this.timeFormat));\n start = start.add(this.interval, \"m\");\n }\n\n // if the start time is equal to the interval just before midnight\n // and the start date = end date\n // push 11:59pm only\n if (this.timeIntervals.length === 0) {\n this.chosenTime = dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat);\n this.timeIntervals.push(dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat));\n }\n }\n\n ngOnDestroy() {\n if (this.tooltipDirective) this.tooltipDirective.hideToolTip();\n }\n}\n\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { TimePickerComponent } from \"./timepicker.component\";\nimport { ToolTipModule } from \"mis-crystal-design-system/tooltip\";\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { TimepickerDirective } from './timepicker.directive';\n\n@NgModule({\n declarations: [TimePickerComponent, TimepickerDirective],\n imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule],\n exports: [TimePickerComponent]\n})\nexport class TimePickerModule {\n static forRoot(): ModuleWithProviders<TimePickerModule> {\n return { ngModule: TimePickerModule, providers: [] };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;MAQa,mBAAmB,CAAA;AAU9B,IAAA,WAAA,CAAoB,WAAiC,EAAU,OAAgB,EAAU,gBAAkC,EAAA;QAAvG,IAAW,CAAA,WAAA,GAAX,WAAW,CAAsB;QAAU,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;QAAU,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;QATnH,IAAU,CAAA,UAAA,GAAY,KAAK,CAAC;AAE1B,QAAA,IAAA,CAAA,aAAa,GAAG,IAAI,YAAY,EAAW,CAAC;KAOyE;IAL/H,IAA0B,oBAAoB,CAAC,UAAU,EAAA;AACvD,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;AAC7B,QAAA,IAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU;AAAE,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACxE;;AAID,IAAA,aAAa,CAAC,MAAW,EAAA;AACvB,QAAA,MAAM,SAAS,GAAG;YAChB,IAAI,sBAAsB,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YACjH,IAAI,sBAAsB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;SAC9G,CAAC;AAEF,QAAA,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC;AACtC,YAAA,WAAW,EAAE,IAAI;AACjB,YAAA,aAAa,EAAE,kCAAkC;YACjD,gBAAgB,EAAE,IAAI,CAAC,OAAO;AAC3B,iBAAA,QAAQ,EAAE;;iBAEV,mBAAmB,CAAC,MAAM,CAAC;AAC3B,iBAAA,aAAa,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;iBAC7B,QAAQ,CAAC,IAAI,CAAC;AAClB,SAAA,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AACrD,QAAA,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACnF,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,IAAI,IAAG;AAC/C,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AACxB,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC/B,IAAG,IAAI,CAAC,OAAO,EAAC;AACd,gBAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;AAC1B,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAED,cAAc,GAAA;QACZ,IAAG,IAAI,CAAC,OAAO,EAAC;AACd,YAAA,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;AAC1B,SAAA;KACF;;sFA7CU,mBAAmB,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,gBAAA,CAAA,CAAA,CAAA,EAAA,CAAA;sEAAnB,mBAAmB,EAAA,SAAA,EAAA,CAAA,CAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,CAAA,YAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,CAAA,CAAA;uFAAnB,mBAAmB,EAAA,CAAA;cAH/B,SAAS;AAAC,QAAA,IAAA,EAAA,CAAA;AACT,gBAAA,QAAQ,EAAE,iBAAiB;AAC5B,aAAA,CAAA;mHAGoB,QAAQ,EAAA,CAAA;kBAA1B,KAAK;mBAAC,UAAU,CAAA;YACP,aAAa,EAAA,CAAA;kBAAtB,MAAM;YAEmB,oBAAoB,EAAA,CAAA;kBAA7C,KAAK;mBAAC,YAAY,CAAA;;;;;;ICUX,EAAgF,CAAA,SAAA,CAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,CAAA;;;;;IAFlF,EAAqJ,CAAA,cAAA,CAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA;IAAnI,EAAS,CAAA,UAAA,CAAA,OAAA,EAAA,SAAA,yEAAA,GAAA,EAAA,MAAA,WAAA,GAAA,EAAA,CAAA,aAAA,CAAA,IAAA,CAAA,CAAA,CAAA,MAAA,WAAA,GAAA,WAAA,CAAA,SAAA,CAAA,CAAA,MAAA,OAAA,GAAA,EAAA,CAAA,aAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAA,CAAA,WAAA,CAAA,OAAsB,CAAA,YAAA,CAAA,WAAA,CAAA,CAAA,CAAC,EAAA,CAAA,CAAA;IAChD,EACA,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;IAAA,EAAgF,CAAA,UAAA,CAAA,CAAA,EAAA,2DAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,CAAA;IAClF,EAAK,CAAA,YAAA,EAAA,CAAA;;;;;IAHiG,EAA8C,CAAA,UAAA,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,CAAA,EAAA,GAAA,EAAA,IAAA,KAAA,MAAA,CAAA,aAAA,CAAA,CAAA,CAAA;IAClJ,EACA,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IADA,EACA,CAAA,kBAAA,CAAA,GAAA,EAAA,WAAA,EAAA,GAAA,CAAA,CAAA;IAA2C,EAA6B,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAA7B,EAA6B,CAAA,UAAA,CAAA,MAAA,EAAA,WAAA,KAAA,MAAA,CAAA,UAAA,CAAA,CAAA;;;;AAJ9E,IAAA,EAAA,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAuG,CAAA,CAAA,EAAA,IAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;IAEnG,EAGK,CAAA,UAAA,CAAA,CAAA,EAAA,qDAAA,EAAA,CAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA;AACP,IAAA,EAAA,CAAA,YAAA,EAAK,EAAA,CAAA;;;IAN6C,EAAkD,CAAA,UAAA,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,CAAA,EAAA,GAAA,EAAA,MAAA,CAAA,aAAA,IAAA,MAAA,CAAA,UAAA,CAAA,CAAA,CAAA;IAE1B,EAAkB,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAAlB,EAAkB,CAAA,UAAA,CAAA,SAAA,EAAA,MAAA,CAAA,aAAA,CAAA,CAAA;;;IAF9F,EAOM,CAAA,UAAA,CAAA,CAAA,EAAA,gDAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA,CAAA;;;IAPA,EAAgB,CAAA,UAAA,CAAA,MAAA,EAAA,MAAA,CAAA,UAAA,CAAA,CAAA;;;;;ACT1B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAClB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AACvB,KAAK,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;MAQnB,mBAAmB,CAAA;AA0C9B,IAAA,WAAA,GAAA;QAvCA,IAAU,CAAA,UAAA,GAAY,KAAK,CAAC;QAC5B,IAAa,CAAA,aAAA,GAAW,CAAC,CAAC;QAC1B,IAAS,CAAA,SAAA,GAAY,KAAK,CAAC;QAC3B,IAAa,CAAA,aAAA,GAAa,EAAE,CAAC;QAC7B,IAAY,CAAA,YAAA,GAAY,KAAK,CAAC;QAC9B,IAAa,CAAA,aAAA,GAAY,KAAK,CAAC;QAC/B,IAAa,CAAA,aAAA,GAAY,IAAI,CAAC;QACrB,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;QAGzB,IAAQ,CAAA,QAAA,GAAW,cAAc,CAAC;QAClC,IAAM,CAAA,MAAA,GAAW,aAAa,CAAC;QAC/B,IAAU,CAAA,UAAA,GAAW,OAAO,CAAC;QAE7B,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;AACtB,QAAA,IAAA,CAAA,WAAW,GAAW,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAEjE,IAAa,CAAA,aAAA,GAAY,IAAI,CAAC;QAC9B,IAAW,CAAA,WAAA,GAAY,IAAI,CAAC;AACrC,QAAA,IAAA,CAAA,aAAa,GAAY,IAAI,CAAC,WAAW,CAAC;QAGjC,IAAa,CAAA,aAAA,GAAY,IAAI,CAAC;QAC9B,IAAO,CAAA,OAAA,GAAY,KAAK,CAAC;AACxB,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAS,CAAC;KAenC;;IATf,IAAkC,gBAAgB,CAAC,SAAS,EAAA;AAC1D,QAAA,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAG;YAC3B,IAAI,QAAQ,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,WAAW,EAAE;AACvD,gBAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC;AAC3C,gBAAA,UAAU,CAAC,MAAM,WAAW,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AACnE,aAAA;AACH,SAAC,CAAC,CAAC;KACJ;IAGD,QAAQ,GAAA;QACN,IAAG,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACtF,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACrD,IAAI,CAAC,QAAQ,CAAC;AACZ,gBAAA,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS;gBACtB,IAAI,EAAE,IAAI,CAAC,UAAU;AACrB,gBAAA,KAAK,EAAE,eAAe,CAAC,OAAO,EAAE;AACjC,aAAA,CAAC,CAAC;AACJ,SAAA;KACF;IAED,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,EAAE,GAAG,SAAS,GAAG,OAAO,CAAC;QAEhE,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;;;;AAKrD,YAAA,IAAI,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;gBAChG,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACtF,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;AACjD,aAAA;AAED,YAAA,IAAG,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAG;gBAC1D,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACnG,aAAA;YACD,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAEhD,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;AACjD,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;YAE3B,IAAG,IAAI,CAAC,UAAU,EAAE;AAClB,gBAAA,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,QAAQ,CAAC;AACZ,oBAAA,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS;oBACtB,IAAI,EAAE,IAAI,CAAC,UAAU;AACrB,oBAAA,KAAK,EAAE,eAAe,CAAC,OAAO,EAAE;AACjC,iBAAA,CAAC,CAAC;AACH,gBAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAChD,aAAA;AACF,SAAA;KACF;AAED,IAAA,QAAQ,CAAC,IAAW,EAAA;AAClB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7B;;IAGD,QAAQ,CAAC,OAAe,OAAO,EAAA;QAAE,CAAC;AAChC,QAAA,IAAG,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;AACpC,YAAA,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;AAC1C,SAAA;AAED,QAAA,IAAI,KAAa,CAAC;AAClB,QAAA,IAAI,OAAe,CAAC;AAEpB,QAAA,IAAG,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE;AAC1B,YAAA,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,YAAA,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACxC,SAAA;AAAM,aAAA;YACL,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAClC,YAAA,MAAM,KAAK,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;AAC7B,YAAA,KAAK,GAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;AACnD,YAAA,OAAO,GAAG,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEpD,IAAG,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;gBAChD,KAAK,IAAI,EAAE,CAAC;AACb,aAAA;iBAAM,IAAG,KAAK,EAAE,WAAW,EAAE,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE;gBACvD,KAAK,GAAG,CAAC,CAAC;AACX,aAAA;AACF,SAAA;QAED,OAAO,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;KACpF;IAED,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC3B,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,mBAAmB;AAAE,YAAA,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,CAAC;KACzE;;IAGD,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAC1B,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;KACxB;AAED,IAAA,iBAAiB,CAAC,IAAY,EAAA;QAC5B,MAAM,IAAI,GAAG,sDAAsD,CAAC;QACpE,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,KAAK,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;QAEjD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,IAAI,GAAY,KAAK,CAAC;;;;QAK1B,IACE,IAAI,CAAC,OAAO;AACZ,YAAA,IAAI,CAAC,SAAS;aACb,IAAI,CAAC,aAAa;gBACnB,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,EACpK;AACA,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACtC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,GAAE,KAAK,CAAC;AACnG,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;;AAGD,IAAA,YAAY,CAAC,IAAY,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AACtD,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACnB,YAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;AACvB,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAChD,SAAA;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC;AACZ,YAAA,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS;AACtB,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;AAC3B,SAAA,CAAC,CAAC;AACH,QAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,mBAAmB;AAAE,YAAA,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,CAAC;KACzE;;AAGD,IAAA,YAAY,CAAC,IAAY,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;AAEtD,QAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACnB,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;AAC1B,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,IAAI,CAAC,mBAAmB;AAAE,gBAAA,IAAI,CAAC,mBAAmB,CAAC,cAAc,EAAE,CAAC;AACxE,YAAA,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;AACrC,SAAA;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC;AACZ,YAAA,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS;AACtB,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE;AAC3B,SAAA,CAAC,CAAC;KACJ;AAED,IAAA,wBAAwB,CAAC,IAAY,EAAA;AACnC,QAAA,IAAI,YAAoB,CAAC;;QAEzB,MAAM,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAClF,MAAM,kBAAkB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,IAAI,CAAA,CAAE,EAAE,CAAc,WAAA,EAAA,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;;AAE7G,QAAA,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEnG,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AACnC,YAAA,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;YACvB,OAAO;AACR,SAAA;AACD,QAAA,YAAY,GAAG,MAAM,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAE,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;;AAGjN,QAAA,IAAK,eAAe,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACpH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;AACpD,SAAA;AAAM,aAAA;AACL,YAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAChE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,IAAG;gBAC3D,MAAM,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,QAAQ,CAAA,CAAE,EAAE,CAAc,WAAA,EAAA,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC1G,gBAAA,OAAO,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC/C,aAAC,CAAC,CAAC;AACJ,SAAA;KACF;;IAID,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;;AAGxB,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;;;AAGvB,YAAA,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBAC7I,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3F,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAClF,aAAA;;iBAEI,IAAG,IAAI,CAAC,OAAO,EAAC;gBACnB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAChG,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACvF,aAAA;;AAEI,iBAAA;gBACH,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;AAChF,aAAA;AACF,SAAA;AAED,QAAA,IAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,EAAC;YACtC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACpF,YAAA,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;AAC5B,SAAA;AAED,QAAA,MAAM,YAAY,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACpF,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7F,IAAI,KAAK,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,YAAY,CAAA,CAAA,EAAI,gBAAgB,CAAA,CAAE,EAAE,CAAc,WAAA,EAAA,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;AAC5G,QAAA,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,KAAK,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,EAAE;AACtC,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;YACvD,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACvC,SAAA;;;;AAKD,QAAA,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACtF,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AAC9F,SAAA;KACF;IAED,WAAW,GAAA;QACT,IAAI,IAAI,CAAC,gBAAgB;AAAE,YAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,CAAC;KAChE;;sFA/QU,mBAAmB,GAAA,CAAA,EAAA,CAAA;sEAAnB,mBAAmB,EAAA,SAAA,EAAA,CAAA,CAAA,gBAAA,CAAA,CAAA,EAAA,SAAA,EAAA,SAAA,yBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;;uBA6BnB,mBAAmB,EAAA,CAAA,CAAA,CAAA;uBACnB,gBAAgB,EAAA,CAAA,CAAA,CAAA;;;;;;;;;ADlD7B,QAAA,EAAA,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAkG,CAAA,CAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AAG9F,QAAA,EAAA,CAAA,UAAA,CAAA,eAAA,EAAA,SAAA,2DAAA,CAAA,MAAA,EAAA,EAAA,OAAA,GAAA,CAAA,UAAA,GAAA,MAAA,CAAA,EAAA,CAAwB,CACP,eAAA,EAAA,SAAA,2DAAA,GAAA,EAAA,OAAA,GAAA,CAAA,YAAA,CAAA,GAAA,CAAA,UAAA,CAAwB,CADjB,EAAA,CAAA,CAAA,OAAA,EAAA,SAAA,mDAAA,GAAA,EAAA,OAIf,kBAAc,CAJC,EAAA,CAAA,CAAA;QAF1B,EAeE,CAAA,YAAA,EAAA,CAAA;QAEF,EASc,CAAA,UAAA,CAAA,CAAA,EAAA,0CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,aAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,sBAAA,CAAA,CAAA;AAT+F,QAAA,EAAA,CAAA,UAAA,CAAA,eAAA,EAAA,SAAA,iEAAA,GAAA,EAAA,OAAiB,mBAAe,CAAC,EAAA,CAAA,CAAA;QAUhJ,EAAM,CAAA,YAAA,EAAA,CAAA;;;AA5B4B,QAAA,EAAA,CAAA,UAAA,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,MAAA,CAAA,CAA8B,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,OAAA,CAAA,CAAA,CAAA;QAG5D,EAAwB,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;AAAxB,QAAA,EAAA,CAAA,UAAA,CAAA,SAAA,EAAA,GAAA,CAAA,UAAA,CAAwB,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,SAAA,IAAA,CAAA,GAAA,CAAA,aAAA,CAAA,CAAA,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,UAAA,CAAA,CAAA,CAAA,aAAA,EAAA,GAAA,CAAA,WAAA,KAAA,GAAA,CAAA,SAAA,IAAA,CAAA,GAAA,CAAA,aAAA,CAAA,IAAA,GAAA,CAAA,aAAA,CAAA,CAAA,MAAA,EAAA,cAAA,CAAA,mBAAA,CAAA,aAAA,EAAA,KAAA,CAAA,CAAA;QAesC,EAAkB,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;AAAlB,QAAA,EAAA,CAAA,UAAA,CAAA,UAAA,EAAA,GAAA,CAAkB,CAAA,YAAA,EAAA,GAAA,CAAA,UAAA,CAAA,CAAA;;uFCEvE,mBAAmB,EAAA,CAAA;cAL/B,SAAS;2BACE,gBAAgB,EAAA,QAAA,EAAA,0tCAAA,EAAA,MAAA,EAAA,CAAA,skFAAA,CAAA,EAAA,CAAA;sCAcjB,WAAW,EAAA,CAAA;kBAAnB,KAAK;YAGG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,MAAM,EAAA,CAAA;kBAAd,KAAK;YACG,UAAU,EAAA,CAAA;kBAAlB,KAAK;YACG,aAAa,EAAA,CAAA;kBAArB,KAAK;YACG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,WAAW,EAAA,CAAA;kBAAnB,KAAK;YACG,aAAa,EAAA,CAAA;kBAArB,KAAK;YACG,aAAa,EAAA,CAAA;kBAArB,KAAK;YACG,WAAW,EAAA,CAAA;kBAAnB,KAAK;YAEG,SAAS,EAAA,CAAA;kBAAjB,KAAK;YACG,OAAO,EAAA,CAAA;kBAAf,KAAK;YACG,aAAa,EAAA,CAAA;kBAArB,KAAK;YACG,OAAO,EAAA,CAAA;kBAAf,KAAK;YACI,WAAW,EAAA,CAAA;kBAApB,MAAM;YAC+B,KAAK,EAAA,CAAA;kBAA1C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;YACJ,mBAAmB,EAAA,CAAA;kBAAlD,SAAS;mBAAC,mBAAmB,CAAA;YACD,gBAAgB,EAAA,CAAA;kBAA5C,SAAS;mBAAC,gBAAgB,CAAA;YAGO,gBAAgB,EAAA,CAAA;kBAAjD,YAAY;mBAAC,cAAc,CAAA;;;MCxCjB,gBAAgB,CAAA;AAC3B,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;KACtD;;gFAHU,gBAAgB,GAAA,CAAA,EAAA,CAAA;kEAAhB,gBAAgB,EAAA,CAAA,CAAA;AAHjB,gBAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAA,EAAA,CAAA,CAAA;uFAGtD,gBAAgB,EAAA,CAAA;cAL5B,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;AACR,gBAAA,YAAY,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;gBACxD,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,CAAC;gBAClE,OAAO,EAAE,CAAC,mBAAmB,CAAC;AAC/B,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,gBAAgB,EAJZ,EAAA,YAAA,EAAA,CAAA,mBAAmB,EAAE,mBAAmB,CAC7C,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,aACvD,mBAAmB,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACX/B;;AAEG;;;;"}
1
+ {"version":3,"file":"mis-crystal-design-system-timepicker.mjs","sources":["../../../projects/mis-components/timepicker/timepicker.directive.ts","../../../projects/mis-components/timepicker/timepicker.component.html","../../../projects/mis-components/timepicker/timepicker.component.ts","../../../projects/mis-components/timepicker/timepicker.module.ts","../../../projects/mis-components/timepicker/mis-crystal-design-system-timepicker.ts"],"sourcesContent":["import { Directive, Output, TemplateRef } from '@angular/core';\nimport { EventEmitter, Input, ViewContainerRef } from \"@angular/core\";\nimport { ConnectionPositionPair, Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { TemplatePortal } from \"@angular/cdk/portal\";\n\n@Directive({\n selector: '[libTimepicker]'\n})\nexport class TimepickerDirective {\n private openStatus: boolean = false;\n @Input('originEl') originEl : any;\n @Output() statusEmitter = new EventEmitter<boolean>(); \n\n @Input('openStatus') set createOverlayOnInput(openStatus){\n this.openStatus = openStatus;\n if(this.originEl && this.openStatus) this.createOverlay(this.originEl);\n }; \n private overlayRef!: OverlayRef;\n constructor(private templateRef: TemplateRef<Element>, private overlay: Overlay, private viewContainerRef: ViewContainerRef) {}\n\n createOverlay(origin: any): void {\n const positions = [\n new ConnectionPositionPair({ originX: \"start\", originY: \"bottom\" }, { overlayX: \"start\", overlayY: \"top\" }, 0, 4),\n new ConnectionPositionPair({ originX: \"end\", originY: \"bottom\" }, { overlayX: \"end\", overlayY: \"top\" }, 0, 4)\n ];\n\n const overlayConfig = new OverlayConfig({\n hasBackdrop: true,\n backdropClass: \"cdk-overlay-transparent-backdrop\",\n positionStrategy: this.overlay\n .position()\n //connecting the dropdown overlay to the input element\n .flexibleConnectedTo(origin)\n .withPositions([...positions])\n .withPush(true)\n });\n\n this.overlayRef = this.overlay.create(overlayConfig);\n const dropdownPortal = new TemplatePortal(this.templateRef, this.viewContainerRef);\n this.overlayRef.attach(dropdownPortal);\n this.overlayRef.backdropClick().subscribe(resp => {\n this.openStatus = false;\n this.statusEmitter.emit(false);\n if(this.overlay){\n this.overlayRef.detach();\n }\n });\n }\n\n destroyOverlay(){\n if(this.overlay){\n this.overlayRef.detach();\n }\n }\n \n}\n","<div class=\"timepicker-container\" [ngStyle]=\"{ height: height }\" [ngClass]=\"{'disable': disable}\">\n <input\n type=\"text\"\n [(ngModel)]=\"chosenTime\"\n (ngModelChange)=\"onTimeChange(chosenTime)\"\n [ngClass]=\"{ invalid: isInvalid || !rangeValidity }\"\n [ngStyle]=\"{ width: inputWidth }\"\n (click)=\"openDropdown()\"\n misToolTip\n [showToolTip]=\"showTooltip && (isInvalid || !rangeValidity) && dispayToolTip\"\n [text]=\"'Invalid Time'\"\n [position]=\"'top'\"\n [showOnHover]=\"false\"\n #input\n cdkOverlayOrigin\n class=\"h7\"\n />\n\n <ng-template #dropdownContainer libDropdownScroll libTimepicker [originEl]=\"input\" [openStatus]=\"openStatus\" (statusEmitter)=\"closeDropdown()\">\n <div *ngIf=\"openStatus\" class=\"timepicker-dropdown\" [ngStyle]=\"{ width: dropdownWidth || inputWidth }\">\n <ul #dropdown>\n <li #timeInterval (click)=\"onTimeSelect(interval)\" *ngFor=\"let interval of timeIntervals; index as i\" [ngClass]=\"{ highlight: i === isHighlighted }\">\n {{ interval }}\n <div class=\"ic-ui-check-24 selected-icon\" *ngIf=\"interval === chosenTime\"></div>\n </li>\n </ul>\n </div>\n </ng-template>\n</div>\n","import { Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, ViewChild, ViewChildren } from \"@angular/core\";\nimport { ITime } from \"./time.namespace\";\nimport { TimepickerDirective } from \"./timepicker.directive\";\nimport { ToolTipDirective } from \"mis-crystal-design-system/tooltip\";\n\nimport dayjs from 'dayjs';\nimport timezone from 'dayjs/plugin/timezone';\nimport utc from 'dayjs/plugin/utc';\nimport customParseFormat from 'dayjs/plugin/customParseFormat'\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(customParseFormat);\n\n\n@Component({\n selector: \"mis-timepicker\",\n templateUrl: \"./timepicker.component.html\",\n styleUrls: [\"./timepicker.component.scss\"]\n})\nexport class TimePickerComponent implements OnInit, OnChanges, OnDestroy {\n currTime!: string;\n chosenTime: string;\n openStatus: boolean = false;\n isHighlighted: number = 0;\n isInvalid: boolean = false;\n timeIntervals: string[] = [];\n shouldScroll: boolean = false;\n userInputFlag: boolean = false;\n givenTimeFlag: boolean = true;\n @Input() clockFormat: number = 12;\n timeFormat!: string;\n \n @Input() timezone: string = \"Asia/Kolkata\";\n @Input() height: string = \"max-content\";\n @Input() inputWidth: string = \"100px\";\n @Input() dropdownWidth?: string;\n @Input() interval: number = 15;\n @Input() dateAsEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() firstInterval!: number;\n @Input() rangeValidity: boolean = true;\n @Input() showTooltip: boolean = true;\n dispayToolTip: boolean = this.showTooltip;\n @Input() givenTime: number;\n @Input() minTime?: number;\n @Input() triggerChange: boolean = true;\n @Input() disable: boolean = false;\n @Output() timeEmitter = new EventEmitter<ITime>();\n @ViewChild(\"input\", { static: true }) input: ElementRef;\n @ViewChild(TimepickerDirective) timepickerDirective: TimepickerDirective;\n @ViewChild(ToolTipDirective) tooltipDirective: ToolTipDirective;\n\n // gets all the li elements from the dropdown and scrolls to the highlighted element\n @ViewChildren(\"timeInterval\") set timeIntervalRefs(intervals) {\n intervals.forEach(interval => {\n if (interval.nativeElement.classList[0] === \"highlight\") {\n const highlighted = interval.nativeElement;\n setTimeout(() => highlighted.scrollIntoView({ block: \"center\" }));\n }\n });\n }\n\n constructor(){}\n ngOnInit(): void {\n if(!this.givenTime && !this.minTime) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n }\n }\n\n ngOnChanges(): void {\n this.timeFormat = this.clockFormat === 12 ? \"hh:mm a\" : \"HH:mm\";\n\n if (this.timeFormat) {\n let chosenTimedayjs = this.getdayjs(this.chosenTime);\n \n // if the first interval is >= the chosen time\n // then only update the value of chosen time\n // else it remains the same\n if (this.firstInterval >= chosenTimedayjs.valueOf() && this.rangeValidity && !this.userInputFlag) {\n this.chosenTime = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n }\n\n if((this.givenTimeFlag && this.givenTime) || this.minTime ) {\n this.chosenTime = dayjs.tz(this.minTime || this.givenTime, this.timezone).format(this.timeFormat);\n }\n chosenTimedayjs = this.getdayjs(this.chosenTime)\n\n if (!this.userInputFlag) this.populateDropdown();\n this.userInputFlag = false;\n \n if(this.chosenTime) {\n this.isInvalid = !this.checkTimeValidity(this.chosenTime.trim());\n this.emitTime({\n valid: !this.isInvalid,\n time: this.chosenTime,\n epoch: chosenTimedayjs.valueOf()\n });\n this.calculateClosestInterval(this.chosenTime);\n }\n }\n }\n\n emitTime(data: ITime): void {\n this.timeEmitter.emit(data);\n }\n\n // function to get dayjs object when time is given in string\n getdayjs(time: string = '00:00'){;\n if(!time || typeof time !== 'string') {\n throw new Error('Time must be a string');\n }\n\n let hours: number;\n let minutes: number;\n\n if(this.clockFormat === 24) {\n hours = parseInt(time.split(':')[0]);\n minutes = parseInt(time.split(':')[1]);\n } else {\n const timeParts = time.split(' ');\n const AM_PM = timeParts?.[1];\n hours = parseInt(timeParts?.[0]?.split(':')?.[0]);\n minutes = parseInt(timeParts?.[0]?.split(':')?.[1]);\n\n if(AM_PM?.toUpperCase() === 'PM' && hours !== 12) {\n hours += 12;\n } else if(AM_PM?.toUpperCase() === 'AM' && hours === 12) {\n hours = 0;\n }\n }\n\n return dayjs.tz(this.dateAsEpoch, this.timezone).add(hours, 'h').add(minutes, 'm');\n }\n\n closeDropdown() {\n this.dispayToolTip = false;\n this.userInputFlag = false;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // toggle timepicker dropdown\n openDropdown(): void {\n this.dispayToolTip = true;\n this.openStatus = true;\n }\n\n checkTimeValidity(time: string): boolean {\n const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;\n const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;\n const RE = this.clockFormat === 12 ? RE12 : RE24;\n\n const timedayjs = this.getdayjs(time);\n let flag: boolean = false;\n\n // if the first interval is set to the start of the day\n // or a time is already provided to the component to show\n // then we don't check its validity against the current time\n if (\n this.minTime || \n this.givenTime ||\n (this.firstInterval &&\n dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat).valueOf() === dayjs.tz(dayjs(), this.timezone).startOf(\"day\").format(this.timeFormat).valueOf())\n ) {\n flag = time.match(RE) ? true : false;\n } else {\n flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), \"m\") >= 0 ? true: false;\n }\n\n return flag;\n }\n\n // update chosen time as soon as the user clicks on an interval\n onTimeSelect(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n if (!this.isInvalid) {\n this.chosenTime = time;\n this.calculateClosestInterval(this.chosenTime);\n }\n\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n }\n\n // checks validity of time on input change and calculates the closest interval\n onTimeChange(time: string): void {\n this.isInvalid = !this.checkTimeValidity(time.trim());\n\n if (!this.isInvalid) {\n this.userInputFlag = true;\n this.openStatus = false;\n if (this.timepickerDirective) this.timepickerDirective.destroyOverlay();\n this.calculateClosestInterval(time);\n }\n const timedayjs = this.getdayjs(time);\n this.emitTime({\n valid: !this.isInvalid,\n time: time,\n epoch: timedayjs.valueOf() \n });\n }\n\n calculateClosestInterval(time: string): void {\n let roundedEpoch: number;\n // Converting time and date to a dayjs object \n const chosenDate = dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\"); // 05-01-2024\n const parsedTimeWithDate = dayjs.tz(`${chosenDate} ${time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n // Converting dayjs object to epoch\n const chosenTimeEpoch = parsedTimeWithDate.valueOf();\n const offset = this.interval - (dayjs.tz(chosenTimeEpoch, this.timezone).minute() % this.interval);\n\n if (this.minTime && !this.givenTime) {\n this.isHighlighted = 0;\n return;\n }\n roundedEpoch = offset >= this.interval / 2 ? (dayjs.tz(chosenTimeEpoch, this.timezone).subtract(this.interval - offset, \"m\")).valueOf() : (dayjs.tz(chosenTimeEpoch, this.timezone).add( offset, \"m\")).valueOf();\n\n // finding the index of element that needs to be highlighted\n if ( chosenTimeEpoch > dayjs.tz(this.dateAsEpoch, this.timezone).endOf(\"day\").subtract(this.interval, \"m\").valueOf()) {\n this.isHighlighted = this.timeIntervals.length - 1;\n } else {\n const roundedEpochdayjs = dayjs.tz(roundedEpoch, this.timezone);\n this.isHighlighted = this.timeIntervals.findIndex(interval => {\n const intervalObj = dayjs.tz(`${chosenDate} ${interval}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n return intervalObj.isSame(roundedEpochdayjs);\n });\n }\n }\n\n\n // populates the dropdown according to the first interval received\n populateDropdown(): void {\n this.timeIntervals = [];\n\n // if picker is used as an individual component\n if (!this.firstInterval) {\n // firstInterval is initialised according to the current time\n // if the date is same as the current date\n if (dayjs.tz(this.dateAsEpoch, this.timezone).format(\"DD-MM-YYYY\") === dayjs.tz(dayjs(), this.timezone).format(\"DD-MM-YYYY\") && !this.minTime) {\n const offset = this.interval - (dayjs.tz(dayjs(), this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n }\n // if minimum time to show is provided\n else if(this.minTime){\n const offset = this.interval - (dayjs.tz(this.minTime, this.timezone).minute() % this.interval);\n this.firstInterval = dayjs.tz(this.minTime, this.timezone).add(offset, \"m\").valueOf();\n }\n // else the firstInterval is initialised as start of day\n else {\n this.firstInterval = dayjs.tz(dayjs(), this.timezone).startOf(\"day\").valueOf();\n }\n }\n\n if(this.givenTime && this.givenTimeFlag){\n this.firstInterval = dayjs.tz(this.givenTime, this.timezone).startOf('d').valueOf();\n this.givenTimeFlag = false;\n }\n\n const dateAsString = dayjs.tz(this.dateAsEpoch, this.timezone).format('DD-MM-YYYY');\n const intervalAsString = dayjs.tz(this.firstInterval, this.timezone).format(this.timeFormat);\n let start = dayjs.tz(`${dateAsString} ${intervalAsString}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone);\n const end = dayjs.tz(this.dateAsEpoch, this.timezone).endOf('d');\n while (start.valueOf() < end.valueOf()) {\n this.timeIntervals.push(start.format(this.timeFormat));\n start = start.add(this.interval, \"m\");\n }\n\n // if the start time is equal to the interval just before midnight\n // and the start date = end date\n // push 11:59pm only\n if (this.timeIntervals.length === 0) {\n this.chosenTime = dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat);\n this.timeIntervals.push(dayjs.tz(dayjs(), this.timezone).endOf(\"d\").format(this.timeFormat));\n }\n }\n\n ngOnDestroy() {\n if (this.tooltipDirective) this.tooltipDirective.hideToolTip();\n }\n}\n\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { TimePickerComponent } from \"./timepicker.component\";\nimport { ToolTipModule } from \"mis-crystal-design-system/tooltip\";\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { TimepickerDirective } from './timepicker.directive';\n\n@NgModule({\n declarations: [TimePickerComponent, TimepickerDirective],\n imports: [CommonModule, FormsModule, ToolTipModule, OverlayModule],\n exports: [TimePickerComponent]\n})\nexport class TimePickerModule {\n static forRoot(): ModuleWithProviders<TimePickerModule> {\n return { ngModule: TimePickerModule, providers: [] };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -9,12 +9,12 @@ import * as i2 from 'mis-crystal-design-system/timepicker';
9
9
  import { TimePickerModule } from 'mis-crystal-design-system/timepicker';
10
10
  import { FormsModule } from '@angular/forms';
11
11
 
12
+ const _c0 = (a0, a1) => ({ "flexDirection": a0, "gap": a1 });
12
13
  function TimeRangePickerComponent_p_2_Template(rf, ctx) { if (rf & 1) {
13
14
  i0.ɵɵelementStart(0, "p");
14
15
  i0.ɵɵtext(1, "-");
15
16
  i0.ɵɵelementEnd();
16
17
  } }
17
- const _c0 = function (a0, a1) { return { "flexDirection": a0, "gap": a1 }; };
18
18
  dayjs.extend(utc);
19
19
  dayjs.extend(timezone);
20
20
  class TimeRangePickerComponent {
@@ -182,29 +182,29 @@ class TimeRangePickerComponent {
182
182
  this.cdr.detectChanges();
183
183
  }
184
184
  }
185
+ static { this.ɵfac = function TimeRangePickerComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimeRangePickerComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); }; }
186
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimeRangePickerComponent, selectors: [["mis-timerangepicker"]], inputs: { inputWidth: "inputWidth", dropdownWidth: "dropdownWidth", height: "height", timezone: "timezone", startDateEpoch: "startDateEpoch", endDateEpoch: "endDateEpoch", givenStartTime: "givenStartTime", givenEndTime: "givenEndTime", clockFormat: "clockFormat", interval: "interval", showTooltip: "showTooltip", direction: "direction", gap: "gap", disableStartTime: "disableStartTime", disableEndTime: "disableEndTime" }, outputs: { timeRangeEmitter: "timeRangeEmitter" }, features: [i0.ɵɵNgOnChangesFeature], decls: 4, vars: 29, consts: [[1, "rangepicker-container", 3, "ngStyle"], [3, "timeEmitter", "clockFormat", "interval", "dateAsEpoch", "firstInterval", "timezone", "height", "inputWidth", "dropdownWidth", "showTooltip", "givenTime", "disable"], [4, "ngIf"], [3, "timeEmitter", "clockFormat", "interval", "dateAsEpoch", "firstInterval", "rangeValidity", "timezone", "height", "inputWidth", "dropdownWidth", "showTooltip", "givenTime", "triggerChange", "disable"]], template: function TimeRangePickerComponent_Template(rf, ctx) { if (rf & 1) {
187
+ i0.ɵɵelementStart(0, "div", 0)(1, "mis-timepicker", 1);
188
+ i0.ɵɵlistener("timeEmitter", function TimeRangePickerComponent_Template_mis_timepicker_timeEmitter_1_listener($event) { return ctx.startPickerHandler($event); });
189
+ i0.ɵɵelementEnd();
190
+ i0.ɵɵtemplate(2, TimeRangePickerComponent_p_2_Template, 2, 0, "p", 2);
191
+ i0.ɵɵelementStart(3, "mis-timepicker", 3);
192
+ i0.ɵɵlistener("timeEmitter", function TimeRangePickerComponent_Template_mis_timepicker_timeEmitter_3_listener($event) { return ctx.endPickerHandler($event); });
193
+ i0.ɵɵelementEnd()();
194
+ } if (rf & 2) {
195
+ i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction2(26, _c0, ctx.direction, ctx.gap));
196
+ i0.ɵɵadvance();
197
+ i0.ɵɵproperty("clockFormat", ctx.clockFormat)("interval", ctx.interval)("dateAsEpoch", ctx.startDateEpoch)("firstInterval", ctx.firstIntervalForStartPicker)("timezone", ctx.timezone)("height", ctx.height)("inputWidth", ctx.inputWidth)("dropdownWidth", ctx.dropdownWidth)("showTooltip", ctx.showTooltip)("givenTime", ctx.givenStartTime)("disable", ctx.disableStartTime);
198
+ i0.ɵɵadvance();
199
+ i0.ɵɵproperty("ngIf", ctx.direction === "row");
200
+ i0.ɵɵadvance();
201
+ i0.ɵɵproperty("clockFormat", ctx.clockFormat)("interval", ctx.interval)("dateAsEpoch", ctx.endDateEpoch)("firstInterval", ctx.firstIntervalForEndPicker)("rangeValidity", ctx.rangeValidity)("timezone", ctx.timezone)("height", ctx.height)("inputWidth", ctx.inputWidth)("dropdownWidth", ctx.dropdownWidth)("showTooltip", ctx.showTooltip)("givenTime", ctx.givenEndTime)("triggerChange", ctx.triggerChange)("disable", ctx.disableEndTime);
202
+ } }, dependencies: [i1.NgIf, i1.NgStyle, i2.TimePickerComponent], styles: [".rangepicker-container[_ngcontent-%COMP%]{display:flex;gap:1rem;align-items:center}p[_ngcontent-%COMP%]{margin:0;display:inline-flex;align-items:center}"] }); }
185
203
  }
186
- TimeRangePickerComponent.ɵfac = function TimeRangePickerComponent_Factory(t) { return new (t || TimeRangePickerComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
187
- TimeRangePickerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: TimeRangePickerComponent, selectors: [["mis-timerangepicker"]], inputs: { inputWidth: "inputWidth", dropdownWidth: "dropdownWidth", height: "height", timezone: "timezone", startDateEpoch: "startDateEpoch", endDateEpoch: "endDateEpoch", givenStartTime: "givenStartTime", givenEndTime: "givenEndTime", clockFormat: "clockFormat", interval: "interval", showTooltip: "showTooltip", direction: "direction", gap: "gap", disableStartTime: "disableStartTime", disableEndTime: "disableEndTime" }, outputs: { timeRangeEmitter: "timeRangeEmitter" }, features: [i0.ɵɵNgOnChangesFeature], decls: 4, vars: 29, consts: [[1, "rangepicker-container", 3, "ngStyle"], [3, "clockFormat", "interval", "dateAsEpoch", "firstInterval", "timezone", "height", "inputWidth", "dropdownWidth", "showTooltip", "givenTime", "disable", "timeEmitter"], [4, "ngIf"], [3, "clockFormat", "interval", "dateAsEpoch", "firstInterval", "rangeValidity", "timezone", "height", "inputWidth", "dropdownWidth", "showTooltip", "givenTime", "triggerChange", "disable", "timeEmitter"]], template: function TimeRangePickerComponent_Template(rf, ctx) { if (rf & 1) {
188
- i0.ɵɵelementStart(0, "div", 0)(1, "mis-timepicker", 1);
189
- i0.ɵɵlistener("timeEmitter", function TimeRangePickerComponent_Template_mis_timepicker_timeEmitter_1_listener($event) { return ctx.startPickerHandler($event); });
190
- i0.ɵɵelementEnd();
191
- i0.ɵɵtemplate(2, TimeRangePickerComponent_p_2_Template, 2, 0, "p", 2);
192
- i0.ɵɵelementStart(3, "mis-timepicker", 3);
193
- i0.ɵɵlistener("timeEmitter", function TimeRangePickerComponent_Template_mis_timepicker_timeEmitter_3_listener($event) { return ctx.endPickerHandler($event); });
194
- i0.ɵɵelementEnd()();
195
- } if (rf & 2) {
196
- i0.ɵɵproperty("ngStyle", i0.ɵɵpureFunction2(26, _c0, ctx.direction, ctx.gap));
197
- i0.ɵɵadvance(1);
198
- i0.ɵɵproperty("clockFormat", ctx.clockFormat)("interval", ctx.interval)("dateAsEpoch", ctx.startDateEpoch)("firstInterval", ctx.firstIntervalForStartPicker)("timezone", ctx.timezone)("height", ctx.height)("inputWidth", ctx.inputWidth)("dropdownWidth", ctx.dropdownWidth)("showTooltip", ctx.showTooltip)("givenTime", ctx.givenStartTime)("disable", ctx.disableStartTime);
199
- i0.ɵɵadvance(1);
200
- i0.ɵɵproperty("ngIf", ctx.direction === "row");
201
- i0.ɵɵadvance(1);
202
- i0.ɵɵproperty("clockFormat", ctx.clockFormat)("interval", ctx.interval)("dateAsEpoch", ctx.endDateEpoch)("firstInterval", ctx.firstIntervalForEndPicker)("rangeValidity", ctx.rangeValidity)("timezone", ctx.timezone)("height", ctx.height)("inputWidth", ctx.inputWidth)("dropdownWidth", ctx.dropdownWidth)("showTooltip", ctx.showTooltip)("givenTime", ctx.givenEndTime)("triggerChange", ctx.triggerChange)("disable", ctx.disableEndTime);
203
- } }, dependencies: [i1.NgIf, i1.NgStyle, i2.TimePickerComponent], styles: [".rangepicker-container[_ngcontent-%COMP%]{display:flex;gap:1rem;align-items:center}p[_ngcontent-%COMP%]{margin:0;display:inline-flex;align-items:center}"] });
204
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeRangePickerComponent, [{
204
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeRangePickerComponent, [{
205
205
  type: Component,
206
206
  args: [{ selector: "mis-timerangepicker", template: "<div class=\"rangepicker-container\" [ngStyle]=\"{'flexDirection': direction, 'gap': gap}\">\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"startDateEpoch\"\n [firstInterval]=\"firstIntervalForStartPicker\"\n (timeEmitter)=\"startPickerHandler($event)\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenStartTime\"\n [disable]=\"disableStartTime\"\n ></mis-timepicker>\n <p *ngIf=\"direction === 'row'\">-</p>\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"endDateEpoch\"\n [firstInterval]=\"firstIntervalForEndPicker\"\n (timeEmitter)=\"endPickerHandler($event)\"\n [rangeValidity]=\"rangeValidity\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenEndTime\"\n [triggerChange]=\"triggerChange\"\n [disable]=\"disableEndTime\"\n ></mis-timepicker>\n</div>\n", styles: [".rangepicker-container{display:flex;gap:1rem;align-items:center}p{margin:0;display:inline-flex;align-items:center}\n"] }]
207
- }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { inputWidth: [{
207
+ }], () => [{ type: i0.ChangeDetectorRef }], { inputWidth: [{
208
208
  type: Input
209
209
  }], dropdownWidth: [{
210
210
  type: Input
@@ -237,16 +237,17 @@ TimeRangePickerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: Ti
237
237
  }], timeRangeEmitter: [{
238
238
  type: Output
239
239
  }] }); })();
240
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(TimeRangePickerComponent, { className: "TimeRangePickerComponent" }); })();
240
241
 
241
242
  class TimeRangePickerModule {
242
243
  static forRoot() {
243
244
  return { ngModule: TimeRangePickerModule, providers: [] };
244
245
  }
246
+ static { this.ɵfac = function TimeRangePickerModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TimeRangePickerModule)(); }; }
247
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: TimeRangePickerModule }); }
248
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, TimePickerModule] }); }
245
249
  }
246
- TimeRangePickerModule.ɵfac = function TimeRangePickerModule_Factory(t) { return new (t || TimeRangePickerModule)(); };
247
- TimeRangePickerModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: TimeRangePickerModule });
248
- TimeRangePickerModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, TimePickerModule] });
249
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeRangePickerModule, [{
250
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TimeRangePickerModule, [{
250
251
  type: NgModule,
251
252
  args: [{
252
253
  declarations: [TimeRangePickerComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"mis-crystal-design-system-timerangepicker.mjs","sources":["../../../projects/mis-components/timerangepicker/timerangepicker.component.html","../../../projects/mis-components/timerangepicker/timerangepicker.component.ts","../../../projects/mis-components/timerangepicker/timerangepicker.module.ts","../../../projects/mis-components/timerangepicker/mis-crystal-design-system-timerangepicker.ts"],"sourcesContent":["<div class=\"rangepicker-container\" [ngStyle]=\"{'flexDirection': direction, 'gap': gap}\">\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"startDateEpoch\"\n [firstInterval]=\"firstIntervalForStartPicker\"\n (timeEmitter)=\"startPickerHandler($event)\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenStartTime\"\n [disable]=\"disableStartTime\"\n ></mis-timepicker>\n <p *ngIf=\"direction === 'row'\">-</p>\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"endDateEpoch\"\n [firstInterval]=\"firstIntervalForEndPicker\"\n (timeEmitter)=\"endPickerHandler($event)\"\n [rangeValidity]=\"rangeValidity\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenEndTime\"\n [triggerChange]=\"triggerChange\"\n [disable]=\"disableEndTime\"\n ></mis-timepicker>\n</div>\n","import { Component, Input, ChangeDetectorRef, Output, EventEmitter } from \"@angular/core\";\nimport { ITimeRange, ITime, TDirection } from \"./timerange.namespace\";\nimport dayjs from 'dayjs';\nimport timezone from 'dayjs/plugin/timezone';\nimport utc from 'dayjs/plugin/utc';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n@Component({\n selector: \"mis-timerangepicker\",\n templateUrl: \"./timerangepicker.component.html\",\n styleUrls: [\"./timerangepicker.component.scss\"]\n})\nexport class TimeRangePickerComponent {\n @Input() inputWidth: string = \"100px\";\n @Input() dropdownWidth?: string;\n @Input() height: string = \"46px\";\n @Input() timezone: string = \"Asia/Kolkata\";\n @Input() startDateEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() endDateEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() givenStartTime: number;\n @Input() givenEndTime: number;\n @Input() clockFormat: number = 12;\n @Input() interval: number = 15;\n @Input() showTooltip: boolean = true;\n @Input() direction: TDirection = 'row';\n @Input() gap: string = '1rem';\n @Input() disableStartTime: boolean = false;\n @Input() disableEndTime: boolean = false;\n @Output() timeRangeEmitter = new EventEmitter<ITimeRange>();\n\n startDate!: string;\n endDate!: string;\n currDate!: string;\n timeFormat!: string;\n firstIntervalForStartPicker: number = dayjs().valueOf();\n firstIntervalForEndPicker: number = dayjs().valueOf();\n startTime!: ITime;\n endTime!: ITime;\n rangeValidity: boolean = true;\n triggerChange: boolean = true;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit() {}\n\n ngOnChanges() {\n this.timeFormat = this.clockFormat === 12 ? \"hh:mm a\" : \"HH:mm\";\n this.startDate = dayjs.tz(this.startDateEpoch, this.timezone).format(\"DD-MM-YYYY\");\n this.endDate = dayjs.tz(this.endDateEpoch, this.timezone).format(\"DD-MM-YYYY\");\n this.currDate = dayjs.tz(dayjs(), this.timezone).format(\"DD-MM-YYYY\");\n this.setFirstIntervals();\n }\n\n // calculate the first interval of the picker\n setFirstIntervals(): void {\n const minutes = dayjs.tz(dayjs(), this.timezone).minute();\n const offset = this.interval - (minutes % this.interval);\n\n // start date, 22 MAY === current date, 22 MAY\n if( this.startDate === this.currDate ){\n const currentTime = dayjs.tz(dayjs(), this.timezone).valueOf();\n\n // start date, 22 MAY === current date, 22 MAY === end date, 22 MAY\n if(this.startDate === this.endDate){\n\n // current time is in last interval\n if(currentTime >= dayjs.tz(this.startDateEpoch, this.timezone).endOf(\"d\").subtract(this.interval,\"m\").valueOf()){\n this.firstIntervalForStartPicker = currentTime;\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).endOf(\"d\").valueOf();\n }\n // current time isn't in last interval\n else {\n this.firstIntervalForStartPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").add(this.interval, \"m\").valueOf();\n }\n } \n // start date, 22 MAY === current date, 22 MAY !== end date, 30 MAY\n else {\n // current time is in last interval\n if(currentTime >= dayjs.tz(this.startDateEpoch, this.timezone).endOf(\"d\").subtract(this.interval,\"m\").valueOf()){\n this.firstIntervalForStartPicker = currentTime;\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).endOf(\"d\").valueOf();\n }\n // current time isn't in last interval\n else {\n this.firstIntervalForStartPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).valueOf();\n }\n }\n }\n // start date, 30 MAY !== current date, 22 MAY\n else {\n // start date === end Date\n if(this.startDate === this.endDate){\n this.firstIntervalForStartPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).add(this.interval, \"m\").valueOf();\n } \n // start date !== end date\n else {\n this.firstIntervalForStartPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n }\n }\n\n if(this.givenStartTime)\n this.firstIntervalForStartPicker = this.givenStartTime;\n \n if(this.givenEndTime)\n this.firstIntervalForEndPicker = this.givenEndTime;\n \n this.startTime = {\n valid: true,\n time: dayjs.tz(this.firstIntervalForStartPicker, this.timezone).format(this.timeFormat),\n epoch: dayjs.tz(this.firstIntervalForStartPicker, this.timezone).valueOf()\n };\n\n this.endTime = {\n valid: true,\n time: dayjs.tz(this.firstIntervalForEndPicker, this.timezone).format(this.timeFormat),\n epoch: dayjs.tz(this.firstIntervalForEndPicker, this.timezone).valueOf()\n };\n }\n\n emitTimeRange(data: ITimeRange): void {\n this.timeRangeEmitter.emit(data);\n }\n\n //handlers catch the emitted values and run validation\n startPickerHandler(time: ITime): void {\n this.startTime = time;\n this.rangeValidity = true;\n // if the start time changes and the start date is the same as the end date\n // and the start time >= end time\n // update the first interval of end picker according to the time set in start picker\n if (this.startDate === this.endDate) {\n let minutes = dayjs.tz(this.startTime.time, this.timeFormat, this.timezone).minute();\n let offset = this.interval - (minutes % this.interval);\n this.firstIntervalForEndPicker = dayjs.tz(`${this.startDate} ${this.startTime.time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone)\n .add(offset, \"m\")\n .valueOf();\n\n // if the first interval == 12:00am, set it as 11:59pm\n const intervalAsString = dayjs.tz(this.firstIntervalForEndPicker, this.timezone).format(this.timeFormat);\n const endOfDayAsString = dayjs.tz(`${this.startDate}`, `DD-MM-YYYY`, this.timezone).endOf(\"d\").add(1, \"m\").format(this.timeFormat);\n if (intervalAsString === endOfDayAsString) {\n this.firstIntervalForEndPicker = dayjs.tz(`${this.startDate} ${this.startTime.time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone).endOf(\"d\").valueOf();\n }\n\n } else {\n const validity =\n this.checkTimeValidity(this.startTime.time.trim(), this.startDateEpoch) &&\n this.checkTimeValidity(this.endTime.time.trim(), this.endDateEpoch);\n\n this.rangeValidation(validity);\n this.emitTimeRange({\n valid: validity && this.rangeValidity,\n startTime: this.startTime.time,\n endTime: this.endTime.time,\n startEpoch: dayjs.tz(`${this.startDate} ${this.startTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf(),\n endEpoch: dayjs.tz(`${this.endDate} ${this.endTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf()\n });\n }\n\n this.triggerChange = !this.triggerChange;\n }\n\n endPickerHandler(time: ITime): void {\n this.endTime = time;\n\n const validity =\n this.checkTimeValidity(this.startTime.time.trim(), this.startDateEpoch) && this.checkTimeValidity(this.endTime.time.trim(), this.endDateEpoch);\n\n this.rangeValidation(validity);\n this.emitTimeRange({\n valid: validity && this.rangeValidity,\n startTime: this.startTime.time,\n endTime: this.endTime.time,\n startEpoch: dayjs.tz(`${this.startDate} ${this.startTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf(),\n endEpoch: dayjs.tz(`${this.endDate} ${this.endTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf()\n });\n }\n\n checkTimeValidity(time: string, date: number): boolean {\n const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;\n const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;\n const RE = this.clockFormat === 12 ? RE12 : RE24;\n\n const timedayjs = dayjs.tz(`${dayjs.tz(date, this.timezone).format(\"DD-MM-YYYY\")} ${time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone);\n let flag: boolean = false;\n\n // if the first interval is set to the start of the day\n // then we don't check its validity against the current time\n if ((this.givenStartTime && this.givenEndTime) || (this.startDate !== this.endDate && this.startDate !== this.currDate)) {\n flag = time.match(RE) ? true : false;\n } else {\n flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), \"m\") >= 0 ? true : false;\n }\n\n return flag;\n }\n\n // validates end picker's input according to the start picker's input\n rangeValidation(validity: boolean) {\n if (validity && this.startDate === this.endDate) {\n const startdayjs = dayjs.tz(this.startTime.time, this.timeFormat, this.timezone);\n const enddayjs = dayjs.tz(this.endTime.time, this.timeFormat, this.timezone);\n this.rangeValidity = enddayjs.diff(startdayjs, \"m\") >= 1 ? true : false;\n this.cdr.detectChanges();\n }\n }\n}\n\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { TimeRangePickerComponent } from \"./timerangepicker.component\";\nimport { TimePickerModule } from \"mis-crystal-design-system/timepicker\";\n\n@NgModule({\n declarations: [TimeRangePickerComponent],\n imports: [CommonModule, FormsModule, TimePickerModule],\n exports: [TimeRangePickerComponent]\n})\nexport class TimeRangePickerModule {\n static forRoot(): ModuleWithProviders<TimeRangePickerModule> {\n return { ngModule: TimeRangePickerModule, providers: [] };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;IAeE,EAA+B,CAAA,cAAA,CAAA,CAAA,EAAA,GAAA,CAAA,CAAA;IAAA,EAAC,CAAA,MAAA,CAAA,CAAA,EAAA,GAAA,CAAA,CAAA;IAAA,EAAI,CAAA,YAAA,EAAA,CAAA;;;ACTtC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAClB,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;MAMV,wBAAwB,CAAA;AA6BnC,IAAA,WAAA,CAAoB,GAAsB,EAAA;QAAtB,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;QA5BjC,IAAU,CAAA,UAAA,GAAW,OAAO,CAAC;QAE7B,IAAM,CAAA,MAAA,GAAW,MAAM,CAAC;QACxB,IAAQ,CAAA,QAAA,GAAW,cAAc,CAAC;AAClC,QAAA,IAAA,CAAA,cAAc,GAAW,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;AACpE,QAAA,IAAA,CAAA,YAAY,GAAW,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAGlE,IAAW,CAAA,WAAA,GAAW,EAAE,CAAC;QACzB,IAAQ,CAAA,QAAA,GAAW,EAAE,CAAC;QACtB,IAAW,CAAA,WAAA,GAAY,IAAI,CAAC;QAC5B,IAAS,CAAA,SAAA,GAAe,KAAK,CAAC;QAC9B,IAAG,CAAA,GAAA,GAAW,MAAM,CAAC;QACrB,IAAgB,CAAA,gBAAA,GAAY,KAAK,CAAC;QAClC,IAAc,CAAA,cAAA,GAAY,KAAK,CAAC;AAC/B,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,YAAY,EAAc,CAAC;AAM5D,QAAA,IAAA,CAAA,2BAA2B,GAAW,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;AACxD,QAAA,IAAA,CAAA,yBAAyB,GAAW,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC;QAGtD,IAAa,CAAA,aAAA,GAAY,IAAI,CAAC;QAC9B,IAAa,CAAA,aAAA,GAAY,IAAI,CAAC;KAEgB;AAE9C,IAAA,QAAQ,MAAK;IAEb,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,EAAE,GAAG,SAAS,GAAG,OAAO,CAAC;QAChE,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACnF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;AAC/E,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACtE,IAAI,CAAC,iBAAiB,EAAE,CAAC;KAC1B;;IAGD,iBAAiB,GAAA;AACf,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AAC1D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;;AAGzD,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,EAAE;AACpC,YAAA,MAAM,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;;AAG/D,YAAA,IAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAC;;AAGjC,gBAAA,IAAG,WAAW,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAC;AAC9G,oBAAA,IAAI,CAAC,2BAA2B,GAAG,WAAW,CAAC;oBAC/C,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACnG,iBAAA;;AAEI,qBAAA;oBACH,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC/F,oBAAA,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACvH,iBAAA;AACF,aAAA;;AAEI,iBAAA;;AAEH,gBAAA,IAAG,WAAW,IAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAC;AAC9G,oBAAA,IAAI,CAAC,2BAA2B,GAAG,WAAW,CAAC;oBAC/C,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACnG,iBAAA;;AAEI,qBAAA;oBACH,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC/F,oBAAA,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;AACxF,iBAAA;AACF,aAAA;AACF,SAAA;;AAEI,aAAA;;AAEH,YAAA,IAAG,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAC;gBACjC,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;gBACvG,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAChH,aAAA;;AAEI,iBAAA;gBACH,IAAI,CAAC,2BAA2B,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;gBACvG,IAAI,CAAC,yBAAyB,GAAI,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AACvG,aAAA;AACF,SAAA;QAED,IAAG,IAAI,CAAC,cAAc;AACpB,YAAA,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,cAAc,CAAC;QAEzD,IAAG,IAAI,CAAC,YAAY;AAClB,YAAA,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC,YAAY,CAAC;QAErD,IAAI,CAAC,SAAS,GAAG;AACf,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AACvF,YAAA,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;SAC3E,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG;AACb,YAAA,KAAK,EAAE,IAAI;AACX,YAAA,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AACrF,YAAA,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;SACzE,CAAC;KACH;AAED,IAAA,aAAa,CAAC,IAAgB,EAAA;AAC5B,QAAA,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAClC;;AAGD,IAAA,kBAAkB,CAAC,IAAW,EAAA;AAC5B,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACtB,QAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;;;;AAI1B,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE;YACnC,IAAI,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;AACrF,YAAA,IAAI,MAAM,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;AACvD,YAAA,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,aAAA,EAAgB,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC;AACpI,iBAAA,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;AAChB,iBAAA,OAAO,EAAE,CAAC;;YAGb,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AACzG,YAAA,MAAM,gBAAgB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAG,EAAA,IAAI,CAAC,SAAS,EAAE,EAAE,CAAA,UAAA,CAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACnI,IAAI,gBAAgB,KAAK,gBAAgB,EAAE;AACzC,gBAAA,IAAI,CAAC,yBAAyB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAI,CAAA,EAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,aAAA,EAAgB,IAAI,CAAC,UAAU,CAAE,CAAA,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;AAC9J,aAAA;AAEF,SAAA;AAAM,aAAA;AACH,YAAA,MAAM,QAAQ,GACd,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC;AACvE,gBAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;AAEpE,YAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,CAAC,aAAa,CAAC;AACjB,gBAAA,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC,aAAa;AACrC,gBAAA,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI;AAC9B,gBAAA,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;AAC1B,gBAAA,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,WAAA,EAAc,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;AAC1H,gBAAA,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,WAAA,EAAc,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;AACrH,aAAA,CAAC,CAAC;AACN,SAAA;AAED,QAAA,IAAI,CAAC,aAAa,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC;KAC1C;AAED,IAAA,gBAAgB,CAAC,IAAW,EAAA;AAC1B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;AAEpB,QAAA,MAAM,QAAQ,GACZ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;AAEjJ,QAAA,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAC/B,IAAI,CAAC,aAAa,CAAC;AACjB,YAAA,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC,aAAa;AACrC,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI;AAC9B,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;AAC1B,YAAA,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,SAAS,CAAA,CAAA,EAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,WAAA,EAAc,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;AAC1H,YAAA,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA,EAAG,IAAI,CAAC,OAAO,CAAA,CAAA,EAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAA,CAAE,EAAE,CAAA,WAAA,EAAc,IAAI,CAAC,UAAU,CAAA,CAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE;AACrH,SAAA,CAAC,CAAC;KACJ;IAED,iBAAiB,CAAC,IAAY,EAAE,IAAY,EAAA;QAC1C,MAAM,IAAI,GAAG,sDAAsD,CAAC;QACpE,MAAM,IAAI,GAAG,iCAAiC,CAAC;AAC/C,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,KAAK,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjD,QAAA,MAAM,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC,CAAG,EAAA,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA,CAAA,EAAI,IAAI,CAAA,CAAE,EAAE,CAAgB,aAAA,EAAA,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9I,IAAI,IAAI,GAAY,KAAK,CAAC;;;QAI1B,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,MAAM,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,QAAQ,CAAC,EAAE;AACvH,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACtC,SAAA;AAAM,aAAA;AACL,YAAA,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACpG,SAAA;AAED,QAAA,OAAO,IAAI,CAAC;KACb;;AAGD,IAAA,eAAe,CAAC,QAAiB,EAAA;QAC/B,IAAI,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE;YAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjF,MAAM,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7E,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACxE,YAAA,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;AAC1B,SAAA;KACF;;gGArMU,wBAAwB,EAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,CAAA,iBAAA,CAAA,CAAA,CAAA,EAAA,CAAA;2EAAxB,wBAAwB,EAAA,SAAA,EAAA,CAAA,CAAA,qBAAA,CAAA,CAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,aAAA,EAAA,eAAA,EAAA,MAAA,EAAA,QAAA,EAAA,QAAA,EAAA,UAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,GAAA,EAAA,KAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,CAAA,CAAA,CAAA,EAAA,uBAAA,EAAA,CAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,UAAA,EAAA,QAAA,EAAA,YAAA,EAAA,eAAA,EAAA,aAAA,EAAA,WAAA,EAAA,SAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAAA,EAAA,MAAA,CAAA,EAAA,CAAA,CAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,eAAA,EAAA,eAAA,EAAA,UAAA,EAAA,QAAA,EAAA,YAAA,EAAA,eAAA,EAAA,aAAA,EAAA,WAAA,EAAA,eAAA,EAAA,SAAA,EAAA,aAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,iCAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;ADbrC,QAAA,EAAA,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAwF,CAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,CAAA,CAAA;AAMpF,QAAA,EAAA,CAAA,UAAA,CAAA,aAAA,EAAA,SAAA,uEAAA,CAAA,MAAA,EAAA,EAAA,OAAe,8BAA0B,CAAC,EAAA,CAAA,CAAA;QAQ3C,EAAiB,CAAA,YAAA,EAAA,CAAA;QAClB,EAAoC,CAAA,UAAA,CAAA,CAAA,EAAA,qCAAA,EAAA,CAAA,EAAA,CAAA,EAAA,GAAA,EAAA,CAAA,CAAA,CAAA;QACpC,EAeC,CAAA,cAAA,CAAA,CAAA,EAAA,gBAAA,EAAA,CAAA,CAAA,CAAA;AAVC,QAAA,EAAA,CAAA,UAAA,CAAA,aAAA,EAAA,SAAA,uEAAA,CAAA,MAAA,EAAA,EAAA,OAAe,4BAAwB,CAAC,EAAA,CAAA,CAAA;AAUzC,QAAA,EAAA,CAAA,YAAA,EAAiB,EAAA,CAAA;;QA/Be,EAAoD,CAAA,UAAA,CAAA,SAAA,EAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,GAAA,EAAA,GAAA,CAAA,SAAA,EAAA,GAAA,CAAA,GAAA,CAAA,CAAA,CAAA;QAEnF,EAA2B,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;QAA3B,EAA2B,CAAA,UAAA,CAAA,aAAA,EAAA,GAAA,CAAA,WAAA,CAAA,CAAA,UAAA,EAAA,GAAA,CAAA,QAAA,CAAA,mCAAA,CAAA,eAAA,EAAA,GAAA,CAAA,2BAAA,CAAA,CAAA,UAAA,EAAA,GAAA,CAAA,QAAA,CAAA,sBAAA,CAAA,YAAA,EAAA,GAAA,CAAA,UAAA,CAAA,CAAA,eAAA,EAAA,GAAA,CAAA,aAAA,CAAA,CAAA,aAAA,EAAA,GAAA,CAAA,WAAA,CAAA,CAAA,WAAA,EAAA,GAAA,CAAA,cAAA,CAAA,CAAA,SAAA,EAAA,GAAA,CAAA,gBAAA,CAAA,CAAA;QAazB,EAAyB,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;QAAzB,EAAyB,CAAA,UAAA,CAAA,MAAA,EAAA,GAAA,CAAA,SAAA,KAAA,KAAA,CAAA,CAAA;QAE3B,EAA2B,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;QAA3B,EAA2B,CAAA,UAAA,CAAA,aAAA,EAAA,GAAA,CAAA,WAAA,CAAA,CAAA,UAAA,EAAA,GAAA,CAAA,QAAA,CAAA,CAAA,aAAA,EAAA,GAAA,CAAA,YAAA,CAAA,CAAA,eAAA,EAAA,GAAA,CAAA,yBAAA,CAAA,CAAA,eAAA,EAAA,GAAA,CAAA,aAAA,CAAA,CAAA,UAAA,EAAA,GAAA,CAAA,QAAA,CAAA,CAAA,QAAA,EAAA,GAAA,CAAA,MAAA,CAAA,CAAA,YAAA,EAAA,GAAA,CAAA,UAAA,CAAA,CAAA,eAAA,EAAA,GAAA,CAAA,aAAA,CAAA,CAAA,aAAA,EAAA,GAAA,CAAA,WAAA,CAAA,CAAA,WAAA,EAAA,GAAA,CAAA,YAAA,CAAA,CAAA,eAAA,EAAA,GAAA,CAAA,aAAA,CAAA,CAAA,SAAA,EAAA,GAAA,CAAA,cAAA,CAAA,CAAA;;uFCJlB,wBAAwB,EAAA,CAAA;cALpC,SAAS;2BACE,qBAAqB,EAAA,QAAA,EAAA,opCAAA,EAAA,MAAA,EAAA,CAAA,sHAAA,CAAA,EAAA,CAAA;oEAKtB,UAAU,EAAA,CAAA;kBAAlB,KAAK;YACG,aAAa,EAAA,CAAA;kBAArB,KAAK;YACG,MAAM,EAAA,CAAA;kBAAd,KAAK;YACG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,cAAc,EAAA,CAAA;kBAAtB,KAAK;YACG,YAAY,EAAA,CAAA;kBAApB,KAAK;YACG,cAAc,EAAA,CAAA;kBAAtB,KAAK;YACG,YAAY,EAAA,CAAA;kBAApB,KAAK;YACG,WAAW,EAAA,CAAA;kBAAnB,KAAK;YACG,QAAQ,EAAA,CAAA;kBAAhB,KAAK;YACG,WAAW,EAAA,CAAA;kBAAnB,KAAK;YACG,SAAS,EAAA,CAAA;kBAAjB,KAAK;YACG,GAAG,EAAA,CAAA;kBAAX,KAAK;YACG,gBAAgB,EAAA,CAAA;kBAAxB,KAAK;YACG,cAAc,EAAA,CAAA;kBAAtB,KAAK;YACI,gBAAgB,EAAA,CAAA;kBAAzB,MAAM;;;MClBI,qBAAqB,CAAA;AAChC,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;KAC3D;;0FAHU,qBAAqB,GAAA,CAAA,EAAA,CAAA;uEAArB,qBAAqB,EAAA,CAAA,CAAA;2EAHtB,YAAY,EAAE,WAAW,EAAE,gBAAgB,CAAA,EAAA,CAAA,CAAA;uFAG1C,qBAAqB,EAAA,CAAA;cALjC,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;gBACR,YAAY,EAAE,CAAC,wBAAwB,CAAC;AACxC,gBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,gBAAgB,CAAC;gBACtD,OAAO,EAAE,CAAC,wBAAwB,CAAC;AACpC,aAAA,CAAA;;wFACY,qBAAqB,EAAA,EAAA,YAAA,EAAA,CAJjB,wBAAwB,CAC7B,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,WAAW,EAAE,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAC3C,wBAAwB,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACTpC;;AAEG;;;;"}
1
+ {"version":3,"file":"mis-crystal-design-system-timerangepicker.mjs","sources":["../../../projects/mis-components/timerangepicker/timerangepicker.component.html","../../../projects/mis-components/timerangepicker/timerangepicker.component.ts","../../../projects/mis-components/timerangepicker/timerangepicker.module.ts","../../../projects/mis-components/timerangepicker/mis-crystal-design-system-timerangepicker.ts"],"sourcesContent":["<div class=\"rangepicker-container\" [ngStyle]=\"{'flexDirection': direction, 'gap': gap}\">\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"startDateEpoch\"\n [firstInterval]=\"firstIntervalForStartPicker\"\n (timeEmitter)=\"startPickerHandler($event)\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenStartTime\"\n [disable]=\"disableStartTime\"\n ></mis-timepicker>\n <p *ngIf=\"direction === 'row'\">-</p>\n <mis-timepicker\n [clockFormat]=\"clockFormat\"\n [interval]=\"interval\"\n [dateAsEpoch]=\"endDateEpoch\"\n [firstInterval]=\"firstIntervalForEndPicker\"\n (timeEmitter)=\"endPickerHandler($event)\"\n [rangeValidity]=\"rangeValidity\"\n [timezone]=\"timezone\"\n [height]=\"height\"\n [inputWidth]=\"inputWidth\"\n [dropdownWidth]=\"dropdownWidth\"\n [showTooltip]=\"showTooltip\"\n [givenTime]=\"givenEndTime\"\n [triggerChange]=\"triggerChange\"\n [disable]=\"disableEndTime\"\n ></mis-timepicker>\n</div>\n","import { Component, Input, ChangeDetectorRef, Output, EventEmitter } from \"@angular/core\";\nimport { ITimeRange, ITime, TDirection } from \"./timerange.namespace\";\nimport dayjs from 'dayjs';\nimport timezone from 'dayjs/plugin/timezone';\nimport utc from 'dayjs/plugin/utc';\n\ndayjs.extend(utc);\ndayjs.extend(timezone);\n@Component({\n selector: \"mis-timerangepicker\",\n templateUrl: \"./timerangepicker.component.html\",\n styleUrls: [\"./timerangepicker.component.scss\"]\n})\nexport class TimeRangePickerComponent {\n @Input() inputWidth: string = \"100px\";\n @Input() dropdownWidth?: string;\n @Input() height: string = \"46px\";\n @Input() timezone: string = \"Asia/Kolkata\";\n @Input() startDateEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() endDateEpoch: number = dayjs.tz(dayjs(), this.timezone).valueOf();\n @Input() givenStartTime: number;\n @Input() givenEndTime: number;\n @Input() clockFormat: number = 12;\n @Input() interval: number = 15;\n @Input() showTooltip: boolean = true;\n @Input() direction: TDirection = 'row';\n @Input() gap: string = '1rem';\n @Input() disableStartTime: boolean = false;\n @Input() disableEndTime: boolean = false;\n @Output() timeRangeEmitter = new EventEmitter<ITimeRange>();\n\n startDate!: string;\n endDate!: string;\n currDate!: string;\n timeFormat!: string;\n firstIntervalForStartPicker: number = dayjs().valueOf();\n firstIntervalForEndPicker: number = dayjs().valueOf();\n startTime!: ITime;\n endTime!: ITime;\n rangeValidity: boolean = true;\n triggerChange: boolean = true;\n\n constructor(private cdr: ChangeDetectorRef) {}\n\n ngOnInit() {}\n\n ngOnChanges() {\n this.timeFormat = this.clockFormat === 12 ? \"hh:mm a\" : \"HH:mm\";\n this.startDate = dayjs.tz(this.startDateEpoch, this.timezone).format(\"DD-MM-YYYY\");\n this.endDate = dayjs.tz(this.endDateEpoch, this.timezone).format(\"DD-MM-YYYY\");\n this.currDate = dayjs.tz(dayjs(), this.timezone).format(\"DD-MM-YYYY\");\n this.setFirstIntervals();\n }\n\n // calculate the first interval of the picker\n setFirstIntervals(): void {\n const minutes = dayjs.tz(dayjs(), this.timezone).minute();\n const offset = this.interval - (minutes % this.interval);\n\n // start date, 22 MAY === current date, 22 MAY\n if( this.startDate === this.currDate ){\n const currentTime = dayjs.tz(dayjs(), this.timezone).valueOf();\n\n // start date, 22 MAY === current date, 22 MAY === end date, 22 MAY\n if(this.startDate === this.endDate){\n\n // current time is in last interval\n if(currentTime >= dayjs.tz(this.startDateEpoch, this.timezone).endOf(\"d\").subtract(this.interval,\"m\").valueOf()){\n this.firstIntervalForStartPicker = currentTime;\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).endOf(\"d\").valueOf();\n }\n // current time isn't in last interval\n else {\n this.firstIntervalForStartPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").add(this.interval, \"m\").valueOf();\n }\n } \n // start date, 22 MAY === current date, 22 MAY !== end date, 30 MAY\n else {\n // current time is in last interval\n if(currentTime >= dayjs.tz(this.startDateEpoch, this.timezone).endOf(\"d\").subtract(this.interval,\"m\").valueOf()){\n this.firstIntervalForStartPicker = currentTime;\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).endOf(\"d\").valueOf();\n }\n // current time isn't in last interval\n else {\n this.firstIntervalForStartPicker = dayjs.tz(dayjs(), this.timezone).add(offset, \"m\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).valueOf();\n }\n }\n }\n // start date, 30 MAY !== current date, 22 MAY\n else {\n // start date === end Date\n if(this.startDate === this.endDate){\n this.firstIntervalForStartPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.endDateEpoch, this.timezone).add(this.interval, \"m\").valueOf();\n } \n // start date !== end date\n else {\n this.firstIntervalForStartPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n this.firstIntervalForEndPicker = dayjs.tz(this.startDateEpoch, this.timezone).startOf(\"d\").valueOf();\n }\n }\n\n if(this.givenStartTime)\n this.firstIntervalForStartPicker = this.givenStartTime;\n \n if(this.givenEndTime)\n this.firstIntervalForEndPicker = this.givenEndTime;\n \n this.startTime = {\n valid: true,\n time: dayjs.tz(this.firstIntervalForStartPicker, this.timezone).format(this.timeFormat),\n epoch: dayjs.tz(this.firstIntervalForStartPicker, this.timezone).valueOf()\n };\n\n this.endTime = {\n valid: true,\n time: dayjs.tz(this.firstIntervalForEndPicker, this.timezone).format(this.timeFormat),\n epoch: dayjs.tz(this.firstIntervalForEndPicker, this.timezone).valueOf()\n };\n }\n\n emitTimeRange(data: ITimeRange): void {\n this.timeRangeEmitter.emit(data);\n }\n\n //handlers catch the emitted values and run validation\n startPickerHandler(time: ITime): void {\n this.startTime = time;\n this.rangeValidity = true;\n // if the start time changes and the start date is the same as the end date\n // and the start time >= end time\n // update the first interval of end picker according to the time set in start picker\n if (this.startDate === this.endDate) {\n let minutes = dayjs.tz(this.startTime.time, this.timeFormat, this.timezone).minute();\n let offset = this.interval - (minutes % this.interval);\n this.firstIntervalForEndPicker = dayjs.tz(`${this.startDate} ${this.startTime.time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone)\n .add(offset, \"m\")\n .valueOf();\n\n // if the first interval == 12:00am, set it as 11:59pm\n const intervalAsString = dayjs.tz(this.firstIntervalForEndPicker, this.timezone).format(this.timeFormat);\n const endOfDayAsString = dayjs.tz(`${this.startDate}`, `DD-MM-YYYY`, this.timezone).endOf(\"d\").add(1, \"m\").format(this.timeFormat);\n if (intervalAsString === endOfDayAsString) {\n this.firstIntervalForEndPicker = dayjs.tz(`${this.startDate} ${this.startTime.time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone).endOf(\"d\").valueOf();\n }\n\n } else {\n const validity =\n this.checkTimeValidity(this.startTime.time.trim(), this.startDateEpoch) &&\n this.checkTimeValidity(this.endTime.time.trim(), this.endDateEpoch);\n\n this.rangeValidation(validity);\n this.emitTimeRange({\n valid: validity && this.rangeValidity,\n startTime: this.startTime.time,\n endTime: this.endTime.time,\n startEpoch: dayjs.tz(`${this.startDate} ${this.startTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf(),\n endEpoch: dayjs.tz(`${this.endDate} ${this.endTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf()\n });\n }\n\n this.triggerChange = !this.triggerChange;\n }\n\n endPickerHandler(time: ITime): void {\n this.endTime = time;\n\n const validity =\n this.checkTimeValidity(this.startTime.time.trim(), this.startDateEpoch) && this.checkTimeValidity(this.endTime.time.trim(), this.endDateEpoch);\n\n this.rangeValidation(validity);\n this.emitTimeRange({\n valid: validity && this.rangeValidity,\n startTime: this.startTime.time,\n endTime: this.endTime.time,\n startEpoch: dayjs.tz(`${this.startDate} ${this.startTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf(),\n endEpoch: dayjs.tz(`${this.endDate} ${this.endTime.time}`, `DD-MM-YYYY ${this.timeFormat}`, this.timezone).valueOf()\n });\n }\n\n checkTimeValidity(time: string, date: number): boolean {\n const RE12 = /^(([0][1-9]|1[0-2]):([0-5][0-9])( )?(am|pm|AM|PM))$/i;\n const RE24 = /^([01][0-9]|2[0-3]):[0-5][0-9]$/;\n const RE = this.clockFormat === 12 ? RE12 : RE24;\n\n const timedayjs = dayjs.tz(`${dayjs.tz(date, this.timezone).format(\"DD-MM-YYYY\")} ${time}`, `'DD-MM-YYYY' ${this.timeFormat}`, this.timezone);\n let flag: boolean = false;\n\n // if the first interval is set to the start of the day\n // then we don't check its validity against the current time\n if ((this.givenStartTime && this.givenEndTime) || (this.startDate !== this.endDate && this.startDate !== this.currDate)) {\n flag = time.match(RE) ? true : false;\n } else {\n flag = time.match(RE) && timedayjs.diff(dayjs.tz(dayjs(), this.timezone), \"m\") >= 0 ? true : false;\n }\n\n return flag;\n }\n\n // validates end picker's input according to the start picker's input\n rangeValidation(validity: boolean) {\n if (validity && this.startDate === this.endDate) {\n const startdayjs = dayjs.tz(this.startTime.time, this.timeFormat, this.timezone);\n const enddayjs = dayjs.tz(this.endTime.time, this.timeFormat, this.timezone);\n this.rangeValidity = enddayjs.diff(startdayjs, \"m\") >= 1 ? true : false;\n this.cdr.detectChanges();\n }\n }\n}\n\n","import { NgModule, ModuleWithProviders } from \"@angular/core\";\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { TimeRangePickerComponent } from \"./timerangepicker.component\";\nimport { TimePickerModule } from \"mis-crystal-design-system/timepicker\";\n\n@NgModule({\n declarations: [TimeRangePickerComponent],\n imports: [CommonModule, FormsModule, TimePickerModule],\n exports: [TimeRangePickerComponent]\n})\nexport class TimeRangePickerModule {\n static forRoot(): ModuleWithProviders<TimeRangePickerModule> {\n return { ngModule: TimeRangePickerModule, providers: [] };\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -8,12 +8,12 @@ import * as i2 from '@angular/common';
8
8
  import { CommonModule } from '@angular/common';
9
9
 
10
10
  class ToastDataService {
11
- constructor() {
12
- this.messageMap = new Map();
13
- }
14
11
  get messages() {
15
12
  return Array.from(this.messageMap.values()).reverse();
16
13
  }
14
+ constructor() {
15
+ this.messageMap = new Map();
16
+ }
17
17
  updateMessage(msg) {
18
18
  const id = new Date().getTime();
19
19
  this.messageMap.set(id, msg);
@@ -25,15 +25,15 @@ class ToastDataService {
25
25
  hasMessage() {
26
26
  return this.messageMap.size > 0;
27
27
  }
28
+ static { this.ɵfac = function ToastDataService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastDataService)(); }; }
29
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToastDataService, factory: ToastDataService.ɵfac, providedIn: "root" }); }
28
30
  }
29
- ToastDataService.ɵfac = function ToastDataService_Factory(t) { return new (t || ToastDataService)(); };
30
- ToastDataService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToastDataService, factory: ToastDataService.ɵfac, providedIn: "root" });
31
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastDataService, [{
31
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastDataService, [{
32
32
  type: Injectable,
33
33
  args: [{
34
34
  providedIn: "root"
35
35
  }]
36
- }], function () { return []; }, null); })();
36
+ }], () => [], null); })();
37
37
 
38
38
  function ToastComponent_div_1_Template(rf, ctx) { if (rf & 1) {
39
39
  i0.ɵɵelementStart(0, "div")(1, "div", 2)(2, "div", 3);
@@ -49,25 +49,25 @@ class ToastComponent {
49
49
  constructor(data) {
50
50
  this.data = data;
51
51
  }
52
+ static { this.ɵfac = function ToastComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastComponent)(i0.ɵɵdirectiveInject(ToastDataService)); }; }
53
+ static { this.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastComponent, selectors: [["mis-teams-toast"]], decls: 2, vars: 1, consts: [[1, "toast-container"], [4, "ngFor", "ngForOf"], [1, "toast-wrapper"], [1, "msg"]], template: function ToastComponent_Template(rf, ctx) { if (rf & 1) {
54
+ i0.ɵɵelementStart(0, "div", 0);
55
+ i0.ɵɵtemplate(1, ToastComponent_div_1_Template, 4, 2, "div", 1);
56
+ i0.ɵɵelementEnd();
57
+ } if (rf & 2) {
58
+ i0.ɵɵadvance();
59
+ i0.ɵɵproperty("ngForOf", ctx.data.messages);
60
+ } }, dependencies: [i2.NgForOf], styles: [".toast-container[_ngcontent-%COMP%]{transition:max-height .3s ease-in}.toast-container[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{position:relative;display:flex;justify-content:center}.toast-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;gap:20px;padding:14px 12px;background:#181f33;box-shadow:0 12px 17px #00000024,0 5px 22px #0000001f,0 7px 8px #0003;border-radius:4px;transition:all .3s ease-in;min-height:44px;transform-origin:top}.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{color:#fff;max-width:314px;flex:1 1 314px;font-size:14px;line-height:20px;letter-spacing:.2px}@media screen and (max-width: 360px){.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{max-width:90vw;flex:1 1 90vw}}"], data: { animation: [
61
+ trigger("fadeInOut", [
62
+ transition(":enter", [
63
+ style({ opacity: "0", transform: "translateY(-50%)", height: "0" }),
64
+ animate("300ms ease-in", style({ opacity: "1", transform: "translateY(0)", height: "*" }))
65
+ ]),
66
+ transition(":leave", [animate("300ms ease-in", style({ opacity: "0", transform: "translateY(50%)" }))])
67
+ ])
68
+ ] } }); }
52
69
  }
53
- ToastComponent.ɵfac = function ToastComponent_Factory(t) { return new (t || ToastComponent)(i0.ɵɵdirectiveInject(ToastDataService)); };
54
- ToastComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastComponent, selectors: [["mis-teams-toast"]], decls: 2, vars: 1, consts: [[1, "toast-container"], [4, "ngFor", "ngForOf"], [1, "toast-wrapper"], [1, "msg"]], template: function ToastComponent_Template(rf, ctx) { if (rf & 1) {
55
- i0.ɵɵelementStart(0, "div", 0);
56
- i0.ɵɵtemplate(1, ToastComponent_div_1_Template, 4, 2, "div", 1);
57
- i0.ɵɵelementEnd();
58
- } if (rf & 2) {
59
- i0.ɵɵadvance(1);
60
- i0.ɵɵproperty("ngForOf", ctx.data.messages);
61
- } }, dependencies: [i2.NgForOf], styles: [".toast-container[_ngcontent-%COMP%]{transition:max-height .3s ease-in}.toast-container[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{position:relative;display:flex;justify-content:center}.toast-wrapper[_ngcontent-%COMP%]{display:flex;flex-direction:row;align-items:center;gap:20px;padding:14px 12px;background:#181f33;box-shadow:0 12px 17px #00000024,0 5px 22px #0000001f,0 7px 8px #0003;border-radius:4px;transition:all .3s ease-in;min-height:44px;transform-origin:top}.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{color:#fff;max-width:314px;flex:1 1 314px;font-size:14px;line-height:20px;letter-spacing:.2px}@media screen and (max-width: 360px){.toast-wrapper[_ngcontent-%COMP%] .msg[_ngcontent-%COMP%]{max-width:90vw;flex:1 1 90vw}}"], data: { animation: [
62
- trigger("fadeInOut", [
63
- transition(":enter", [
64
- style({ opacity: "0", transform: "translateY(-50%)", height: "0" }),
65
- animate("300ms ease-in", style({ opacity: "1", transform: "translateY(0)", height: "*" }))
66
- ]),
67
- transition(":leave", [animate("300ms ease-in", style({ opacity: "0", transform: "translateY(50%)" }))])
68
- ])
69
- ] } });
70
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastComponent, [{
70
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastComponent, [{
71
71
  type: Component,
72
72
  args: [{ selector: "mis-teams-toast", animations: [
73
73
  trigger("fadeInOut", [
@@ -78,7 +78,8 @@ ToastComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ToastCompone
78
78
  transition(":leave", [animate("300ms ease-in", style({ opacity: "0", transform: "translateY(50%)" }))])
79
79
  ])
80
80
  ], template: "<div class=\"toast-container\">\n <div *ngFor=\"let msg of data.messages\" @fadeInOut>\n <div class=\"toast-wrapper\">\n <div class=\"msg\">{{ msg }}</div>\n </div>\n </div>\n</div>\n", styles: [".toast-container{transition:max-height .3s ease-in}.toast-container>div{position:relative;display:flex;justify-content:center}.toast-wrapper{display:flex;flex-direction:row;align-items:center;gap:20px;padding:14px 12px;background:#181f33;box-shadow:0 12px 17px #00000024,0 5px 22px #0000001f,0 7px 8px #0003;border-radius:4px;transition:all .3s ease-in;min-height:44px;transform-origin:top}.toast-wrapper .msg{color:#fff;max-width:314px;flex:1 1 314px;font-size:14px;line-height:20px;letter-spacing:.2px}@media screen and (max-width: 360px){.toast-wrapper .msg{max-width:90vw;flex:1 1 90vw}}\n"] }]
81
- }], function () { return [{ type: ToastDataService }]; }, null); })();
81
+ }], () => [{ type: ToastDataService }], null); })();
82
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(ToastComponent, { className: "ToastComponent" }); })();
82
83
 
83
84
  class ToastService {
84
85
  constructor(overlay, data) {
@@ -154,15 +155,15 @@ class ToastService {
154
155
  // adding 300ms for exit animation
155
156
  }, 300);
156
157
  }
158
+ static { this.ɵfac = function ToastService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastService)(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(ToastDataService)); }; }
159
+ static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToastService, factory: ToastService.ɵfac, providedIn: "root" }); }
157
160
  }
158
- ToastService.ɵfac = function ToastService_Factory(t) { return new (t || ToastService)(i0.ɵɵinject(i1.Overlay), i0.ɵɵinject(ToastDataService)); };
159
- ToastService.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: ToastService, factory: ToastService.ɵfac, providedIn: "root" });
160
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastService, [{
161
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastService, [{
161
162
  type: Injectable,
162
163
  args: [{
163
164
  providedIn: "root"
164
165
  }]
165
- }], function () { return [{ type: i1.Overlay }, { type: ToastDataService }]; }, null); })();
166
+ }], () => [{ type: i1.Overlay }, { type: ToastDataService }], null); })();
166
167
 
167
168
  class ToastModule {
168
169
  static forRoot() {
@@ -177,11 +178,11 @@ class ToastModule {
177
178
  providers: [ToastDataService, ToastService]
178
179
  };
179
180
  }
181
+ static { this.ɵfac = function ToastModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || ToastModule)(); }; }
182
+ static { this.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ToastModule }); }
183
+ static { this.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, OverlayModule] }); }
180
184
  }
181
- ToastModule.ɵfac = function ToastModule_Factory(t) { return new (t || ToastModule)(); };
182
- ToastModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ToastModule });
183
- ToastModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, OverlayModule] });
184
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastModule, [{
185
+ (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ToastModule, [{
185
186
  type: NgModule,
186
187
  args: [{
187
188
  declarations: [ToastComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"mis-crystal-design-system-toast.mjs","sources":["../../../projects/mis-components/toast/toast.data.service.ts","../../../projects/mis-components/toast/toast.component.html","../../../projects/mis-components/toast/toast.component.ts","../../../projects/mis-components/toast/toast.service.ts","../../../projects/mis-components/toast/toast.module.ts","../../../projects/mis-components/toast/mis-crystal-design-system-toast.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ToastDataService {\n private messageMap: Map<number, string> = new Map();\n get messages(): string[] {\n return Array.from(this.messageMap.values()).reverse();\n }\n\n constructor() {}\n\n updateMessage(msg: string): number {\n const id = new Date().getTime();\n this.messageMap.set(id, msg);\n return id;\n }\n\n removeMessage(id: number): void {\n this.messageMap.delete(id);\n }\n\n hasMessage(): boolean {\n return this.messageMap.size > 0;\n }\n}\n","<div class=\"toast-container\">\n <div *ngFor=\"let msg of data.messages\" @fadeInOut>\n <div class=\"toast-wrapper\">\n <div class=\"msg\">{{ msg }}</div>\n </div>\n </div>\n</div>\n","import { animate, style, transition, trigger } from \"@angular/animations\";\nimport { Component } from \"@angular/core\";\nimport { ToastDataService } from \"./toast.data.service\";\n\n@Component({\n selector: \"mis-teams-toast\",\n templateUrl: \"./toast.component.html\",\n styleUrls: [\"./toast.component.scss\"],\n animations: [\n trigger(\"fadeInOut\", [\n transition(\":enter\", [\n style({ opacity: \"0\", transform: \"translateY(-50%)\", height: \"0\" }),\n animate(\"300ms ease-in\", style({ opacity: \"1\", transform: \"translateY(0)\", height: \"*\" }))\n ]),\n transition(\":leave\", [animate(\"300ms ease-in\", style({ opacity: \"0\", transform: \"translateY(50%)\" }))])\n ])\n ]\n})\nexport class ToastComponent {\n constructor(public data: ToastDataService) {}\n}\n","import { Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { Injectable } from \"@angular/core\";\nimport { ToastComponent } from \"./toast.component\";\nimport { ToastDataService } from \"./toast.data.service\";\n\ntype Operations = \"created\" | \"updated\" | \"deleted\" | \"create\" | \"update\" | \"delete\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ToastService {\n constructor(private overlay: Overlay, private data: ToastDataService) {\n this.userProfilePortal = new ComponentPortal(ToastComponent);\n }\n private toastWrapperRef: OverlayRef;\n private messagePromises: Promise<void>[] = [];\n private userProfilePortal: ComponentPortal<ToastComponent>;\n\n messageBuilder = {\n error: {\n simple: \"Something went wrong. Please try again later.\",\n 400: \"Bad Request! We are working to fix this.\",\n 401: \"UNAUTHORISED\",\n 403: \"Sorry for the interruption but seems like your session has expired. Please login again and continue\",\n 404: \"Unable to find resource. Please try again later\"\n },\n item: (item: string) => {\n return {\n action: (act: Operations = \"updated\") => {\n const success = `Successfully ${act} ${item}.`;\n const failure = `Failed to ${act} ${item}.`;\n return {\n success,\n failure\n };\n }\n };\n },\n short: (act: Operations = \"updated\") => {\n const success = `Successfully ${act}.`;\n const failure = `Failed to ${act}.`;\n return {\n success,\n failure\n };\n },\n simple: (...args: string[]) => args.join(\" \"),\n simplest: \"Done!\"\n };\n\n displayMsg(msg: string, timeout = 3000): void {\n const positionStrategy = this.overlay.position().global().centerHorizontally();\n\n if (window?.innerWidth < 600) {\n positionStrategy.bottom(\"48px\");\n } else {\n positionStrategy.top(\"80px\");\n }\n const config = new OverlayConfig({\n hasBackdrop: false,\n positionStrategy\n });\n if (!this.toastWrapperRef?.hasAttached()) {\n this.toastWrapperRef = this.overlay.create(config);\n this.toastWrapperRef.attach(this.userProfilePortal);\n }\n const messageId = this.data.updateMessage(msg);\n this.messagePromises.push(\n new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve(this.data.removeMessage(messageId));\n if (!this.data.hasMessage()) {\n this.closeToastOverlay();\n }\n // adding 300ms for entry animation\n }, timeout + 300);\n })\n );\n Promise.race(this.messagePromises).then(() => {});\n }\n\n // tslint:disable-next-line\n private closeToastOverlay(): any {\n return setTimeout(() => {\n this.messagePromises = [];\n this.toastWrapperRef?.detach();\n // adding 300ms for exit animation\n }, 300);\n }\n}\n","import { OverlayModule } from \"@angular/cdk/overlay\";\nimport { CommonModule } from \"@angular/common\";\nimport { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ToastComponent } from \"./toast.component\";\nimport { ToastDataService } from \"./toast.data.service\";\nimport { ToastService } from \"./toast.service\";\n\n@NgModule({\n declarations: [ToastComponent],\n imports: [CommonModule, OverlayModule]\n})\nexport class ToastModule {\n static forRoot(): ModuleWithProviders<ToastModule> {\n return {\n ngModule: ToastModule,\n providers: [ToastDataService, ToastService]\n };\n }\n\n static forChild(): ModuleWithProviders<ToastModule> {\n return {\n ngModule: ToastModule,\n providers: [ToastDataService, ToastService]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ToastDataService","i2.ToastDataService"],"mappings":"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"}
1
+ {"version":3,"file":"mis-crystal-design-system-toast.mjs","sources":["../../../projects/mis-components/toast/toast.data.service.ts","../../../projects/mis-components/toast/toast.component.html","../../../projects/mis-components/toast/toast.component.ts","../../../projects/mis-components/toast/toast.service.ts","../../../projects/mis-components/toast/toast.module.ts","../../../projects/mis-components/toast/mis-crystal-design-system-toast.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ToastDataService {\n private messageMap: Map<number, string> = new Map();\n get messages(): string[] {\n return Array.from(this.messageMap.values()).reverse();\n }\n\n constructor() {}\n\n updateMessage(msg: string): number {\n const id = new Date().getTime();\n this.messageMap.set(id, msg);\n return id;\n }\n\n removeMessage(id: number): void {\n this.messageMap.delete(id);\n }\n\n hasMessage(): boolean {\n return this.messageMap.size > 0;\n }\n}\n","<div class=\"toast-container\">\n <div *ngFor=\"let msg of data.messages\" @fadeInOut>\n <div class=\"toast-wrapper\">\n <div class=\"msg\">{{ msg }}</div>\n </div>\n </div>\n</div>\n","import { animate, style, transition, trigger } from \"@angular/animations\";\nimport { Component } from \"@angular/core\";\nimport { ToastDataService } from \"./toast.data.service\";\n\n@Component({\n selector: \"mis-teams-toast\",\n templateUrl: \"./toast.component.html\",\n styleUrls: [\"./toast.component.scss\"],\n animations: [\n trigger(\"fadeInOut\", [\n transition(\":enter\", [\n style({ opacity: \"0\", transform: \"translateY(-50%)\", height: \"0\" }),\n animate(\"300ms ease-in\", style({ opacity: \"1\", transform: \"translateY(0)\", height: \"*\" }))\n ]),\n transition(\":leave\", [animate(\"300ms ease-in\", style({ opacity: \"0\", transform: \"translateY(50%)\" }))])\n ])\n ]\n})\nexport class ToastComponent {\n constructor(public data: ToastDataService) {}\n}\n","import { Overlay, OverlayConfig, OverlayRef } from \"@angular/cdk/overlay\";\nimport { ComponentPortal } from \"@angular/cdk/portal\";\nimport { Injectable } from \"@angular/core\";\nimport { ToastComponent } from \"./toast.component\";\nimport { ToastDataService } from \"./toast.data.service\";\n\ntype Operations = \"created\" | \"updated\" | \"deleted\" | \"create\" | \"update\" | \"delete\";\n\n@Injectable({\n providedIn: \"root\"\n})\nexport class ToastService {\n constructor(private overlay: Overlay, private data: ToastDataService) {\n this.userProfilePortal = new ComponentPortal(ToastComponent);\n }\n private toastWrapperRef: OverlayRef;\n private messagePromises: Promise<void>[] = [];\n private userProfilePortal: ComponentPortal<ToastComponent>;\n\n messageBuilder = {\n error: {\n simple: \"Something went wrong. Please try again later.\",\n 400: \"Bad Request! We are working to fix this.\",\n 401: \"UNAUTHORISED\",\n 403: \"Sorry for the interruption but seems like your session has expired. Please login again and continue\",\n 404: \"Unable to find resource. Please try again later\"\n },\n item: (item: string) => {\n return {\n action: (act: Operations = \"updated\") => {\n const success = `Successfully ${act} ${item}.`;\n const failure = `Failed to ${act} ${item}.`;\n return {\n success,\n failure\n };\n }\n };\n },\n short: (act: Operations = \"updated\") => {\n const success = `Successfully ${act}.`;\n const failure = `Failed to ${act}.`;\n return {\n success,\n failure\n };\n },\n simple: (...args: string[]) => args.join(\" \"),\n simplest: \"Done!\"\n };\n\n displayMsg(msg: string, timeout = 3000): void {\n const positionStrategy = this.overlay.position().global().centerHorizontally();\n\n if (window?.innerWidth < 600) {\n positionStrategy.bottom(\"48px\");\n } else {\n positionStrategy.top(\"80px\");\n }\n const config = new OverlayConfig({\n hasBackdrop: false,\n positionStrategy\n });\n if (!this.toastWrapperRef?.hasAttached()) {\n this.toastWrapperRef = this.overlay.create(config);\n this.toastWrapperRef.attach(this.userProfilePortal);\n }\n const messageId = this.data.updateMessage(msg);\n this.messagePromises.push(\n new Promise((resolve, reject) => {\n setTimeout(() => {\n resolve(this.data.removeMessage(messageId));\n if (!this.data.hasMessage()) {\n this.closeToastOverlay();\n }\n // adding 300ms for entry animation\n }, timeout + 300);\n })\n );\n Promise.race(this.messagePromises).then(() => {});\n }\n\n // tslint:disable-next-line\n private closeToastOverlay(): any {\n return setTimeout(() => {\n this.messagePromises = [];\n this.toastWrapperRef?.detach();\n // adding 300ms for exit animation\n }, 300);\n }\n}\n","import { OverlayModule } from \"@angular/cdk/overlay\";\nimport { CommonModule } from \"@angular/common\";\nimport { ModuleWithProviders, NgModule } from \"@angular/core\";\nimport { ToastComponent } from \"./toast.component\";\nimport { ToastDataService } from \"./toast.data.service\";\nimport { ToastService } from \"./toast.service\";\n\n@NgModule({\n declarations: [ToastComponent],\n imports: [CommonModule, OverlayModule]\n})\nexport class ToastModule {\n static forRoot(): ModuleWithProviders<ToastModule> {\n return {\n ngModule: ToastModule,\n providers: [ToastDataService, ToastService]\n };\n }\n\n static forChild(): ModuleWithProviders<ToastModule> {\n return {\n ngModule: ToastModule,\n providers: [ToastDataService, ToastService]\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.ToastDataService","i2.ToastDataService"],"mappings":";;;;;;;;;MAKa,gBAAgB,CAAA;AAE3B,IAAA,IAAI,QAAQ,GAAA;AACV,QAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KACvD;AAED,IAAA,WAAA,GAAA;AALQ,QAAA,IAAA,CAAA,UAAU,GAAwB,IAAI,GAAG,EAAE,CAAC;KAKpC;AAEhB,IAAA,aAAa,CAAC,GAAW,EAAA;QACvB,MAAM,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;AAC7B,QAAA,OAAO,EAAE,CAAC;KACX;AAED,IAAA,aAAa,CAAC,EAAU,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;KAC5B;IAED,UAAU,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;KACjC;iHApBU,gBAAgB,GAAA,CAAA,EAAA,CAAA,EAAA;uEAAhB,gBAAgB,EAAA,OAAA,EAAhB,gBAAgB,CAAA,IAAA,EAAA,UAAA,EAFf,MAAM,EAAA,CAAA,CAAA,EAAA;;iFAEP,gBAAgB,EAAA,CAAA;cAH5B,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACV,gBAAA,UAAU,EAAE,MAAM;AACnB,aAAA,CAAA;;;;ICHC,EAAkD,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,CAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CACrB,CACR,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA,CAAA;IAAA,EAAS,CAAA,MAAA,CAAA,CAAA,CAAA,CAAA;IAAA,EAAM,CAAA,YAAA,EAAA,EAC5B,EACF,CAAA;;;IAJiC,EAAU,CAAA,UAAA,CAAA,YAAA,EAAA,SAAA,CAAA,CAAA;IAE5B,EAAS,CAAA,SAAA,CAAA,CAAA,CAAA,CAAA;IAAT,EAAS,CAAA,iBAAA,CAAA,MAAA,CAAA,CAAA;;MCenB,cAAc,CAAA;AACzB,IAAA,WAAA,CAAmB,IAAsB,EAAA;QAAtB,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAkB;KAAI;+GADlC,cAAc,EAAA,EAAA,CAAA,iBAAA,CAAAA,gBAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA;oEAAd,cAAc,EAAA,SAAA,EAAA,CAAA,CAAA,iBAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,CAAA,CAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,CAAA,EAAA,OAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAAA,EAAA,eAAA,CAAA,EAAA,CAAA,CAAA,EAAA,KAAA,CAAA,CAAA,EAAA,QAAA,EAAA,SAAA,uBAAA,CAAA,EAAA,EAAA,GAAA,EAAA,EAAA,IAAA,EAAA,GAAA,CAAA,EAAA;YDlB3B,EAA6B,CAAA,cAAA,CAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA,CAAA;YAC3B,EAAkD,CAAA,UAAA,CAAA,CAAA,EAAA,6BAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,CAAA,CAAA;YAKpD,EAAM,CAAA,YAAA,EAAA,CAAA;;YALiB,EAAgB,CAAA,SAAA,EAAA,CAAA;YAAhB,EAAgB,CAAA,UAAA,CAAA,SAAA,EAAA,GAAA,CAAA,IAAA,CAAA,QAAA,CAAA,CAAA;ACOzB,SAAA,EAAA,EAAA,YAAA,EAAA,CAAA,EAAA,CAAA,OAAA,CAAA,EAAA,MAAA,EAAA,CAAA,+uBAAA,CAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA;gBACV,OAAO,CAAC,WAAW,EAAE;oBACnB,UAAU,CAAC,QAAQ,EAAE;AACnB,wBAAA,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACnE,wBAAA,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;qBAC3F,CAAC;oBACF,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;iBACxG,CAAC;AACH,aAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;iFAEU,cAAc,EAAA,CAAA;cAd1B,SAAS;AACE,QAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,iBAAiB,EAGf,UAAA,EAAA;oBACV,OAAO,CAAC,WAAW,EAAE;wBACnB,UAAU,CAAC,QAAQ,EAAE;AACnB,4BAAA,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACnE,4BAAA,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;yBAC3F,CAAC;wBACF,UAAU,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;qBACxG,CAAC;AACH,iBAAA,EAAA,QAAA,EAAA,sMAAA,EAAA,MAAA,EAAA,CAAA,mlBAAA,CAAA,EAAA,CAAA;;kFAEU,cAAc,EAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;MCPd,YAAY,CAAA;IACvB,WAAoB,CAAA,OAAgB,EAAU,IAAsB,EAAA;QAAhD,IAAO,CAAA,OAAA,GAAP,OAAO,CAAS;QAAU,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAkB;QAI5D,IAAe,CAAA,eAAA,GAAoB,EAAE,CAAC;AAG9C,QAAA,IAAA,CAAA,cAAc,GAAG;AACf,YAAA,KAAK,EAAE;AACL,gBAAA,MAAM,EAAE,+CAA+C;AACvD,gBAAA,GAAG,EAAE,0CAA0C;AAC/C,gBAAA,GAAG,EAAE,cAAc;AACnB,gBAAA,GAAG,EAAE,qGAAqG;AAC1G,gBAAA,GAAG,EAAE,iDAAiD;AACvD,aAAA;AACD,YAAA,IAAI,EAAE,CAAC,IAAY,KAAI;gBACrB,OAAO;AACL,oBAAA,MAAM,EAAE,CAAC,GAAkB,GAAA,SAAS,KAAI;AACtC,wBAAA,MAAM,OAAO,GAAG,CAAA,aAAA,EAAgB,GAAG,CAAI,CAAA,EAAA,IAAI,GAAG,CAAC;AAC/C,wBAAA,MAAM,OAAO,GAAG,CAAA,UAAA,EAAa,GAAG,CAAI,CAAA,EAAA,IAAI,GAAG,CAAC;wBAC5C,OAAO;4BACL,OAAO;4BACP,OAAO;yBACR,CAAC;qBACH;iBACF,CAAC;aACH;AACD,YAAA,KAAK,EAAE,CAAC,GAAkB,GAAA,SAAS,KAAI;AACrC,gBAAA,MAAM,OAAO,GAAG,CAAgB,aAAA,EAAA,GAAG,GAAG,CAAC;AACvC,gBAAA,MAAM,OAAO,GAAG,CAAa,UAAA,EAAA,GAAG,GAAG,CAAC;gBACpC,OAAO;oBACL,OAAO;oBACP,OAAO;iBACR,CAAC;aACH;AACD,YAAA,MAAM,EAAE,CAAC,GAAG,IAAc,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC7C,YAAA,QAAQ,EAAE,OAAO;SAClB,CAAC;QApCA,IAAI,CAAC,iBAAiB,GAAG,IAAI,eAAe,CAAC,cAAc,CAAC,CAAC;KAC9D;AAqCD,IAAA,UAAU,CAAC,GAAW,EAAE,OAAO,GAAG,IAAI,EAAA;AACpC,QAAA,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,kBAAkB,EAAE,CAAC;AAE/E,QAAA,IAAI,MAAM,EAAE,UAAU,GAAG,GAAG,EAAE;AAC5B,YAAA,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACjC;aAAM;AACL,YAAA,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;SAC9B;AACD,QAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC;AAC/B,YAAA,WAAW,EAAE,KAAK;YAClB,gBAAgB;AACjB,SAAA,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,WAAW,EAAE,EAAE;YACxC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACrD;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAC/C,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,CACvB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;YAC9B,UAAU,CAAC,MAAK;gBACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;gBAC5C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;oBAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;iBAC1B;;AAEH,aAAC,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;SACnB,CAAC,CACH,CAAC;AACF,QAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,MAAO,GAAC,CAAC,CAAC;KACnD;;IAGO,iBAAiB,GAAA;QACvB,OAAO,UAAU,CAAC,MAAK;AACrB,YAAA,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;AAC1B,YAAA,IAAI,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;;SAEhC,EAAE,GAAG,CAAC,CAAC;KACT;6GA9EU,YAAY,EAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,OAAA,CAAA,EAAA,EAAA,CAAA,QAAA,CAAAC,gBAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA;uEAAZ,YAAY,EAAA,OAAA,EAAZ,YAAY,CAAA,IAAA,EAAA,UAAA,EAFX,MAAM,EAAA,CAAA,CAAA,EAAA;;iFAEP,YAAY,EAAA,CAAA;cAHxB,UAAU;AAAC,QAAA,IAAA,EAAA,CAAA;AACV,gBAAA,UAAU,EAAE,MAAM;AACnB,aAAA,CAAA;;;MCCY,WAAW,CAAA;AACtB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,SAAS,EAAE,CAAC,gBAAgB,EAAE,YAAY,CAAC;SAC5C,CAAC;KACH;AAED,IAAA,OAAO,QAAQ,GAAA;QACb,OAAO;AACL,YAAA,QAAQ,EAAE,WAAW;AACrB,YAAA,SAAS,EAAE,CAAC,gBAAgB,EAAE,YAAY,CAAC;SAC5C,CAAC;KACH;4GAbU,WAAW,GAAA,CAAA,EAAA,CAAA,EAAA;mEAAX,WAAW,EAAA,CAAA,CAAA,EAAA;AAFV,IAAA,SAAA,IAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA;;iFAE5B,WAAW,EAAA,CAAA;cAJvB,QAAQ;AAAC,QAAA,IAAA,EAAA,CAAA;gBACN,YAAY,EAAE,CAAC,cAAc,CAAC;AAC9B,gBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;AACzC,aAAA,CAAA;;AACY,CAAA,YAAA,EAAA,CAAA,OAAA,SAAA,KAAA,WAAA,IAAA,SAAA,KAAA,EAAA,CAAA,kBAAA,CAAA,WAAW,EAHL,EAAA,YAAA,EAAA,CAAA,cAAc,CACnB,EAAA,OAAA,EAAA,CAAA,YAAY,EAAE,aAAa,CAAA,EAAA,CAAA,CAAA,EAAA,GAAA;;ACTzC;;AAEG;;;;"}