mis-crystal-design-system 14.0.55-test-v3 → 14.0.55-test-v5

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 (500) hide show
  1. package/datepicker/base/bs-datepicker-container.d.ts +44 -0
  2. package/datepicker/bs-datepicker-inline.component.d.ts +64 -0
  3. package/datepicker/bs-datepicker-inline.config.d.ts +6 -0
  4. package/datepicker/bs-datepicker-input.directive.d.ts +33 -0
  5. package/datepicker/bs-datepicker.component.d.ts +126 -0
  6. package/datepicker/bs-datepicker.config.d.ts +143 -0
  7. package/datepicker/bs-datepicker.module.d.ts +29 -0
  8. package/datepicker/bs-daterangepicker-inline.component.d.ts +64 -0
  9. package/datepicker/bs-daterangepicker-inline.config.d.ts +9 -0
  10. package/datepicker/bs-daterangepicker-input.directive.d.ts +33 -0
  11. package/datepicker/bs-daterangepicker.component.d.ts +118 -0
  12. package/datepicker/bs-daterangepicker.config.d.ts +7 -0
  13. package/datepicker/bs-locale.service.d.ts +13 -0
  14. package/datepicker/chronos/create/check-overflow.d.ts +2 -0
  15. package/datepicker/chronos/create/clone.d.ts +1 -0
  16. package/datepicker/chronos/create/date-from-array.d.ts +2 -0
  17. package/datepicker/chronos/create/from-anything.d.ts +4 -0
  18. package/datepicker/chronos/create/from-array.d.ts +2 -0
  19. package/datepicker/chronos/create/from-object.d.ts +2 -0
  20. package/datepicker/chronos/create/from-string-and-array.d.ts +2 -0
  21. package/datepicker/chronos/create/from-string-and-format.d.ts +4 -0
  22. package/datepicker/chronos/create/from-string.d.ts +4 -0
  23. package/datepicker/chronos/create/local.d.ts +3 -0
  24. package/datepicker/chronos/create/parsing-flags.d.ts +2 -0
  25. package/datepicker/chronos/create/parsing.types.d.ts +64 -0
  26. package/datepicker/chronos/create/valid.d.ts +6 -0
  27. package/datepicker/chronos/duration/bubble.d.ts +4 -0
  28. package/datepicker/chronos/duration/constructor.d.ts +21 -0
  29. package/datepicker/chronos/duration/create.d.ts +8 -0
  30. package/datepicker/chronos/duration/humanize.d.ts +5 -0
  31. package/datepicker/chronos/duration/valid.d.ts +2 -0
  32. package/datepicker/chronos/format/format.d.ts +11 -0
  33. package/datepicker/chronos/format.d.ts +5 -0
  34. package/datepicker/chronos/i18n/ar.d.ts +2 -0
  35. package/datepicker/chronos/i18n/bg.d.ts +2 -0
  36. package/datepicker/chronos/i18n/ca.d.ts +2 -0
  37. package/datepicker/chronos/i18n/cs.d.ts +2 -0
  38. package/datepicker/chronos/i18n/da.d.ts +2 -0
  39. package/datepicker/chronos/i18n/de.d.ts +2 -0
  40. package/datepicker/chronos/i18n/en-gb.d.ts +2 -0
  41. package/datepicker/chronos/i18n/es-do.d.ts +2 -0
  42. package/datepicker/chronos/i18n/es-us.d.ts +2 -0
  43. package/datepicker/chronos/i18n/es.d.ts +2 -0
  44. package/datepicker/chronos/i18n/et.d.ts +2 -0
  45. package/datepicker/chronos/i18n/fi.d.ts +2 -0
  46. package/datepicker/chronos/i18n/fr.d.ts +2 -0
  47. package/datepicker/chronos/i18n/gl.d.ts +2 -0
  48. package/datepicker/chronos/i18n/he.d.ts +2 -0
  49. package/datepicker/chronos/i18n/hi.d.ts +2 -0
  50. package/datepicker/chronos/i18n/hr.d.ts +2 -0
  51. package/datepicker/chronos/i18n/hu.d.ts +2 -0
  52. package/datepicker/chronos/i18n/id.d.ts +2 -0
  53. package/datepicker/chronos/i18n/it.d.ts +2 -0
  54. package/datepicker/chronos/i18n/ja.d.ts +2 -0
  55. package/datepicker/chronos/i18n/ka.d.ts +2 -0
  56. package/datepicker/chronos/i18n/kk.d.ts +2 -0
  57. package/datepicker/chronos/i18n/ko.d.ts +2 -0
  58. package/datepicker/chronos/i18n/lt.d.ts +2 -0
  59. package/datepicker/chronos/i18n/lv.d.ts +2 -0
  60. package/datepicker/chronos/i18n/mn.d.ts +2 -0
  61. package/datepicker/chronos/i18n/nb.d.ts +2 -0
  62. package/datepicker/chronos/i18n/nl-be.d.ts +2 -0
  63. package/datepicker/chronos/i18n/nl.d.ts +2 -0
  64. package/datepicker/chronos/i18n/pl.d.ts +2 -0
  65. package/datepicker/chronos/i18n/pt-br.d.ts +2 -0
  66. package/datepicker/chronos/i18n/ro.d.ts +2 -0
  67. package/datepicker/chronos/i18n/ru.d.ts +2 -0
  68. package/datepicker/chronos/i18n/sk.d.ts +2 -0
  69. package/datepicker/chronos/i18n/sl.d.ts +2 -0
  70. package/datepicker/chronos/i18n/sq.d.ts +2 -0
  71. package/datepicker/chronos/i18n/sv.d.ts +2 -0
  72. package/datepicker/chronos/i18n/th-be.d.ts +2 -0
  73. package/datepicker/chronos/i18n/th.d.ts +2 -0
  74. package/datepicker/chronos/i18n/tr.d.ts +2 -0
  75. package/datepicker/chronos/i18n/uk.d.ts +2 -0
  76. package/datepicker/chronos/i18n/vi.d.ts +2 -0
  77. package/datepicker/chronos/i18n/zh-cn.d.ts +2 -0
  78. package/datepicker/chronos/index.d.ts +1 -0
  79. package/datepicker/chronos/locale/calendar.d.ts +8 -0
  80. package/datepicker/chronos/locale/locale.class.d.ts +143 -0
  81. package/datepicker/chronos/locale/locale.defaults.d.ts +11 -0
  82. package/datepicker/chronos/locale/locales.d.ts +7 -0
  83. package/datepicker/chronos/moment/add-subtract.d.ts +5 -0
  84. package/datepicker/chronos/moment/calendar.d.ts +15 -0
  85. package/datepicker/chronos/moment/diff.d.ts +3 -0
  86. package/datepicker/chronos/moment/min-max.d.ts +2 -0
  87. package/datepicker/chronos/parse/regex.d.ts +22 -0
  88. package/datepicker/chronos/parse/token.d.ts +5 -0
  89. package/datepicker/chronos/public_api.d.ts +57 -0
  90. package/datepicker/chronos/test/chain.d.ts +214 -0
  91. package/datepicker/chronos/types.d.ts +36 -0
  92. package/datepicker/chronos/units/aliases.d.ts +7 -0
  93. package/datepicker/chronos/units/constants.d.ts +9 -0
  94. package/datepicker/chronos/units/day-of-month.d.ts +1 -0
  95. package/datepicker/chronos/units/day-of-week.d.ts +20 -0
  96. package/datepicker/chronos/units/day-of-year.d.ts +3 -0
  97. package/datepicker/chronos/units/hour.d.ts +1 -0
  98. package/datepicker/chronos/units/index.d.ts +18 -0
  99. package/datepicker/chronos/units/millisecond.d.ts +1 -0
  100. package/datepicker/chronos/units/minute.d.ts +1 -0
  101. package/datepicker/chronos/units/month.d.ts +2 -0
  102. package/datepicker/chronos/units/offset.d.ts +10 -0
  103. package/datepicker/chronos/units/priorities.d.ts +1 -0
  104. package/datepicker/chronos/units/quarter.d.ts +3 -0
  105. package/datepicker/chronos/units/second.d.ts +1 -0
  106. package/datepicker/chronos/units/timestamp.d.ts +1 -0
  107. package/datepicker/chronos/units/timezone.d.ts +3 -0
  108. package/datepicker/chronos/units/week-calendar-utils.d.ts +9 -0
  109. package/datepicker/chronos/units/week-year.d.ts +8 -0
  110. package/datepicker/chronos/units/week.d.ts +6 -0
  111. package/datepicker/chronos/units/year.d.ts +4 -0
  112. package/datepicker/chronos/utils/abs-ceil.d.ts +1 -0
  113. package/datepicker/chronos/utils/abs-round.d.ts +1 -0
  114. package/datepicker/chronos/utils/compare-arrays.d.ts +1 -0
  115. package/datepicker/chronos/utils/date-compare.d.ts +9 -0
  116. package/datepicker/chronos/utils/date-getters.d.ts +18 -0
  117. package/datepicker/chronos/utils/date-setters.d.ts +12 -0
  118. package/datepicker/chronos/utils/defaults.d.ts +1 -0
  119. package/datepicker/chronos/utils/start-end-of.d.ts +3 -0
  120. package/datepicker/chronos/utils/type-checks.d.ts +12 -0
  121. package/datepicker/chronos/utils/zero-fill.d.ts +1 -0
  122. package/datepicker/chronos/utils.d.ts +2 -0
  123. package/datepicker/component-loader/bs-component-ref.class.d.ts +5 -0
  124. package/datepicker/component-loader/component-loader.class.d.ts +75 -0
  125. package/datepicker/component-loader/component-loader.factory.d.ts +21 -0
  126. package/datepicker/component-loader/content-ref.class.d.ts +7 -0
  127. package/datepicker/component-loader/index.d.ts +1 -0
  128. package/datepicker/component-loader/listen-options.model.d.ts +11 -0
  129. package/datepicker/component-loader/public_api.d.ts +4 -0
  130. package/datepicker/date-formatter.d.ts +3 -0
  131. package/datepicker/datepicker-animations.d.ts +3 -0
  132. package/datepicker/datepicker-inner.component.d.ts +78 -0
  133. package/datepicker/datepicker.component.d.ts +81 -0
  134. package/datepicker/datepicker.config.d.ts +22 -0
  135. package/datepicker/datepicker.module.d.ts +15 -0
  136. package/datepicker/daypicker.component.d.ts +17 -0
  137. package/datepicker/engine/calc-days-calendar.d.ts +2 -0
  138. package/datepicker/engine/flag-days-calendar.d.ts +17 -0
  139. package/datepicker/engine/flag-months-calendar.d.ts +12 -0
  140. package/datepicker/engine/flag-years-calendar.d.ts +12 -0
  141. package/datepicker/engine/format-days-calendar.d.ts +4 -0
  142. package/datepicker/engine/format-months-calendar.d.ts +2 -0
  143. package/datepicker/engine/format-years-calendar.d.ts +4 -0
  144. package/datepicker/engine/view-mode.d.ts +2 -0
  145. package/datepicker/index.d.ts +1 -0
  146. package/datepicker/mini-ngrx/index.d.ts +1 -0
  147. package/datepicker/mini-ngrx/public_api.d.ts +7 -0
  148. package/datepicker/mini-ngrx/state.class.d.ts +8 -0
  149. package/datepicker/mini-ngrx/store.class.d.ts +16 -0
  150. package/datepicker/models/index.d.ts +102 -0
  151. package/datepicker/monthpicker.component.d.ts +14 -0
  152. package/datepicker/positioning/index.d.ts +1 -0
  153. package/datepicker/positioning/models/index.d.ts +41 -0
  154. package/datepicker/positioning/modifiers/arrow.d.ts +2 -0
  155. package/datepicker/positioning/modifiers/flip.d.ts +2 -0
  156. package/datepicker/positioning/modifiers/index.d.ts +5 -0
  157. package/datepicker/positioning/modifiers/initData.d.ts +2 -0
  158. package/datepicker/positioning/modifiers/preventOverflow.d.ts +2 -0
  159. package/datepicker/positioning/modifiers/shift.d.ts +2 -0
  160. package/datepicker/positioning/ng-positioning.d.ts +8 -0
  161. package/datepicker/positioning/positioning.service.d.ts +48 -0
  162. package/datepicker/positioning/public_api.d.ts +2 -0
  163. package/datepicker/positioning/utils/computeAutoPlacement.d.ts +2 -0
  164. package/datepicker/positioning/utils/findCommonOffsetParent.d.ts +1 -0
  165. package/datepicker/positioning/utils/getBordersSize.d.ts +4 -0
  166. package/datepicker/positioning/utils/getBoundaries.d.ts +1 -0
  167. package/datepicker/positioning/utils/getBoundingClientRect.d.ts +2 -0
  168. package/datepicker/positioning/utils/getClientRect.d.ts +5 -0
  169. package/datepicker/positioning/utils/getFixedPositionOffsetParent.d.ts +4 -0
  170. package/datepicker/positioning/utils/getOffsetParent.d.ts +1 -0
  171. package/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +2 -0
  172. package/datepicker/positioning/utils/getOffsets.d.ts +2 -0
  173. package/datepicker/positioning/utils/getOppositePlacement.d.ts +4 -0
  174. package/datepicker/positioning/utils/getOppositeVariation.d.ts +4 -0
  175. package/datepicker/positioning/utils/getOuterSizes.d.ts +7 -0
  176. package/datepicker/positioning/utils/getParentNode.d.ts +4 -0
  177. package/datepicker/positioning/utils/getReferenceOffsets.d.ts +2 -0
  178. package/datepicker/positioning/utils/getRoot.d.ts +4 -0
  179. package/datepicker/positioning/utils/getScroll.d.ts +4 -0
  180. package/datepicker/positioning/utils/getScrollParent.d.ts +1 -0
  181. package/datepicker/positioning/utils/getStyleComputedProperty.d.ts +4 -0
  182. package/datepicker/positioning/utils/getTargetOffsets.d.ts +2 -0
  183. package/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +2 -0
  184. package/datepicker/positioning/utils/getWindowSizes.d.ts +4 -0
  185. package/datepicker/positioning/utils/includeScroll.d.ts +2 -0
  186. package/datepicker/positioning/utils/index.d.ts +23 -0
  187. package/datepicker/positioning/utils/isBrowser.d.ts +1 -0
  188. package/datepicker/positioning/utils/isFixed.d.ts +1 -0
  189. package/datepicker/positioning/utils/isIE.d.ts +1 -0
  190. package/datepicker/positioning/utils/isModifierEnabled.d.ts +4 -0
  191. package/datepicker/positioning/utils/isNumeric.d.ts +4 -0
  192. package/datepicker/positioning/utils/isOffsetContainer.d.ts +1 -0
  193. package/datepicker/positioning/utils/setStyles.d.ts +5 -0
  194. package/datepicker/positioning/utils/updateContainerClass.d.ts +6 -0
  195. package/datepicker/public_api.d.ts +25 -0
  196. package/datepicker/reducer/_defaults.d.ts +2 -0
  197. package/datepicker/reducer/bs-datepicker.actions.d.ts +46 -0
  198. package/datepicker/reducer/bs-datepicker.effects.d.ts +41 -0
  199. package/datepicker/reducer/bs-datepicker.reducer.d.ts +3 -0
  200. package/datepicker/reducer/bs-datepicker.state.d.ts +43 -0
  201. package/datepicker/reducer/bs-datepicker.store.d.ts +8 -0
  202. package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +5 -0
  203. package/datepicker/themes/bs/bs-current-date-view.component.d.ts +6 -0
  204. package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +17 -0
  205. package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +36 -0
  206. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +14 -0
  207. package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +13 -0
  208. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +12 -0
  209. package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +40 -0
  210. package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +13 -0
  211. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +26 -0
  212. package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +16 -0
  213. package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +8 -0
  214. package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +16 -0
  215. package/datepicker/utils/bs-calendar-utils.d.ts +10 -0
  216. package/datepicker/utils/matrix-utils.d.ts +9 -0
  217. package/datepicker/utils-v2/decorators.d.ts +1 -0
  218. package/datepicker/utils-v2/facade/browser.d.ts +23 -0
  219. package/datepicker/utils-v2/index.d.ts +1 -0
  220. package/datepicker/utils-v2/linked-list.class.d.ts +26 -0
  221. package/datepicker/utils-v2/public_api.d.ts +10 -0
  222. package/datepicker/utils-v2/theme-provider.d.ts +2 -0
  223. package/datepicker/utils-v2/trigger.class.d.ts +6 -0
  224. package/datepicker/utils-v2/triggers.d.ts +18 -0
  225. package/datepicker/utils-v2/utils.class.d.ts +4 -0
  226. package/datepicker/utils-v2/warn-once.d.ts +1 -0
  227. package/datepicker/yearpicker.component.d.ts +14 -0
  228. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +1 -1
  229. package/dynamic-form/dynamic-form.component.d.ts +1 -0
  230. package/esm2020/datepicker/base/bs-datepicker-container.mjs +47 -0
  231. package/esm2020/datepicker/bs-datepicker-inline.component.mjs +137 -0
  232. package/esm2020/datepicker/bs-datepicker-inline.config.mjs +14 -0
  233. package/esm2020/datepicker/bs-datepicker-input.directive.mjs +160 -0
  234. package/esm2020/datepicker/bs-datepicker.component.mjs +254 -0
  235. package/esm2020/datepicker/bs-datepicker.config.mjs +87 -0
  236. package/esm2020/datepicker/bs-datepicker.module.mjs +126 -0
  237. package/esm2020/datepicker/bs-daterangepicker-inline.component.mjs +134 -0
  238. package/esm2020/datepicker/bs-daterangepicker-inline.config.mjs +21 -0
  239. package/esm2020/datepicker/bs-daterangepicker-input.directive.mjs +192 -0
  240. package/esm2020/datepicker/bs-daterangepicker.component.mjs +240 -0
  241. package/esm2020/datepicker/bs-daterangepicker.config.mjs +19 -0
  242. package/esm2020/datepicker/bs-locale.service.mjs +32 -0
  243. package/esm2020/datepicker/chronos/create/check-overflow.mjs +30 -0
  244. package/esm2020/datepicker/chronos/create/clone.mjs +6 -0
  245. package/esm2020/datepicker/chronos/create/date-from-array.mjs +17 -0
  246. package/esm2020/datepicker/chronos/create/from-anything.mjs +107 -0
  247. package/esm2020/datepicker/chronos/create/from-array.mjs +136 -0
  248. package/esm2020/datepicker/chronos/create/from-object.mjs +17 -0
  249. package/esm2020/datepicker/chronos/create/from-string-and-array.mjs +38 -0
  250. package/esm2020/datepicker/chronos/create/from-string-and-format.mjs +106 -0
  251. package/esm2020/datepicker/chronos/create/from-string.mjs +227 -0
  252. package/esm2020/datepicker/chronos/create/local.mjs +16 -0
  253. package/esm2020/datepicker/chronos/create/parsing-flags.mjs +26 -0
  254. package/esm2020/datepicker/chronos/create/parsing.types.mjs +2 -0
  255. package/esm2020/datepicker/chronos/create/valid.mjs +42 -0
  256. package/esm2020/datepicker/chronos/duration/bubble.mjs +47 -0
  257. package/esm2020/datepicker/chronos/duration/constructor.mjs +130 -0
  258. package/esm2020/datepicker/chronos/duration/create.mjs +113 -0
  259. package/esm2020/datepicker/chronos/duration/humanize.mjs +80 -0
  260. package/esm2020/datepicker/chronos/duration/valid.mjs +43 -0
  261. package/esm2020/datepicker/chronos/format/format.mjs +51 -0
  262. package/esm2020/datepicker/chronos/format.mjs +46 -0
  263. package/esm2020/datepicker/chronos/i18n/ar.mjs +128 -0
  264. package/esm2020/datepicker/chronos/i18n/bg.mjs +94 -0
  265. package/esm2020/datepicker/chronos/i18n/ca.mjs +91 -0
  266. package/esm2020/datepicker/chronos/i18n/cs.mjs +179 -0
  267. package/esm2020/datepicker/chronos/i18n/da.mjs +50 -0
  268. package/esm2020/datepicker/chronos/i18n/de.mjs +72 -0
  269. package/esm2020/datepicker/chronos/i18n/en-gb.mjs +61 -0
  270. package/esm2020/datepicker/chronos/i18n/es-do.mjs +85 -0
  271. package/esm2020/datepicker/chronos/i18n/es-us.mjs +79 -0
  272. package/esm2020/datepicker/chronos/i18n/es.mjs +84 -0
  273. package/esm2020/datepicker/chronos/i18n/et.mjs +73 -0
  274. package/esm2020/datepicker/chronos/i18n/fi.mjs +100 -0
  275. package/esm2020/datepicker/chronos/i18n/fr.mjs +76 -0
  276. package/esm2020/datepicker/chronos/i18n/gl.mjs +84 -0
  277. package/esm2020/datepicker/chronos/i18n/he.mjs +98 -0
  278. package/esm2020/datepicker/chronos/i18n/hi.mjs +124 -0
  279. package/esm2020/datepicker/chronos/i18n/hr.mjs +62 -0
  280. package/esm2020/datepicker/chronos/i18n/hu.mjs +104 -0
  281. package/esm2020/datepicker/chronos/i18n/id.mjs +83 -0
  282. package/esm2020/datepicker/chronos/i18n/it.mjs +65 -0
  283. package/esm2020/datepicker/chronos/i18n/ja.mjs +75 -0
  284. package/esm2020/datepicker/chronos/i18n/ka.mjs +87 -0
  285. package/esm2020/datepicker/chronos/i18n/kk.mjs +76 -0
  286. package/esm2020/datepicker/chronos/i18n/ko.mjs +77 -0
  287. package/esm2020/datepicker/chronos/i18n/lt.mjs +116 -0
  288. package/esm2020/datepicker/chronos/i18n/lv.mjs +56 -0
  289. package/esm2020/datepicker/chronos/i18n/mn.mjs +99 -0
  290. package/esm2020/datepicker/chronos/i18n/nb.mjs +53 -0
  291. package/esm2020/datepicker/chronos/i18n/nl-be.mjs +81 -0
  292. package/esm2020/datepicker/chronos/i18n/nl.mjs +80 -0
  293. package/esm2020/datepicker/chronos/i18n/pl.mjs +126 -0
  294. package/esm2020/datepicker/chronos/i18n/pt-br.mjs +56 -0
  295. package/esm2020/datepicker/chronos/i18n/ro.mjs +66 -0
  296. package/esm2020/datepicker/chronos/i18n/ru.mjs +181 -0
  297. package/esm2020/datepicker/chronos/i18n/sk.mjs +157 -0
  298. package/esm2020/datepicker/chronos/i18n/sl.mjs +184 -0
  299. package/esm2020/datepicker/chronos/i18n/sq.mjs +54 -0
  300. package/esm2020/datepicker/chronos/i18n/sv.mjs +63 -0
  301. package/esm2020/datepicker/chronos/i18n/th-be.mjs +74 -0
  302. package/esm2020/datepicker/chronos/i18n/th.mjs +59 -0
  303. package/esm2020/datepicker/chronos/i18n/tr.mjs +82 -0
  304. package/esm2020/datepicker/chronos/i18n/uk.mjs +147 -0
  305. package/esm2020/datepicker/chronos/i18n/vi.mjs +74 -0
  306. package/esm2020/datepicker/chronos/i18n/zh-cn.mjs +114 -0
  307. package/esm2020/datepicker/chronos/index.mjs +2 -0
  308. package/esm2020/datepicker/chronos/locale/calendar.mjs +9 -0
  309. package/esm2020/datepicker/chronos/locale/locale.class.mjs +532 -0
  310. package/esm2020/datepicker/chronos/locale/locale.defaults.mjs +40 -0
  311. package/esm2020/datepicker/chronos/locale/locales.mjs +229 -0
  312. package/esm2020/datepicker/chronos/moment/add-subtract.mjs +35 -0
  313. package/esm2020/datepicker/chronos/moment/calendar.mjs +41 -0
  314. package/esm2020/datepicker/chronos/moment/diff.mjs +70 -0
  315. package/esm2020/datepicker/chronos/moment/min-max.mjs +38 -0
  316. package/esm2020/datepicker/chronos/parse/regex.mjs +49 -0
  317. package/esm2020/datepicker/chronos/parse/token.mjs +32 -0
  318. package/esm2020/datepicker/chronos/public_api.mjs +56 -0
  319. package/esm2020/datepicker/chronos/test/chain.mjs +711 -0
  320. package/esm2020/datepicker/chronos/types.mjs +2 -0
  321. package/esm2020/datepicker/chronos/units/aliases.mjs +35 -0
  322. package/esm2020/datepicker/chronos/units/constants.mjs +11 -0
  323. package/esm2020/datepicker/chronos/units/day-of-month.mjs +31 -0
  324. package/esm2020/datepicker/chronos/units/day-of-week.mjs +129 -0
  325. package/esm2020/datepicker/chronos/units/day-of-year.mjs +37 -0
  326. package/esm2020/datepicker/chronos/units/hour.mjs +127 -0
  327. package/esm2020/datepicker/chronos/units/index.mjs +19 -0
  328. package/esm2020/datepicker/chronos/units/millisecond.mjs +60 -0
  329. package/esm2020/datepicker/chronos/units/minute.mjs +23 -0
  330. package/esm2020/datepicker/chronos/units/month.mjs +63 -0
  331. package/esm2020/datepicker/chronos/units/offset.mjs +210 -0
  332. package/esm2020/datepicker/chronos/units/priorities.mjs +21 -0
  333. package/esm2020/datepicker/chronos/units/quarter.mjs +39 -0
  334. package/esm2020/datepicker/chronos/units/second.mjs +23 -0
  335. package/esm2020/datepicker/chronos/units/timestamp.mjs +28 -0
  336. package/esm2020/datepicker/chronos/units/timezone.mjs +19 -0
  337. package/esm2020/datepicker/chronos/units/week-calendar-utils.mjs +70 -0
  338. package/esm2020/datepicker/chronos/units/week-year.mjs +101 -0
  339. package/esm2020/datepicker/chronos/units/week.mjs +58 -0
  340. package/esm2020/datepicker/chronos/units/year.mjs +60 -0
  341. package/esm2020/datepicker/chronos/utils/abs-ceil.mjs +4 -0
  342. package/esm2020/datepicker/chronos/utils/abs-round.mjs +4 -0
  343. package/esm2020/datepicker/chronos/utils/compare-arrays.mjs +16 -0
  344. package/esm2020/datepicker/chronos/utils/date-compare.mjs +55 -0
  345. package/esm2020/datepicker/chronos/utils/date-getters.mjs +67 -0
  346. package/esm2020/datepicker/chronos/utils/date-setters.mjs +75 -0
  347. package/esm2020/datepicker/chronos/utils/defaults.mjs +11 -0
  348. package/esm2020/datepicker/chronos/utils/start-end-of.mjs +57 -0
  349. package/esm2020/datepicker/chronos/utils/type-checks.mjs +56 -0
  350. package/esm2020/datepicker/chronos/utils/zero-fill.mjs +10 -0
  351. package/esm2020/datepicker/chronos/utils.mjs +7 -0
  352. package/esm2020/datepicker/component-loader/bs-component-ref.class.mjs +3 -0
  353. package/esm2020/datepicker/component-loader/component-loader.class.mjs +272 -0
  354. package/esm2020/datepicker/component-loader/component-loader.factory.mjs +29 -0
  355. package/esm2020/datepicker/component-loader/content-ref.class.mjs +12 -0
  356. package/esm2020/datepicker/component-loader/index.mjs +2 -0
  357. package/esm2020/datepicker/component-loader/listen-options.model.mjs +2 -0
  358. package/esm2020/datepicker/component-loader/public_api.mjs +5 -0
  359. package/esm2020/datepicker/date-formatter.mjs +7 -0
  360. package/esm2020/datepicker/datepicker-animations.mjs +16 -0
  361. package/esm2020/datepicker/datepicker-inner.component.mjs +323 -0
  362. package/esm2020/datepicker/datepicker.component.mjs +182 -0
  363. package/esm2020/datepicker/datepicker.config.mjs +32 -0
  364. package/esm2020/datepicker/datepicker.module.mjs +49 -0
  365. package/esm2020/datepicker/daypicker.component.mjs +314 -0
  366. package/esm2020/datepicker/engine/calc-days-calendar.mjs +19 -0
  367. package/esm2020/datepicker/engine/flag-days-calendar.mjs +91 -0
  368. package/esm2020/datepicker/engine/flag-months-calendar.mjs +41 -0
  369. package/esm2020/datepicker/engine/flag-years-calendar.mjs +39 -0
  370. package/esm2020/datepicker/engine/format-days-calendar.mjs +29 -0
  371. package/esm2020/datepicker/engine/format-months-calendar.mjs +19 -0
  372. package/esm2020/datepicker/engine/format-years-calendar.mjs +35 -0
  373. package/esm2020/datepicker/engine/view-mode.mjs +4 -0
  374. package/esm2020/datepicker/index.mjs +2 -0
  375. package/esm2020/datepicker/mini-ngrx/index.mjs +2 -0
  376. package/esm2020/datepicker/mini-ngrx/public_api.mjs +3 -0
  377. package/esm2020/datepicker/mini-ngrx/state.class.mjs +16 -0
  378. package/esm2020/datepicker/mini-ngrx/store.class.mjs +43 -0
  379. package/esm2020/datepicker/mis-crystal-design-system-datepicker.mjs +5 -0
  380. package/esm2020/datepicker/models/index.mjs +9 -0
  381. package/esm2020/datepicker/monthpicker.component.mjs +145 -0
  382. package/esm2020/datepicker/positioning/index.mjs +2 -0
  383. package/esm2020/datepicker/positioning/models/index.mjs +2 -0
  384. package/esm2020/datepicker/positioning/modifiers/arrow.mjs +56 -0
  385. package/esm2020/datepicker/positioning/modifiers/flip.mjs +66 -0
  386. package/esm2020/datepicker/positioning/modifiers/index.mjs +6 -0
  387. package/esm2020/datepicker/positioning/modifiers/initData.mjs +42 -0
  388. package/esm2020/datepicker/positioning/modifiers/preventOverflow.mjs +59 -0
  389. package/esm2020/datepicker/positioning/modifiers/shift.mjs +24 -0
  390. package/esm2020/datepicker/positioning/ng-positioning.mjs +30 -0
  391. package/esm2020/datepicker/positioning/positioning.service.mjs +75 -0
  392. package/esm2020/datepicker/positioning/public_api.mjs +3 -0
  393. package/esm2020/datepicker/positioning/utils/computeAutoPlacement.mjs +57 -0
  394. package/esm2020/datepicker/positioning/utils/findCommonOffsetParent.mjs +40 -0
  395. package/esm2020/datepicker/positioning/utils/getBordersSize.mjs +10 -0
  396. package/esm2020/datepicker/positioning/utils/getBoundaries.mjs +56 -0
  397. package/esm2020/datepicker/positioning/utils/getBoundingClientRect.mjs +55 -0
  398. package/esm2020/datepicker/positioning/utils/getClientRect.mjs +8 -0
  399. package/esm2020/datepicker/positioning/utils/getFixedPositionOffsetParent.mjs +17 -0
  400. package/esm2020/datepicker/positioning/utils/getOffsetParent.mjs +32 -0
  401. package/esm2020/datepicker/positioning/utils/getOffsetRectRelativeToArbitraryNode.mjs +51 -0
  402. package/esm2020/datepicker/positioning/utils/getOffsets.mjs +11 -0
  403. package/esm2020/datepicker/positioning/utils/getOppositePlacement.mjs +8 -0
  404. package/esm2020/datepicker/positioning/utils/getOppositeVariation.mjs +13 -0
  405. package/esm2020/datepicker/positioning/utils/getOuterSizes.mjs +14 -0
  406. package/esm2020/datepicker/positioning/utils/getParentNode.mjs +10 -0
  407. package/esm2020/datepicker/positioning/utils/getReferenceOffsets.mjs +13 -0
  408. package/esm2020/datepicker/positioning/utils/getRoot.mjs +10 -0
  409. package/esm2020/datepicker/positioning/utils/getScroll.mjs +14 -0
  410. package/esm2020/datepicker/positioning/utils/getScrollParent.mjs +26 -0
  411. package/esm2020/datepicker/positioning/utils/getStyleComputedProperty.mjs +13 -0
  412. package/esm2020/datepicker/positioning/utils/getTargetOffsets.mjs +30 -0
  413. package/esm2020/datepicker/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.mjs +19 -0
  414. package/esm2020/datepicker/positioning/utils/getWindowSizes.mjs +18 -0
  415. package/esm2020/datepicker/positioning/utils/includeScroll.mjs +15 -0
  416. package/esm2020/datepicker/positioning/utils/index.mjs +24 -0
  417. package/esm2020/datepicker/positioning/utils/isBrowser.mjs +2 -0
  418. package/esm2020/datepicker/positioning/utils/isFixed.mjs +16 -0
  419. package/esm2020/datepicker/positioning/utils/isIE.mjs +16 -0
  420. package/esm2020/datepicker/positioning/utils/isModifierEnabled.mjs +10 -0
  421. package/esm2020/datepicker/positioning/utils/isNumeric.mjs +7 -0
  422. package/esm2020/datepicker/positioning/utils/isOffsetContainer.mjs +9 -0
  423. package/esm2020/datepicker/positioning/utils/setStyles.mjs +17 -0
  424. package/esm2020/datepicker/positioning/utils/updateContainerClass.mjs +22 -0
  425. package/esm2020/datepicker/public_api.mjs +25 -0
  426. package/esm2020/datepicker/reducer/_defaults.mjs +5 -0
  427. package/esm2020/datepicker/reducer/bs-datepicker.actions.mjs +136 -0
  428. package/esm2020/datepicker/reducer/bs-datepicker.effects.mjs +169 -0
  429. package/esm2020/datepicker/reducer/bs-datepicker.reducer.mjs +302 -0
  430. package/esm2020/datepicker/reducer/bs-datepicker.state.mjs +12 -0
  431. package/esm2020/datepicker/reducer/bs-datepicker.store.mjs +21 -0
  432. package/esm2020/datepicker/themes/bs/bs-calendar-layout.component.mjs +54 -0
  433. package/esm2020/datepicker/themes/bs/bs-current-date-view.component.mjs +23 -0
  434. package/esm2020/datepicker/themes/bs/bs-custom-dates-view.component.mjs +78 -0
  435. package/esm2020/datepicker/themes/bs/bs-datepicker-container.component.mjs +319 -0
  436. package/esm2020/datepicker/themes/bs/bs-datepicker-day-decorator.directive.mjs +52 -0
  437. package/esm2020/datepicker/themes/bs/bs-datepicker-inline-container.component.mjs +203 -0
  438. package/esm2020/datepicker/themes/bs/bs-datepicker-navigation-view.component.mjs +111 -0
  439. package/esm2020/datepicker/themes/bs/bs-daterangepicker-container.component.mjs +362 -0
  440. package/esm2020/datepicker/themes/bs/bs-daterangepicker-inline-container.component.mjs +203 -0
  441. package/esm2020/datepicker/themes/bs/bs-days-calendar-view.component.mjs +308 -0
  442. package/esm2020/datepicker/themes/bs/bs-months-calendar-view.component.mjs +106 -0
  443. package/esm2020/datepicker/themes/bs/bs-timepicker-view.component.mjs +64 -0
  444. package/esm2020/datepicker/themes/bs/bs-years-calendar-view.component.mjs +107 -0
  445. package/esm2020/datepicker/utils/bs-calendar-utils.mjs +43 -0
  446. package/esm2020/datepicker/utils/matrix-utils.mjs +14 -0
  447. package/esm2020/datepicker/utils-v2/decorators.mjs +25 -0
  448. package/esm2020/datepicker/utils-v2/facade/browser.mjs +24 -0
  449. package/esm2020/datepicker/utils-v2/index.mjs +2 -0
  450. package/esm2020/datepicker/utils-v2/linked-list.class.mjs +240 -0
  451. package/esm2020/datepicker/utils-v2/public_api.mjs +11 -0
  452. package/esm2020/datepicker/utils-v2/theme-provider.mjs +35 -0
  453. package/esm2020/datepicker/utils-v2/trigger.class.mjs +10 -0
  454. package/esm2020/datepicker/utils-v2/triggers.mjs +110 -0
  455. package/esm2020/datepicker/utils-v2/utils.class.mjs +21 -0
  456. package/esm2020/datepicker/utils-v2/warn-once.mjs +12 -0
  457. package/esm2020/datepicker/yearpicker.component.mjs +147 -0
  458. package/esm2020/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +14 -24
  459. package/esm2020/daterangepicker_v2/models/drp-config.model.mjs +1 -1
  460. package/esm2020/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +35 -43
  461. package/esm2020/dynamic-form/dynamic-form.component.mjs +6 -11
  462. package/esm2020/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +41 -55
  463. package/esm2020/table/table.component.mjs +2 -2
  464. package/esm2020/timepicker/timepicker.component.mjs +48 -54
  465. package/esm2020/timerangepicker/timerangepicker.component.mjs +42 -46
  466. package/fesm2015/mis-crystal-design-system-datepicker.mjs +14950 -0
  467. package/fesm2015/mis-crystal-design-system-datepicker.mjs.map +1 -0
  468. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs +13 -23
  469. package/fesm2015/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
  470. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs +34 -43
  471. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
  472. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs +4 -10
  473. package/fesm2015/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  474. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs +40 -54
  475. package/fesm2015/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
  476. package/fesm2015/mis-crystal-design-system-table.mjs +2 -2
  477. package/fesm2015/mis-crystal-design-system-table.mjs.map +1 -1
  478. package/fesm2015/mis-crystal-design-system-timepicker.mjs +47 -53
  479. package/fesm2015/mis-crystal-design-system-timepicker.mjs.map +1 -1
  480. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs +41 -45
  481. package/fesm2015/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
  482. package/fesm2020/mis-crystal-design-system-datepicker.mjs +14572 -0
  483. package/fesm2020/mis-crystal-design-system-datepicker.mjs.map +1 -0
  484. package/fesm2020/mis-crystal-design-system-datepicker_v2.mjs +13 -23
  485. package/fesm2020/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
  486. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs +33 -42
  487. package/fesm2020/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
  488. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs +4 -10
  489. package/fesm2020/mis-crystal-design-system-dynamic-form.mjs.map +1 -1
  490. package/fesm2020/mis-crystal-design-system-specificdatepicker.mjs +40 -54
  491. package/fesm2020/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
  492. package/fesm2020/mis-crystal-design-system-table.mjs +2 -2
  493. package/fesm2020/mis-crystal-design-system-table.mjs.map +1 -1
  494. package/fesm2020/mis-crystal-design-system-timepicker.mjs +47 -53
  495. package/fesm2020/mis-crystal-design-system-timepicker.mjs.map +1 -1
  496. package/fesm2020/mis-crystal-design-system-timerangepicker.mjs +41 -45
  497. package/fesm2020/mis-crystal-design-system-timerangepicker.mjs.map +1 -1
  498. package/package.json +9 -1
  499. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +1 -1
  500. package/timepicker/timepicker.component.d.ts +2 -2
@@ -0,0 +1,362 @@
1
+ import { Component, EventEmitter } from '@angular/core';
2
+ import { take } from 'rxjs/operators';
3
+ import { getFullYear, getMonth } from '../../chronos';
4
+ import { MisDatePickerAbstractComponent } from '../../base/bs-datepicker-container';
5
+ import { MisDatePickerEffects } from '../../reducer/bs-datepicker.effects';
6
+ import { MisDatePickerStore } from '../../reducer/bs-datepicker.store';
7
+ import { datepickerAnimation } from '../../datepicker-animations';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../bs-datepicker.config";
10
+ import * as i2 from "../../reducer/bs-datepicker.store";
11
+ import * as i3 from "../../reducer/bs-datepicker.actions";
12
+ import * as i4 from "../../reducer/bs-datepicker.effects";
13
+ import * as i5 from "../../positioning";
14
+ import * as i6 from "@angular/common";
15
+ import * as i7 from "./bs-custom-dates-view.component";
16
+ import * as i8 from "./bs-days-calendar-view.component";
17
+ import * as i9 from "./bs-months-calendar-view.component";
18
+ import * as i10 from "./bs-years-calendar-view.component";
19
+ function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template(rf, ctx) { if (rf & 1) {
20
+ const _r10 = i0.ɵɵgetCurrentView();
21
+ i0.ɵɵelementStart(0, "mis-days-calendar-view", 9);
22
+ i0.ɵɵlistener("onNavigate", function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template_mis_days_calendar_view_onNavigate_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r9.navigateTo($event)); })("onViewMode", function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template_mis_days_calendar_view_onViewMode_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r11 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r11.setViewMode($event)); })("onHover", function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template_mis_days_calendar_view_onHover_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r12 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r12.dayHoverHandler($event)); })("onHoverWeek", function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template_mis_days_calendar_view_onHoverWeek_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r13 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r13.weekHoverHandler($event)); })("onSelect", function MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template_mis_days_calendar_view_onSelect_0_listener($event) { i0.ɵɵrestoreView(_r10); const ctx_r14 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r14.daySelectHandler($event)); });
23
+ i0.ɵɵpipe(1, "async");
24
+ i0.ɵɵpipe(2, "async");
25
+ i0.ɵɵelementEnd();
26
+ } if (rf & 2) {
27
+ const calendar_r8 = ctx.$implicit;
28
+ const ctx_r7 = i0.ɵɵnextContext(3);
29
+ let tmp_0_0;
30
+ i0.ɵɵclassProp("bs-datepicker-multiple", ((tmp_0_0 = i0.ɵɵpipeBind1(1, 4, ctx_r7.daysCalendar)) == null ? null : tmp_0_0.length) > 1);
31
+ i0.ɵɵproperty("calendar", calendar_r8)("options", i0.ɵɵpipeBind1(2, 6, ctx_r7.options));
32
+ } }
33
+ function MisDateRangePickerContainerComponent_div_0_div_4_Template(rf, ctx) { if (rf & 1) {
34
+ i0.ɵɵelementStart(0, "div", 7);
35
+ i0.ɵɵtemplate(1, MisDateRangePickerContainerComponent_div_0_div_4_mis_days_calendar_view_1_Template, 3, 8, "mis-days-calendar-view", 8);
36
+ i0.ɵɵpipe(2, "async");
37
+ i0.ɵɵelementEnd();
38
+ } if (rf & 2) {
39
+ const ctx_r1 = i0.ɵɵnextContext(2);
40
+ i0.ɵɵadvance(1);
41
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r1.daysCalendar));
42
+ } }
43
+ function MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template(rf, ctx) { if (rf & 1) {
44
+ const _r18 = i0.ɵɵgetCurrentView();
45
+ i0.ɵɵelementStart(0, "mis-month-calendar-view", 11);
46
+ i0.ɵɵlistener("onNavigate", function MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template_mis_month_calendar_view_onNavigate_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r17 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r17.navigateTo($event)); })("onViewMode", function MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template_mis_month_calendar_view_onViewMode_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r19 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r19.setViewMode($event)); })("onHover", function MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template_mis_month_calendar_view_onHover_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r20 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r20.monthHoverHandler($event)); })("onSelect", function MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template_mis_month_calendar_view_onSelect_0_listener($event) { i0.ɵɵrestoreView(_r18); const ctx_r21 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r21.monthSelectHandler($event)); });
47
+ i0.ɵɵpipe(1, "async");
48
+ i0.ɵɵelementEnd();
49
+ } if (rf & 2) {
50
+ const calendar_r16 = ctx.$implicit;
51
+ const ctx_r15 = i0.ɵɵnextContext(3);
52
+ let tmp_0_0;
53
+ i0.ɵɵclassProp("bs-datepicker-multiple", ((tmp_0_0 = i0.ɵɵpipeBind1(1, 3, ctx_r15.daysCalendar)) == null ? null : tmp_0_0.length) > 1);
54
+ i0.ɵɵproperty("calendar", calendar_r16);
55
+ } }
56
+ function MisDateRangePickerContainerComponent_div_0_div_5_Template(rf, ctx) { if (rf & 1) {
57
+ i0.ɵɵelementStart(0, "div", 7);
58
+ i0.ɵɵtemplate(1, MisDateRangePickerContainerComponent_div_0_div_5_mis_month_calendar_view_1_Template, 2, 5, "mis-month-calendar-view", 10);
59
+ i0.ɵɵpipe(2, "async");
60
+ i0.ɵɵelementEnd();
61
+ } if (rf & 2) {
62
+ const ctx_r2 = i0.ɵɵnextContext(2);
63
+ i0.ɵɵadvance(1);
64
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r2.monthsCalendar));
65
+ } }
66
+ function MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template(rf, ctx) { if (rf & 1) {
67
+ const _r25 = i0.ɵɵgetCurrentView();
68
+ i0.ɵɵelementStart(0, "mis-years-calendar-view", 11);
69
+ i0.ɵɵlistener("onNavigate", function MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template_mis_years_calendar_view_onNavigate_0_listener($event) { i0.ɵɵrestoreView(_r25); const ctx_r24 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r24.navigateTo($event)); })("onViewMode", function MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template_mis_years_calendar_view_onViewMode_0_listener($event) { i0.ɵɵrestoreView(_r25); const ctx_r26 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r26.setViewMode($event)); })("onHover", function MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template_mis_years_calendar_view_onHover_0_listener($event) { i0.ɵɵrestoreView(_r25); const ctx_r27 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r27.yearHoverHandler($event)); })("onSelect", function MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template_mis_years_calendar_view_onSelect_0_listener($event) { i0.ɵɵrestoreView(_r25); const ctx_r28 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r28.yearSelectHandler($event)); });
70
+ i0.ɵɵpipe(1, "async");
71
+ i0.ɵɵelementEnd();
72
+ } if (rf & 2) {
73
+ const calendar_r23 = ctx.$implicit;
74
+ const ctx_r22 = i0.ɵɵnextContext(3);
75
+ let tmp_0_0;
76
+ i0.ɵɵclassProp("bs-datepicker-multiple", ((tmp_0_0 = i0.ɵɵpipeBind1(1, 3, ctx_r22.daysCalendar)) == null ? null : tmp_0_0.length) > 1);
77
+ i0.ɵɵproperty("calendar", calendar_r23);
78
+ } }
79
+ function MisDateRangePickerContainerComponent_div_0_div_6_Template(rf, ctx) { if (rf & 1) {
80
+ i0.ɵɵelementStart(0, "div", 7);
81
+ i0.ɵɵtemplate(1, MisDateRangePickerContainerComponent_div_0_div_6_mis_years_calendar_view_1_Template, 2, 5, "mis-years-calendar-view", 10);
82
+ i0.ɵɵpipe(2, "async");
83
+ i0.ɵɵelementEnd();
84
+ } if (rf & 2) {
85
+ const ctx_r3 = i0.ɵɵnextContext(2);
86
+ i0.ɵɵadvance(1);
87
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r3.yearsCalendar));
88
+ } }
89
+ function MisDateRangePickerContainerComponent_div_0_div_7_Template(rf, ctx) { if (rf & 1) {
90
+ const _r30 = i0.ɵɵgetCurrentView();
91
+ i0.ɵɵelementStart(0, "div", 12)(1, "button", 13);
92
+ i0.ɵɵlistener("click", function MisDateRangePickerContainerComponent_div_0_div_7_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r30); const ctx_r29 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r29.cancel()); });
93
+ i0.ɵɵtext(2, "Cancel");
94
+ i0.ɵɵelementEnd();
95
+ i0.ɵɵelementStart(3, "button", 14);
96
+ i0.ɵɵlistener("click", function MisDateRangePickerContainerComponent_div_0_div_7_Template_button_click_3_listener($event) { i0.ɵɵrestoreView(_r30); const ctx_r31 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r31.dayApplyHandler($event)); });
97
+ i0.ɵɵtext(4, "Apply");
98
+ i0.ɵɵelementEnd()();
99
+ } }
100
+ function MisDateRangePickerContainerComponent_div_0_div_9_div_1_Template(rf, ctx) { if (rf & 1) {
101
+ const _r35 = i0.ɵɵgetCurrentView();
102
+ i0.ɵɵelementStart(0, "div", 17)(1, "button", 18);
103
+ i0.ɵɵlistener("click", function MisDateRangePickerContainerComponent_div_0_div_9_div_1_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r35); const ctx_r34 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r34.setToday()); });
104
+ i0.ɵɵtext(2);
105
+ i0.ɵɵelementEnd()();
106
+ } if (rf & 2) {
107
+ const ctx_r32 = i0.ɵɵnextContext(3);
108
+ i0.ɵɵclassProp("today-left", ctx_r32.todayPos === "left")("today-right", ctx_r32.todayPos === "right")("today-center", ctx_r32.todayPos === "center");
109
+ i0.ɵɵadvance(2);
110
+ i0.ɵɵtextInterpolate(ctx_r32.todayBtnLbl);
111
+ } }
112
+ function MisDateRangePickerContainerComponent_div_0_div_9_div_2_Template(rf, ctx) { if (rf & 1) {
113
+ const _r37 = i0.ɵɵgetCurrentView();
114
+ i0.ɵɵelementStart(0, "div", 19)(1, "button", 18);
115
+ i0.ɵɵlistener("click", function MisDateRangePickerContainerComponent_div_0_div_9_div_2_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r37); const ctx_r36 = i0.ɵɵnextContext(3); return i0.ɵɵresetView(ctx_r36.clearDate()); });
116
+ i0.ɵɵtext(2);
117
+ i0.ɵɵelementEnd()();
118
+ } if (rf & 2) {
119
+ const ctx_r33 = i0.ɵɵnextContext(3);
120
+ i0.ɵɵclassProp("clear-left", ctx_r33.clearPos === "left")("clear-right", ctx_r33.clearPos === "right")("clear-center", ctx_r33.clearPos === "center");
121
+ i0.ɵɵadvance(2);
122
+ i0.ɵɵtextInterpolate(ctx_r33.clearBtnLbl);
123
+ } }
124
+ function MisDateRangePickerContainerComponent_div_0_div_9_Template(rf, ctx) { if (rf & 1) {
125
+ i0.ɵɵelementStart(0, "div", 12);
126
+ i0.ɵɵtemplate(1, MisDateRangePickerContainerComponent_div_0_div_9_div_1_Template, 3, 7, "div", 15);
127
+ i0.ɵɵtemplate(2, MisDateRangePickerContainerComponent_div_0_div_9_div_2_Template, 3, 7, "div", 16);
128
+ i0.ɵɵelementEnd();
129
+ } if (rf & 2) {
130
+ const ctx_r5 = i0.ɵɵnextContext(2);
131
+ i0.ɵɵadvance(1);
132
+ i0.ɵɵproperty("ngIf", ctx_r5.showTodayBtn);
133
+ i0.ɵɵadvance(1);
134
+ i0.ɵɵproperty("ngIf", ctx_r5.showClearBtn);
135
+ } }
136
+ function MisDateRangePickerContainerComponent_div_0_div_10_Template(rf, ctx) { if (rf & 1) {
137
+ const _r39 = i0.ɵɵgetCurrentView();
138
+ i0.ɵɵelementStart(0, "div", 20)(1, "mis-custom-date-view", 21);
139
+ i0.ɵɵlistener("onSelect", function MisDateRangePickerContainerComponent_div_0_div_10_Template_mis_custom_date_view_onSelect_1_listener($event) { i0.ɵɵrestoreView(_r39); const ctx_r38 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r38.setRangeOnCalendar($event)); });
140
+ i0.ɵɵelementEnd()();
141
+ } if (rf & 2) {
142
+ const ctx_r6 = i0.ɵɵnextContext(2);
143
+ i0.ɵɵadvance(1);
144
+ i0.ɵɵproperty("selectedRange", ctx_r6.chosenRange)("ranges", ctx_r6.customRanges)("customRangeLabel", ctx_r6.customRangeBtnLbl);
145
+ } }
146
+ function MisDateRangePickerContainerComponent_div_0_Template(rf, ctx) { if (rf & 1) {
147
+ const _r41 = i0.ɵɵgetCurrentView();
148
+ i0.ɵɵelementStart(0, "div", 1)(1, "div", 2);
149
+ i0.ɵɵlistener("@datepickerAnimation.done", function MisDateRangePickerContainerComponent_div_0_Template_div_animation_datepickerAnimation_done_1_listener() { i0.ɵɵrestoreView(_r41); const ctx_r40 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r40.positionServiceEnable()); });
150
+ i0.ɵɵelementStart(2, "div", 3);
151
+ i0.ɵɵpipe(3, "async");
152
+ i0.ɵɵtemplate(4, MisDateRangePickerContainerComponent_div_0_div_4_Template, 3, 3, "div", 4);
153
+ i0.ɵɵtemplate(5, MisDateRangePickerContainerComponent_div_0_div_5_Template, 3, 3, "div", 4);
154
+ i0.ɵɵtemplate(6, MisDateRangePickerContainerComponent_div_0_div_6_Template, 3, 3, "div", 4);
155
+ i0.ɵɵelementEnd();
156
+ i0.ɵɵtemplate(7, MisDateRangePickerContainerComponent_div_0_div_7_Template, 5, 0, "div", 5);
157
+ i0.ɵɵpipe(8, "async");
158
+ i0.ɵɵtemplate(9, MisDateRangePickerContainerComponent_div_0_div_9_Template, 3, 2, "div", 5);
159
+ i0.ɵɵelementEnd();
160
+ i0.ɵɵtemplate(10, MisDateRangePickerContainerComponent_div_0_div_10_Template, 2, 3, "div", 6);
161
+ i0.ɵɵelementEnd();
162
+ } if (rf & 2) {
163
+ const ctx_r0 = i0.ɵɵnextContext();
164
+ let tmp_6_0;
165
+ i0.ɵɵproperty("ngClass", ctx_r0.containerClass);
166
+ i0.ɵɵadvance(1);
167
+ i0.ɵɵproperty("@datepickerAnimation", ctx_r0.animationState);
168
+ i0.ɵɵadvance(1);
169
+ i0.ɵɵproperty("ngSwitch", i0.ɵɵpipeBind1(3, 9, ctx_r0.viewMode));
170
+ i0.ɵɵadvance(2);
171
+ i0.ɵɵproperty("ngSwitchCase", "day");
172
+ i0.ɵɵadvance(1);
173
+ i0.ɵɵproperty("ngSwitchCase", "month");
174
+ i0.ɵɵadvance(1);
175
+ i0.ɵɵproperty("ngSwitchCase", "year");
176
+ i0.ɵɵadvance(1);
177
+ i0.ɵɵproperty("ngIf", ((tmp_6_0 = i0.ɵɵpipeBind1(8, 11, ctx_r0.daysCalendar)) == null ? null : tmp_6_0.length) > 1);
178
+ i0.ɵɵadvance(2);
179
+ i0.ɵɵproperty("ngIf", ctx_r0.showTodayBtn || ctx_r0.showClearBtn);
180
+ i0.ɵɵadvance(1);
181
+ i0.ɵɵproperty("ngIf", (ctx_r0.customRanges == null ? null : ctx_r0.customRanges.length) > 0);
182
+ } }
183
+ export class MisDateRangePickerContainerComponent extends MisDatePickerAbstractComponent {
184
+ constructor(_renderer, _config, _store, _element, _actions, _effects, _positionService) {
185
+ super();
186
+ this._renderer = _renderer;
187
+ this._config = _config;
188
+ this._store = _store;
189
+ this._element = _element;
190
+ this._actions = _actions;
191
+ this._positionService = _positionService;
192
+ this.valueChange = new EventEmitter();
193
+ this.animationState = 'void';
194
+ this._rangeStack = [];
195
+ this.chosenRange = [];
196
+ this._subs = [];
197
+ this._effects = _effects;
198
+ this.customRanges = this._config.ranges;
199
+ this.customRangeBtnLbl = this._config.customRangeButtonLabel;
200
+ _renderer.setStyle(_element.nativeElement, 'display', 'block');
201
+ _renderer.setStyle(_element.nativeElement, 'position', 'absolute');
202
+ }
203
+ set value(value) {
204
+ this._effects.setRangeValue(value);
205
+ }
206
+ ngOnInit() {
207
+ this._positionService.setOptions({
208
+ modifiers: { flip: { enabled: this._config.adaptivePosition } },
209
+ allowedPositions: ['top', 'bottom']
210
+ });
211
+ this._positionService.event$
212
+ .pipe(take(1))
213
+ .subscribe(() => {
214
+ this._positionService.disable();
215
+ if (this._config.isAnimated) {
216
+ this.animationState = this.isTopPosition ? 'animated-up' : 'animated-down';
217
+ return;
218
+ }
219
+ this.animationState = 'unanimated';
220
+ });
221
+ this.containerClass = this._config.containerClass;
222
+ this.isOtherMonthsActive = this._config.selectFromOtherMonth;
223
+ this._effects
224
+ .init(this._store)
225
+ // intial state options
226
+ // todo: fix this, split configs
227
+ .setOptions(this._config)
228
+ // data binding view --> model
229
+ .setBindings(this)
230
+ // set event handlers
231
+ .setEventHandlers(this)
232
+ .registerDatePickerSideEffects();
233
+ // todo: move it somewhere else
234
+ // on selected date change
235
+ this._subs.push(this._store
236
+ .select(state => state.selectedRange)
237
+ .subscribe(date => {
238
+ this.chosenRange = date;
239
+ if (this._config.emitOnDateRangeSelect) {
240
+ this.valueChange.emit(date);
241
+ }
242
+ }));
243
+ }
244
+ get isTopPosition() {
245
+ return this._element.nativeElement.classList.contains('top');
246
+ }
247
+ positionServiceEnable() {
248
+ this._positionService.enable();
249
+ }
250
+ daySelectHandler(day) {
251
+ if (!day) {
252
+ return;
253
+ }
254
+ const isDisabled = this.isOtherMonthsActive ? day.isDisabled : (day.isOtherMonth || day.isDisabled);
255
+ if (isDisabled) {
256
+ return;
257
+ }
258
+ this.rangesProcessing(day);
259
+ }
260
+ dayApplyHandler(day) {
261
+ this.valueChange.emit(this.chosenRange);
262
+ }
263
+ monthSelectHandler(day) {
264
+ if (!day) {
265
+ return;
266
+ }
267
+ day.isSelected = true;
268
+ if (this._config.minMode !== 'month') {
269
+ if (day.isDisabled) {
270
+ return;
271
+ }
272
+ this._store.dispatch(this._actions.navigateTo({
273
+ unit: {
274
+ month: getMonth(day.date),
275
+ year: getFullYear(day.date)
276
+ },
277
+ viewMode: 'day'
278
+ }));
279
+ return;
280
+ }
281
+ this.rangesProcessing(day);
282
+ }
283
+ yearSelectHandler(day) {
284
+ if (!day) {
285
+ return;
286
+ }
287
+ day.isSelected = true;
288
+ if (this._config.minMode !== 'year') {
289
+ if (day.isDisabled) {
290
+ return;
291
+ }
292
+ this._store.dispatch(this._actions.navigateTo({
293
+ unit: {
294
+ year: getFullYear(day.date)
295
+ },
296
+ viewMode: 'month'
297
+ }));
298
+ return;
299
+ }
300
+ this.rangesProcessing(day);
301
+ }
302
+ rangesProcessing(day) {
303
+ // if only one date is already selected
304
+ // and user clicks on previous date
305
+ // start selection from new date
306
+ // but if new date is after initial one
307
+ // than finish selection
308
+ if (this._rangeStack.length === 1) {
309
+ this._rangeStack =
310
+ day.date >= this._rangeStack[0]
311
+ ? [this._rangeStack[0], day.date]
312
+ : [day.date];
313
+ }
314
+ if (this._rangeStack.length === 0) {
315
+ this._rangeStack = [day.date];
316
+ if (this._config.maxDateRange) {
317
+ this.setMaxDateRangeOnCalendar(day.date);
318
+ }
319
+ }
320
+ this._store.dispatch(this._actions.selectRange(this._rangeStack));
321
+ if (this._rangeStack.length === 2) {
322
+ this._rangeStack = [];
323
+ }
324
+ }
325
+ ngOnDestroy() {
326
+ for (const sub of this._subs) {
327
+ sub.unsubscribe();
328
+ }
329
+ this._effects.destroy();
330
+ }
331
+ cancel() {
332
+ this._renderer.setStyle(this._element.nativeElement, 'display', 'none');
333
+ }
334
+ setRangeOnCalendar(dates) {
335
+ this._rangeStack = (dates === null) ? [] : (dates.value instanceof Date ? [dates.value] : dates.value);
336
+ this._store.dispatch(this._actions.selectRange(this._rangeStack));
337
+ }
338
+ setMaxDateRangeOnCalendar(currentSelection) {
339
+ const maxDateRange = new Date(currentSelection);
340
+ maxDateRange.setDate(currentSelection.getDate() + this._config.maxDateRange);
341
+ this._effects.setMaxDate(maxDateRange);
342
+ }
343
+ }
344
+ MisDateRangePickerContainerComponent.ɵfac = function MisDateRangePickerContainerComponent_Factory(t) { return new (t || MisDateRangePickerContainerComponent)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i1.MisDatePickerConfig), i0.ɵɵdirectiveInject(i2.MisDatePickerStore), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i3.MisDatePickerActions), i0.ɵɵdirectiveInject(i4.MisDatePickerEffects), i0.ɵɵdirectiveInject(i5.PositioningService)); };
345
+ MisDateRangePickerContainerComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MisDateRangePickerContainerComponent, selectors: [["mis-daterangepicker-container"]], hostAttrs: ["role", "dialog", "aria-label", "calendar", 1, "bottom"], hostBindings: function MisDateRangePickerContainerComponent_HostBindings(rf, ctx) { if (rf & 1) {
346
+ i0.ɵɵlistener("click", function MisDateRangePickerContainerComponent_click_HostBindingHandler($event) { return ctx._stopPropagation($event); });
347
+ } }, features: [i0.ɵɵProvidersFeature([MisDatePickerStore, MisDatePickerEffects]), i0.ɵɵInheritDefinitionFeature], decls: 2, vars: 3, consts: [["class", "bs-datepicker", 3, "ngClass", 4, "ngIf"], [1, "bs-datepicker", 3, "ngClass"], [1, "bs-datepicker-container"], ["role", "application", 1, "bs-calendar-container", 3, "ngSwitch"], ["class", "bs-media-container", 4, "ngSwitchCase"], ["class", "bs-datepicker-buttons", 4, "ngIf"], ["class", "bs-datepicker-custom-range", 4, "ngIf"], [1, "bs-media-container"], [3, "bs-datepicker-multiple", "calendar", "options", "onNavigate", "onViewMode", "onHover", "onHoverWeek", "onSelect", 4, "ngFor", "ngForOf"], [3, "calendar", "options", "onNavigate", "onViewMode", "onHover", "onHoverWeek", "onSelect"], [3, "bs-datepicker-multiple", "calendar", "onNavigate", "onViewMode", "onHover", "onSelect", 4, "ngFor", "ngForOf"], [3, "calendar", "onNavigate", "onViewMode", "onHover", "onSelect"], [1, "bs-datepicker-buttons"], ["type", "button", 1, "btn", "btn-default", 3, "click"], ["type", "button", 1, "btn", "mis-btn-primary", 3, "click"], ["class", "btn-today-wrapper", 3, "today-left", "today-right", "today-center", 4, "ngIf"], ["class", "btn-clear-wrapper", 3, "clear-left", "clear-right", "clear-center", 4, "ngIf"], [1, "btn-today-wrapper"], [1, "btn", "btn-success", 3, "click"], [1, "btn-clear-wrapper"], [1, "bs-datepicker-custom-range"], [3, "selectedRange", "ranges", "customRangeLabel", "onSelect"]], template: function MisDateRangePickerContainerComponent_Template(rf, ctx) { if (rf & 1) {
348
+ i0.ɵɵtemplate(0, MisDateRangePickerContainerComponent_div_0_Template, 11, 13, "div", 0);
349
+ i0.ɵɵpipe(1, "async");
350
+ } if (rf & 2) {
351
+ i0.ɵɵproperty("ngIf", i0.ɵɵpipeBind1(1, 1, ctx.viewMode));
352
+ } }, dependencies: [i6.NgClass, i6.NgForOf, i6.NgIf, i6.NgSwitch, i6.NgSwitchCase, i7.BsCustomDatesViewComponent, i8.MisDaysCalendarViewComponent, i9.BsMonthCalendarViewComponent, i10.BsYearsCalendarViewComponent, i6.AsyncPipe], encapsulation: 2, data: { animation: [datepickerAnimation] } });
353
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MisDateRangePickerContainerComponent, [{
354
+ type: Component,
355
+ args: [{ selector: 'mis-daterangepicker-container', providers: [MisDatePickerStore, MisDatePickerEffects], host: {
356
+ class: 'bottom',
357
+ '(click)': '_stopPropagation($event)',
358
+ role: 'dialog',
359
+ 'aria-label': 'calendar'
360
+ }, animations: [datepickerAnimation], template: "<!-- days calendar view mode -->\n<div class=\"bs-datepicker\" [ngClass]=\"containerClass\" *ngIf=\"viewMode | async\">\n <div class=\"bs-datepicker-container\" [@datepickerAnimation]=\"animationState\"\n (@datepickerAnimation.done)=\"positionServiceEnable()\">\n <!--calendars-->\n <div class=\"bs-calendar-container\" [ngSwitch]=\"viewMode | async\" role=\"application\">\n <!--days calendar-->\n <div *ngSwitchCase=\"'day'\" class=\"bs-media-container\">\n <mis-days-calendar-view *ngFor=\"let calendar of daysCalendar | async\"\n [class.bs-datepicker-multiple]=\"(daysCalendar | async)?.length > 1\" [calendar]=\"calendar\"\n [options]=\"options | async\" (onNavigate)=\"navigateTo($event)\" (onViewMode)=\"setViewMode($event)\"\n (onHover)=\"dayHoverHandler($event)\" (onHoverWeek)=\"weekHoverHandler($event)\"\n (onSelect)=\"daySelectHandler($event)\">\n </mis-days-calendar-view>\n </div>\n\n <!--months calendar-->\n <div *ngSwitchCase=\"'month'\" class=\"bs-media-container\">\n <mis-month-calendar-view *ngFor=\"let calendar of monthsCalendar | async\"\n [class.bs-datepicker-multiple]=\"(daysCalendar | async)?.length > 1\" [calendar]=\"calendar\"\n (onNavigate)=\"navigateTo($event)\" (onViewMode)=\"setViewMode($event)\" (onHover)=\"monthHoverHandler($event)\"\n (onSelect)=\"monthSelectHandler($event)\">\n </mis-month-calendar-view>\n </div>\n\n <!--years calendar-->\n <div *ngSwitchCase=\"'year'\" class=\"bs-media-container\">\n <mis-years-calendar-view *ngFor=\"let calendar of yearsCalendar | async\"\n [class.bs-datepicker-multiple]=\"(daysCalendar | async)?.length > 1\" [calendar]=\"calendar\"\n (onNavigate)=\"navigateTo($event)\" (onViewMode)=\"setViewMode($event)\" (onHover)=\"yearHoverHandler($event)\"\n (onSelect)=\"yearSelectHandler($event)\">\n </mis-years-calendar-view>\n </div>\n </div>\n\n <!--applycancel buttons-->\n <div class=\"bs-datepicker-buttons\" *ngIf=\"(daysCalendar | async)?.length > 1\">\n <button class=\"btn btn-default\" (click)=\"cancel()\" type=\"button\">Cancel</button>\n <button class=\"btn mis-btn-primary\" (click)=\"dayApplyHandler($event)\" type=\"button\">Apply</button>\n </div>\n\n <div class=\"bs-datepicker-buttons\" *ngIf=\"showTodayBtn || showClearBtn\">\n <div class=\"btn-today-wrapper\" [class.today-left]=\"todayPos === 'left'\" [class.today-right]=\"todayPos === 'right'\"\n [class.today-center]=\"todayPos === 'center'\" *ngIf=\"showTodayBtn\">\n <button class=\"btn btn-success\" (click)=\"setToday()\">{{todayBtnLbl}}</button>\n </div>\n\n <div class=\"btn-clear-wrapper\" [class.clear-left]=\"clearPos === 'left'\" [class.clear-right]=\"clearPos === 'right'\"\n [class.clear-center]=\"clearPos === 'center'\" *ngIf=\"showClearBtn\">\n <button class=\"btn btn-success\" (click)=\"clearDate()\">{{clearBtnLbl}}</button>\n </div>\n </div>\n\n </div>\n\n <!--custom dates or date ranges picker-->\n <div class=\"bs-datepicker-custom-range\" *ngIf=\"customRanges?.length > 0\">\n <mis-custom-date-view [selectedRange]=\"chosenRange\" [ranges]=\"customRanges\" [customRangeLabel]=\"customRangeBtnLbl\"\n (onSelect)=\"setRangeOnCalendar($event)\">\n </mis-custom-date-view>\n </div>\n</div>" }]
361
+ }], function () { return [{ type: i0.Renderer2 }, { type: i1.MisDatePickerConfig }, { type: i2.MisDatePickerStore }, { type: i0.ElementRef }, { type: i3.MisDatePickerActions }, { type: i4.MisDatePickerEffects }, { type: i5.PositioningService }]; }, null); })();
362
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL3RoZW1lcy9icy9icy1kYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvdGhlbWVzL2JzL2JzLWRhdGVwaWNrZXItdmlldy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFnQyxNQUFNLGVBQWUsQ0FBQztBQUVsRyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHdEQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFJcEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDdkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0lDTjFELGlEQUl3QztJQUZWLGtQQUFjLGVBQUEseUJBQWtCLENBQUEsSUFBQyxzT0FBZSxlQUFBLDJCQUFtQixDQUFBLElBQWxDLGdPQUNsRCxlQUFBLCtCQUF1QixDQUFBLElBRDJCLHdPQUNWLGVBQUEsZ0NBQXdCLENBQUEsSUFEZCxrT0FFakQsZUFBQSxnQ0FBd0IsQ0FBQSxJQUZ5Qjs7O0lBRy9ELGlCQUF5Qjs7Ozs7SUFKdkIscUlBQW1FO0lBQUMsc0NBQXFCLGlEQUFBOzs7SUFGN0YsOEJBQXNEO0lBQ3BELHVJQUt5Qjs7SUFDM0IsaUJB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QUN2RyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQseUJBQXlCLENBQUMsZ0JBQXNCO1FBQzlDLE1BQU0sWUFBWSxHQUFHLElBQUksSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDaEQsWUFBWSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdFLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7O3dIQXpNVSxvQ0FBb0M7dUZBQXBDLG9DQUFvQzt1SEFBcEMsNEJBQXdCOzBDQVZ4QixDQUFDLGtCQUFrQixFQUFFLG9CQUFvQixDQUFDO1FDbEJ2RCx1RkE0RE07OztRQTVEaUQseURBQXNCOzhRRDBCL0QsQ0FBQyxtQkFBbUIsQ0FBQzt1RkFFdEIsb0NBQW9DO2NBWmhELFNBQVM7MkJBQ0UsK0JBQStCLGFBQzlCLENBQUMsa0JBQWtCLEVBQUUsb0JBQW9CLENBQUMsUUFFL0M7b0JBQ0osS0FBSyxFQUFFLFFBQVE7b0JBQ2YsU0FBUyxFQUFFLDBCQUEwQjtvQkFDckMsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsWUFBWSxFQUFFLFVBQVU7aUJBQ3pCLGNBQ1csQ0FBQyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3ksIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgZ2V0RnVsbFllYXIsIGdldE1vbnRoIH0gZnJvbSAnLi4vLi4vY2hyb25vcyc7XG5pbXBvcnQgeyBQb3NpdGlvbmluZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9wb3NpdGlvbmluZyc7XG5cbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJBYnN0cmFjdENvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UvYnMtZGF0ZXBpY2tlci1jb250YWluZXInO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbmZpZyB9IGZyb20gJy4uLy4uL2JzLWRhdGVwaWNrZXIuY29uZmlnJztcbmltcG9ydCB7IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCwgRGF5Vmlld01vZGVsIH0gZnJvbSAnLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJBY3Rpb25zIH0gZnJvbSAnLi4vLi4vcmVkdWNlci9icy1kYXRlcGlja2VyLmFjdGlvbnMnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckVmZmVjdHMgfSBmcm9tICcuLi8uLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuZWZmZWN0cyc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyU3RvcmUgfSBmcm9tICcuLi8uLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuc3RvcmUnO1xuaW1wb3J0IHsgZGF0ZXBpY2tlckFuaW1hdGlvbiB9IGZyb20gJy4uLy4uL2RhdGVwaWNrZXItYW5pbWF0aW9ucyc7XG5pbXBvcnQgeyBCc0N1c3RvbURhdGVzIH0gZnJvbSAnLi9icy1jdXN0b20tZGF0ZXMtdmlldy5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtaXMtZGF0ZXJhbmdlcGlja2VyLWNvbnRhaW5lcicsXG4gIHByb3ZpZGVyczogW01pc0RhdGVQaWNrZXJTdG9yZSwgTWlzRGF0ZVBpY2tlckVmZmVjdHNdLFxuICB0ZW1wbGF0ZVVybDogJy4vYnMtZGF0ZXBpY2tlci12aWV3Lmh0bWwnLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdib3R0b20nLFxuICAgICcoY2xpY2spJzogJ19zdG9wUHJvcGFnYXRpb24oJGV2ZW50KScsXG4gICAgcm9sZTogJ2RpYWxvZycsXG4gICAgJ2FyaWEtbGFiZWwnOiAnY2FsZW5kYXInXG4gIH0sXG4gIGFuaW1hdGlvbnM6IFtkYXRlcGlja2VyQW5pbWF0aW9uXVxufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQgZXh0ZW5kcyBNaXNEYXRlUGlja2VyQWJzdHJhY3RDb21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHNldCB2YWx1ZSh2YWx1ZTogRGF0ZVtdKSB7XG4gICAgdGhpcy5fZWZmZWN0cy5zZXRSYW5nZVZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIHZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlW10+KCk7XG4gIGFuaW1hdGlvblN0YXRlID0gJ3ZvaWQnO1xuXG4gIF9yYW5nZVN0YWNrOiBEYXRlW10gPSBbXTtcbiAgY2hvc2VuUmFuZ2U6IERhdGVbXSA9IFtdO1xuICBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgX2NvbmZpZzogTWlzRGF0ZVBpY2tlckNvbmZpZyxcbiAgICBwcml2YXRlIF9zdG9yZTogTWlzRGF0ZVBpY2tlclN0b3JlLFxuICAgIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBfYWN0aW9uczogTWlzRGF0ZVBpY2tlckFjdGlvbnMsXG4gICAgX2VmZmVjdHM6IE1pc0RhdGVQaWNrZXJFZmZlY3RzLFxuICAgIHByaXZhdGUgX3Bvc2l0aW9uU2VydmljZTogUG9zaXRpb25pbmdTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fZWZmZWN0cyA9IF9lZmZlY3RzO1xuXG4gICAgdGhpcy5jdXN0b21SYW5nZXMgPSB0aGlzLl9jb25maWcucmFuZ2VzO1xuICAgIHRoaXMuY3VzdG9tUmFuZ2VCdG5MYmwgPSB0aGlzLl9jb25maWcuY3VzdG9tUmFuZ2VCdXR0b25MYWJlbDtcblxuICAgIF9yZW5kZXJlci5zZXRTdHlsZShfZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnZGlzcGxheScsICdibG9jaycpO1xuICAgIF9yZW5kZXJlci5zZXRTdHlsZShfZWxlbWVudC5uYXRpdmVFbGVtZW50LCAncG9zaXRpb24nLCAnYWJzb2x1dGUnKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3Bvc2l0aW9uU2VydmljZS5zZXRPcHRpb25zKHtcbiAgICAgIG1vZGlmaWVyczogeyBmbGlwOiB7IGVuYWJsZWQ6IHRoaXMuX2NvbmZpZy5hZGFwdGl2ZVBvc2l0aW9uIH0gfSxcbiAgICAgIGFsbG93ZWRQb3NpdGlvbnM6IFsndG9wJywgJ2JvdHRvbSddXG4gICAgfSk7XG5cbiAgICB0aGlzLl9wb3NpdGlvblNlcnZpY2UuZXZlbnQkXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZSgxKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuX3Bvc2l0aW9uU2VydmljZS5kaXNhYmxlKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuX2NvbmZpZy5pc0FuaW1hdGVkKSB7XG4gICAgICAgICAgdGhpcy5hbmltYXRpb25TdGF0ZSA9IHRoaXMuaXNUb3BQb3NpdGlvbiA/ICdhbmltYXRlZC11cCcgOiAnYW5pbWF0ZWQtZG93bic7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmFuaW1hdGlvblN0YXRlID0gJ3VuYW5pbWF0ZWQnO1xuICAgICAgfSk7XG4gICAgdGhpcy5jb250YWluZXJDbGFzcyA9IHRoaXMuX2NvbmZpZy5jb250YWluZXJDbGFzcztcbiAgICB0aGlzLmlzT3RoZXJNb250aHNBY3RpdmUgPSB0aGlzLl9jb25maWcuc2VsZWN0RnJvbU90aGVyTW9udGg7XG4gICAgdGhpcy5fZWZmZWN0c1xuICAgICAgLmluaXQodGhpcy5fc3RvcmUpXG4gICAgICAvLyBpbnRpYWwgc3RhdGUgb3B0aW9uc1xuICAgICAgLy8gdG9kbzogZml4IHRoaXMsIHNwbGl0IGNvbmZpZ3NcbiAgICAgIC5zZXRPcHRpb25zKHRoaXMuX2NvbmZpZylcbiAgICAgIC8vIGRhdGEgYmluZGluZyB2aWV3IC0tPiBtb2RlbFxuICAgICAgLnNldEJpbmRpbmdzKHRoaXMpXG4gICAgICAvLyBzZXQgZXZlbnQgaGFuZGxlcnNcbiAgICAgIC5zZXRFdmVudEhhbmRsZXJzKHRoaXMpXG4gICAgICAucmVnaXN0ZXJEYXRlUGlja2VyU2lkZUVmZmVjdHMoKTtcblxuICAgIC8vIHRvZG86IG1vdmUgaXQgc29tZXdoZXJlIGVsc2VcbiAgICAvLyBvbiBzZWxlY3RlZCBkYXRlIGNoYW5nZVxuICAgIHRoaXMuX3N1YnMucHVzaChcbiAgICAgIHRoaXMuX3N0b3JlXG4gICAgICAgIC5zZWxlY3Qoc3RhdGUgPT4gc3RhdGUuc2VsZWN0ZWRSYW5nZSlcbiAgICAgICAgLnN1YnNjcmliZShkYXRlID0+IHtcbiAgICAgICAgICB0aGlzLmNob3NlblJhbmdlID0gZGF0ZTtcbiAgICAgICAgICBpZih0aGlzLl9jb25maWcuZW1pdE9uRGF0ZVJhbmdlU2VsZWN0KXtcbiAgICAgICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdChkYXRlKVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0IGlzVG9wUG9zaXRpb24oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ3RvcCcpO1xuICB9XG5cbiAgcG9zaXRpb25TZXJ2aWNlRW5hYmxlKCk6IHZvaWQge1xuICAgIHRoaXMuX3Bvc2l0aW9uU2VydmljZS5lbmFibGUoKTtcbiAgfVxuXG4gIGRheVNlbGVjdEhhbmRsZXIoZGF5OiBEYXlWaWV3TW9kZWwpOiB2b2lkIHtcbiAgICBpZiAoIWRheSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBpc0Rpc2FibGVkID0gdGhpcy5pc090aGVyTW9udGhzQWN0aXZlID8gZGF5LmlzRGlzYWJsZWQgOiAoZGF5LmlzT3RoZXJNb250aCB8fCBkYXkuaXNEaXNhYmxlZCk7XG5cbiAgICBpZiAoaXNEaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnJhbmdlc1Byb2Nlc3NpbmcoZGF5KTtcbiAgfVxuICBkYXlBcHBseUhhbmRsZXIoZGF5OiBEYXlWaWV3TW9kZWwpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodGhpcy5jaG9zZW5SYW5nZSk7XG4gIH1cbiAgbW9udGhTZWxlY3RIYW5kbGVyKGRheTogQ2FsZW5kYXJDZWxsVmlld01vZGVsKTogdm9pZCB7XG4gICAgaWYgKCFkYXkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBkYXkuaXNTZWxlY3RlZCA9IHRydWU7XG5cbiAgICBpZiAodGhpcy5fY29uZmlnLm1pbk1vZGUgIT09ICdtb250aCcpIHtcbiAgICAgIGlmIChkYXkuaXNEaXNhYmxlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5uYXZpZ2F0ZVRvKHtcbiAgICAgICAgICB1bml0OiB7XG4gICAgICAgICAgICBtb250aDogZ2V0TW9udGgoZGF5LmRhdGUpLFxuICAgICAgICAgICAgeWVhcjogZ2V0RnVsbFllYXIoZGF5LmRhdGUpXG4gICAgICAgICAgfSxcbiAgICAgICAgICB2aWV3TW9kZTogJ2RheSdcbiAgICAgICAgfSlcbiAgICAgICk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5yYW5nZXNQcm9jZXNzaW5nKGRheSk7XG4gIH1cblxuICB5ZWFyU2VsZWN0SGFuZGxlcihkYXk6IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCk6IHZvaWQge1xuICAgIGlmICghZGF5KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgZGF5LmlzU2VsZWN0ZWQgPSB0cnVlO1xuXG4gICAgaWYgKHRoaXMuX2NvbmZpZy5taW5Nb2RlICE9PSAneWVhcicpIHtcbiAgICAgIGlmIChkYXkuaXNEaXNhYmxlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aGlzLl9zdG9yZS5kaXNwYXRjaChcbiAgICAgICAgdGhpcy5fYWN0aW9ucy5uYXZpZ2F0ZVRvKHtcbiAgICAgICAgICB1bml0OiB7XG4gICAgICAgICAgICB5ZWFyOiBnZXRGdWxsWWVhcihkYXkuZGF0ZSlcbiAgICAgICAgICB9LFxuICAgICAgICAgIHZpZXdNb2RlOiAnbW9udGgnXG4gICAgICAgIH0pXG4gICAgICApO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMucmFuZ2VzUHJvY2Vzc2luZyhkYXkpO1xuICB9XG5cbiAgcmFuZ2VzUHJvY2Vzc2luZyhkYXk6IENhbGVuZGFyQ2VsbFZpZXdNb2RlbCk6IHZvaWQge1xuICAgIC8vIGlmIG9ubHkgb25lIGRhdGUgaXMgYWxyZWFkeSBzZWxlY3RlZFxuICAgIC8vIGFuZCB1c2VyIGNsaWNrcyBvbiBwcmV2aW91cyBkYXRlXG4gICAgLy8gc3RhcnQgc2VsZWN0aW9uIGZyb20gbmV3IGRhdGVcbiAgICAvLyBidXQgaWYgbmV3IGRhdGUgaXMgYWZ0ZXIgaW5pdGlhbCBvbmVcbiAgICAvLyB0aGFuIGZpbmlzaCBzZWxlY3Rpb25cblxuICAgIGlmICh0aGlzLl9yYW5nZVN0YWNrLmxlbmd0aCA9PT0gMSkge1xuICAgICAgdGhpcy5fcmFuZ2VTdGFjayA9XG4gICAgICAgIGRheS5kYXRlID49IHRoaXMuX3JhbmdlU3RhY2tbMF1cbiAgICAgICAgICA/IFt0aGlzLl9yYW5nZVN0YWNrWzBdLCBkYXkuZGF0ZV1cbiAgICAgICAgICA6ICBbZGF5LmRhdGVdO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9yYW5nZVN0YWNrLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5fcmFuZ2VTdGFjayA9IFtkYXkuZGF0ZV07XG5cbiAgICAgIGlmICh0aGlzLl9jb25maWcubWF4RGF0ZVJhbmdlKSB7XG4gICAgICAgIHRoaXMuc2V0TWF4RGF0ZVJhbmdlT25DYWxlbmRhcihkYXkuZGF0ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2godGhpcy5fYWN0aW9ucy5zZWxlY3RSYW5nZSh0aGlzLl9yYW5nZVN0YWNrKSk7XG5cbiAgICBpZiAodGhpcy5fcmFuZ2VTdGFjay5sZW5ndGggPT09IDIpIHtcbiAgICAgIHRoaXMuX3JhbmdlU3RhY2sgPSBbXTtcbiAgICB9XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBmb3IgKGNvbnN0IHN1YiBvZiB0aGlzLl9zdWJzKSB7XG4gICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gICAgdGhpcy5fZWZmZWN0cy5kZXN0cm95KCk7XG4gIH1cbiAgY2FuY2VsKCl7XG4gICAgdGhpcy5fcmVuZGVyZXIuc2V0U3R5bGUodGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50LCAnZGlzcGxheScsICdub25lJyk7XG4gIH1cblxuICBzZXRSYW5nZU9uQ2FsZW5kYXIoZGF0ZXM6IEJzQ3VzdG9tRGF0ZXMpOiB2b2lkIHtcbiAgICB0aGlzLl9yYW5nZVN0YWNrID0gKGRhdGVzID09PSBudWxsKSA/IFtdIDogKGRhdGVzLnZhbHVlIGluc3RhbmNlb2YgRGF0ZSA/IFtkYXRlcy52YWx1ZV0gOiBkYXRlcy52YWx1ZSk7XG4gICAgdGhpcy5fc3RvcmUuZGlzcGF0Y2godGhpcy5fYWN0aW9ucy5zZWxlY3RSYW5nZSh0aGlzLl9yYW5nZVN0YWNrKSk7XG4gIH1cblxuICBzZXRNYXhEYXRlUmFuZ2VPbkNhbGVuZGFyKGN1cnJlbnRTZWxlY3Rpb246IERhdGUpOiB2b2lkIHtcbiAgICBjb25zdCBtYXhEYXRlUmFuZ2UgPSBuZXcgRGF0ZShjdXJyZW50U2VsZWN0aW9uKTtcbiAgICBtYXhEYXRlUmFuZ2Uuc2V0RGF0ZShjdXJyZW50U2VsZWN0aW9uLmdldERhdGUoKSArIHRoaXMuX2NvbmZpZy5tYXhEYXRlUmFuZ2UpO1xuICAgIHRoaXMuX2VmZmVjdHMuc2V0TWF4RGF0ZShtYXhEYXRlUmFuZ2UpO1xuICB9XG5cbn1cbiIsIjwhLS0gZGF5cyBjYWxlbmRhciB2aWV3IG1vZGUgLS0+XG48ZGl2IGNsYXNzPVwiYnMtZGF0ZXBpY2tlclwiIFtuZ0NsYXNzXT1cImNvbnRhaW5lckNsYXNzXCIgKm5nSWY9XCJ2aWV3TW9kZSB8IGFzeW5jXCI+XG4gIDxkaXYgY2xhc3M9XCJicy1kYXRlcGlja2VyLWNvbnRhaW5lclwiIFtAZGF0ZXBpY2tlckFuaW1hdGlvbl09XCJhbmltYXRpb25TdGF0ZVwiXG4gICAgKEBkYXRlcGlja2VyQW5pbWF0aW9uLmRvbmUpPVwicG9zaXRpb25TZXJ2aWNlRW5hYmxlKClcIj5cbiAgICA8IS0tY2FsZW5kYXJzLS0+XG4gICAgPGRpdiBjbGFzcz1cImJzLWNhbGVuZGFyLWNvbnRhaW5lclwiIFtuZ1N3aXRjaF09XCJ2aWV3TW9kZSB8IGFzeW5jXCIgcm9sZT1cImFwcGxpY2F0aW9uXCI+XG4gICAgICA8IS0tZGF5cyBjYWxlbmRhci0tPlxuICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ2RheSdcIiBjbGFzcz1cImJzLW1lZGlhLWNvbnRhaW5lclwiPlxuICAgICAgICA8bWlzLWRheXMtY2FsZW5kYXItdmlldyAqbmdGb3I9XCJsZXQgY2FsZW5kYXIgb2YgZGF5c0NhbGVuZGFyIHwgYXN5bmNcIlxuICAgICAgICAgIFtjbGFzcy5icy1kYXRlcGlja2VyLW11bHRpcGxlXT1cIihkYXlzQ2FsZW5kYXIgfCBhc3luYyk/Lmxlbmd0aCA+IDFcIiBbY2FsZW5kYXJdPVwiY2FsZW5kYXJcIlxuICAgICAgICAgIFtvcHRpb25zXT1cIm9wdGlvbnMgfCBhc3luY1wiIChvbk5hdmlnYXRlKT1cIm5hdmlnYXRlVG8oJGV2ZW50KVwiIChvblZpZXdNb2RlKT1cInNldFZpZXdNb2RlKCRldmVudClcIlxuICAgICAgICAgIChvbkhvdmVyKT1cImRheUhvdmVySGFuZGxlcigkZXZlbnQpXCIgKG9uSG92ZXJXZWVrKT1cIndlZWtIb3ZlckhhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAgICAgKG9uU2VsZWN0KT1cImRheVNlbGVjdEhhbmRsZXIoJGV2ZW50KVwiPlxuICAgICAgICA8L21pcy1kYXlzLWNhbGVuZGFyLXZpZXc+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLW1vbnRocyBjYWxlbmRhci0tPlxuICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ21vbnRoJ1wiIGNsYXNzPVwiYnMtbWVkaWEtY29udGFpbmVyXCI+XG4gICAgICAgIDxtaXMtbW9udGgtY2FsZW5kYXItdmlldyAqbmdGb3I9XCJsZXQgY2FsZW5kYXIgb2YgbW9udGhzQ2FsZW5kYXIgfCBhc3luY1wiXG4gICAgICAgICAgW2NsYXNzLmJzLWRhdGVwaWNrZXItbXVsdGlwbGVdPVwiKGRheXNDYWxlbmRhciB8IGFzeW5jKT8ubGVuZ3RoID4gMVwiIFtjYWxlbmRhcl09XCJjYWxlbmRhclwiXG4gICAgICAgICAgKG9uTmF2aWdhdGUpPVwibmF2aWdhdGVUbygkZXZlbnQpXCIgKG9uVmlld01vZGUpPVwic2V0Vmlld01vZGUoJGV2ZW50KVwiIChvbkhvdmVyKT1cIm1vbnRoSG92ZXJIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAgIChvblNlbGVjdCk9XCJtb250aFNlbGVjdEhhbmRsZXIoJGV2ZW50KVwiPlxuICAgICAgICA8L21pcy1tb250aC1jYWxlbmRhci12aWV3PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDwhLS15ZWFycyBjYWxlbmRhci0tPlxuICAgICAgPGRpdiAqbmdTd2l0Y2hDYXNlPVwiJ3llYXInXCIgY2xhc3M9XCJicy1tZWRpYS1jb250YWluZXJcIj5cbiAgICAgICAgPG1pcy15ZWFycy1jYWxlbmRhci12aWV3ICpuZ0Zvcj1cImxldCBjYWxlbmRhciBvZiB5ZWFyc0NhbGVuZGFyIHwgYXN5bmNcIlxuICAgICAgICAgIFtjbGFzcy5icy1kYXRlcGlja2VyLW11bHRpcGxlXT1cIihkYXlzQ2FsZW5kYXIgfCBhc3luYyk/Lmxlbmd0aCA+IDFcIiBbY2FsZW5kYXJdPVwiY2FsZW5kYXJcIlxuICAgICAgICAgIChvbk5hdmlnYXRlKT1cIm5hdmlnYXRlVG8oJGV2ZW50KVwiIChvblZpZXdNb2RlKT1cInNldFZpZXdNb2RlKCRldmVudClcIiAob25Ib3Zlcik9XCJ5ZWFySG92ZXJIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAgIChvblNlbGVjdCk9XCJ5ZWFyU2VsZWN0SGFuZGxlcigkZXZlbnQpXCI+XG4gICAgICAgIDwvbWlzLXllYXJzLWNhbGVuZGFyLXZpZXc+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDwhLS1hcHBseWNhbmNlbCBidXR0b25zLS0+XG4gICAgPGRpdiBjbGFzcz1cImJzLWRhdGVwaWNrZXItYnV0dG9uc1wiICpuZ0lmPVwiKGRheXNDYWxlbmRhciB8IGFzeW5jKT8ubGVuZ3RoID4gMVwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tZGVmYXVsdFwiIChjbGljayk9XCJjYW5jZWwoKVwiIHR5cGU9XCJidXR0b25cIj5DYW5jZWw8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gbWlzLWJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImRheUFwcGx5SGFuZGxlcigkZXZlbnQpXCIgdHlwZT1cImJ1dHRvblwiPkFwcGx5PC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYnMtZGF0ZXBpY2tlci1idXR0b25zXCIgKm5nSWY9XCJzaG93VG9kYXlCdG4gfHwgc2hvd0NsZWFyQnRuXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuLXRvZGF5LXdyYXBwZXJcIiBbY2xhc3MudG9kYXktbGVmdF09XCJ0b2RheVBvcyA9PT0gJ2xlZnQnXCIgW2NsYXNzLnRvZGF5LXJpZ2h0XT1cInRvZGF5UG9zID09PSAncmlnaHQnXCJcbiAgICAgICAgW2NsYXNzLnRvZGF5LWNlbnRlcl09XCJ0b2RheVBvcyA9PT0gJ2NlbnRlcidcIiAqbmdJZj1cInNob3dUb2RheUJ0blwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zdWNjZXNzXCIgKGNsaWNrKT1cInNldFRvZGF5KClcIj57e3RvZGF5QnRuTGJsfX08L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiYnRuLWNsZWFyLXdyYXBwZXJcIiBbY2xhc3MuY2xlYXItbGVmdF09XCJjbGVhclBvcyA9PT0gJ2xlZnQnXCIgW2NsYXNzLmNsZWFyLXJpZ2h0XT1cImNsZWFyUG9zID09PSAncmlnaHQnXCJcbiAgICAgICAgW2NsYXNzLmNsZWFyLWNlbnRlcl09XCJjbGVhclBvcyA9PT0gJ2NlbnRlcidcIiAqbmdJZj1cInNob3dDbGVhckJ0blwiPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zdWNjZXNzXCIgKGNsaWNrKT1cImNsZWFyRGF0ZSgpXCI+e3tjbGVhckJ0bkxibH19PC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cblxuICA8IS0tY3VzdG9tIGRhdGVzIG9yIGRhdGUgcmFuZ2VzIHBpY2tlci0tPlxuICA8ZGl2IGNsYXNzPVwiYnMtZGF0ZXBpY2tlci1jdXN0b20tcmFuZ2VcIiAqbmdJZj1cImN1c3RvbVJhbmdlcz8ubGVuZ3RoID4gMFwiPlxuICAgIDxtaXMtY3VzdG9tLWRhdGUtdmlldyBbc2VsZWN0ZWRSYW5nZV09XCJjaG9zZW5SYW5nZVwiIFtyYW5nZXNdPVwiY3VzdG9tUmFuZ2VzXCIgW2N1c3RvbVJhbmdlTGFiZWxdPVwiY3VzdG9tUmFuZ2VCdG5MYmxcIlxuICAgICAgKG9uU2VsZWN0KT1cInNldFJhbmdlT25DYWxlbmRhcigkZXZlbnQpXCI+XG4gICAgPC9taXMtY3VzdG9tLWRhdGUtdmlldz5cbiAgPC9kaXY+XG48L2Rpdj4iXX0=