mis-crystal-design-system 2.3.20 → 2.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/bundles/mis-crystal-design-system-datepicker_v2.umd.js +31 -13
  2. package/bundles/mis-crystal-design-system-datepicker_v2.umd.js.map +1 -1
  3. package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js +2 -2
  4. package/bundles/mis-crystal-design-system-datepicker_v2.umd.min.js.map +1 -1
  5. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.js +772 -0
  6. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.js.map +1 -0
  7. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js +16 -0
  8. package/bundles/mis-crystal-design-system-daterangepicker_v2.umd.min.js.map +1 -0
  9. package/datepicker_v2/mis-crystal-design-system-datepicker_v2.metadata.json +1 -1
  10. package/datepicker_v2/models/dp-config.model.d.ts +1 -0
  11. package/datepicker_v2/tz-datepicker.directive.d.ts +4 -3
  12. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +3 -0
  13. package/daterangepicker_v2/daterangepicker-constants.d.ts +4 -0
  14. package/daterangepicker_v2/daterangepicker.module.d.ts +2 -0
  15. package/{datepicker → daterangepicker_v2}/index.d.ts +0 -0
  16. package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.d.ts +7 -0
  17. package/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.metadata.json +1 -0
  18. package/daterangepicker_v2/models/drp-config.model.d.ts +37 -0
  19. package/daterangepicker_v2/package.json +11 -0
  20. package/daterangepicker_v2/public_api.d.ts +3 -0
  21. package/daterangepicker_v2/tz-daterangepicker.directive.d.ts +29 -0
  22. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +32 -0
  23. package/daterangepicker_v2/utils/index.d.ts +2 -0
  24. package/esm2015/datepicker_v2/datepicker.module.js +3 -2
  25. package/esm2015/datepicker_v2/models/dp-config.model.js +1 -1
  26. package/esm2015/datepicker_v2/tz-datepicker.directive.js +9 -7
  27. package/esm2015/datepicker_v2/tz-dp-container/tz-dp-container.component.js +19 -4
  28. package/esm2015/daterangepicker_v2/daterangepicker-constants.js +5 -0
  29. package/esm2015/daterangepicker_v2/daterangepicker.module.js +17 -0
  30. package/esm2015/daterangepicker_v2/index.js +2 -0
  31. package/esm2015/daterangepicker_v2/mis-crystal-design-system-daterangepicker_v2.js +7 -0
  32. package/esm2015/daterangepicker_v2/models/drp-config.model.js +2 -0
  33. package/esm2015/daterangepicker_v2/public_api.js +3 -0
  34. package/esm2015/daterangepicker_v2/tz-daterangepicker.directive.js +131 -0
  35. package/esm2015/daterangepicker_v2/tz-drp-container/tz-drp-container.component.js +228 -0
  36. package/esm2015/daterangepicker_v2/utils/index.js +45 -0
  37. package/fesm2015/mis-crystal-design-system-datepicker_v2.js +28 -10
  38. package/fesm2015/mis-crystal-design-system-datepicker_v2.js.map +1 -1
  39. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js +423 -0
  40. package/fesm2015/mis-crystal-design-system-daterangepicker_v2.js.map +1 -0
  41. package/package.json +1 -1
  42. package/bundles/mis-crystal-design-system-datepicker.umd.js +0 -13916
  43. package/bundles/mis-crystal-design-system-datepicker.umd.js.map +0 -1
  44. package/bundles/mis-crystal-design-system-datepicker.umd.min.js +0 -68
  45. package/bundles/mis-crystal-design-system-datepicker.umd.min.js.map +0 -1
  46. package/datepicker/base/bs-datepicker-container.d.ts +0 -44
  47. package/datepicker/bs-datepicker-inline.component.d.ts +0 -61
  48. package/datepicker/bs-datepicker-inline.config.d.ts +0 -3
  49. package/datepicker/bs-datepicker-input.directive.d.ts +0 -30
  50. package/datepicker/bs-datepicker.component.d.ts +0 -123
  51. package/datepicker/bs-datepicker.config.d.ts +0 -140
  52. package/datepicker/bs-datepicker.module.d.ts +0 -4
  53. package/datepicker/bs-daterangepicker-inline.component.d.ts +0 -61
  54. package/datepicker/bs-daterangepicker-inline.config.d.ts +0 -6
  55. package/datepicker/bs-daterangepicker-input.directive.d.ts +0 -30
  56. package/datepicker/bs-daterangepicker.component.d.ts +0 -115
  57. package/datepicker/bs-daterangepicker.config.d.ts +0 -4
  58. package/datepicker/bs-locale.service.d.ts +0 -10
  59. package/datepicker/date-formatter.d.ts +0 -3
  60. package/datepicker/datepicker-animations.d.ts +0 -3
  61. package/datepicker/datepicker-inner.component.d.ts +0 -75
  62. package/datepicker/datepicker.component.d.ts +0 -78
  63. package/datepicker/datepicker.config.d.ts +0 -19
  64. package/datepicker/datepicker.module.d.ts +0 -4
  65. package/datepicker/daypicker.component.d.ts +0 -14
  66. package/datepicker/engine/calc-days-calendar.d.ts +0 -2
  67. package/datepicker/engine/flag-days-calendar.d.ts +0 -17
  68. package/datepicker/engine/flag-months-calendar.d.ts +0 -12
  69. package/datepicker/engine/flag-years-calendar.d.ts +0 -12
  70. package/datepicker/engine/format-days-calendar.d.ts +0 -4
  71. package/datepicker/engine/format-months-calendar.d.ts +0 -2
  72. package/datepicker/engine/format-years-calendar.d.ts +0 -4
  73. package/datepicker/engine/view-mode.d.ts +0 -2
  74. package/datepicker/mis-crystal-design-system-datepicker.d.ts +0 -24
  75. package/datepicker/mis-crystal-design-system-datepicker.metadata.json +0 -1
  76. package/datepicker/models/index.d.ts +0 -102
  77. package/datepicker/monthpicker.component.d.ts +0 -11
  78. package/datepicker/package.json +0 -11
  79. package/datepicker/public_api.d.ts +0 -26
  80. package/datepicker/reducer/_defaults.d.ts +0 -2
  81. package/datepicker/reducer/bs-datepicker.actions.d.ts +0 -43
  82. package/datepicker/reducer/bs-datepicker.effects.d.ts +0 -38
  83. package/datepicker/reducer/bs-datepicker.reducer.d.ts +0 -3
  84. package/datepicker/reducer/bs-datepicker.state.d.ts +0 -43
  85. package/datepicker/reducer/bs-datepicker.store.d.ts +0 -5
  86. package/datepicker/sub-components/chronos/create/check-overflow.d.ts +0 -2
  87. package/datepicker/sub-components/chronos/create/clone.d.ts +0 -1
  88. package/datepicker/sub-components/chronos/create/date-from-array.d.ts +0 -2
  89. package/datepicker/sub-components/chronos/create/from-anything.d.ts +0 -4
  90. package/datepicker/sub-components/chronos/create/from-array.d.ts +0 -2
  91. package/datepicker/sub-components/chronos/create/from-object.d.ts +0 -2
  92. package/datepicker/sub-components/chronos/create/from-string-and-array.d.ts +0 -2
  93. package/datepicker/sub-components/chronos/create/from-string-and-format.d.ts +0 -4
  94. package/datepicker/sub-components/chronos/create/from-string.d.ts +0 -4
  95. package/datepicker/sub-components/chronos/create/local.d.ts +0 -3
  96. package/datepicker/sub-components/chronos/create/parsing-flags.d.ts +0 -2
  97. package/datepicker/sub-components/chronos/create/parsing.types.d.ts +0 -64
  98. package/datepicker/sub-components/chronos/create/valid.d.ts +0 -6
  99. package/datepicker/sub-components/chronos/duration/bubble.d.ts +0 -4
  100. package/datepicker/sub-components/chronos/duration/constructor.d.ts +0 -21
  101. package/datepicker/sub-components/chronos/duration/create.d.ts +0 -8
  102. package/datepicker/sub-components/chronos/duration/humanize.d.ts +0 -5
  103. package/datepicker/sub-components/chronos/duration/valid.d.ts +0 -2
  104. package/datepicker/sub-components/chronos/format/format.d.ts +0 -11
  105. package/datepicker/sub-components/chronos/format.d.ts +0 -5
  106. package/datepicker/sub-components/chronos/i18n/ar.d.ts +0 -2
  107. package/datepicker/sub-components/chronos/i18n/bg.d.ts +0 -2
  108. package/datepicker/sub-components/chronos/i18n/ca.d.ts +0 -2
  109. package/datepicker/sub-components/chronos/i18n/cs.d.ts +0 -2
  110. package/datepicker/sub-components/chronos/i18n/da.d.ts +0 -2
  111. package/datepicker/sub-components/chronos/i18n/de.d.ts +0 -2
  112. package/datepicker/sub-components/chronos/i18n/en-gb.d.ts +0 -2
  113. package/datepicker/sub-components/chronos/i18n/es-do.d.ts +0 -2
  114. package/datepicker/sub-components/chronos/i18n/es-us.d.ts +0 -2
  115. package/datepicker/sub-components/chronos/i18n/es.d.ts +0 -2
  116. package/datepicker/sub-components/chronos/i18n/et.d.ts +0 -2
  117. package/datepicker/sub-components/chronos/i18n/fi.d.ts +0 -2
  118. package/datepicker/sub-components/chronos/i18n/fr.d.ts +0 -2
  119. package/datepicker/sub-components/chronos/i18n/gl.d.ts +0 -2
  120. package/datepicker/sub-components/chronos/i18n/he.d.ts +0 -2
  121. package/datepicker/sub-components/chronos/i18n/hi.d.ts +0 -2
  122. package/datepicker/sub-components/chronos/i18n/hr.d.ts +0 -2
  123. package/datepicker/sub-components/chronos/i18n/hu.d.ts +0 -2
  124. package/datepicker/sub-components/chronos/i18n/id.d.ts +0 -2
  125. package/datepicker/sub-components/chronos/i18n/it.d.ts +0 -2
  126. package/datepicker/sub-components/chronos/i18n/ja.d.ts +0 -2
  127. package/datepicker/sub-components/chronos/i18n/ka.d.ts +0 -2
  128. package/datepicker/sub-components/chronos/i18n/kk.d.ts +0 -2
  129. package/datepicker/sub-components/chronos/i18n/ko.d.ts +0 -2
  130. package/datepicker/sub-components/chronos/i18n/lt.d.ts +0 -2
  131. package/datepicker/sub-components/chronos/i18n/lv.d.ts +0 -2
  132. package/datepicker/sub-components/chronos/i18n/mn.d.ts +0 -2
  133. package/datepicker/sub-components/chronos/i18n/nb.d.ts +0 -2
  134. package/datepicker/sub-components/chronos/i18n/nl-be.d.ts +0 -2
  135. package/datepicker/sub-components/chronos/i18n/nl.d.ts +0 -2
  136. package/datepicker/sub-components/chronos/i18n/pl.d.ts +0 -2
  137. package/datepicker/sub-components/chronos/i18n/pt-br.d.ts +0 -2
  138. package/datepicker/sub-components/chronos/i18n/ro.d.ts +0 -2
  139. package/datepicker/sub-components/chronos/i18n/ru.d.ts +0 -2
  140. package/datepicker/sub-components/chronos/i18n/sk.d.ts +0 -2
  141. package/datepicker/sub-components/chronos/i18n/sl.d.ts +0 -2
  142. package/datepicker/sub-components/chronos/i18n/sq.d.ts +0 -2
  143. package/datepicker/sub-components/chronos/i18n/sv.d.ts +0 -2
  144. package/datepicker/sub-components/chronos/i18n/th-be.d.ts +0 -2
  145. package/datepicker/sub-components/chronos/i18n/th.d.ts +0 -2
  146. package/datepicker/sub-components/chronos/i18n/tr.d.ts +0 -2
  147. package/datepicker/sub-components/chronos/i18n/uk.d.ts +0 -2
  148. package/datepicker/sub-components/chronos/i18n/vi.d.ts +0 -2
  149. package/datepicker/sub-components/chronos/i18n/zh-cn.d.ts +0 -2
  150. package/datepicker/sub-components/chronos/index.d.ts +0 -1
  151. package/datepicker/sub-components/chronos/locale/calendar.d.ts +0 -8
  152. package/datepicker/sub-components/chronos/locale/locale.class.d.ts +0 -143
  153. package/datepicker/sub-components/chronos/locale/locale.defaults.d.ts +0 -11
  154. package/datepicker/sub-components/chronos/locale/locales.d.ts +0 -7
  155. package/datepicker/sub-components/chronos/moment/add-subtract.d.ts +0 -5
  156. package/datepicker/sub-components/chronos/moment/calendar.d.ts +0 -15
  157. package/datepicker/sub-components/chronos/moment/diff.d.ts +0 -3
  158. package/datepicker/sub-components/chronos/moment/min-max.d.ts +0 -2
  159. package/datepicker/sub-components/chronos/parse/regex.d.ts +0 -22
  160. package/datepicker/sub-components/chronos/parse/token.d.ts +0 -5
  161. package/datepicker/sub-components/chronos/public_api.d.ts +0 -57
  162. package/datepicker/sub-components/chronos/test/chain.d.ts +0 -214
  163. package/datepicker/sub-components/chronos/types.d.ts +0 -36
  164. package/datepicker/sub-components/chronos/units/aliases.d.ts +0 -7
  165. package/datepicker/sub-components/chronos/units/constants.d.ts +0 -9
  166. package/datepicker/sub-components/chronos/units/day-of-month.d.ts +0 -1
  167. package/datepicker/sub-components/chronos/units/day-of-week.d.ts +0 -20
  168. package/datepicker/sub-components/chronos/units/day-of-year.d.ts +0 -3
  169. package/datepicker/sub-components/chronos/units/hour.d.ts +0 -1
  170. package/datepicker/sub-components/chronos/units/index.d.ts +0 -18
  171. package/datepicker/sub-components/chronos/units/millisecond.d.ts +0 -1
  172. package/datepicker/sub-components/chronos/units/minute.d.ts +0 -1
  173. package/datepicker/sub-components/chronos/units/month.d.ts +0 -2
  174. package/datepicker/sub-components/chronos/units/offset.d.ts +0 -10
  175. package/datepicker/sub-components/chronos/units/priorities.d.ts +0 -1
  176. package/datepicker/sub-components/chronos/units/quarter.d.ts +0 -3
  177. package/datepicker/sub-components/chronos/units/second.d.ts +0 -1
  178. package/datepicker/sub-components/chronos/units/timestamp.d.ts +0 -1
  179. package/datepicker/sub-components/chronos/units/timezone.d.ts +0 -3
  180. package/datepicker/sub-components/chronos/units/week-calendar-utils.d.ts +0 -9
  181. package/datepicker/sub-components/chronos/units/week-year.d.ts +0 -8
  182. package/datepicker/sub-components/chronos/units/week.d.ts +0 -6
  183. package/datepicker/sub-components/chronos/units/year.d.ts +0 -4
  184. package/datepicker/sub-components/chronos/utils/abs-ceil.d.ts +0 -1
  185. package/datepicker/sub-components/chronos/utils/abs-round.d.ts +0 -1
  186. package/datepicker/sub-components/chronos/utils/compare-arrays.d.ts +0 -1
  187. package/datepicker/sub-components/chronos/utils/date-compare.d.ts +0 -9
  188. package/datepicker/sub-components/chronos/utils/date-getters.d.ts +0 -18
  189. package/datepicker/sub-components/chronos/utils/date-setters.d.ts +0 -12
  190. package/datepicker/sub-components/chronos/utils/defaults.d.ts +0 -1
  191. package/datepicker/sub-components/chronos/utils/start-end-of.d.ts +0 -3
  192. package/datepicker/sub-components/chronos/utils/type-checks.d.ts +0 -12
  193. package/datepicker/sub-components/chronos/utils/zero-fill.d.ts +0 -1
  194. package/datepicker/sub-components/chronos/utils.d.ts +0 -2
  195. package/datepicker/sub-components/component-loader/bs-component-ref.class.d.ts +0 -5
  196. package/datepicker/sub-components/component-loader/component-loader.class.d.ts +0 -75
  197. package/datepicker/sub-components/component-loader/component-loader.factory.d.ts +0 -18
  198. package/datepicker/sub-components/component-loader/content-ref.class.d.ts +0 -7
  199. package/datepicker/sub-components/component-loader/index.d.ts +0 -1
  200. package/datepicker/sub-components/component-loader/listen-options.model.d.ts +0 -11
  201. package/datepicker/sub-components/component-loader/public_api.d.ts +0 -4
  202. package/datepicker/sub-components/mini-ngrx/index.d.ts +0 -1
  203. package/datepicker/sub-components/mini-ngrx/public_api.d.ts +0 -7
  204. package/datepicker/sub-components/mini-ngrx/state.class.d.ts +0 -8
  205. package/datepicker/sub-components/mini-ngrx/store.class.d.ts +0 -16
  206. package/datepicker/sub-components/positioning/index.d.ts +0 -1
  207. package/datepicker/sub-components/positioning/models/index.d.ts +0 -41
  208. package/datepicker/sub-components/positioning/modifiers/arrow.d.ts +0 -2
  209. package/datepicker/sub-components/positioning/modifiers/flip.d.ts +0 -2
  210. package/datepicker/sub-components/positioning/modifiers/index.d.ts +0 -5
  211. package/datepicker/sub-components/positioning/modifiers/initData.d.ts +0 -2
  212. package/datepicker/sub-components/positioning/modifiers/preventOverflow.d.ts +0 -2
  213. package/datepicker/sub-components/positioning/modifiers/shift.d.ts +0 -2
  214. package/datepicker/sub-components/positioning/ng-positioning.d.ts +0 -8
  215. package/datepicker/sub-components/positioning/positioning.service.d.ts +0 -45
  216. package/datepicker/sub-components/positioning/public_api.d.ts +0 -2
  217. package/datepicker/sub-components/positioning/utils/computeAutoPlacement.d.ts +0 -2
  218. package/datepicker/sub-components/positioning/utils/findCommonOffsetParent.d.ts +0 -1
  219. package/datepicker/sub-components/positioning/utils/getBordersSize.d.ts +0 -4
  220. package/datepicker/sub-components/positioning/utils/getBoundaries.d.ts +0 -1
  221. package/datepicker/sub-components/positioning/utils/getBoundingClientRect.d.ts +0 -2
  222. package/datepicker/sub-components/positioning/utils/getClientRect.d.ts +0 -5
  223. package/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.d.ts +0 -4
  224. package/datepicker/sub-components/positioning/utils/getOffsetParent.d.ts +0 -1
  225. package/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.d.ts +0 -2
  226. package/datepicker/sub-components/positioning/utils/getOffsets.d.ts +0 -2
  227. package/datepicker/sub-components/positioning/utils/getOppositePlacement.d.ts +0 -4
  228. package/datepicker/sub-components/positioning/utils/getOppositeVariation.d.ts +0 -4
  229. package/datepicker/sub-components/positioning/utils/getOuterSizes.d.ts +0 -7
  230. package/datepicker/sub-components/positioning/utils/getParentNode.d.ts +0 -4
  231. package/datepicker/sub-components/positioning/utils/getReferenceOffsets.d.ts +0 -2
  232. package/datepicker/sub-components/positioning/utils/getRoot.d.ts +0 -4
  233. package/datepicker/sub-components/positioning/utils/getScroll.d.ts +0 -4
  234. package/datepicker/sub-components/positioning/utils/getScrollParent.d.ts +0 -1
  235. package/datepicker/sub-components/positioning/utils/getStyleComputedProperty.d.ts +0 -4
  236. package/datepicker/sub-components/positioning/utils/getTargetOffsets.d.ts +0 -2
  237. package/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.d.ts +0 -2
  238. package/datepicker/sub-components/positioning/utils/getWindowSizes.d.ts +0 -4
  239. package/datepicker/sub-components/positioning/utils/includeScroll.d.ts +0 -2
  240. package/datepicker/sub-components/positioning/utils/index.d.ts +0 -23
  241. package/datepicker/sub-components/positioning/utils/isBrowser.d.ts +0 -1
  242. package/datepicker/sub-components/positioning/utils/isFixed.d.ts +0 -1
  243. package/datepicker/sub-components/positioning/utils/isIE.d.ts +0 -1
  244. package/datepicker/sub-components/positioning/utils/isModifierEnabled.d.ts +0 -4
  245. package/datepicker/sub-components/positioning/utils/isNumeric.d.ts +0 -4
  246. package/datepicker/sub-components/positioning/utils/isOffsetContainer.d.ts +0 -1
  247. package/datepicker/sub-components/positioning/utils/setStyles.d.ts +0 -5
  248. package/datepicker/sub-components/positioning/utils/updateContainerClass.d.ts +0 -6
  249. package/datepicker/sub-components/tooltip/index.d.ts +0 -1
  250. package/datepicker/sub-components/tooltip/public_api.d.ts +0 -4
  251. package/datepicker/sub-components/tooltip/tooltip-container.component.d.ts +0 -14
  252. package/datepicker/sub-components/tooltip/tooltip.config.d.ts +0 -13
  253. package/datepicker/sub-components/tooltip/tooltip.directive.d.ts +0 -109
  254. package/datepicker/sub-components/tooltip/tooltip.module.d.ts +0 -4
  255. package/datepicker/sub-components/utils/decorators.d.ts +0 -1
  256. package/datepicker/sub-components/utils/facade/browser.d.ts +0 -23
  257. package/datepicker/sub-components/utils/index.d.ts +0 -1
  258. package/datepicker/sub-components/utils/linked-list.class.d.ts +0 -26
  259. package/datepicker/sub-components/utils/public_api.d.ts +0 -10
  260. package/datepicker/sub-components/utils/theme-provider.d.ts +0 -2
  261. package/datepicker/sub-components/utils/trigger.class.d.ts +0 -6
  262. package/datepicker/sub-components/utils/triggers.d.ts +0 -18
  263. package/datepicker/sub-components/utils/utils.class.d.ts +0 -4
  264. package/datepicker/sub-components/utils/warn-once.d.ts +0 -1
  265. package/datepicker/themes/bs/bs-calendar-layout.component.d.ts +0 -2
  266. package/datepicker/themes/bs/bs-current-date-view.component.d.ts +0 -3
  267. package/datepicker/themes/bs/bs-custom-dates-view.component.d.ts +0 -14
  268. package/datepicker/themes/bs/bs-datepicker-container.component.d.ts +0 -33
  269. package/datepicker/themes/bs/bs-datepicker-day-decorator.directive.d.ts +0 -11
  270. package/datepicker/themes/bs/bs-datepicker-inline-container.component.d.ts +0 -10
  271. package/datepicker/themes/bs/bs-datepicker-navigation-view.component.d.ts +0 -9
  272. package/datepicker/themes/bs/bs-daterangepicker-container.component.d.ts +0 -37
  273. package/datepicker/themes/bs/bs-daterangepicker-inline-container.component.d.ts +0 -10
  274. package/datepicker/themes/bs/bs-days-calendar-view.component.d.ts +0 -23
  275. package/datepicker/themes/bs/bs-months-calendar-view.component.d.ts +0 -13
  276. package/datepicker/themes/bs/bs-timepicker-view.component.d.ts +0 -5
  277. package/datepicker/themes/bs/bs-years-calendar-view.component.d.ts +0 -13
  278. package/datepicker/utils/bs-calendar-utils.d.ts +0 -10
  279. package/datepicker/utils/matrix-utils.d.ts +0 -9
  280. package/datepicker/yearpicker.component.d.ts +0 -11
  281. package/esm2015/datepicker/base/bs-datepicker-container.js +0 -47
  282. package/esm2015/datepicker/bs-datepicker-inline.component.js +0 -132
  283. package/esm2015/datepicker/bs-datepicker-inline.config.js +0 -12
  284. package/esm2015/datepicker/bs-datepicker-input.directive.js +0 -159
  285. package/esm2015/datepicker/bs-datepicker.component.js +0 -238
  286. package/esm2015/datepicker/bs-datepicker.config.js +0 -85
  287. package/esm2015/datepicker/bs-datepicker.module.js +0 -101
  288. package/esm2015/datepicker/bs-daterangepicker-inline.component.js +0 -129
  289. package/esm2015/datepicker/bs-daterangepicker-inline.config.js +0 -19
  290. package/esm2015/datepicker/bs-daterangepicker-input.directive.js +0 -191
  291. package/esm2015/datepicker/bs-daterangepicker.component.js +0 -227
  292. package/esm2015/datepicker/bs-daterangepicker.config.js +0 -17
  293. package/esm2015/datepicker/bs-locale.service.js +0 -28
  294. package/esm2015/datepicker/date-formatter.js +0 -7
  295. package/esm2015/datepicker/datepicker-animations.js +0 -16
  296. package/esm2015/datepicker/datepicker-inner.component.js +0 -282
  297. package/esm2015/datepicker/datepicker.component.js +0 -140
  298. package/esm2015/datepicker/datepicker.config.js +0 -30
  299. package/esm2015/datepicker/datepicker.module.js +0 -35
  300. package/esm2015/datepicker/daypicker.component.js +0 -174
  301. package/esm2015/datepicker/engine/calc-days-calendar.js +0 -19
  302. package/esm2015/datepicker/engine/flag-days-calendar.js +0 -91
  303. package/esm2015/datepicker/engine/flag-months-calendar.js +0 -41
  304. package/esm2015/datepicker/engine/flag-years-calendar.js +0 -39
  305. package/esm2015/datepicker/engine/format-days-calendar.js +0 -29
  306. package/esm2015/datepicker/engine/format-months-calendar.js +0 -19
  307. package/esm2015/datepicker/engine/format-years-calendar.js +0 -35
  308. package/esm2015/datepicker/engine/view-mode.js +0 -4
  309. package/esm2015/datepicker/index.js +0 -2
  310. package/esm2015/datepicker/mis-crystal-design-system-datepicker.js +0 -25
  311. package/esm2015/datepicker/models/index.js +0 -9
  312. package/esm2015/datepicker/monthpicker.component.js +0 -87
  313. package/esm2015/datepicker/public_api.js +0 -26
  314. package/esm2015/datepicker/reducer/_defaults.js +0 -5
  315. package/esm2015/datepicker/reducer/bs-datepicker.actions.js +0 -132
  316. package/esm2015/datepicker/reducer/bs-datepicker.effects.js +0 -170
  317. package/esm2015/datepicker/reducer/bs-datepicker.reducer.js +0 -302
  318. package/esm2015/datepicker/reducer/bs-datepicker.state.js +0 -12
  319. package/esm2015/datepicker/reducer/bs-datepicker.store.js +0 -19
  320. package/esm2015/datepicker/sub-components/chronos/create/check-overflow.js +0 -30
  321. package/esm2015/datepicker/sub-components/chronos/create/clone.js +0 -6
  322. package/esm2015/datepicker/sub-components/chronos/create/date-from-array.js +0 -17
  323. package/esm2015/datepicker/sub-components/chronos/create/from-anything.js +0 -107
  324. package/esm2015/datepicker/sub-components/chronos/create/from-array.js +0 -136
  325. package/esm2015/datepicker/sub-components/chronos/create/from-object.js +0 -17
  326. package/esm2015/datepicker/sub-components/chronos/create/from-string-and-array.js +0 -38
  327. package/esm2015/datepicker/sub-components/chronos/create/from-string-and-format.js +0 -106
  328. package/esm2015/datepicker/sub-components/chronos/create/from-string.js +0 -227
  329. package/esm2015/datepicker/sub-components/chronos/create/local.js +0 -16
  330. package/esm2015/datepicker/sub-components/chronos/create/parsing-flags.js +0 -26
  331. package/esm2015/datepicker/sub-components/chronos/create/parsing.types.js +0 -2
  332. package/esm2015/datepicker/sub-components/chronos/create/valid.js +0 -42
  333. package/esm2015/datepicker/sub-components/chronos/duration/bubble.js +0 -47
  334. package/esm2015/datepicker/sub-components/chronos/duration/constructor.js +0 -130
  335. package/esm2015/datepicker/sub-components/chronos/duration/create.js +0 -113
  336. package/esm2015/datepicker/sub-components/chronos/duration/humanize.js +0 -80
  337. package/esm2015/datepicker/sub-components/chronos/duration/valid.js +0 -45
  338. package/esm2015/datepicker/sub-components/chronos/format/format.js +0 -51
  339. package/esm2015/datepicker/sub-components/chronos/format.js +0 -46
  340. package/esm2015/datepicker/sub-components/chronos/i18n/ar.js +0 -131
  341. package/esm2015/datepicker/sub-components/chronos/i18n/bg.js +0 -96
  342. package/esm2015/datepicker/sub-components/chronos/i18n/ca.js +0 -91
  343. package/esm2015/datepicker/sub-components/chronos/i18n/cs.js +0 -181
  344. package/esm2015/datepicker/sub-components/chronos/i18n/da.js +0 -50
  345. package/esm2015/datepicker/sub-components/chronos/i18n/de.js +0 -72
  346. package/esm2015/datepicker/sub-components/chronos/i18n/en-gb.js +0 -61
  347. package/esm2015/datepicker/sub-components/chronos/i18n/es-do.js +0 -85
  348. package/esm2015/datepicker/sub-components/chronos/i18n/es-us.js +0 -79
  349. package/esm2015/datepicker/sub-components/chronos/i18n/es.js +0 -84
  350. package/esm2015/datepicker/sub-components/chronos/i18n/et.js +0 -75
  351. package/esm2015/datepicker/sub-components/chronos/i18n/fi.js +0 -100
  352. package/esm2015/datepicker/sub-components/chronos/i18n/fr.js +0 -76
  353. package/esm2015/datepicker/sub-components/chronos/i18n/gl.js +0 -84
  354. package/esm2015/datepicker/sub-components/chronos/i18n/he.js +0 -98
  355. package/esm2015/datepicker/sub-components/chronos/i18n/hi.js +0 -124
  356. package/esm2015/datepicker/sub-components/chronos/i18n/hr.js +0 -62
  357. package/esm2015/datepicker/sub-components/chronos/i18n/hu.js +0 -104
  358. package/esm2015/datepicker/sub-components/chronos/i18n/id.js +0 -83
  359. package/esm2015/datepicker/sub-components/chronos/i18n/it.js +0 -65
  360. package/esm2015/datepicker/sub-components/chronos/i18n/ja.js +0 -75
  361. package/esm2015/datepicker/sub-components/chronos/i18n/ka.js +0 -87
  362. package/esm2015/datepicker/sub-components/chronos/i18n/kk.js +0 -76
  363. package/esm2015/datepicker/sub-components/chronos/i18n/ko.js +0 -77
  364. package/esm2015/datepicker/sub-components/chronos/i18n/lt.js +0 -116
  365. package/esm2015/datepicker/sub-components/chronos/i18n/lv.js +0 -56
  366. package/esm2015/datepicker/sub-components/chronos/i18n/mn.js +0 -99
  367. package/esm2015/datepicker/sub-components/chronos/i18n/nb.js +0 -53
  368. package/esm2015/datepicker/sub-components/chronos/i18n/nl-be.js +0 -81
  369. package/esm2015/datepicker/sub-components/chronos/i18n/nl.js +0 -80
  370. package/esm2015/datepicker/sub-components/chronos/i18n/pl.js +0 -126
  371. package/esm2015/datepicker/sub-components/chronos/i18n/pt-br.js +0 -56
  372. package/esm2015/datepicker/sub-components/chronos/i18n/ro.js +0 -66
  373. package/esm2015/datepicker/sub-components/chronos/i18n/ru.js +0 -181
  374. package/esm2015/datepicker/sub-components/chronos/i18n/sk.js +0 -157
  375. package/esm2015/datepicker/sub-components/chronos/i18n/sl.js +0 -184
  376. package/esm2015/datepicker/sub-components/chronos/i18n/sq.js +0 -54
  377. package/esm2015/datepicker/sub-components/chronos/i18n/sv.js +0 -63
  378. package/esm2015/datepicker/sub-components/chronos/i18n/th-be.js +0 -74
  379. package/esm2015/datepicker/sub-components/chronos/i18n/th.js +0 -59
  380. package/esm2015/datepicker/sub-components/chronos/i18n/tr.js +0 -82
  381. package/esm2015/datepicker/sub-components/chronos/i18n/uk.js +0 -147
  382. package/esm2015/datepicker/sub-components/chronos/i18n/vi.js +0 -74
  383. package/esm2015/datepicker/sub-components/chronos/i18n/zh-cn.js +0 -114
  384. package/esm2015/datepicker/sub-components/chronos/index.js +0 -2
  385. package/esm2015/datepicker/sub-components/chronos/locale/calendar.js +0 -9
  386. package/esm2015/datepicker/sub-components/chronos/locale/locale.class.js +0 -532
  387. package/esm2015/datepicker/sub-components/chronos/locale/locale.defaults.js +0 -40
  388. package/esm2015/datepicker/sub-components/chronos/locale/locales.js +0 -229
  389. package/esm2015/datepicker/sub-components/chronos/moment/add-subtract.js +0 -35
  390. package/esm2015/datepicker/sub-components/chronos/moment/calendar.js +0 -41
  391. package/esm2015/datepicker/sub-components/chronos/moment/diff.js +0 -70
  392. package/esm2015/datepicker/sub-components/chronos/moment/min-max.js +0 -38
  393. package/esm2015/datepicker/sub-components/chronos/parse/regex.js +0 -49
  394. package/esm2015/datepicker/sub-components/chronos/parse/token.js +0 -32
  395. package/esm2015/datepicker/sub-components/chronos/public_api.js +0 -56
  396. package/esm2015/datepicker/sub-components/chronos/test/chain.js +0 -711
  397. package/esm2015/datepicker/sub-components/chronos/types.js +0 -2
  398. package/esm2015/datepicker/sub-components/chronos/units/aliases.js +0 -35
  399. package/esm2015/datepicker/sub-components/chronos/units/constants.js +0 -11
  400. package/esm2015/datepicker/sub-components/chronos/units/day-of-month.js +0 -31
  401. package/esm2015/datepicker/sub-components/chronos/units/day-of-week.js +0 -129
  402. package/esm2015/datepicker/sub-components/chronos/units/day-of-year.js +0 -37
  403. package/esm2015/datepicker/sub-components/chronos/units/hour.js +0 -127
  404. package/esm2015/datepicker/sub-components/chronos/units/index.js +0 -19
  405. package/esm2015/datepicker/sub-components/chronos/units/millisecond.js +0 -60
  406. package/esm2015/datepicker/sub-components/chronos/units/minute.js +0 -23
  407. package/esm2015/datepicker/sub-components/chronos/units/month.js +0 -63
  408. package/esm2015/datepicker/sub-components/chronos/units/offset.js +0 -210
  409. package/esm2015/datepicker/sub-components/chronos/units/priorities.js +0 -21
  410. package/esm2015/datepicker/sub-components/chronos/units/quarter.js +0 -39
  411. package/esm2015/datepicker/sub-components/chronos/units/second.js +0 -23
  412. package/esm2015/datepicker/sub-components/chronos/units/timestamp.js +0 -28
  413. package/esm2015/datepicker/sub-components/chronos/units/timezone.js +0 -19
  414. package/esm2015/datepicker/sub-components/chronos/units/week-calendar-utils.js +0 -70
  415. package/esm2015/datepicker/sub-components/chronos/units/week-year.js +0 -101
  416. package/esm2015/datepicker/sub-components/chronos/units/week.js +0 -58
  417. package/esm2015/datepicker/sub-components/chronos/units/year.js +0 -60
  418. package/esm2015/datepicker/sub-components/chronos/utils/abs-ceil.js +0 -4
  419. package/esm2015/datepicker/sub-components/chronos/utils/abs-round.js +0 -4
  420. package/esm2015/datepicker/sub-components/chronos/utils/compare-arrays.js +0 -16
  421. package/esm2015/datepicker/sub-components/chronos/utils/date-compare.js +0 -55
  422. package/esm2015/datepicker/sub-components/chronos/utils/date-getters.js +0 -67
  423. package/esm2015/datepicker/sub-components/chronos/utils/date-setters.js +0 -75
  424. package/esm2015/datepicker/sub-components/chronos/utils/defaults.js +0 -11
  425. package/esm2015/datepicker/sub-components/chronos/utils/start-end-of.js +0 -57
  426. package/esm2015/datepicker/sub-components/chronos/utils/type-checks.js +0 -56
  427. package/esm2015/datepicker/sub-components/chronos/utils/zero-fill.js +0 -10
  428. package/esm2015/datepicker/sub-components/chronos/utils.js +0 -7
  429. package/esm2015/datepicker/sub-components/component-loader/bs-component-ref.class.js +0 -3
  430. package/esm2015/datepicker/sub-components/component-loader/component-loader.class.js +0 -272
  431. package/esm2015/datepicker/sub-components/component-loader/component-loader.factory.js +0 -32
  432. package/esm2015/datepicker/sub-components/component-loader/content-ref.class.js +0 -12
  433. package/esm2015/datepicker/sub-components/component-loader/index.js +0 -2
  434. package/esm2015/datepicker/sub-components/component-loader/listen-options.model.js +0 -2
  435. package/esm2015/datepicker/sub-components/component-loader/public_api.js +0 -5
  436. package/esm2015/datepicker/sub-components/mini-ngrx/index.js +0 -2
  437. package/esm2015/datepicker/sub-components/mini-ngrx/public_api.js +0 -3
  438. package/esm2015/datepicker/sub-components/mini-ngrx/state.class.js +0 -16
  439. package/esm2015/datepicker/sub-components/mini-ngrx/store.class.js +0 -43
  440. package/esm2015/datepicker/sub-components/positioning/index.js +0 -2
  441. package/esm2015/datepicker/sub-components/positioning/models/index.js +0 -2
  442. package/esm2015/datepicker/sub-components/positioning/modifiers/arrow.js +0 -56
  443. package/esm2015/datepicker/sub-components/positioning/modifiers/flip.js +0 -60
  444. package/esm2015/datepicker/sub-components/positioning/modifiers/index.js +0 -6
  445. package/esm2015/datepicker/sub-components/positioning/modifiers/initData.js +0 -42
  446. package/esm2015/datepicker/sub-components/positioning/modifiers/preventOverflow.js +0 -56
  447. package/esm2015/datepicker/sub-components/positioning/modifiers/shift.js +0 -22
  448. package/esm2015/datepicker/sub-components/positioning/ng-positioning.js +0 -30
  449. package/esm2015/datepicker/sub-components/positioning/positioning.service.js +0 -71
  450. package/esm2015/datepicker/sub-components/positioning/public_api.js +0 -3
  451. package/esm2015/datepicker/sub-components/positioning/utils/computeAutoPlacement.js +0 -53
  452. package/esm2015/datepicker/sub-components/positioning/utils/findCommonOffsetParent.js +0 -40
  453. package/esm2015/datepicker/sub-components/positioning/utils/getBordersSize.js +0 -10
  454. package/esm2015/datepicker/sub-components/positioning/utils/getBoundaries.js +0 -56
  455. package/esm2015/datepicker/sub-components/positioning/utils/getBoundingClientRect.js +0 -55
  456. package/esm2015/datepicker/sub-components/positioning/utils/getClientRect.js +0 -4
  457. package/esm2015/datepicker/sub-components/positioning/utils/getFixedPositionOffsetParent.js +0 -17
  458. package/esm2015/datepicker/sub-components/positioning/utils/getOffsetParent.js +0 -32
  459. package/esm2015/datepicker/sub-components/positioning/utils/getOffsetRectRelativeToArbitraryNode.js +0 -51
  460. package/esm2015/datepicker/sub-components/positioning/utils/getOffsets.js +0 -11
  461. package/esm2015/datepicker/sub-components/positioning/utils/getOppositePlacement.js +0 -8
  462. package/esm2015/datepicker/sub-components/positioning/utils/getOppositeVariation.js +0 -13
  463. package/esm2015/datepicker/sub-components/positioning/utils/getOuterSizes.js +0 -14
  464. package/esm2015/datepicker/sub-components/positioning/utils/getParentNode.js +0 -10
  465. package/esm2015/datepicker/sub-components/positioning/utils/getReferenceOffsets.js +0 -13
  466. package/esm2015/datepicker/sub-components/positioning/utils/getRoot.js +0 -10
  467. package/esm2015/datepicker/sub-components/positioning/utils/getScroll.js +0 -14
  468. package/esm2015/datepicker/sub-components/positioning/utils/getScrollParent.js +0 -26
  469. package/esm2015/datepicker/sub-components/positioning/utils/getStyleComputedProperty.js +0 -13
  470. package/esm2015/datepicker/sub-components/positioning/utils/getTargetOffsets.js +0 -30
  471. package/esm2015/datepicker/sub-components/positioning/utils/getViewportOffsetRectRelativeToArtbitraryNode.js +0 -19
  472. package/esm2015/datepicker/sub-components/positioning/utils/getWindowSizes.js +0 -18
  473. package/esm2015/datepicker/sub-components/positioning/utils/includeScroll.js +0 -15
  474. package/esm2015/datepicker/sub-components/positioning/utils/index.js +0 -24
  475. package/esm2015/datepicker/sub-components/positioning/utils/isBrowser.js +0 -2
  476. package/esm2015/datepicker/sub-components/positioning/utils/isFixed.js +0 -16
  477. package/esm2015/datepicker/sub-components/positioning/utils/isIE.js +0 -16
  478. package/esm2015/datepicker/sub-components/positioning/utils/isModifierEnabled.js +0 -10
  479. package/esm2015/datepicker/sub-components/positioning/utils/isNumeric.js +0 -7
  480. package/esm2015/datepicker/sub-components/positioning/utils/isOffsetContainer.js +0 -9
  481. package/esm2015/datepicker/sub-components/positioning/utils/setStyles.js +0 -17
  482. package/esm2015/datepicker/sub-components/positioning/utils/updateContainerClass.js +0 -22
  483. package/esm2015/datepicker/sub-components/tooltip/index.js +0 -2
  484. package/esm2015/datepicker/sub-components/tooltip/public_api.js +0 -5
  485. package/esm2015/datepicker/sub-components/tooltip/tooltip-container.component.js +0 -63
  486. package/esm2015/datepicker/sub-components/tooltip/tooltip.config.js +0 -22
  487. package/esm2015/datepicker/sub-components/tooltip/tooltip.directive.js +0 -282
  488. package/esm2015/datepicker/sub-components/tooltip/tooltip.module.js +0 -23
  489. package/esm2015/datepicker/sub-components/utils/decorators.js +0 -25
  490. package/esm2015/datepicker/sub-components/utils/facade/browser.js +0 -24
  491. package/esm2015/datepicker/sub-components/utils/index.js +0 -2
  492. package/esm2015/datepicker/sub-components/utils/linked-list.class.js +0 -240
  493. package/esm2015/datepicker/sub-components/utils/public_api.js +0 -11
  494. package/esm2015/datepicker/sub-components/utils/theme-provider.js +0 -35
  495. package/esm2015/datepicker/sub-components/utils/trigger.class.js +0 -10
  496. package/esm2015/datepicker/sub-components/utils/triggers.js +0 -110
  497. package/esm2015/datepicker/sub-components/utils/utils.class.js +0 -21
  498. package/esm2015/datepicker/sub-components/utils/warn-once.js +0 -12
  499. package/esm2015/datepicker/themes/bs/bs-calendar-layout.component.js +0 -25
  500. package/esm2015/datepicker/themes/bs/bs-current-date-view.component.js +0 -13
  501. package/esm2015/datepicker/themes/bs/bs-custom-dates-view.component.js +0 -44
  502. package/esm2015/datepicker/themes/bs/bs-datepicker-container.component.js +0 -152
  503. package/esm2015/datepicker/themes/bs/bs-datepicker-day-decorator.directive.js +0 -47
  504. package/esm2015/datepicker/themes/bs/bs-datepicker-inline-container.component.js +0 -36
  505. package/esm2015/datepicker/themes/bs/bs-datepicker-navigation-view.component.js +0 -63
  506. package/esm2015/datepicker/themes/bs/bs-daterangepicker-container.component.js +0 -195
  507. package/esm2015/datepicker/themes/bs/bs-daterangepicker-inline-container.component.js +0 -36
  508. package/esm2015/datepicker/themes/bs/bs-days-calendar-view.component.js +0 -162
  509. package/esm2015/datepicker/themes/bs/bs-months-calendar-view.component.js +0 -60
  510. package/esm2015/datepicker/themes/bs/bs-timepicker-view.component.js +0 -34
  511. package/esm2015/datepicker/themes/bs/bs-years-calendar-view.component.js +0 -61
  512. package/esm2015/datepicker/utils/bs-calendar-utils.js +0 -43
  513. package/esm2015/datepicker/utils/matrix-utils.js +0 -14
  514. package/esm2015/datepicker/yearpicker.component.js +0 -90
  515. package/fesm2015/mis-crystal-design-system-datepicker.js +0 -13512
  516. package/fesm2015/mis-crystal-design-system-datepicker.js.map +0 -1
@@ -1,85 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * For date range picker there are `MisDateRangePickerConfig` which inherits all properties,
5
- * except `displayMonths`, for range picker it default to `2`
6
- */
7
- export class MisDatePickerConfig {
8
- constructor() {
9
- /** sets use adaptive position */
10
- this.adaptivePosition = false;
11
- /** sets use UTC date time format */
12
- this.useUtc = false;
13
- /** turn on/off animation */
14
- this.isAnimated = false;
15
- /**
16
- * The view that the datepicker should start in
17
- */
18
- this.startView = 'day';
19
- /**
20
- * If true, returns focus to the datepicker / daterangepicker input after date selection
21
- */
22
- this.returnFocusToInput = false;
23
- /** CSS class which will be applied to datepicker container,
24
- * usually used to set color theme
25
- */
26
- this.containerClass = 'theme-green';
27
- // DatePickerRenderOptions
28
- this.displayMonths = 1;
29
- /**
30
- * Allows to hide week numbers in datepicker
31
- */
32
- this.showWeekNumbers = false;
33
- this.dateInputFormat = 'L';
34
- // range picker
35
- this.rangeSeparator = ' - ';
36
- /**
37
- * Date format for date range input field
38
- */
39
- this.rangeInputFormat = 'L';
40
- // DatePickerFormatOptions
41
- this.monthTitle = 'MMMM';
42
- this.yearTitle = 'YYYY';
43
- this.dayLabel = 'D';
44
- this.monthLabel = 'MMMM';
45
- this.yearLabel = 'YYYY';
46
- this.weekNumbers = 'w';
47
- /**
48
- * Shows 'today' button
49
- */
50
- this.showTodayButton = false;
51
- /**
52
- * Shows clear button
53
- */
54
- this.showClearButton = false;
55
- /**
56
- * Positioning of 'today' button
57
- */
58
- this.todayPosition = 'center';
59
- /**
60
- * Positioning of 'clear' button
61
- */
62
- this.clearPosition = 'right';
63
- /**
64
- * Label for 'today' button
65
- */
66
- this.todayButtonLabel = 'Today';
67
- /**
68
- * Label for 'clear' button
69
- */
70
- this.clearButtonLabel = 'Clear';
71
- /**
72
- * Label for 'custom range' button
73
- */
74
- this.customRangeButtonLabel = 'Custom Range';
75
- /* To enable emmission of date range on selecting start and end dates */
76
- this.emitOnDateRangeSelect = false;
77
- }
78
- }
79
- MisDatePickerConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function MisDatePickerConfig_Factory() { return new MisDatePickerConfig(); }, token: MisDatePickerConfig, providedIn: "root" });
80
- MisDatePickerConfig.decorators = [
81
- { type: Injectable, args: [{
82
- providedIn: 'root'
83
- },] }
84
- ];
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVTNDOzs7R0FHRztBQUlILE1BQU0sT0FBTyxtQkFBbUI7SUFIaEM7UUFJRSxpQ0FBaUM7UUFDakMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLG9DQUFvQztRQUNwQyxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2YsNEJBQTRCO1FBQzVCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFXbkI7O1dBRUc7UUFDSCxjQUFTLEdBQTBCLEtBQUssQ0FBQztRQXlEekM7O1dBRUc7UUFDSCx1QkFBa0IsR0FBRyxLQUFLLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxtQkFBYyxHQUFHLGFBQWEsQ0FBQztRQUUvQiwwQkFBMEI7UUFDMUIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEI7O1dBRUc7UUFDSCxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUV4QixvQkFBZSxHQUFHLEdBQUcsQ0FBQztRQUN0QixlQUFlO1FBQ2YsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDdkI7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxHQUFHLENBQUM7UUFZdkIsMEJBQTBCO1FBQzFCLGVBQVUsR0FBRyxNQUFNLENBQUM7UUFDcEIsY0FBUyxHQUFHLE1BQU0sQ0FBQztRQUNuQixhQUFRLEdBQUcsR0FBRyxDQUFDO1FBQ2YsZUFBVSxHQUFHLE1BQU0sQ0FBQztRQUNwQixjQUFTLEdBQUcsTUFBTSxDQUFDO1FBQ25CLGdCQUFXLEdBQUcsR0FBRyxDQUFDO1FBRWxCOztXQUVHO1FBQ0gsb0JBQWUsR0FBRyxLQUFLLENBQUM7UUFFeEI7O1dBRUc7UUFDSCxvQkFBZSxHQUFHLEtBQUssQ0FBQztRQUV4Qjs7V0FFRztRQUNILGtCQUFhLEdBQUcsUUFBUSxDQUFDO1FBRXpCOztXQUVHO1FBQ0gsa0JBQWEsR0FBRyxPQUFPLENBQUM7UUFFeEI7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxPQUFPLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxxQkFBZ0IsR0FBRyxPQUFPLENBQUM7UUFFM0I7O1dBRUc7UUFDSCwyQkFBc0IsR0FBRyxjQUFjLENBQUM7UUFFeEMsd0VBQXdFO1FBQ3hFLDBCQUFxQixHQUFhLEtBQUssQ0FBQztLQUN6Qzs7OztZQWhLQSxVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBEYXRlUGlja2VyUmVuZGVyT3B0aW9ucyxcbiAgTWlzRGF0ZVBpY2tlclZpZXdNb2RlLFxuICBEYXRlUGlja2VyRGF0ZUN1c3RvbUNsYXNzZXMsXG4gIERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHRcbn0gZnJvbSAnLi9tb2RlbHMnO1xuaW1wb3J0IHsgQnNDdXN0b21EYXRlcyB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1c3RvbS1kYXRlcy12aWV3LmNvbXBvbmVudCc7XG5cblxuLyoqXG4gKiBGb3IgZGF0ZSByYW5nZSBwaWNrZXIgdGhlcmUgYXJlIGBNaXNEYXRlUmFuZ2VQaWNrZXJDb25maWdgIHdoaWNoIGluaGVyaXRzIGFsbCBwcm9wZXJ0aWVzLFxuICogZXhjZXB0IGBkaXNwbGF5TW9udGhzYCwgZm9yIHJhbmdlIHBpY2tlciBpdCBkZWZhdWx0IHRvIGAyYFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUGlja2VyQ29uZmlnIGltcGxlbWVudHMgRGF0ZVBpY2tlclJlbmRlck9wdGlvbnMge1xuICAvKiogc2V0cyB1c2UgYWRhcHRpdmUgcG9zaXRpb24gKi9cbiAgYWRhcHRpdmVQb3NpdGlvbiA9IGZhbHNlO1xuICAvKiogc2V0cyB1c2UgVVRDIGRhdGUgdGltZSBmb3JtYXQgKi9cbiAgdXNlVXRjID0gZmFsc2U7XG4gIC8qKiB0dXJuIG9uL29mZiBhbmltYXRpb24gKi9cbiAgaXNBbmltYXRlZCA9IGZhbHNlO1xuICB2YWx1ZT86IERhdGUgfCBEYXRlW107XG4gIGlzRGlzYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogRGVmYXVsdCBtaW4gZGF0ZSBmb3IgYWxsIGRhdGUvcmFuZ2UgcGlja2Vyc1xuICAgKi9cbiAgbWluRGF0ZT86IERhdGU7XG4gIC8qKlxuICAgKiBEZWZhdWx0IG1heCBkYXRlIGZvciBhbGwgZGF0ZS9yYW5nZSBwaWNrZXJzXG4gICAqL1xuICBtYXhEYXRlPzogRGF0ZTtcbiAgLyoqXG4gICAqIFRoZSB2aWV3IHRoYXQgdGhlIGRhdGVwaWNrZXIgc2hvdWxkIHN0YXJ0IGluXG4gICAqL1xuICBzdGFydFZpZXc6IE1pc0RhdGVQaWNrZXJWaWV3TW9kZSA9ICdkYXknO1xuICAvKipcbiAgICogRGVmYXVsdCBkYXRlIGN1c3RvbSBjbGFzc2VzIGZvciBhbGwgZGF0ZS9yYW5nZSBwaWNrZXJzXG4gICAqL1xuICBkYXRlQ3VzdG9tQ2xhc3NlczogRGF0ZVBpY2tlckRhdGVDdXN0b21DbGFzc2VzW107XG4gIC8qKlxuICAgKiBEZWZhdWx0IHRvb2x0aXAgdGV4dCBmb3IgYWxsIGRhdGUvcmFuZ2UgcGlja2Vyc1xuICAgKi9cbiAgZGF0ZVRvb2x0aXBUZXh0cz86IERhdGVQaWNrZXJEYXRlVG9vbHRpcFRleHRbXTtcbiAgLyoqXG4gICAqIERpc2FibGUgc3BlY2lmaWMgZGF5cywgZS5nLiBbMCw2XSB3aWxsIGRpc2FibGUgYWxsIFNhdHVyZGF5cyBhbmQgU3VuZGF5c1xuICAgKi9cbiAgZGF5c0Rpc2FibGVkPzogbnVtYmVyW107XG4gIC8qKlxuICAgKiBEaXNhYmxlIHNwZWNpZmljIGRhdGVzXG4gICAqL1xuICBkYXRlc0Rpc2FibGVkPzogRGF0ZVtdO1xuICAvKipcbiAgICogU2hvdyBvbmUgbW9udGhzIGZvciBzcGVjaWFsIGNhc2VzIChvbmx5IGZvciBkYXRlUmFuZ2VQaWNrZXIpXG4gICAqIDEuIG1heERhdGUgaXMgZXF1YWwgdG8gdG9kYXkncyBkYXRlXG4gICAqIDIuIG1pbkRhdGUncyBtb250aCBpcyBlcXVhbCB0byBtYXhEYXRlJ3MgbW9udGhcbiAgICovXG4gIGRpc3BsYXlPbmVNb250aFJhbmdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgZGF0ZXNFbmFibGVkPzogRGF0ZVtdO1xuICAvKipcbiAgICogTWFrZXMgZGF0ZXMgZnJvbSBvdGhlciBtb250aHMgYWN0aXZlXG4gICAqL1xuICBzZWxlY3RGcm9tT3RoZXJNb250aD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93cyBzZWxlY3QgZmlyc3QgZGF0ZSBvZiB0aGUgd2VlayBieSBjbGljayBvbiB3ZWVrIG51bWJlclxuICAgKi9cbiAgc2VsZWN0V2Vlaz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFsbG93cyBzZWxlY3QgZGF0ZXJhbmdlIGFzIGZpcnN0IGFuZCBsYXN0IGRheSBvZiB3ZWVrIGJ5IGNsaWNrIG9uIHdlZWsgbnVtYmVyIChkYXRlUmFuZ2VQaWNrZXIgb25seSlcbiAgICovXG4gIHNlbGVjdFdlZWtEYXRlUmFuZ2U/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTaG93cyBwcmV2aW91cyBhbmQgY3VycmVudCBtb250aCwgaW5zdGVhZCBvZiBjdXJyZW50IGFuZCBuZXh0IChkYXRlUmFuZ2VQaWNrZXIgb25seSlcbiAgICovXG4gIHNob3dQcmV2aW91c01vbnRoPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIGNsYXNzIHRvIGN1cnJlbnQgZGF5XG4gICAqL1xuICBjdXN0b21Ub2RheUNsYXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG1vZGUgZm9yIGFsbCBkYXRlIHBpY2tlcnNcbiAgICovXG4gIG1pbk1vZGU/OiBNaXNEYXRlUGlja2VyVmlld01vZGU7XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIHJldHVybnMgZm9jdXMgdG8gdGhlIGRhdGVwaWNrZXIgLyBkYXRlcmFuZ2VwaWNrZXIgaW5wdXQgYWZ0ZXIgZGF0ZSBzZWxlY3Rpb25cbiAgICovXG4gIHJldHVybkZvY3VzVG9JbnB1dCA9IGZhbHNlO1xuXG4gIC8qKiBDU1MgY2xhc3Mgd2hpY2ggd2lsbCBiZSBhcHBsaWVkIHRvIGRhdGVwaWNrZXIgY29udGFpbmVyLFxuICAgKiB1c3VhbGx5IHVzZWQgdG8gc2V0IGNvbG9yIHRoZW1lXG4gICAqL1xuICBjb250YWluZXJDbGFzcyA9ICd0aGVtZS1ncmVlbic7XG5cbiAgLy8gRGF0ZVBpY2tlclJlbmRlck9wdGlvbnNcbiAgZGlzcGxheU1vbnRocyA9IDE7XG4gIC8qKlxuICAgKiBBbGxvd3MgdG8gaGlkZSB3ZWVrIG51bWJlcnMgaW4gZGF0ZXBpY2tlclxuICAgKi9cbiAgc2hvd1dlZWtOdW1iZXJzID0gZmFsc2U7XG5cbiAgZGF0ZUlucHV0Rm9ybWF0ID0gJ0wnO1xuICAvLyByYW5nZSBwaWNrZXJcbiAgcmFuZ2VTZXBhcmF0b3IgPSAnIC0gJztcbiAgLyoqXG4gICAqIERhdGUgZm9ybWF0IGZvciBkYXRlIHJhbmdlIGlucHV0IGZpZWxkXG4gICAqL1xuICByYW5nZUlucHV0Rm9ybWF0ID0gJ0wnO1xuXG4gIC8qKlxuICAgKiBQcmVkZWZpbmVkIHJhbmdlc1xuICAgKi9cbiAgcmFuZ2VzPzogQnNDdXN0b21EYXRlc1tdO1xuXG4gIC8qKlxuICAgKiBNYXggRGF0ZSBSYW5nZSBpbiBkYXlzXG4gICAqL1xuICBtYXhEYXRlUmFuZ2U/OiBudW1iZXI7XG5cbiAgLy8gRGF0ZVBpY2tlckZvcm1hdE9wdGlvbnNcbiAgbW9udGhUaXRsZSA9ICdNTU1NJztcbiAgeWVhclRpdGxlID0gJ1lZWVknO1xuICBkYXlMYWJlbCA9ICdEJztcbiAgbW9udGhMYWJlbCA9ICdNTU1NJztcbiAgeWVhckxhYmVsID0gJ1lZWVknO1xuICB3ZWVrTnVtYmVycyA9ICd3JztcblxuICAvKipcbiAgICogU2hvd3MgJ3RvZGF5JyBidXR0b25cbiAgICovXG4gIHNob3dUb2RheUJ1dHRvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTaG93cyBjbGVhciBidXR0b25cbiAgICovXG4gIHNob3dDbGVhckJ1dHRvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbmluZyBvZiAndG9kYXknIGJ1dHRvblxuICAgKi9cbiAgdG9kYXlQb3NpdGlvbiA9ICdjZW50ZXInO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbmluZyBvZiAnY2xlYXInIGJ1dHRvblxuICAgKi9cbiAgY2xlYXJQb3NpdGlvbiA9ICdyaWdodCc7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAndG9kYXknIGJ1dHRvblxuICAgKi9cbiAgdG9kYXlCdXR0b25MYWJlbCA9ICdUb2RheSc7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAnY2xlYXInIGJ1dHRvblxuICAgKi9cbiAgY2xlYXJCdXR0b25MYWJlbCA9ICdDbGVhcic7XG5cbiAgLyoqXG4gICAqIExhYmVsIGZvciAnY3VzdG9tIHJhbmdlJyBidXR0b25cbiAgICovXG4gIGN1c3RvbVJhbmdlQnV0dG9uTGFiZWwgPSAnQ3VzdG9tIFJhbmdlJztcblxuICAvKiBUbyBlbmFibGUgZW1taXNzaW9uIG9mIGRhdGUgcmFuZ2Ugb24gc2VsZWN0aW5nIHN0YXJ0IGFuZCBlbmQgZGF0ZXMgKi9cbiAgZW1pdE9uRGF0ZVJhbmdlU2VsZWN0OiBib29sZWFuID0gIGZhbHNlO1xufVxuIl19
@@ -1,101 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { ComponentLoaderFactory } from './sub-components/component-loader';
4
- import { PositioningService } from './sub-components/positioning';
5
- import { TooltipModule } from './sub-components/tooltip';
6
- import { MisDatePickerConfig } from './bs-datepicker.config';
7
- import { MisDateRangePickerConfig } from './bs-daterangepicker.config';
8
- import { MisDatePickerInputDirective } from './bs-datepicker-input.directive';
9
- import { MisDatePickerDirective } from './bs-datepicker.component';
10
- import { MisDateRangePickerInputDirective } from './bs-daterangepicker-input.directive';
11
- import { MisDateRangePickerDirective } from './bs-daterangepicker.component';
12
- import { MisDatePickerInlineDirective } from './bs-datepicker-inline.component';
13
- import { BsLocaleService } from './bs-locale.service';
14
- import { MisDatePickerActions } from './reducer/bs-datepicker.actions';
15
- import { MisDatePickerEffects } from './reducer/bs-datepicker.effects';
16
- import { MisDatePickerStore } from './reducer/bs-datepicker.store';
17
- import { MisDatePickerContainerComponent } from './themes/bs/bs-datepicker-container.component';
18
- import { MisDateRangePickerContainerComponent } from './themes/bs/bs-daterangepicker-container.component';
19
- import { MisDatePickerInlineContainerComponent } from './themes/bs/bs-datepicker-inline-container.component';
20
- import { MisDateRangePickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';
21
- import { MisDateRangePickerInlineDirective } from './bs-daterangepicker-inline.component';
22
- import { BsCalendarLayoutComponent } from './themes/bs/bs-calendar-layout.component';
23
- import { BsCurrentDateViewComponent } from './themes/bs/bs-current-date-view.component';
24
- import { BsCustomDatesViewComponent } from './themes/bs/bs-custom-dates-view.component';
25
- import { MisDatePickerDayDecoratorComponent } from './themes/bs/bs-datepicker-day-decorator.directive';
26
- import { MisDatePickerNavigationViewComponent } from './themes/bs/bs-datepicker-navigation-view.component';
27
- import { MisDaysCalendarViewComponent } from './themes/bs/bs-days-calendar-view.component';
28
- import { BsMonthCalendarViewComponent } from './themes/bs/bs-months-calendar-view.component';
29
- import { BsTimepickerViewComponent } from './themes/bs/bs-timepicker-view.component';
30
- import { BsYearsCalendarViewComponent } from './themes/bs/bs-years-calendar-view.component';
31
- export class MisDatePickerModule {
32
- static forRoot() {
33
- return {
34
- ngModule: MisDatePickerModule,
35
- providers: [
36
- ComponentLoaderFactory,
37
- PositioningService,
38
- MisDatePickerStore,
39
- MisDatePickerActions,
40
- MisDatePickerEffects,
41
- BsLocaleService,
42
- MisDatePickerConfig,
43
- MisDateRangePickerConfig
44
- ]
45
- };
46
- }
47
- }
48
- MisDatePickerModule.decorators = [
49
- { type: NgModule, args: [{
50
- imports: [CommonModule, TooltipModule.forRoot()],
51
- declarations: [
52
- BsCalendarLayoutComponent,
53
- BsCurrentDateViewComponent,
54
- BsCustomDatesViewComponent,
55
- MisDatePickerDayDecoratorComponent,
56
- MisDatePickerNavigationViewComponent,
57
- MisDaysCalendarViewComponent,
58
- BsMonthCalendarViewComponent,
59
- BsTimepickerViewComponent,
60
- BsYearsCalendarViewComponent,
61
- MisDatePickerContainerComponent,
62
- MisDatePickerDirective,
63
- MisDatePickerInlineContainerComponent,
64
- MisDatePickerInlineDirective,
65
- MisDatePickerInputDirective,
66
- MisDateRangePickerContainerComponent,
67
- MisDateRangePickerDirective,
68
- MisDateRangePickerInlineContainerComponent,
69
- MisDateRangePickerInlineDirective,
70
- MisDateRangePickerInputDirective
71
- ],
72
- entryComponents: [
73
- MisDatePickerContainerComponent,
74
- MisDateRangePickerContainerComponent,
75
- MisDatePickerInlineContainerComponent,
76
- MisDateRangePickerInlineContainerComponent
77
- ],
78
- exports: [
79
- BsCalendarLayoutComponent,
80
- BsCurrentDateViewComponent,
81
- BsCustomDatesViewComponent,
82
- MisDatePickerDayDecoratorComponent,
83
- MisDatePickerNavigationViewComponent,
84
- MisDaysCalendarViewComponent,
85
- BsMonthCalendarViewComponent,
86
- BsTimepickerViewComponent,
87
- BsYearsCalendarViewComponent,
88
- MisDatePickerContainerComponent,
89
- MisDatePickerDirective,
90
- MisDatePickerInlineContainerComponent,
91
- MisDatePickerInlineDirective,
92
- MisDatePickerInputDirective,
93
- MisDateRangePickerContainerComponent,
94
- MisDateRangePickerDirective,
95
- MisDateRangePickerInlineContainerComponent,
96
- MisDateRangePickerInlineDirective,
97
- MisDateRangePickerInputDirective
98
- ]
99
- },] }
100
- ];
101
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXBpY2tlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVwaWNrZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDN0QsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEYsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFN0UsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFaEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ25FLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLG9EQUFvRCxDQUFDO0FBRTFHLE9BQU8sRUFBRSxxQ0FBcUMsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdHLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBRXZILE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTFGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzdGLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBcUQ1RixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxtQkFBbUI7WUFDN0IsU0FBUyxFQUFFO2dCQUNULHNCQUFzQjtnQkFDdEIsa0JBQWtCO2dCQUNsQixrQkFBa0I7Z0JBQ2xCLG9CQUFvQjtnQkFDcEIsb0JBQW9CO2dCQUNwQixlQUFlO2dCQUNmLG1CQUFtQjtnQkFDbkIsd0JBQXdCO2FBQ3pCO1NBQ0YsQ0FBQztJQUNKLENBQUM7OztZQWxFRixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDaEQsWUFBWSxFQUFFO29CQUNaLHlCQUF5QjtvQkFDekIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLGtDQUFrQztvQkFDbEMsb0NBQW9DO29CQUNwQyw0QkFBNEI7b0JBQzVCLDRCQUE0QjtvQkFDNUIseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLCtCQUErQjtvQkFDL0Isc0JBQXNCO29CQUN0QixxQ0FBcUM7b0JBQ3JDLDRCQUE0QjtvQkFDNUIsMkJBQTJCO29CQUMzQixvQ0FBb0M7b0JBQ3BDLDJCQUEyQjtvQkFDM0IsMENBQTBDO29CQUMxQyxpQ0FBaUM7b0JBQ2pDLGdDQUFnQztpQkFDakM7Z0JBQ0QsZUFBZSxFQUFFO29CQUNmLCtCQUErQjtvQkFDL0Isb0NBQW9DO29CQUNwQyxxQ0FBcUM7b0JBQ3JDLDBDQUEwQztpQkFDM0M7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLHlCQUF5QjtvQkFDekIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLGtDQUFrQztvQkFDbEMsb0NBQW9DO29CQUNwQyw0QkFBNEI7b0JBQzVCLDRCQUE0QjtvQkFDNUIseUJBQXlCO29CQUN6Qiw0QkFBNEI7b0JBQzVCLCtCQUErQjtvQkFDL0Isc0JBQXNCO29CQUN0QixxQ0FBcUM7b0JBQ3JDLDRCQUE0QjtvQkFDNUIsMkJBQTJCO29CQUMzQixvQ0FBb0M7b0JBQ3BDLDJCQUEyQjtvQkFDM0IsMENBQTBDO29CQUMxQyxpQ0FBaUM7b0JBQ2pDLGdDQUFnQztpQkFDakM7YUFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyRmFjdG9yeSB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvY29tcG9uZW50LWxvYWRlcic7XG5pbXBvcnQgeyBQb3NpdGlvbmluZ1NlcnZpY2UgfSBmcm9tICcuL3N1Yi1jb21wb25lbnRzL3Bvc2l0aW9uaW5nJztcblxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJy4vc3ViLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyQ29uZmlnIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLmNvbmZpZyc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJDb25maWcgfSBmcm9tICcuL2JzLWRhdGVyYW5nZXBpY2tlci5jb25maWcnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlcklucHV0RGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLWlucHV0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlucHV0LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJEaXJlY3RpdmUgfSBmcm9tICcuL2JzLWRhdGVyYW5nZXBpY2tlci5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlIH0gZnJvbSAnLi9icy1kYXRlcGlja2VyLWlubGluZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBCc0xvY2FsZVNlcnZpY2UgfSBmcm9tICcuL2JzLWxvY2FsZS5zZXJ2aWNlJztcbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJBY3Rpb25zIH0gZnJvbSAnLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuYWN0aW9ucyc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRWZmZWN0cyB9IGZyb20gJy4vcmVkdWNlci9icy1kYXRlcGlja2VyLmVmZmVjdHMnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlclN0b3JlIH0gZnJvbSAnLi9yZWR1Y2VyL2JzLWRhdGVwaWNrZXIuc3RvcmUnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRhdGVwaWNrZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcmFuZ2VwaWNrZXItY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcGlja2VyLWlubGluZS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUtY29udGFpbmVyLmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZURpcmVjdGl2ZSB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb21wb25lbnQnO1xuXG5pbXBvcnQgeyBCc0NhbGVuZGFyTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtY2FsZW5kYXItbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0N1cnJlbnREYXRlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1cnJlbnQtZGF0ZS12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0N1c3RvbURhdGVzVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWN1c3RvbS1kYXRlcy12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyRGF5RGVjb3JhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtZGF0ZXBpY2tlci1kYXktZGVjb3JhdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQgfSBmcm9tICcuL3RoZW1lcy9icy9icy1kYXRlcGlja2VyLW5hdmlnYXRpb24tdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLWRheXMtY2FsZW5kYXItdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNNb250aENhbGVuZGFyVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdGhlbWVzL2JzL2JzLW1vbnRocy1jYWxlbmRhci12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1RpbWVwaWNrZXJWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtdGltZXBpY2tlci12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1llYXJzQ2FsZW5kYXJWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMteWVhcnMtY2FsZW5kYXItdmlldy5jb21wb25lbnQnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUb29sdGlwTW9kdWxlLmZvclJvb3QoKV0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEJzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQsXG4gICAgQnNDdXJyZW50RGF0ZVZpZXdDb21wb25lbnQsXG4gICAgQnNDdXN0b21EYXRlc1ZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlckRheURlY29yYXRvckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBCc01vbnRoQ2FsZW5kYXJWaWV3Q29tcG9uZW50LFxuICAgIEJzVGltZXBpY2tlclZpZXdDb21wb25lbnQsXG4gICAgQnNZZWFyc0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1pc0RhdGVQaWNrZXJEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVQaWNrZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VyRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VySW5wdXREaXJlY3RpdmVcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgTWlzRGF0ZVBpY2tlckNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEJzQ2FsZW5kYXJMYXlvdXRDb21wb25lbnQsXG4gICAgQnNDdXJyZW50RGF0ZVZpZXdDb21wb25lbnQsXG4gICAgQnNDdXN0b21EYXRlc1ZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF0ZVBpY2tlckRheURlY29yYXRvckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyTmF2aWdhdGlvblZpZXdDb21wb25lbnQsXG4gICAgTWlzRGF5c0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBCc01vbnRoQ2FsZW5kYXJWaWV3Q29tcG9uZW50LFxuICAgIEJzVGltZXBpY2tlclZpZXdDb21wb25lbnQsXG4gICAgQnNZZWFyc0NhbGVuZGFyVmlld0NvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VyQ29udGFpbmVyQ29tcG9uZW50LFxuICAgIE1pc0RhdGVQaWNrZXJEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUGlja2VySW5saW5lRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVQaWNrZXJJbnB1dERpcmVjdGl2ZSxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJDb250YWluZXJDb21wb25lbnQsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VyRGlyZWN0aXZlLFxuICAgIE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbnRhaW5lckNvbXBvbmVudCxcbiAgICBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVEaXJlY3RpdmUsXG4gICAgTWlzRGF0ZVJhbmdlUGlja2VySW5wdXREaXJlY3RpdmVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUGlja2VyTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxNaXNEYXRlUGlja2VyTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBNaXNEYXRlUGlja2VyTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIENvbXBvbmVudExvYWRlckZhY3RvcnksXG4gICAgICAgIFBvc2l0aW9uaW5nU2VydmljZSxcbiAgICAgICAgTWlzRGF0ZVBpY2tlclN0b3JlLFxuICAgICAgICBNaXNEYXRlUGlja2VyQWN0aW9ucyxcbiAgICAgICAgTWlzRGF0ZVBpY2tlckVmZmVjdHMsXG4gICAgICAgIEJzTG9jYWxlU2VydmljZSxcbiAgICAgICAgTWlzRGF0ZVBpY2tlckNvbmZpZyxcbiAgICAgICAgTWlzRGF0ZVJhbmdlUGlja2VyQ29uZmlnXG4gICAgICBdXG4gICAgfTtcbiAgfVxufVxuIl19
@@ -1,129 +0,0 @@
1
- import { Directive, ElementRef, EventEmitter, Input, Output, Renderer2, ViewContainerRef } from '@angular/core';
2
- import { ComponentLoaderFactory } from './sub-components/component-loader';
3
- import { filter } from 'rxjs/operators';
4
- import { MisDatePickerConfig } from './bs-datepicker.config';
5
- import { MisDateRangePickerInlineConfig } from './bs-daterangepicker-inline.config';
6
- import { MisDateRangePickerInlineContainerComponent } from './themes/bs/bs-daterangepicker-inline-container.component';
7
- export class MisDateRangePickerInlineDirective {
8
- constructor(_config, _elementRef, _renderer, _viewContainerRef, cis) {
9
- this._config = _config;
10
- this._elementRef = _elementRef;
11
- /**
12
- * Emits when daterangepicker value has been changed
13
- */
14
- this.bsValueChange = new EventEmitter();
15
- this._subs = [];
16
- // todo: assign only subset of fields
17
- Object.assign(this, this._config);
18
- this._datepicker = cis.createLoader(_elementRef, _viewContainerRef, _renderer);
19
- }
20
- /**
21
- * Initial value of datepicker
22
- */
23
- set bsValue(value) {
24
- if (this._bsValue === value) {
25
- return;
26
- }
27
- this._bsValue = value;
28
- this.bsValueChange.emit(value);
29
- }
30
- ngOnInit() {
31
- this.setConfig();
32
- // if date changes from external source (model -> view)
33
- this._subs.push(this.bsValueChange.subscribe((value) => {
34
- this._datepickerRef.instance.value = value;
35
- }));
36
- // if date changes from picker (view -> model)
37
- this._subs.push(this._datepickerRef.instance.valueChange
38
- .pipe(filter((range) => range && range[0] && !!range[1]))
39
- .subscribe((value) => {
40
- this.bsValue = value;
41
- }));
42
- }
43
- ngOnChanges(changes) {
44
- if (!this._datepickerRef || !this._datepickerRef.instance) {
45
- return;
46
- }
47
- if (changes.minDate) {
48
- this._datepickerRef.instance.minDate = this.minDate;
49
- this.setConfig();
50
- }
51
- if (changes.maxDate) {
52
- this._datepickerRef.instance.maxDate = this.maxDate;
53
- this.setConfig();
54
- }
55
- if (changes.datesEnabled) {
56
- this._datepickerRef.instance.datesEnabled = this.datesEnabled;
57
- }
58
- if (changes.datesDisabled) {
59
- this._datepickerRef.instance.datesDisabled = this.datesDisabled;
60
- this.setConfig();
61
- }
62
- if (changes.daysDisabled) {
63
- this._datepickerRef.instance.daysDisabled = this.daysDisabled;
64
- this.setConfig();
65
- }
66
- if (changes.isDisabled) {
67
- this._datepickerRef.instance.isDisabled = this.isDisabled;
68
- this.setConfig();
69
- }
70
- if (changes.dateCustomClasses) {
71
- this._datepickerRef.instance.dateCustomClasses = this.dateCustomClasses;
72
- this.setConfig();
73
- }
74
- }
75
- /**
76
- * Set config for datepicker
77
- */
78
- setConfig() {
79
- if (this._datepicker) {
80
- this._datepicker.hide();
81
- }
82
- this._config = Object.assign({}, this._config, this.misConfig, {
83
- value: this._bsValue,
84
- isDisabled: this.isDisabled,
85
- minDate: this.minDate || this.misConfig && this.misConfig.minDate,
86
- maxDate: this.maxDate || this.misConfig && this.misConfig.maxDate,
87
- daysDisabled: this.daysDisabled || this.misConfig && this.misConfig.daysDisabled,
88
- dateCustomClasses: this.dateCustomClasses || this.misConfig && this.misConfig.dateCustomClasses,
89
- datesDisabled: this.datesDisabled || this.misConfig && this.misConfig.datesDisabled,
90
- datesEnabled: this.datesEnabled || this.misConfig && this.misConfig.datesEnabled,
91
- ranges: this.misConfig && this.misConfig.ranges,
92
- maxDateRange: this.misConfig && this.misConfig.maxDateRange
93
- });
94
- this._datepickerRef = this._datepicker
95
- .provide({ provide: MisDatePickerConfig, useValue: this._config })
96
- .attach(MisDateRangePickerInlineContainerComponent)
97
- .to(this._elementRef)
98
- .show();
99
- }
100
- ngOnDestroy() {
101
- this._datepicker.dispose();
102
- }
103
- }
104
- MisDateRangePickerInlineDirective.decorators = [
105
- { type: Directive, args: [{
106
- selector: 'mis-daterangepicker-inline',
107
- exportAs: 'misDateRangePickerInline'
108
- },] }
109
- ];
110
- MisDateRangePickerInlineDirective.ctorParameters = () => [
111
- { type: MisDateRangePickerInlineConfig },
112
- { type: ElementRef },
113
- { type: Renderer2 },
114
- { type: ViewContainerRef },
115
- { type: ComponentLoaderFactory }
116
- ];
117
- MisDateRangePickerInlineDirective.propDecorators = {
118
- bsValue: [{ type: Input }],
119
- misConfig: [{ type: Input }],
120
- isDisabled: [{ type: Input }],
121
- minDate: [{ type: Input }],
122
- maxDate: [{ type: Input }],
123
- dateCustomClasses: [{ type: Input }],
124
- daysDisabled: [{ type: Input }],
125
- datesDisabled: [{ type: Input }],
126
- datesEnabled: [{ type: Input }],
127
- bsValueChange: [{ type: Output }]
128
- };
129
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDUyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQ3JDLE1BQU0sRUFBRSxTQUFTLEVBQWlCLGdCQUFnQixFQUN0RSxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQW1CLHNCQUFzQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFHNUYsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLDJEQUEyRCxDQUFDO0FBT3ZILE1BQU0sT0FBTyxpQ0FBaUM7SUF3RDVDLFlBQ1MsT0FBdUMsRUFDdEMsV0FBdUIsRUFDL0IsU0FBb0IsRUFDcEIsaUJBQW1DLEVBQ25DLEdBQTJCO1FBSnBCLFlBQU8sR0FBUCxPQUFPLENBQWdDO1FBQ3RDLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBWmpDOztXQUVHO1FBQ08sa0JBQWEsR0FBeUIsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV6RCxVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVluQyxxQ0FBcUM7UUFDckMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLFlBQVksQ0FDakMsV0FBVyxFQUNYLGlCQUFpQixFQUNqQixTQUFTLENB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bkMsT0FBTyxDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7YUFDakUsTUFBTSxDQUFDLDBDQUEwQyxDQUFDO2FBQ2xELEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ3BCLElBQUksRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7OztZQXpLRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsUUFBUSxFQUFFLDBCQUEwQjthQUNyQzs7O1lBUFEsOEJBQThCO1lBVlosVUFBVTtZQUNSLFNBQVM7WUFBaUIsZ0JBQWdCO1lBRzdDLHNCQUFzQjs7O3NCQW1CN0MsS0FBSzt3QkFZTCxLQUFLO3lCQUlMLEtBQUs7c0JBSUwsS0FBSztzQkFJTCxLQUFLO2dDQUlMLEtBQUs7MkJBSUwsS0FBSzs0QkFJTCxLQUFLOzJCQUlMLEtBQUs7NEJBSUwsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudFJlZiwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsXG4gIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFJlbmRlcmVyMiwgU2ltcGxlQ2hhbmdlcywgVmlld0NvbnRhaW5lclJlZlxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29tcG9uZW50TG9hZGVyLCBDb21wb25lbnRMb2FkZXJGYWN0b3J5IH0gZnJvbSAnLi9zdWItY29tcG9uZW50cy9jb21wb25lbnQtbG9hZGVyJztcblxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IE1pc0RhdGVQaWNrZXJDb25maWcgfSBmcm9tICcuL2JzLWRhdGVwaWNrZXIuY29uZmlnJztcbmltcG9ydCB7IE1pc0RhdGVSYW5nZVBpY2tlcklubGluZUNvbmZpZyB9IGZyb20gJy4vYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb25maWcnO1xuaW1wb3J0IHsgTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSAnLi90aGVtZXMvYnMvYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IERhdGVQaWNrZXJEYXRlQ3VzdG9tQ2xhc3NlcyB9IGZyb20gJy4vbW9kZWxzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnbWlzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUnLFxuICBleHBvcnRBczogJ21pc0RhdGVSYW5nZVBpY2tlcklubGluZSdcbn0pXG5leHBvcnQgY2xhc3MgTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XG4gIF9ic1ZhbHVlOiBEYXRlW107XG4gIC8qKlxuICAgKiBJbml0aWFsIHZhbHVlIG9mIGRhdGVwaWNrZXJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBic1ZhbHVlKHZhbHVlOiBEYXRlW10pIHtcbiAgICBpZiAodGhpcy5fYnNWYWx1ZSA9PT0gdmFsdWUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fYnNWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuYnNWYWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb25maWcgb2JqZWN0IGZvciBkYXRlcGlja2VyXG4gICAqL1xuICBASW5wdXQoKSBtaXNDb25maWc6IFBhcnRpYWw8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29uZmlnPjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIGRhdGVwaWNrZXIgaXMgZW5hYmxlZCBvciBub3RcbiAgICovXG4gIEBJbnB1dCgpIGlzRGlzYWJsZWQ6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBNaW5pbXVtIGRhdGUgd2hpY2ggaXMgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpIG1pbkRhdGU6IERhdGU7XG4gIC8qKlxuICAgKiBNYXhpbXVtIGRhdGUgd2hpY2ggaXMgYXZhaWxhYmxlIGZvciBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpIG1heERhdGU6IERhdGU7XG4gIC8qKlxuICAgKiBEYXRlIGN1c3RvbSBjbGFzc2VzXG4gICAqL1xuICBASW5wdXQoKSBkYXRlQ3VzdG9tQ2xhc3NlczogRGF0ZVBpY2tlckRhdGVDdXN0b21DbGFzc2VzW107XG4gIC8qKlxuICAgKiBEaXNhYmxlIHNwZWNpZmljIGRheXMsIGUuZy4gWzAsNl0gd2lsbCBkaXNhYmxlIGFsbCBTYXR1cmRheXMgYW5kIFN1bmRheXNcbiAgICovXG4gIEBJbnB1dCgpIGRheXNEaXNhYmxlZD86IG51bWJlcltdO1xuICAvKipcbiAgICogRGlzYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgZGF0ZXNEaXNhYmxlZDogRGF0ZVtdO1xuICAvKipcbiAgICogRGlzYWJsZSBzcGVjaWZpYyBkYXRlc1xuICAgKi9cbiAgQElucHV0KCkgZGF0ZXNFbmFibGVkOiBEYXRlW107XG4gIC8qKlxuICAgKiBFbWl0cyB3aGVuIGRhdGVyYW5nZXBpY2tlciB2YWx1ZSBoYXMgYmVlbiBjaGFuZ2VkXG4gICAqL1xuICBAT3V0cHV0KCkgYnNWYWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGVbXT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgcHJvdGVjdGVkIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xuXG4gIHByaXZhdGUgX2RhdGVwaWNrZXI6IENvbXBvbmVudExvYWRlcjxNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVDb250YWluZXJDb21wb25lbnQ+O1xuICBwcml2YXRlIF9kYXRlcGlja2VyUmVmOiBDb21wb25lbnRSZWY8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50PjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2NvbmZpZzogTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29uZmlnLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgY2lzOiBDb21wb25lbnRMb2FkZXJGYWN0b3J5XG4gICkge1xuICAgIC8vIHRvZG86IGFzc2lnbiBvbmx5IHN1YnNldCBvZiBmaWVsZHNcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIHRoaXMuX2NvbmZpZyk7XG4gICAgdGhpcy5fZGF0ZXBpY2tlciA9IGNpcy5jcmVhdGVMb2FkZXI8TWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50PihcbiAgICAgIF9lbGVtZW50UmVmLFxuICAgICAgX3ZpZXdDb250YWluZXJSZWYsXG4gICAgICBfcmVuZGVyZXJcbiAgICApO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRDb25maWcoKTtcblxuICAgIC8vIGlmIGRhdGUgY2hhbmdlcyBmcm9tIGV4dGVybmFsIHNvdXJjZSAobW9kZWwgLT4gdmlldylcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLmJzVmFsdWVDaGFuZ2Uuc3Vic2NyaWJlKCh2YWx1ZTogRGF0ZVtdKSA9PiB7XG4gICAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UudmFsdWUgPSB2YWx1ZTtcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIC8vIGlmIGRhdGUgY2hhbmdlcyBmcm9tIHBpY2tlciAodmlldyAtPiBtb2RlbClcbiAgICB0aGlzLl9zdWJzLnB1c2goXG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLnZhbHVlQ2hhbmdlXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIGZpbHRlcigocmFuZ2U6IERhdGVbXSkgPT4gcmFuZ2UgJiYgcmFuZ2VbMF0gJiYgISFyYW5nZVsxXSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKCh2YWx1ZTogRGF0ZVtdKSA9PiB7XG4gICAgICAgICAgdGhpcy5ic1ZhbHVlID0gdmFsdWU7XG4gICAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX2RhdGVwaWNrZXJSZWYgfHwgIXRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5taW5EYXRlKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLm1pbkRhdGUgPSB0aGlzLm1pbkRhdGU7XG4gICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLm1heERhdGUpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UubWF4RGF0ZSA9IHRoaXMubWF4RGF0ZTtcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF0ZXNFbmFibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRhdGVzRW5hYmxlZCA9IHRoaXMuZGF0ZXNFbmFibGVkO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYuaW5zdGFuY2UuZGF0ZXNEaXNhYmxlZCA9IHRoaXMuZGF0ZXNEaXNhYmxlZDtcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuXG4gICAgaWYgKGNoYW5nZXMuZGF5c0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRheXNEaXNhYmxlZCA9IHRoaXMuZGF5c0Rpc2FibGVkO1xuICAgICAgdGhpcy5zZXRDb25maWcoKTtcbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5pc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmlzRGlzYWJsZWQgPSB0aGlzLmlzRGlzYWJsZWQ7XG4gICAgICB0aGlzLnNldENvbmZpZygpO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VzLmRhdGVDdXN0b21DbGFzc2VzKSB7XG4gICAgICB0aGlzLl9kYXRlcGlja2VyUmVmLmluc3RhbmNlLmRhdGVDdXN0b21DbGFzc2VzID0gdGhpcy5kYXRlQ3VzdG9tQ2xhc3NlcztcbiAgICAgIHRoaXMuc2V0Q29uZmlnKCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldCBjb25maWcgZm9yIGRhdGVwaWNrZXJcbiAgICovXG4gIHNldENvbmZpZygpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGF0ZXBpY2tlcikge1xuICAgICAgdGhpcy5fZGF0ZXBpY2tlci5oaWRlKCk7XG4gICAgfVxuXG4gICAgdGhpcy5fY29uZmlnID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5fY29uZmlnLCB0aGlzLm1pc0NvbmZpZywge1xuICAgICAgdmFsdWU6IHRoaXMuX2JzVmFsdWUsXG4gICAgICBpc0Rpc2FibGVkOiB0aGlzLmlzRGlzYWJsZWQsXG4gICAgICBtaW5EYXRlOiB0aGlzLm1pbkRhdGUgfHwgdGhpcy5taXNDb25maWcgJiYgdGhpcy5taXNDb25maWcubWluRGF0ZSxcbiAgICAgIG1heERhdGU6IHRoaXMubWF4RGF0ZSB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5tYXhEYXRlLFxuICAgICAgZGF5c0Rpc2FibGVkOiB0aGlzLmRheXNEaXNhYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXlzRGlzYWJsZWQsXG4gICAgICBkYXRlQ3VzdG9tQ2xhc3NlczogdGhpcy5kYXRlQ3VzdG9tQ2xhc3NlcyB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlQ3VzdG9tQ2xhc3NlcyxcbiAgICAgIGRhdGVzRGlzYWJsZWQ6IHRoaXMuZGF0ZXNEaXNhYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlc0Rpc2FibGVkLFxuICAgICAgZGF0ZXNFbmFibGVkOiB0aGlzLmRhdGVzRW5hYmxlZCB8fCB0aGlzLm1pc0NvbmZpZyAmJiB0aGlzLm1pc0NvbmZpZy5kYXRlc0VuYWJsZWQsXG4gICAgICByYW5nZXM6IHRoaXMubWlzQ29uZmlnICYmIHRoaXMubWlzQ29uZmlnLnJhbmdlcyxcbiAgICAgIG1heERhdGVSYW5nZTogdGhpcy5taXNDb25maWcgJiYgdGhpcy5taXNDb25maWcubWF4RGF0ZVJhbmdlXG4gICAgfSk7XG5cblxuICAgIHRoaXMuX2RhdGVwaWNrZXJSZWYgPSB0aGlzLl9kYXRlcGlja2VyXG4gICAgICAucHJvdmlkZSh7IHByb3ZpZGU6IE1pc0RhdGVQaWNrZXJDb25maWcsIHVzZVZhbHVlOiB0aGlzLl9jb25maWcgfSlcbiAgICAgIC5hdHRhY2goTWlzRGF0ZVJhbmdlUGlja2VySW5saW5lQ29udGFpbmVyQ29tcG9uZW50KVxuICAgICAgLnRvKHRoaXMuX2VsZW1lbnRSZWYpXG4gICAgICAuc2hvdygpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogYW55IHtcbiAgICB0aGlzLl9kYXRlcGlja2VyLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19
@@ -1,19 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { MisDatePickerConfig } from './bs-datepicker.config';
3
- import * as i0 from "@angular/core";
4
- export class MisDateRangePickerInlineConfig extends MisDatePickerConfig {
5
- constructor() {
6
- super(...arguments);
7
- // DatePickerRenderOptions
8
- this.displayMonths = 2;
9
- /** turn on/off animation */
10
- this.isAnimated = false;
11
- }
12
- }
13
- MisDateRangePickerInlineConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function MisDateRangePickerInlineConfig_Factory() { return new MisDateRangePickerInlineConfig(); }, token: MisDateRangePickerInlineConfig, providedIn: "root" });
14
- MisDateRangePickerInlineConfig.decorators = [
15
- { type: Injectable, args: [{
16
- providedIn: 'root'
17
- },] }
18
- ];
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXJhbmdlcGlja2VyLWlubGluZS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9taXMtY29tcG9uZW50cy9kYXRlcGlja2VyL2JzLWRhdGVyYW5nZXBpY2tlci1pbmxpbmUuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBSzdELE1BQU0sT0FBTyw4QkFBK0IsU0FBUSxtQkFBbUI7SUFIdkU7O1FBSUksMEJBQTBCO1FBQzFCLGtCQUFhLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLDRCQUE0QjtRQUM1QixlQUFVLEdBQUcsS0FBSyxDQUFDO0tBQ3RCOzs7O1lBUkEsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWlzRGF0ZVBpY2tlckNvbmZpZyB9IGZyb20gJy4vYnMtZGF0ZXBpY2tlci5jb25maWcnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBNaXNEYXRlUmFuZ2VQaWNrZXJJbmxpbmVDb25maWcgZXh0ZW5kcyBNaXNEYXRlUGlja2VyQ29uZmlnIHtcbiAgICAvLyBEYXRlUGlja2VyUmVuZGVyT3B0aW9uc1xuICAgIGRpc3BsYXlNb250aHMgPSAyO1xuICAgIC8qKiB0dXJuIG9uL29mZiBhbmltYXRpb24gKi9cbiAgICBpc0FuaW1hdGVkID0gZmFsc2U7XG59XG4iXX0=
@@ -1,191 +0,0 @@
1
- import { ChangeDetectorRef, Directive, ElementRef, forwardRef, Host, Renderer2 } from '@angular/core';
2
- import { NG_VALIDATORS, NG_VALUE_ACCESSOR } from '@angular/forms';
3
- import { parseDate, formatDate, getLocale, isAfter, isBefore, isArray, isDateValid, utcAsLocal } from './sub-components/chronos';
4
- import { MisDateRangePickerDirective } from './bs-daterangepicker.component';
5
- import { BsLocaleService } from './bs-locale.service';
6
- import { Subscription } from 'rxjs';
7
- import { distinctUntilChanged } from 'rxjs/operators';
8
- const BS_DATERANGEPICKER_VALUE_ACCESSOR = {
9
- provide: NG_VALUE_ACCESSOR,
10
- /* tslint:disable-next-line: no-use-before-declare */
11
- useExisting: forwardRef(() => MisDateRangePickerInputDirective),
12
- multi: true
13
- };
14
- const BS_DATERANGEPICKER_VALIDATOR = {
15
- provide: NG_VALIDATORS,
16
- /* tslint:disable-next-line: no-use-before-declare */
17
- useExisting: forwardRef(() => MisDateRangePickerInputDirective),
18
- multi: true
19
- };
20
- export class MisDateRangePickerInputDirective {
21
- constructor(_picker, _localeService, _renderer, _elRef, changeDetection) {
22
- this._picker = _picker;
23
- this._localeService = _localeService;
24
- this._renderer = _renderer;
25
- this._elRef = _elRef;
26
- this.changeDetection = changeDetection;
27
- this._onChange = Function.prototype;
28
- this._onTouched = Function.prototype;
29
- /* tslint:disable-next-line: no-unused-variable */
30
- this._validatorChange = Function.prototype;
31
- this._subs = new Subscription();
32
- }
33
- ngOnInit() {
34
- // update input value on datepicker value update
35
- this._subs.add(this._picker.bsValueChange.subscribe((value) => {
36
- this._setInputValue(value);
37
- if (this._value !== value) {
38
- this._value = value;
39
- this._onChange(value);
40
- this._onTouched();
41
- }
42
- this.changeDetection.markForCheck();
43
- }));
44
- // update input value on locale change
45
- this._subs.add(this._localeService.localeChange.subscribe(() => {
46
- this._setInputValue(this._value);
47
- }));
48
- this._subs.add(
49
- // update input value on format change
50
- this._picker.rangeInputFormat$.pipe(distinctUntilChanged()).subscribe(() => {
51
- this._setInputValue(this._value);
52
- }));
53
- }
54
- ngOnDestroy() {
55
- this._subs.unsubscribe();
56
- }
57
- onKeydownEvent(event) {
58
- if (event.keyCode === 13 || event.code === 'Enter') {
59
- this.hide();
60
- }
61
- }
62
- _setInputValue(date) {
63
- let range = '';
64
- if (date) {
65
- const start = !date[0] ? ''
66
- : formatDate(date[0], this._picker._config.rangeInputFormat, this._localeService.currentLocale);
67
- const end = !date[1] ? ''
68
- : formatDate(date[1], this._picker._config.rangeInputFormat, this._localeService.currentLocale);
69
- range = (start && end) ? start + this._picker._config.rangeSeparator + end : '';
70
- }
71
- this._renderer.setProperty(this._elRef.nativeElement, 'value', range);
72
- }
73
- onChange(event) {
74
- /* tslint:disable-next-line: no-any*/
75
- this.writeValue(event.target.value);
76
- this._onChange(this._value);
77
- if (this._picker._config.returnFocusToInput) {
78
- this._renderer.selectRootElement(this._elRef.nativeElement).focus();
79
- }
80
- this._onTouched();
81
- }
82
- validate(c) {
83
- const _value = c.value;
84
- const errors = [];
85
- if (_value === null || _value === undefined || !isArray(_value)) {
86
- return null;
87
- }
88
- // @ts-ignore
89
- _value.sort((a, b) => a - b);
90
- const _isFirstDateValid = isDateValid(_value[0]);
91
- const _isSecondDateValid = isDateValid(_value[1]);
92
- if (!_isFirstDateValid) {
93
- return { misDate: { invalid: _value[0] } };
94
- }
95
- if (!_isSecondDateValid) {
96
- return { misDate: { invalid: _value[1] } };
97
- }
98
- if (this._picker && this._picker.minDate && isBefore(_value[0], this._picker.minDate, 'date')) {
99
- _value[0] = this._picker.minDate;
100
- errors.push({ misDate: { minDate: this._picker.minDate } });
101
- }
102
- if (this._picker && this._picker.maxDate && isAfter(_value[1], this._picker.maxDate, 'date')) {
103
- _value[1] = this._picker.maxDate;
104
- errors.push({ misDate: { maxDate: this._picker.maxDate } });
105
- }
106
- if (errors.length > 0) {
107
- this.writeValue(_value);
108
- return errors;
109
- }
110
- }
111
- registerOnValidatorChange(fn) {
112
- this._validatorChange = fn;
113
- }
114
- writeValue(value) {
115
- if (!value) {
116
- this._value = null;
117
- }
118
- else {
119
- const _localeKey = this._localeService.currentLocale;
120
- const _locale = getLocale(_localeKey);
121
- if (!_locale) {
122
- throw new Error(`Locale "${_localeKey}" is not defined, please add it with "defineLocale(...)"`);
123
- }
124
- let _input = [];
125
- if (typeof value === 'string') {
126
- const trimmedSeparator = this._picker._config.rangeSeparator.trim();
127
- _input = value
128
- .split(trimmedSeparator.length > 0 ? trimmedSeparator : this._picker._config.rangeSeparator)
129
- .map(_val => _val.trim());
130
- }
131
- if (Array.isArray(value)) {
132
- _input = value;
133
- }
134
- this._value = _input
135
- .map((_val) => {
136
- if (this._picker._config.useUtc) {
137
- return utcAsLocal(parseDate(_val, this._picker._config.rangeInputFormat, this._localeService.currentLocale));
138
- }
139
- return parseDate(_val, this._picker._config.rangeInputFormat, this._localeService.currentLocale);
140
- })
141
- .map((date) => (isNaN(date.valueOf()) ? null : date));
142
- }
143
- this._picker.bsValue = this._value;
144
- }
145
- setDisabledState(isDisabled) {
146
- this._picker.isDisabled = isDisabled;
147
- if (isDisabled) {
148
- this._renderer.setAttribute(this._elRef.nativeElement, 'disabled', 'disabled');
149
- return;
150
- }
151
- this._renderer.removeAttribute(this._elRef.nativeElement, 'disabled');
152
- }
153
- /* tslint:disable-next-line: no-any*/
154
- registerOnChange(fn) {
155
- this._onChange = fn;
156
- }
157
- /* tslint:disable-next-line: no-any*/
158
- registerOnTouched(fn) {
159
- this._onTouched = fn;
160
- }
161
- onBlur() {
162
- this._onTouched();
163
- }
164
- hide() {
165
- this._picker.hide();
166
- this._renderer.selectRootElement(this._elRef.nativeElement).blur();
167
- if (this._picker._config.returnFocusToInput) {
168
- this._renderer.selectRootElement(this._elRef.nativeElement).focus();
169
- }
170
- }
171
- }
172
- MisDateRangePickerInputDirective.decorators = [
173
- { type: Directive, args: [{
174
- selector: `input[misDateRangePicker]`,
175
- host: {
176
- '(change)': 'onChange($event)',
177
- '(keyup.esc)': 'hide()',
178
- '(keydown)': 'onKeydownEvent($event)',
179
- '(blur)': 'onBlur()'
180
- },
181
- providers: [BS_DATERANGEPICKER_VALUE_ACCESSOR, BS_DATERANGEPICKER_VALIDATOR]
182
- },] }
183
- ];
184
- MisDateRangePickerInputDirective.ctorParameters = () => [
185
- { type: MisDateRangePickerDirective, decorators: [{ type: Host }] },
186
- { type: BsLocaleService },
187
- { type: Renderer2 },
188
- { type: ElementRef },
189
- { type: ChangeDetectorRef }
190
- ];
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnMtZGF0ZXJhbmdlcGlja2VyLWlucHV0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVwaWNrZXIvYnMtZGF0ZXJhbmdlcGlja2VyLWlucHV0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsVUFBVSxFQUNWLElBQUksRUFJSixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUdMLGFBQWEsRUFDYixpQkFBaUIsRUFHbEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFDVixTQUFTLEVBQ1QsT0FBTyxFQUNQLFFBQVEsRUFDUixPQUFPLEVBQ1AsV0FBVyxFQUNYLFVBQVUsRUFDWCxNQUFNLDBCQUEwQixDQUFDO0FBRWxDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXRELE1BQU0saUNBQWlDLEdBQWE7SUFDbEQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixxREFBcUQ7SUFDckQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQ0FBZ0MsQ0FBQztJQUMvRCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFFRixNQUFNLDRCQUE0QixHQUFhO0lBQzdDLE9BQU8sRUFBRSxhQUFhO0lBQ3RCLHFEQUFxRDtJQUNyRCxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO0lBQy9ELEtBQUssRUFB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Y3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3QsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBQcm92aWRlcixcbiAgUmVuZGVyZXIyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHtcbiAgcGFyc2VEYXRlLFxuICBmb3JtYXREYXRlLFxuICBnZXRMb2NhbGUsXG4gIGlzQWZ0ZXIsXG4gIGlzQmVmb3JlLFxuICBpc0FycmF5LFxuICBpc0RhdGVWYWxpZCxcbiAgdXRjQXNMb2NhbFxufSBmcm9tICcuL3N1Yi1jb21wb25lbnRzL2Nocm9ub3MnO1xuXG5pbXBvcnQgeyBNaXNEYXRlUmFuZ2VQaWNrZXJEaXJlY3RpdmUgfSBmcm9tICcuL2JzLWRhdGVyYW5nZXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNMb2NhbGVTZXJ2aWNlIH0gZnJvbSAnLi9icy1sb2NhbGUuc2VydmljZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5jb25zdCBCU19EQVRFUkFOR0VQSUNLRVJfVkFMVUVfQUNDRVNTT1I6IFByb3ZpZGVyID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby11c2UtYmVmb3JlLWRlY2xhcmUgKi9cbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gTWlzRGF0ZVJhbmdlUGlja2VySW5wdXREaXJlY3RpdmUpLFxuICBtdWx0aTogdHJ1ZVxufTtcblxuY29uc3QgQlNfREFURVJBTkdFUElDS0VSX1ZBTElEQVRPUjogUHJvdmlkZXIgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tdXNlLWJlZm9yZS1kZWNsYXJlICovXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IE1pc0RhdGVSYW5nZVBpY2tlcklucHV0RGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWVcbn07XG5cblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiBgaW5wdXRbbWlzRGF0ZVJhbmdlUGlja2VyXWAsXG4gIGhvc3Q6IHtcbiAgICAnKGNoYW5nZSknOiAnb25DaGFuZ2UoJGV2ZW50KScsXG4gICAgJyhrZXl1cC5lc2MpJzogJ2hpZGUoKScsXG4gICAgJyhrZXlkb3duKSc6ICdvbktleWRvd25FdmVudCgkZXZlbnQpJyxcbiAgICAnKGJsdXIpJzogJ29uQmx1cigpJ1xuICB9LFxuICBwcm92aWRlcnM6IFtCU19EQVRFUkFOR0VQSUNLRVJfVkFMVUVfQUNDRVNTT1IsIEJTX0RBVEVSQU5HRVBJQ0tFUl9WQUxJREFUT1JdXG59KVxuZXhwb3J0IGNsYXNzIE1pc0RhdGVSYW5nZVBpY2tlcklucHV0RGlyZWN0aXZlXG4gIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciwgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIF9vbkNoYW5nZSA9IEZ1bmN0aW9uLnByb3RvdHlwZTtcbiAgcHJpdmF0ZSBfb25Ub3VjaGVkID0gRnVuY3Rpb24ucHJvdG90eXBlO1xuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLXVudXNlZC12YXJpYWJsZSAqL1xuICBwcml2YXRlIF92YWxpZGF0b3JDaGFuZ2UgPSBGdW5jdGlvbi5wcm90b3R5cGU7XG4gIHByaXZhdGUgX3ZhbHVlOiBEYXRlW107XG4gIHByaXZhdGUgX3N1YnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgY29uc3RydWN0b3IoQEhvc3QoKSBwcml2YXRlIF9waWNrZXI6IE1pc0RhdGVSYW5nZVBpY2tlckRpcmVjdGl2ZSxcbiAgICAgICAgICAgICAgcHJpdmF0ZSBfbG9jYWxlU2VydmljZTogQnNMb2NhbGVTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICAgICAgICBwcml2YXRlIF9lbFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdG9yUmVmKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICAvLyB1cGRhdGUgaW5wdXQgdmFsdWUgb24gZGF0ZXBpY2tlciB2YWx1ZSB1cGRhdGVcbiAgICB0aGlzLl9zdWJzLmFkZChcbiAgICAgIHRoaXMuX3BpY2tlci5ic1ZhbHVlQ2hhbmdlLnN1YnNjcmliZSgodmFsdWU6IERhdGVbXSkgPT4ge1xuICAgICAgICB0aGlzLl9zZXRJbnB1dFZhbHVlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuX3ZhbHVlICE9PSB2YWx1ZSkge1xuICAgICAgICAgIHRoaXMuX3ZhbHVlID0gdmFsdWU7XG4gICAgICAgICAgdGhpcy5fb25DaGFuZ2UodmFsdWUpO1xuICAgICAgICAgIHRoaXMuX29uVG91Y2hlZCgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLm1hcmtGb3JDaGVjaygpO1xuICAgICAgfSkpO1xuXG4gICAgLy8gdXBkYXRlIGlucHV0IHZhbHVlIG9uIGxvY2FsZSBjaGFuZ2VcbiAgICB0aGlzLl9zdWJzLmFkZCh0aGlzLl9sb2NhbGVTZXJ2aWNlLmxvY2FsZUNoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fc2V0SW5wdXRWYWx1ZSh0aGlzLl92YWx1ZSk7XG4gICAgfSkpO1xuXG4gICAgdGhpcy5fc3Vicy5hZGQoXG4gICAgICAvLyB1cGRhdGUgaW5wdXQgdmFsdWUgb24gZm9ybWF0IGNoYW5nZVxuICAgICAgdGhpcy5fcGlja2VyLnJhbmdlSW5wdXRGb3JtYXQkLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5fc2V0SW5wdXRWYWx1ZSh0aGlzLl92YWx1ZSk7XG4gICAgICB9KSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBvbktleWRvd25FdmVudChldmVudDphbnkpIHtcbiAgICBpZiAoZXZlbnQua2V5Q29kZSA9PT0gMTMgfHwgZXZlbnQuY29kZSA9PT0gJ0VudGVyJykge1xuICAgICAgdGhpcy5oaWRlKCk7XG4gICAgfVxuICB9XG5cbiAgX3NldElucHV0VmFsdWUoZGF0ZTogRGF0ZVtdKTogdm9pZCB7XG4gICAgbGV0IHJhbmdlID0gJyc7XG4gICAgaWYgKGRhdGUpIHtcbiAgICAgIGNvbnN0IHN0YXJ0OiBzdHJpbmcgPSAhZGF0ZVswXSA/ICcnXG4gICAgICAgIDogZm9ybWF0RGF0ZShkYXRlWzBdLFxuICAgICAgICAgIHRoaXMuX3BpY2tlci5fY29uZmlnLnJhbmdlSW5wdXRGb3JtYXQsXG4gICAgICAgICAgdGhpcy5fbG9jYWxlU2VydmljZS5jdXJyZW50TG9jYWxlXG4gICAgICAgICk7XG4gICAgICBjb25zdCBlbmQ6IHN0cmluZyA9ICFkYXRlWzFdID8gJydcbiAgICAgICAgOiBmb3JtYXREYXRlKFxuICAgICAgICAgIGRhdGVbMV0sXG4gICAgICAgICAgdGhpcy5fcGlja2VyLl9jb25maWcucmFuZ2VJbnB1dEZvcm1hdCxcbiAgICAgICAgICB0aGlzLl9sb2NhbGVTZXJ2aWNlLmN1cnJlbnRMb2NhbGVcbiAgICAgICAgKTtcbiAgICAgIHJhbmdlID0gKHN0YXJ0ICYmIGVuZCkgPyBzdGFydCArIHRoaXMuX3BpY2tlci5fY29uZmlnLnJhbmdlU2VwYXJhdG9yICsgZW5kIDogJyc7XG4gICAgfVxuICAgIHRoaXMuX3JlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHJhbmdlKTtcbiAgfVxuXG4gIG9uQ2hhbmdlKGV2ZW50OiBFdmVudCkge1xuICAgIC8qIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tYW55Ki9cbiAgICB0aGlzLndyaXRlVmFsdWUoKGV2ZW50LnRhcmdldCBhcyBhbnkpLnZhbHVlKTtcbiAgICB0aGlzLl9vbkNoYW5nZSh0aGlzLl92YWx1ZSk7XG4gICAgaWYgKHRoaXMuX3BpY2tlci5fY29uZmlnLnJldHVybkZvY3VzVG9JbnB1dCkge1xuICAgICAgdGhpcy5fcmVuZGVyZXIuc2VsZWN0Um9vdEVsZW1lbnQodGhpcy5fZWxSZWYubmF0aXZlRWxlbWVudCkuZm9jdXMoKTtcbiAgICB9XG4gICAgdGhpcy5fb25Ub3VjaGVkKCk7XG4gIH1cblxuICB2YWxpZGF0ZShjOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgY29uc3QgX3ZhbHVlOiBbRGF0ZSwgRGF0ZV0gPSBjLnZhbHVlO1xuICAgIGNvbnN0IGVycm9yczogb2JqZWN0W10gPSBbXTtcblxuICAgIGlmIChfdmFsdWUgPT09IG51bGwgfHwgX3ZhbHVlID09PSB1bmRlZmluZWQgfHwgIWlzQXJyYXkoX3ZhbHVlKSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIF92YWx1ZS5zb3J0KChhLCBiKSA9PiBhIC0gYik7XG5cbiAgICBjb25zdCBfaXNGaXJzdERhdGVWYWxpZCA9IGlzRGF0ZVZhbGlkKF92YWx1ZVswXSk7XG4gICAgY29uc3QgX2lzU2Vjb25kRGF0ZVZhbGlkID0gaXNEYXRlVmFsaWQoX3ZhbHVlWzFdKTtcblxuICAgIGlmICghX2lzRmlyc3REYXRlVmFsaWQpIHtcbiAgICAgIHJldHVybiB7IG1pc0RhdGU6IHsgaW52YWxpZDogX3ZhbHVlWzBdIH0gfTtcbiAgICB9XG5cbiAgICBpZiAoIV9pc1NlY29uZERhdGVWYWxpZCkge1xuICAgICAgcmV0dXJuIHsgbWlzRGF0ZTogeyBpbnZhbGlkOiBfdmFsdWVbMV0gfSB9O1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9waWNrZXIgJiYgdGhpcy5fcGlja2VyLm1pbkRhdGUgJiYgaXNCZWZvcmUoX3ZhbHVlWzBdLCB0aGlzLl9waWNrZXIubWluRGF0ZSwgJ2RhdGUnKSkge1xuICAgICAgX3ZhbHVlWzBdID0gdGhpcy5fcGlja2VyLm1pbkRhdGU7XG4gICAgICBlcnJvcnMucHVzaCh7IG1pc0RhdGU6IHsgbWluRGF0ZTogdGhpcy5fcGlja2VyLm1pbkRhdGUgfSB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5fcGlja2VyICYmIHRoaXMuX3BpY2tlci5tYXhEYXRlICYmIGlzQWZ0ZXIoX3ZhbHVlWzFdLCB0aGlzLl9waWNrZXIubWF4RGF0ZSwgJ2RhdGUnKSkge1xuICAgICAgX3ZhbHVlWzFdID0gdGhpcy5fcGlja2VyLm1heERhdGU7XG4gICAgICBlcnJvcnMucHVzaCh7IG1pc0RhdGU6IHsgbWF4RGF0ZTogdGhpcy5fcGlja2VyLm1heERhdGUgfSB9KTtcbiAgICB9XG4gICAgaWYgKGVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLndyaXRlVmFsdWUoX3ZhbHVlKTtcblxuICAgICAgcmV0dXJuIGVycm9ycztcbiAgICB9XG4gIH1cblxuICByZWdpc3Rlck9uVmFsaWRhdG9yQ2hhbmdlKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5fdmFsaWRhdG9yQ2hhbmdlID0gZm47XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBEYXRlW10gfCBzdHJpbmcpIHtcbiAgICBpZiAoIXZhbHVlKSB7XG4gICAgICB0aGlzLl92YWx1ZSA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IF9sb2NhbGVLZXkgPSB0aGlzLl9sb2NhbGVTZXJ2aWNlLmN1cnJlbnRMb2NhbGU7XG4gICAgICBjb25zdCBfbG9jYWxlID0gZ2V0TG9jYWxlKF9sb2NhbGVLZXkpO1xuICAgICAgaWYgKCFfbG9jYWxlKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgTG9jYWxlIFwiJHtfbG9jYWxlS2V5fVwiIGlzIG5vdCBkZWZpbmVkLCBwbGVhc2UgYWRkIGl0IHdpdGggXCJkZWZpbmVMb2NhbGUoLi4uKVwiYFxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBsZXQgX2lucHV0OiAoc3RyaW5nIHwgRGF0ZSlbXSA9IFtdO1xuICAgICAgaWYgKHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgdHJpbW1lZFNlcGFyYXRvciA9IHRoaXMuX3BpY2tlci5fY29uZmlnLnJhbmdlU2VwYXJhdG9yLnRyaW0oKTtcbiAgICAgICAgX2lucHV0ID0gdmFsdWVcbiAgICAgICAgICAuc3BsaXQodHJpbW1lZFNlcGFyYXRvci5sZW5ndGggPiAwID8gdHJpbW1lZFNlcGFyYXRvciA6IHRoaXMuX3BpY2tlci5fY29uZmlnLnJhbmdlU2VwYXJhdG9yKVxuICAgICAgICAgIC5tYXAoX3ZhbCA9PiBfdmFsLnRyaW0oKSk7XG4gICAgICB9XG5cbiAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbHVlKSkge1xuICAgICAgICBfaW5wdXQgPSB2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5fdmFsdWUgPSBfaW5wdXRcbiAgICAgICAgLm1hcCgoX3ZhbDogc3RyaW5nIHwgRGF0ZSk6IERhdGUgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3BpY2tlci5fY29uZmlnLnVzZVV0Yykge1xuICAgICAgICAgICAgICByZXR1cm4gdXRjQXNMb2NhbChcbiAgICAgICAgICAgICAgICBwYXJzZURhdGUoX3ZhbCwgdGhpcy5fcGlja2VyLl9jb25maWcucmFuZ2VJbnB1dEZvcm1hdCwgdGhpcy5fbG9jYWxlU2VydmljZS5jdXJyZW50TG9jYWxlKVxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICByZXR1cm4gcGFyc2VEYXRlKF92YWwsIHRoaXMuX3BpY2tlci5fY29uZmlnLnJhbmdlSW5wdXRGb3JtYXQsIHRoaXMuX2xvY2FsZVNlcnZpY2UuY3VycmVudExvY2FsZSk7XG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgICAgIC5tYXAoKGRhdGU6IERhdGUpID0+IChpc05hTihkYXRlLnZhbHVlT2YoKSkgPyBudWxsIDogZGF0ZSkpO1xuICAgIH1cblxuICAgIHRoaXMuX3BpY2tlci5ic1ZhbHVlID0gdGhpcy5fdmFsdWU7XG4gIH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLl9waWNrZXIuaXNEaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgaWYgKGlzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNldEF0dHJpYnV0ZSh0aGlzLl9lbFJlZi5uYXRpdmVFbGVtZW50LCAnZGlzYWJsZWQnLCAnZGlzYWJsZWQnKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5fZWxSZWYubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJyk7XG4gIH1cblxuICAvKiB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWFueSovXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLl9vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgLyogdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1hbnkqL1xuICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgb25CbHVyKCkge1xuICAgIHRoaXMuX29uVG91Y2hlZCgpO1xuICB9XG5cbiAgaGlkZSgpIHtcbiAgICB0aGlzLl9waWNrZXIuaGlkZSgpO1xuICAgIHRoaXMuX3JlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQpLmJsdXIoKTtcblxuICAgIGlmICh0aGlzLl9waWNrZXIuX2NvbmZpZy5yZXR1cm5Gb2N1c1RvSW5wdXQpIHtcbiAgICAgIHRoaXMuX3JlbmRlcmVyLnNlbGVjdFJvb3RFbGVtZW50KHRoaXMuX2VsUmVmLm5hdGl2ZUVsZW1lbnQpLmZvY3VzKCk7XG4gICAgfVxuICB9XG59XG4iXX0=