@anglr/datetime 5.0.0-beta.20221017033852 → 5.0.0-beta.20221018102923

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 (546) hide show
  1. package/changelog.md +113 -0
  2. package/date-fns/src/services/dateFnsDateApi.service.d.ts +4 -0
  3. package/date-fns/src/services/dateFnsDateApi.service.d.ts.map +1 -1
  4. package/es2015/date-fns/src/services/dateFnsDateApi.service.js +11 -5
  5. package/es2015/date-fns/src/services/dateFnsDateApi.service.js.map +1 -1
  6. package/es2015/moment/src/services/momentDateApi.service.js +9 -3
  7. package/es2015/moment/src/services/momentDateApi.service.js.map +1 -1
  8. package/es2015/src/index.js +13 -13
  9. package/es2015/src/index.js.map +1 -1
  10. package/es2015/src/{misc → interfaces/dateTime}/datetime.interface.js +0 -0
  11. package/es2015/src/interfaces/dateTime/datetime.interface.js.map +1 -0
  12. package/es2015/src/interfaces/dateTimeInput/dateTimeInput.interface.js +2 -0
  13. package/es2015/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +1 -0
  14. package/es2015/src/{services → interfaces/formatProvider}/formatProvider.interface.js +0 -0
  15. package/es2015/src/interfaces/formatProvider/formatProvider.interface.js.map +1 -0
  16. package/es2015/src/interfaces/index.js +4 -0
  17. package/es2015/src/interfaces/index.js.map +1 -0
  18. package/{es2020/src → es2015/src/legacy}/picker/components/clockTimePicker/clockTimePicker.component.js +4 -4
  19. package/es2015/src/legacy/picker/components/clockTimePicker/clockTimePicker.component.js.map +1 -0
  20. package/es2015/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.js +0 -0
  21. package/es2015/src/legacy/picker/components/clockTimePicker/clockTimePicker.interface.js.map +1 -0
  22. package/es2015/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.js +6 -6
  23. package/es2015/src/legacy/picker/components/dayPicker/dayPicker.component.js.map +1 -0
  24. package/es2015/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.js +0 -0
  25. package/es2015/src/legacy/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
  26. package/{es2020/src → es2015/src/legacy}/picker/components/monthPicker/monthPicker.component.js +5 -5
  27. package/es2015/src/legacy/picker/components/monthPicker/monthPicker.component.js.map +1 -0
  28. package/es2015/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.js +0 -0
  29. package/es2015/src/legacy/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
  30. package/es2015/src/{picker → legacy/picker}/components/picker/picker.component.animations.js +0 -0
  31. package/es2015/src/legacy/picker/components/picker/picker.component.animations.js.map +1 -0
  32. package/es2015/src/{picker → legacy/picker}/components/picker/picker.component.js +5 -5
  33. package/es2015/src/legacy/picker/components/picker/picker.component.js.map +1 -0
  34. package/{es2020/src → es2015/src/legacy}/picker/components/pickerBase.component.js +4 -4
  35. package/es2015/src/legacy/picker/components/pickerBase.component.js.map +1 -0
  36. package/{es2020/src → es2015/src/legacy}/picker/components/pickerImplBase.component.js +4 -4
  37. package/es2015/src/legacy/picker/components/pickerImplBase.component.js.map +1 -0
  38. package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.js +8 -8
  39. package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
  40. package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.js +0 -0
  41. package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
  42. package/es2015/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.js +0 -0
  43. package/es2015/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +1 -0
  44. package/{es2020/src → es2015/src/legacy}/picker/components/yearPicker/yearPicker.component.js +5 -5
  45. package/es2015/src/legacy/picker/components/yearPicker/yearPicker.component.js.map +1 -0
  46. package/es2015/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.js +0 -0
  47. package/es2015/src/legacy/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
  48. package/es2015/src/{picker → legacy/picker}/directives/index.js +0 -0
  49. package/es2015/src/legacy/picker/directives/index.js.map +1 -0
  50. package/es2015/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.js +3 -3
  51. package/es2015/src/legacy/picker/directives/loopScroll/loopScroll.directive.js.map +1 -0
  52. package/es2015/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.js +0 -0
  53. package/es2015/src/legacy/picker/directives/loopScroll/loopScroll.interface.js.map +1 -0
  54. package/es2015/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.js +3 -3
  55. package/es2015/src/legacy/picker/directives/loopScrollData/loopScrollData.directive.js.map +1 -0
  56. package/es2015/src/{picker → legacy/picker}/interfaces.js +0 -0
  57. package/es2015/src/legacy/picker/interfaces.js.map +1 -0
  58. package/es2015/src/{picker → legacy/picker}/misc/datetimePicker.interface.js +0 -0
  59. package/es2015/src/legacy/picker/misc/datetimePicker.interface.js.map +1 -0
  60. package/es2015/src/{picker → legacy/picker}/misc/tokens.js +0 -0
  61. package/es2015/src/legacy/picker/misc/tokens.js.map +1 -0
  62. package/{es2020/src → es2015/src/legacy}/picker/modules/picker.module.js +10 -12
  63. package/es2015/src/legacy/picker/modules/picker.module.js.map +1 -0
  64. package/es2015/src/{picker → legacy/picker}/types.js +0 -0
  65. package/es2015/src/legacy/picker/types.js.map +1 -0
  66. package/es2015/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.js +7 -9
  67. package/es2015/src/legacy/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
  68. package/es2015/src/{selector → legacy/selector}/components/selector/selector.component.animations.js +0 -0
  69. package/es2015/src/legacy/selector/components/selector/selector.component.animations.js.map +1 -0
  70. package/es2015/src/{selector → legacy/selector}/components/selector/selector.component.js +9 -9
  71. package/es2015/src/legacy/selector/components/selector/selector.component.js.map +1 -0
  72. package/es2015/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.js +6 -6
  73. package/es2015/src/legacy/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
  74. package/es2015/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js +3 -3
  75. package/es2015/src/legacy/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +1 -0
  76. package/{es2020/src → es2015/src/legacy}/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +5 -5
  77. package/es2015/src/legacy/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
  78. package/es2015/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.js +5 -5
  79. package/es2015/src/legacy/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
  80. package/{es2020/src → es2015/src/legacy}/selector/directives/datetimeValidator/datetimeValidator.directive.js +4 -4
  81. package/es2015/src/legacy/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
  82. package/es2015/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +3 -3
  83. package/es2015/src/legacy/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
  84. package/es2015/src/{selector → legacy/selector}/interfaces.js +0 -0
  85. package/es2015/src/legacy/selector/interfaces.js.map +1 -0
  86. package/es2015/src/{selector → legacy/selector}/misc/datetimeSelector.interface.js +0 -0
  87. package/es2015/src/legacy/selector/misc/datetimeSelector.interface.js.map +1 -0
  88. package/es2015/src/{selector → legacy/selector}/misc/tokens.js +0 -0
  89. package/es2015/src/legacy/selector/misc/tokens.js.map +1 -0
  90. package/{es2020/src → es2015/src/legacy}/selector/modules/basicSelector.module.js +4 -4
  91. package/es2015/src/legacy/selector/modules/basicSelector.module.js.map +1 -0
  92. package/es2015/src/{selector → legacy/selector}/modules/selector.module.js +6 -8
  93. package/es2015/src/legacy/selector/modules/selector.module.js.map +1 -0
  94. package/es2015/src/{selector → legacy/selector}/types.js +0 -0
  95. package/es2015/src/legacy/selector/types.js.map +1 -0
  96. package/es2015/src/misc/enums.js +23 -0
  97. package/es2015/src/misc/enums.js.map +1 -0
  98. package/es2015/src/misc/tokens.js +4 -0
  99. package/es2015/src/misc/tokens.js.map +1 -1
  100. package/es2015/src/misc/types.js +2 -0
  101. package/es2015/src/misc/types.js.map +1 -0
  102. package/es2015/src/misc/utils.js +112 -0
  103. package/es2015/src/misc/utils.js.map +1 -0
  104. package/es2015/src/misc/validators.js +107 -0
  105. package/es2015/src/misc/validators.js.map +1 -1
  106. package/es2015/src/modules/datePipes.module.js +4 -4
  107. package/es2015/src/modules/dateTime/directives/dateTimeBase.js +77 -0
  108. package/es2015/src/modules/dateTime/directives/dateTimeBase.js.map +1 -0
  109. package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +76 -0
  110. package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +1 -0
  111. package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +144 -0
  112. package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -0
  113. package/es2015/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +72 -0
  114. package/es2015/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +1 -0
  115. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +71 -0
  116. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +1 -0
  117. package/es2015/src/modules/dateTime/directives/dateTimeRestrictedBase.js +152 -0
  118. package/es2015/src/modules/dateTime/directives/dateTimeRestrictedBase.js.map +1 -0
  119. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +64 -0
  120. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -0
  121. package/es2015/src/modules/dateTime/directives/index.js +8 -0
  122. package/es2015/src/modules/dateTime/directives/index.js.map +1 -0
  123. package/es2015/src/modules/dateTime/index.js +3 -0
  124. package/es2015/src/modules/dateTime/index.js.map +1 -0
  125. package/es2015/src/modules/dateTime/modules/dateTime.module.js +39 -0
  126. package/es2015/src/modules/dateTime/modules/dateTime.module.js.map +1 -0
  127. package/es2015/src/modules/dateTime/modules/index.js +2 -0
  128. package/es2015/src/modules/dateTime/modules/index.js.map +1 -0
  129. package/es2015/src/modules/index.js +3 -0
  130. package/es2015/src/modules/index.js.map +1 -0
  131. package/es2015/src/pipes/dateConvert.pipe.js +3 -3
  132. package/es2015/src/pipes/dateFormat.pipe.js +3 -3
  133. package/es2015/src/pipes/dateFormat.pipe.js.map +1 -1
  134. package/es2015/src/services/{dateApi.interface.js → dateApi/dateApi.interface.js} +0 -0
  135. package/es2015/src/services/dateApi/dateApi.interface.js.map +1 -0
  136. package/es2015/src/services/{datePositionParser.interface.js → datePositionParser/datePositionParser.interface.js} +0 -0
  137. package/es2015/src/services/datePositionParser/datePositionParser.interface.js.map +1 -0
  138. package/{es2020/src/services → es2015/src/services/datePositionParser}/datePositionParser.service.js +3 -3
  139. package/es2015/src/services/datePositionParser/datePositionParser.service.js.map +1 -0
  140. package/es2015/src/services/{dateTimeRelativeParser.service.js → dateTimeRelativeParser/dateTimeRelativeParser.service.js} +11 -11
  141. package/es2015/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js.map +1 -0
  142. package/{es2020/src/services → es2015/src/services/dateValueProvider}/dateValueProvider.service.js +4 -4
  143. package/es2015/src/services/dateValueProvider/dateValueProvider.service.js.map +1 -0
  144. package/es2015/src/services/index.js +5 -3
  145. package/es2015/src/services/index.js.map +1 -1
  146. package/es2020/date-fns/src/services/dateFnsDateApi.service.js +11 -5
  147. package/es2020/date-fns/src/services/dateFnsDateApi.service.js.map +1 -1
  148. package/es2020/moment/src/services/momentDateApi.service.js +9 -3
  149. package/es2020/moment/src/services/momentDateApi.service.js.map +1 -1
  150. package/es2020/src/index.js +13 -13
  151. package/es2020/src/index.js.map +1 -1
  152. package/es2020/src/{misc → interfaces/dateTime}/datetime.interface.js +0 -0
  153. package/es2020/src/interfaces/dateTime/datetime.interface.js.map +1 -0
  154. package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js +2 -0
  155. package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +1 -0
  156. package/es2020/src/{services → interfaces/formatProvider}/formatProvider.interface.js +0 -0
  157. package/es2020/src/interfaces/formatProvider/formatProvider.interface.js.map +1 -0
  158. package/es2020/src/interfaces/index.js +4 -0
  159. package/es2020/src/interfaces/index.js.map +1 -0
  160. package/{es2015/src → es2020/src/legacy}/picker/components/clockTimePicker/clockTimePicker.component.js +4 -4
  161. package/es2020/src/legacy/picker/components/clockTimePicker/clockTimePicker.component.js.map +1 -0
  162. package/es2020/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.js +0 -0
  163. package/es2020/src/legacy/picker/components/clockTimePicker/clockTimePicker.interface.js.map +1 -0
  164. package/es2020/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.js +6 -6
  165. package/es2020/src/legacy/picker/components/dayPicker/dayPicker.component.js.map +1 -0
  166. package/es2020/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.js +0 -0
  167. package/es2020/src/legacy/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
  168. package/{es2015/src → es2020/src/legacy}/picker/components/monthPicker/monthPicker.component.js +5 -5
  169. package/es2020/src/legacy/picker/components/monthPicker/monthPicker.component.js.map +1 -0
  170. package/es2020/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.js +0 -0
  171. package/es2020/src/legacy/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
  172. package/es2020/src/{picker → legacy/picker}/components/picker/picker.component.animations.js +0 -0
  173. package/es2020/src/legacy/picker/components/picker/picker.component.animations.js.map +1 -0
  174. package/es2020/src/{picker → legacy/picker}/components/picker/picker.component.js +5 -5
  175. package/es2020/src/legacy/picker/components/picker/picker.component.js.map +1 -0
  176. package/{es2015/src → es2020/src/legacy}/picker/components/pickerBase.component.js +4 -4
  177. package/es2020/src/legacy/picker/components/pickerBase.component.js.map +1 -0
  178. package/{es2015/src → es2020/src/legacy}/picker/components/pickerImplBase.component.js +4 -4
  179. package/es2020/src/legacy/picker/components/pickerImplBase.component.js.map +1 -0
  180. package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.js +8 -8
  181. package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
  182. package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.js +0 -0
  183. package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +1 -0
  184. package/es2020/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.js +0 -0
  185. package/es2020/src/legacy/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +1 -0
  186. package/{es2015/src → es2020/src/legacy}/picker/components/yearPicker/yearPicker.component.js +5 -5
  187. package/es2020/src/legacy/picker/components/yearPicker/yearPicker.component.js.map +1 -0
  188. package/es2020/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.js +0 -0
  189. package/es2020/src/legacy/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
  190. package/es2020/src/{picker → legacy/picker}/directives/index.js +0 -0
  191. package/es2020/src/legacy/picker/directives/index.js.map +1 -0
  192. package/es2020/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.js +3 -3
  193. package/es2020/src/legacy/picker/directives/loopScroll/loopScroll.directive.js.map +1 -0
  194. package/es2020/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.js +0 -0
  195. package/es2020/src/legacy/picker/directives/loopScroll/loopScroll.interface.js.map +1 -0
  196. package/es2020/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.js +3 -3
  197. package/es2020/src/legacy/picker/directives/loopScrollData/loopScrollData.directive.js.map +1 -0
  198. package/es2020/src/{picker → legacy/picker}/interfaces.js +0 -0
  199. package/es2020/src/legacy/picker/interfaces.js.map +1 -0
  200. package/es2020/src/{picker → legacy/picker}/misc/datetimePicker.interface.js +0 -0
  201. package/es2020/src/legacy/picker/misc/datetimePicker.interface.js.map +1 -0
  202. package/es2020/src/{picker → legacy/picker}/misc/tokens.js +0 -0
  203. package/es2020/src/legacy/picker/misc/tokens.js.map +1 -0
  204. package/{es2015/src → es2020/src/legacy}/picker/modules/picker.module.js +10 -12
  205. package/es2020/src/legacy/picker/modules/picker.module.js.map +1 -0
  206. package/es2020/src/{picker → legacy/picker}/types.js +0 -0
  207. package/es2020/src/legacy/picker/types.js.map +1 -0
  208. package/es2020/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.js +7 -9
  209. package/es2020/src/legacy/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
  210. package/es2020/src/{selector → legacy/selector}/components/selector/selector.component.animations.js +0 -0
  211. package/es2020/src/legacy/selector/components/selector/selector.component.animations.js.map +1 -0
  212. package/es2020/src/{selector → legacy/selector}/components/selector/selector.component.js +9 -9
  213. package/es2020/src/legacy/selector/components/selector/selector.component.js.map +1 -0
  214. package/es2020/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.js +6 -6
  215. package/es2020/src/legacy/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
  216. package/es2020/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js +3 -3
  217. package/es2020/src/legacy/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +1 -0
  218. package/{es2015/src → es2020/src/legacy}/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +5 -5
  219. package/es2020/src/legacy/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
  220. package/es2020/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.js +5 -5
  221. package/es2020/src/legacy/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
  222. package/{es2015/src → es2020/src/legacy}/selector/directives/datetimeValidator/datetimeValidator.directive.js +4 -4
  223. package/es2020/src/legacy/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
  224. package/es2020/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +3 -3
  225. package/es2020/src/legacy/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
  226. package/es2020/src/{selector → legacy/selector}/interfaces.js +0 -0
  227. package/es2020/src/legacy/selector/interfaces.js.map +1 -0
  228. package/es2020/src/{selector → legacy/selector}/misc/datetimeSelector.interface.js +0 -0
  229. package/es2020/src/legacy/selector/misc/datetimeSelector.interface.js.map +1 -0
  230. package/es2020/src/{selector → legacy/selector}/misc/tokens.js +0 -0
  231. package/es2020/src/legacy/selector/misc/tokens.js.map +1 -0
  232. package/{es2015/src → es2020/src/legacy}/selector/modules/basicSelector.module.js +4 -4
  233. package/es2020/src/legacy/selector/modules/basicSelector.module.js.map +1 -0
  234. package/es2020/src/{selector → legacy/selector}/modules/selector.module.js +6 -8
  235. package/es2020/src/legacy/selector/modules/selector.module.js.map +1 -0
  236. package/es2020/src/{selector → legacy/selector}/types.js +0 -0
  237. package/es2020/src/legacy/selector/types.js.map +1 -0
  238. package/es2020/src/misc/enums.js +23 -0
  239. package/es2020/src/misc/enums.js.map +1 -0
  240. package/es2020/src/misc/tokens.js +4 -0
  241. package/es2020/src/misc/tokens.js.map +1 -1
  242. package/es2020/src/misc/types.js +2 -0
  243. package/es2020/src/misc/types.js.map +1 -0
  244. package/es2020/src/misc/utils.js +111 -0
  245. package/es2020/src/misc/utils.js.map +1 -0
  246. package/es2020/src/misc/validators.js +107 -0
  247. package/es2020/src/misc/validators.js.map +1 -1
  248. package/es2020/src/modules/datePipes.module.js +4 -4
  249. package/es2020/src/modules/dateTime/directives/dateTimeBase.js +77 -0
  250. package/es2020/src/modules/dateTime/directives/dateTimeBase.js.map +1 -0
  251. package/es2020/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +76 -0
  252. package/es2020/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +1 -0
  253. package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +143 -0
  254. package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -0
  255. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +72 -0
  256. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +1 -0
  257. package/es2020/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +71 -0
  258. package/es2020/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +1 -0
  259. package/es2020/src/modules/dateTime/directives/dateTimeRestrictedBase.js +149 -0
  260. package/es2020/src/modules/dateTime/directives/dateTimeRestrictedBase.js.map +1 -0
  261. package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +64 -0
  262. package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -0
  263. package/es2020/src/modules/dateTime/directives/index.js +8 -0
  264. package/es2020/src/modules/dateTime/directives/index.js.map +1 -0
  265. package/es2020/src/modules/dateTime/index.js +3 -0
  266. package/es2020/src/modules/dateTime/index.js.map +1 -0
  267. package/es2020/src/modules/dateTime/modules/dateTime.module.js +39 -0
  268. package/es2020/src/modules/dateTime/modules/dateTime.module.js.map +1 -0
  269. package/es2020/src/modules/dateTime/modules/index.js +2 -0
  270. package/es2020/src/modules/dateTime/modules/index.js.map +1 -0
  271. package/es2020/src/modules/index.js +3 -0
  272. package/es2020/src/modules/index.js.map +1 -0
  273. package/es2020/src/pipes/dateConvert.pipe.js +3 -3
  274. package/es2020/src/pipes/dateFormat.pipe.js +3 -3
  275. package/es2020/src/pipes/dateFormat.pipe.js.map +1 -1
  276. package/es2020/src/services/{dateApi.interface.js → dateApi/dateApi.interface.js} +0 -0
  277. package/es2020/src/services/dateApi/dateApi.interface.js.map +1 -0
  278. package/es2020/src/services/{datePositionParser.interface.js → datePositionParser/datePositionParser.interface.js} +0 -0
  279. package/es2020/src/services/datePositionParser/datePositionParser.interface.js.map +1 -0
  280. package/{es2015/src/services → es2020/src/services/datePositionParser}/datePositionParser.service.js +3 -3
  281. package/es2020/src/services/datePositionParser/datePositionParser.service.js.map +1 -0
  282. package/es2020/src/services/{dateTimeRelativeParser.service.js → dateTimeRelativeParser/dateTimeRelativeParser.service.js} +11 -11
  283. package/es2020/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js.map +1 -0
  284. package/{es2015/src/services → es2020/src/services/dateValueProvider}/dateValueProvider.service.js +4 -4
  285. package/es2020/src/services/dateValueProvider/dateValueProvider.service.js.map +1 -0
  286. package/es2020/src/services/index.js +5 -3
  287. package/es2020/src/services/index.js.map +1 -1
  288. package/moment/src/services/momentDateApi.service.d.ts +4 -0
  289. package/moment/src/services/momentDateApi.service.d.ts.map +1 -1
  290. package/package.json +36 -36
  291. package/src/index.d.ts +13 -13
  292. package/src/index.d.ts.map +1 -1
  293. package/src/{misc → interfaces/dateTime}/datetime.interface.d.ts +2 -2
  294. package/src/interfaces/dateTime/datetime.interface.d.ts.map +1 -0
  295. package/src/interfaces/dateTimeInput/dateTimeInput.interface.d.ts +37 -0
  296. package/src/interfaces/dateTimeInput/dateTimeInput.interface.d.ts.map +1 -0
  297. package/src/{services → interfaces/formatProvider}/formatProvider.interface.d.ts +0 -0
  298. package/src/{services → interfaces/formatProvider}/formatProvider.interface.d.ts.map +0 -0
  299. package/src/interfaces/index.d.ts +4 -0
  300. package/src/interfaces/index.d.ts.map +1 -0
  301. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.css +0 -0
  302. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.d.ts +1 -1
  303. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.d.ts.map +0 -0
  304. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.component.html +0 -0
  305. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.d.ts +0 -0
  306. package/src/{picker → legacy/picker}/components/clockTimePicker/clockTimePicker.interface.d.ts.map +0 -0
  307. package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.css +0 -0
  308. package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.d.ts +3 -3
  309. package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.component.d.ts.map +1 -1
  310. package/src/legacy/picker/components/dayPicker/dayPicker.component.html +21 -0
  311. package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.d.ts +0 -0
  312. package/src/{picker → legacy/picker}/components/dayPicker/dayPicker.interfaces.d.ts.map +0 -0
  313. package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.css +0 -0
  314. package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.d.ts +2 -2
  315. package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.component.d.ts.map +1 -1
  316. package/src/legacy/picker/components/monthPicker/monthPicker.component.html +13 -0
  317. package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.d.ts +0 -0
  318. package/src/{picker → legacy/picker}/components/monthPicker/monthPicker.interfaces.d.ts.map +0 -0
  319. package/src/{picker → legacy/picker}/components/picker/picker.component.animations.d.ts +0 -0
  320. package/src/{picker → legacy/picker}/components/picker/picker.component.animations.d.ts.map +0 -0
  321. package/src/{picker → legacy/picker}/components/picker/picker.component.css +0 -0
  322. package/src/{picker → legacy/picker}/components/picker/picker.component.d.ts +3 -3
  323. package/src/{picker → legacy/picker}/components/picker/picker.component.d.ts.map +1 -1
  324. package/src/legacy/picker/components/picker/picker.component.html +3 -0
  325. package/src/{picker → legacy/picker}/components/pickerBase.component.d.ts +3 -3
  326. package/src/{picker → legacy/picker}/components/pickerBase.component.d.ts.map +1 -1
  327. package/src/{picker → legacy/picker}/components/pickerImplBase.component.d.ts +3 -3
  328. package/src/{picker → legacy/picker}/components/pickerImplBase.component.d.ts.map +1 -1
  329. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.css +0 -0
  330. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.d.ts +3 -3
  331. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.d.ts.map +1 -1
  332. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.component.html +0 -0
  333. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.d.ts +0 -0
  334. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.data.d.ts.map +0 -0
  335. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.d.ts +0 -0
  336. package/src/{picker → legacy/picker}/components/rollerTimePicker/rollerTimePicker.interface.d.ts.map +0 -0
  337. package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.css +0 -0
  338. package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.d.ts +2 -2
  339. package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.component.d.ts.map +1 -1
  340. package/src/legacy/picker/components/yearPicker/yearPicker.component.html +13 -0
  341. package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.d.ts +0 -0
  342. package/src/{picker → legacy/picker}/components/yearPicker/yearPicker.interfaces.d.ts.map +0 -0
  343. package/src/{picker → legacy/picker}/directives/index.d.ts +0 -0
  344. package/src/{picker → legacy/picker}/directives/index.d.ts.map +0 -0
  345. package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.d.ts +1 -1
  346. package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.directive.d.ts.map +0 -0
  347. package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.d.ts +0 -0
  348. package/src/{picker → legacy/picker}/directives/loopScroll/loopScroll.interface.d.ts.map +0 -0
  349. package/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.d.ts +1 -1
  350. package/src/{picker → legacy/picker}/directives/loopScrollData/loopScrollData.directive.d.ts.map +0 -0
  351. package/src/{picker → legacy/picker}/interfaces.d.ts +0 -0
  352. package/src/{picker → legacy/picker}/interfaces.d.ts.map +0 -0
  353. package/src/{picker → legacy/picker}/misc/datetimePicker.interface.d.ts +2 -2
  354. package/src/{picker → legacy/picker}/misc/datetimePicker.interface.d.ts.map +1 -1
  355. package/src/{picker → legacy/picker}/misc/tokens.d.ts +0 -0
  356. package/src/{picker → legacy/picker}/misc/tokens.d.ts.map +0 -0
  357. package/src/{picker → legacy/picker}/modules/picker.module.d.ts +1 -1
  358. package/src/{picker → legacy/picker}/modules/picker.module.d.ts.map +0 -0
  359. package/src/{picker → legacy/picker}/types.d.ts +0 -0
  360. package/src/{picker → legacy/picker}/types.d.ts.map +0 -0
  361. package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.css +0 -0
  362. package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.d.ts +3 -5
  363. package/src/legacy/selector/components/inputDateTime/inputDateTime.component.d.ts.map +1 -0
  364. package/src/{selector → legacy/selector}/components/inputDateTime/inputDateTime.component.html +0 -0
  365. package/src/{selector → legacy/selector}/components/selector/selector.component.animations.d.ts +0 -0
  366. package/src/{selector → legacy/selector}/components/selector/selector.component.animations.d.ts.map +0 -0
  367. package/src/{selector → legacy/selector}/components/selector/selector.component.css +0 -0
  368. package/src/{selector → legacy/selector}/components/selector/selector.component.d.ts +4 -4
  369. package/src/{selector → legacy/selector}/components/selector/selector.component.d.ts.map +1 -1
  370. package/src/{selector → legacy/selector}/components/selector/selector.component.html +2 -2
  371. package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.css +0 -0
  372. package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.d.ts +3 -4
  373. package/src/legacy/selector/components/simpleInputDateTime/simpleInputDateTime.component.d.ts.map +1 -0
  374. package/src/{selector → legacy/selector}/components/simpleInputDateTime/simpleInputDateTime.component.html +0 -0
  375. package/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.d.ts +2 -2
  376. package/src/{selector → legacy/selector}/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.d.ts.map +1 -1
  377. package/src/{selector → legacy/selector}/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts +2 -2
  378. package/src/{selector → legacy/selector}/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts.map +1 -1
  379. package/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts +2 -2
  380. package/src/{selector → legacy/selector}/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts.map +1 -1
  381. package/src/{selector → legacy/selector}/directives/datetimeValidator/datetimeValidator.directive.d.ts +1 -1
  382. package/src/{selector → legacy/selector}/directives/datetimeValidator/datetimeValidator.directive.d.ts.map +0 -0
  383. package/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts +2 -2
  384. package/src/{selector → legacy/selector}/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts.map +1 -1
  385. package/src/{selector → legacy/selector}/interfaces.d.ts +0 -0
  386. package/src/{selector → legacy/selector}/interfaces.d.ts.map +0 -0
  387. package/src/{selector → legacy/selector}/misc/datetimeSelector.interface.d.ts +1 -1
  388. package/src/{selector → legacy/selector}/misc/datetimeSelector.interface.d.ts.map +1 -1
  389. package/src/{selector → legacy/selector}/misc/tokens.d.ts +0 -0
  390. package/src/{selector → legacy/selector}/misc/tokens.d.ts.map +0 -0
  391. package/src/{selector → legacy/selector}/modules/basicSelector.module.d.ts +0 -0
  392. package/src/{selector → legacy/selector}/modules/basicSelector.module.d.ts.map +0 -0
  393. package/src/{selector → legacy/selector}/modules/selector.module.d.ts +0 -0
  394. package/src/{selector → legacy/selector}/modules/selector.module.d.ts.map +0 -0
  395. package/src/{selector → legacy/selector}/types.d.ts +0 -0
  396. package/src/{selector → legacy/selector}/types.d.ts.map +0 -0
  397. package/src/misc/enums.d.ts +22 -0
  398. package/src/misc/enums.d.ts.map +1 -0
  399. package/src/misc/tokens.d.ts +6 -1
  400. package/src/misc/tokens.d.ts.map +1 -1
  401. package/src/misc/types.d.ts +11 -0
  402. package/src/misc/types.d.ts.map +1 -0
  403. package/src/misc/utils.d.ts +30 -0
  404. package/src/misc/utils.d.ts.map +1 -0
  405. package/src/misc/validators.d.ts +26 -1
  406. package/src/misc/validators.d.ts.map +1 -1
  407. package/src/modules/dateTime/directives/dateTimeBase.d.ts +56 -0
  408. package/src/modules/dateTime/directives/dateTimeBase.d.ts.map +1 -0
  409. package/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.d.ts +40 -0
  410. package/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.d.ts.map +1 -0
  411. package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts +61 -0
  412. package/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.d.ts.map +1 -0
  413. package/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.d.ts +33 -0
  414. package/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.d.ts.map +1 -0
  415. package/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.d.ts +33 -0
  416. package/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.d.ts.map +1 -0
  417. package/src/modules/dateTime/directives/dateTimeRestrictedBase.d.ts +74 -0
  418. package/src/modules/dateTime/directives/dateTimeRestrictedBase.d.ts.map +1 -0
  419. package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts +29 -0
  420. package/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.d.ts.map +1 -0
  421. package/src/modules/dateTime/directives/index.d.ts +8 -0
  422. package/src/modules/dateTime/directives/index.d.ts.map +1 -0
  423. package/src/modules/dateTime/index.d.ts +3 -0
  424. package/src/modules/dateTime/index.d.ts.map +1 -0
  425. package/src/modules/dateTime/modules/dateTime.module.d.ts +15 -0
  426. package/src/modules/dateTime/modules/dateTime.module.d.ts.map +1 -0
  427. package/src/modules/dateTime/modules/index.d.ts +2 -0
  428. package/src/modules/dateTime/modules/index.d.ts.map +1 -0
  429. package/src/modules/index.d.ts +3 -0
  430. package/src/modules/index.d.ts.map +1 -0
  431. package/src/pipes/dateConvert.pipe.d.ts +1 -1
  432. package/src/pipes/dateFormat.pipe.d.ts +3 -2
  433. package/src/pipes/dateFormat.pipe.d.ts.map +1 -1
  434. package/src/services/{dateApi.interface.d.ts → dateApi/dateApi.interface.d.ts} +4 -0
  435. package/src/services/dateApi/dateApi.interface.d.ts.map +1 -0
  436. package/src/services/{datePositionParser.interface.d.ts → datePositionParser/datePositionParser.interface.d.ts} +0 -0
  437. package/src/services/{datePositionParser.interface.d.ts.map → datePositionParser/datePositionParser.interface.d.ts.map} +0 -0
  438. package/src/services/{datePositionParser.service.d.ts → datePositionParser/datePositionParser.service.d.ts} +0 -0
  439. package/src/services/{datePositionParser.service.d.ts.map → datePositionParser/datePositionParser.service.d.ts.map} +0 -0
  440. package/src/services/{dateTimeRelativeParser.service.d.ts → dateTimeRelativeParser/dateTimeRelativeParser.service.d.ts} +3 -3
  441. package/src/services/{dateTimeRelativeParser.service.d.ts.map → dateTimeRelativeParser/dateTimeRelativeParser.service.d.ts.map} +1 -1
  442. package/src/services/{dateValueProvider.service.d.ts → dateValueProvider/dateValueProvider.service.d.ts} +2 -2
  443. package/src/services/{dateValueProvider.service.d.ts.map → dateValueProvider/dateValueProvider.service.d.ts.map} +1 -1
  444. package/src/services/index.d.ts +5 -3
  445. package/src/services/index.d.ts.map +1 -1
  446. package/version.bak +1 -1
  447. package/es2015/src/misc/datetime.interface.js.map +0 -1
  448. package/es2015/src/picker/components/clockTimePicker/clockTimePicker.component.js.map +0 -1
  449. package/es2015/src/picker/components/clockTimePicker/clockTimePicker.interface.js.map +0 -1
  450. package/es2015/src/picker/components/dayPicker/dayPicker.component.js.map +0 -1
  451. package/es2015/src/picker/components/dayPicker/dayPicker.interfaces.js.map +0 -1
  452. package/es2015/src/picker/components/monthPicker/monthPicker.component.js.map +0 -1
  453. package/es2015/src/picker/components/monthPicker/monthPicker.interfaces.js.map +0 -1
  454. package/es2015/src/picker/components/picker/picker.component.animations.js.map +0 -1
  455. package/es2015/src/picker/components/picker/picker.component.js.map +0 -1
  456. package/es2015/src/picker/components/pickerBase.component.js.map +0 -1
  457. package/es2015/src/picker/components/pickerImplBase.component.js.map +0 -1
  458. package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
  459. package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -1
  460. package/es2015/src/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +0 -1
  461. package/es2015/src/picker/components/yearPicker/yearPicker.component.js.map +0 -1
  462. package/es2015/src/picker/components/yearPicker/yearPicker.interfaces.js.map +0 -1
  463. package/es2015/src/picker/directives/index.js.map +0 -1
  464. package/es2015/src/picker/directives/loopScroll/loopScroll.directive.js.map +0 -1
  465. package/es2015/src/picker/directives/loopScroll/loopScroll.interface.js.map +0 -1
  466. package/es2015/src/picker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
  467. package/es2015/src/picker/interfaces.js.map +0 -1
  468. package/es2015/src/picker/misc/datetimePicker.interface.js.map +0 -1
  469. package/es2015/src/picker/misc/tokens.js.map +0 -1
  470. package/es2015/src/picker/modules/picker.module.js.map +0 -1
  471. package/es2015/src/picker/types.js.map +0 -1
  472. package/es2015/src/selector/components/inputDateTime/inputDateTime.component.js.map +0 -1
  473. package/es2015/src/selector/components/selector/selector.component.animations.js.map +0 -1
  474. package/es2015/src/selector/components/selector/selector.component.js.map +0 -1
  475. package/es2015/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +0 -1
  476. package/es2015/src/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +0 -1
  477. package/es2015/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +0 -1
  478. package/es2015/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +0 -1
  479. package/es2015/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +0 -1
  480. package/es2015/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +0 -1
  481. package/es2015/src/selector/interfaces.js.map +0 -1
  482. package/es2015/src/selector/misc/datetimeSelector.interface.js.map +0 -1
  483. package/es2015/src/selector/misc/tokens.js.map +0 -1
  484. package/es2015/src/selector/modules/basicSelector.module.js.map +0 -1
  485. package/es2015/src/selector/modules/selector.module.js.map +0 -1
  486. package/es2015/src/selector/types.js.map +0 -1
  487. package/es2015/src/services/dateApi.interface.js.map +0 -1
  488. package/es2015/src/services/datePositionParser.interface.js.map +0 -1
  489. package/es2015/src/services/datePositionParser.service.js.map +0 -1
  490. package/es2015/src/services/dateTimeRelativeParser.service.js.map +0 -1
  491. package/es2015/src/services/dateValueProvider.service.js.map +0 -1
  492. package/es2015/src/services/formatProvider.interface.js.map +0 -1
  493. package/es2020/src/misc/datetime.interface.js.map +0 -1
  494. package/es2020/src/picker/components/clockTimePicker/clockTimePicker.component.js.map +0 -1
  495. package/es2020/src/picker/components/clockTimePicker/clockTimePicker.interface.js.map +0 -1
  496. package/es2020/src/picker/components/dayPicker/dayPicker.component.js.map +0 -1
  497. package/es2020/src/picker/components/dayPicker/dayPicker.interfaces.js.map +0 -1
  498. package/es2020/src/picker/components/monthPicker/monthPicker.component.js.map +0 -1
  499. package/es2020/src/picker/components/monthPicker/monthPicker.interfaces.js.map +0 -1
  500. package/es2020/src/picker/components/picker/picker.component.animations.js.map +0 -1
  501. package/es2020/src/picker/components/picker/picker.component.js.map +0 -1
  502. package/es2020/src/picker/components/pickerBase.component.js.map +0 -1
  503. package/es2020/src/picker/components/pickerImplBase.component.js.map +0 -1
  504. package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
  505. package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -1
  506. package/es2020/src/picker/components/rollerTimePicker/rollerTimePicker.interface.js.map +0 -1
  507. package/es2020/src/picker/components/yearPicker/yearPicker.component.js.map +0 -1
  508. package/es2020/src/picker/components/yearPicker/yearPicker.interfaces.js.map +0 -1
  509. package/es2020/src/picker/directives/index.js.map +0 -1
  510. package/es2020/src/picker/directives/loopScroll/loopScroll.directive.js.map +0 -1
  511. package/es2020/src/picker/directives/loopScroll/loopScroll.interface.js.map +0 -1
  512. package/es2020/src/picker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
  513. package/es2020/src/picker/interfaces.js.map +0 -1
  514. package/es2020/src/picker/misc/datetimePicker.interface.js.map +0 -1
  515. package/es2020/src/picker/misc/tokens.js.map +0 -1
  516. package/es2020/src/picker/modules/picker.module.js.map +0 -1
  517. package/es2020/src/picker/types.js.map +0 -1
  518. package/es2020/src/selector/components/inputDateTime/inputDateTime.component.js.map +0 -1
  519. package/es2020/src/selector/components/selector/selector.component.animations.js.map +0 -1
  520. package/es2020/src/selector/components/selector/selector.component.js.map +0 -1
  521. package/es2020/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +0 -1
  522. package/es2020/src/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.js.map +0 -1
  523. package/es2020/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +0 -1
  524. package/es2020/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +0 -1
  525. package/es2020/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +0 -1
  526. package/es2020/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +0 -1
  527. package/es2020/src/selector/interfaces.js.map +0 -1
  528. package/es2020/src/selector/misc/datetimeSelector.interface.js.map +0 -1
  529. package/es2020/src/selector/misc/tokens.js.map +0 -1
  530. package/es2020/src/selector/modules/basicSelector.module.js.map +0 -1
  531. package/es2020/src/selector/modules/selector.module.js.map +0 -1
  532. package/es2020/src/selector/types.js.map +0 -1
  533. package/es2020/src/services/dateApi.interface.js.map +0 -1
  534. package/es2020/src/services/datePositionParser.interface.js.map +0 -1
  535. package/es2020/src/services/datePositionParser.service.js.map +0 -1
  536. package/es2020/src/services/dateTimeRelativeParser.service.js.map +0 -1
  537. package/es2020/src/services/dateValueProvider.service.js.map +0 -1
  538. package/es2020/src/services/formatProvider.interface.js.map +0 -1
  539. package/src/misc/datetime.interface.d.ts.map +0 -1
  540. package/src/picker/components/dayPicker/dayPicker.component.html +0 -21
  541. package/src/picker/components/monthPicker/monthPicker.component.html +0 -13
  542. package/src/picker/components/picker/picker.component.html +0 -3
  543. package/src/picker/components/yearPicker/yearPicker.component.html +0 -13
  544. package/src/selector/components/inputDateTime/inputDateTime.component.d.ts.map +0 -1
  545. package/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.d.ts.map +0 -1
  546. package/src/services/dateApi.interface.d.ts.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"monthPicker.component.js","sourceRoot":"","sources":["../../../../../src/picker/components/monthPicker/monthPicker.component.ts","../../../../../src/picker/components/monthPicker/monthPicker.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Inject, ChangeDetectorRef} from '@angular/core';\nimport {extend} from '@jscrpt/common';\n\nimport {DATE_API} from '../../../misc/tokens';\nimport {DateApi, DateApiObject} from '../../../services/dateApi.interface';\nimport {DateTimePicker, MonthData, PeriodData} from '../../misc/datetimePicker.interface';\nimport {PickerBaseComponent} from '../pickerBase.component';\nimport {MonthPickerCssClasses} from './monthPicker.interfaces';\n\n/**\n * Default styles for picker\n */\nconst defaultStyles: MonthPickerCssClasses =\n{\n periodSelection: 'period',\n previousPeriod: 'fas fa-angle-left clickable',\n nextPeriod: 'fas fa-angle-right clickable',\n periodValue: 'period-value',\n periodData: 'period-data',\n periodDatum: 'period-datum clickable',\n clickable: 'clickable'\n};\n\n/**\n * Component used for displaying month picker\n */\n@Component(\n{\n selector: 'date-time-month-picker',\n templateUrl: 'monthPicker.component.html',\n styleUrls: ['monthPicker.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DateTimeMonthPickerComponent<TDate = any> extends PickerBaseComponent<TDate, MonthData<TDate>, MonthPickerCssClasses> implements DateTimePicker<TDate, MonthPickerCssClasses>\n{\n //######################### constructor #########################\n constructor(@Inject(DATE_API) dateApi: DateApi<TDate>,\n changeDetector: ChangeDetectorRef)\n {\n super(dateApi, changeDetector);\n\n this.cssClasses = extend(true, {}, defaultStyles);\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Changes displayed year to next year\n * @param event - Event that occured\n * @internal\n */\n public nextYear(event: Event)\n {\n event.preventDefault();\n this.displayDate!.addYears(1);\n\n this.display(this.displayDate!);\n }\n\n /**\n * Changes displayed year to previous year\n * @param event - Event that occured\n * @internal\n */\n public previousYear(event: Event)\n {\n event.preventDefault();\n this.displayDate!.subtractYears(1);\n\n this.display(this.displayDate!);\n }\n\n //######################### public methods - implementation of DateTimePicker #########################\n\n /**\n * Set displays date to be displayed\n * @param value - Value that identifies period that is going to be displayed\n */\n public display(value: DateApiObject<TDate>): void\n {\n this.displayDate = value;\n\n const monthOfYear = this.displayDate.startOfYear().updateOriginal();\n this.periodData = [];\n\n for(let x = 0; x < 12; x++)\n {\n this.periodData.push(\n {\n active: false,\n disabled: false,\n date: monthOfYear.value,\n name: monthOfYear.format('MMM')\n });\n\n monthOfYear.addMonths(1);\n }\n\n this.displayDate.resetOriginal();\n this._updateMinMax();\n\n //set value if exists\n if(this._value && (this.displayDate.isSameYear(this._value.from) || this.displayDate.isSameYear(this._value.to)))\n {\n this.setValue(this._value);\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Obtains end of period\n * @param period - Period for which should be end obtained\n */\n protected _endOfPeriod(period: PeriodData<TDate>): TDate\n {\n return this._dateApi.getValue(period.date).endOfMonth().value;\n }\n\n /**\n * Tests whether provided value is in same period as displayed picker\n * @param val - Tested value for same period as displayed picker\n */\n protected _isSamePeriodAsDisplayed(val: DateApiObject<TDate>): boolean\n {\n return val.isSameYear(this.displayDate!.value);\n }\n\n /**\n * Tests whether provided value is in same period target value\n * @param val - Tested value\n * @param target - Target value to be tested against\n */\n protected _isSamePeriod(val: DateApiObject<TDate>, target: TDate): boolean\n {\n return val.isSameMonth(target);\n }\n\n /**\n * Gets period data for specified value\n * @param val - Value for which is period data obtained\n */\n protected _getPeriodData(val: DateApiObject<TDate>): PeriodData<TDate>\n {\n return this.periodData[val.month()];\n }\n}","<div [ngClass]=\"cssClasses?.periodSelection | asRequired\">\r\n <div [ngClass]=\"cssClasses?.previousPeriod | asRequired\" (mousedown)=\"previousYear($event)\"></div>\r\n <div [ngClass]=\"cssClasses?.periodValue | asRequired\" [class.clickable]=\"canGoUp\" (mousedown)=\"goUp($event)\">{{displayDate?.format('yyyy')}}</div>\r\n <div [ngClass]=\"cssClasses?.nextPeriod | asRequired\" (mousedown)=\"nextYear($event)\"></div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.periodData | asRequired\">\r\n <div *ngFor=\"let month of periodData\"\r\n [ngClass]=\"cssClasses?.periodDatum | asRequired\"\r\n [class.active]=\"month.active\"\r\n [class.disabled]=\"month.disabled\"\r\n (mousedown)=\"select($event, month)\">{{month.name}}</div>\r\n</div>"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"monthPicker.interfaces.js","sourceRoot":"","sources":["../../../../../src/picker/components/monthPicker/monthPicker.interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import {CommonPickerCssClasses} from '../../misc/datetimePicker.interface';\n\n/**\n * Specific css classes for month picker\n */\nexport interface MonthPickerCssClasses extends CommonPickerCssClasses\n{\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"picker.component.animations.js","sourceRoot":"","sources":["../../../../../src/picker/components/picker/picker.component.animations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAEtF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,aAAa,EACvD;IACI,UAAU,CAAC,QAAQ,EACnB;QACI,KAAK,CACL;YACI,OAAO,EAAE,CAAC;SACb,CAAC;QACF,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;YACI,OAAO,EAAE,CAAC;SACb,CAAC,CAAC;KACN,CAAC;IACF,UAAU,CAAC,QAAQ,EACnB;QACI,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;YACI,OAAO,EAAE,CAAC;SACb,CAAC,CAAC;KACN,CAAC;IACF,UAAU,CAAC,YAAY,EACvB;QACI,KAAK,CACL;YACI,KAAK,CAAC,QAAQ,EACd;gBACI,KAAK,CACL;oBACI,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,YAAY;iBAC1B,CAAC;gBACF,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;oBACI,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,UAAU;iBACxB,CAAC,CAAC;aACN,CAAC;YACF,KAAK,CAAC,QAAQ,EACd;gBACI,KAAK,CACL;oBACI,SAAS,EAAE,UAAU;oBACrB,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,UAAU;iBACvB,CAAC;gBACF,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;oBACI,SAAS,EAAE,WAAW;oBACtB,OAAO,EAAE,CAAC;iBACb,CAAC,CAAC;aACN,CAAC;SACL,CAAC;KACL,CAAC;IACF,UAAU,CAAC,YAAY,EACvB;QACI,KAAK,CACL;YACI,KAAK,CAAC,QAAQ,EACd;gBACI,KAAK,CACL;oBACI,OAAO,EAAE,CAAC;oBACV,QAAQ,EAAE,UAAU;oBACpB,SAAS,EAAE,WAAW;iBACzB,CAAC;gBACF,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;oBACI,OAAO,EAAE,CAAC;oBACV,SAAS,EAAE,UAAU;iBACxB,CAAC,CAAC;aACN,CAAC;YACF,KAAK,CAAC,QAAQ,EACd;gBACI,KAAK,CACL;oBACI,SAAS,EAAE,UAAU;oBACrB,QAAQ,EAAE,UAAU;iBACvB,CAAC;gBACF,OAAO,CAAC,OAAO,EAAE,KAAK,CACtB;oBACI,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,CAAC;iBACb,CAAC,CAAC;aACN,CAAC;SACL,CAAC;KACL,CAAC;CACL,CAAC,CAAC","sourcesContent":["import {animate, group, query, style, transition, trigger} from '@angular/animations';\n\n/**\n * Animation trigger for animating scale up and scale down picker\n */\nexport const scaleUpDownTrigger = trigger('scaleUpDown',\n[\n transition(':enter', \n [\n style(\n {\n opacity: 0\n }),\n animate('220ms', style(\n {\n opacity: 1\n }))\n ]),\n transition(':leave', \n [\n animate('220ms', style(\n {\n opacity: 0\n }))\n ]),\n transition(':increment', \n [\n group(\n [\n query(':enter',\n [\n style(\n {\n opacity: 0,\n position: 'absolute',\n transform: 'scale(1.1)',\n }),\n animate('220ms', style(\n {\n opacity: 1,\n transform: 'scale(1)',\n }))\n ]),\n query(':leave',\n [\n style(\n {\n transform: 'scale(1)',\n opacity: 1,\n position: 'absolute'\n }),\n animate('220ms', style(\n {\n transform: 'scale(.9)',\n opacity: 0\n }))\n ])\n ])\n ]),\n transition(':decrement', \n [\n group(\n [\n query(':enter',\n [\n style(\n {\n opacity: 0,\n position: 'absolute',\n transform: 'scale(.9)'\n }),\n animate('220ms', style(\n {\n opacity: 1,\n transform: 'scale(1)'\n }))\n ]),\n query(':leave',\n [\n style(\n {\n transform: 'scale(1)',\n position: 'absolute'\n }),\n animate('220ms', style(\n {\n transform: 'scale(1.1)',\n opacity: 0\n }))\n ])\n ])\n ])\n]);"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"picker.component.js","sourceRoot":"","sources":["../../../../../src/picker/components/picker/picker.component.ts","../../../../../src/picker/components/picker/picker.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Optional, Inject, Input, Type, OnInit, EventEmitter, Output, ChangeDetectorRef, OnDestroy} from '@angular/core';\nimport {extend} from '@jscrpt/common';\nimport {Subscription} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DATE_API} from '../../../misc/tokens';\nimport {DateApi} from '../../../services';\nimport {DateTimePicker, DateTimePickerOptions} from '../../misc/datetimePicker.interface';\nimport {DATE_TIME_PICKER_CONFIGURATION} from '../../misc/tokens';\nimport {DateTimeDayPickerComponent} from '../dayPicker/dayPicker.component';\nimport {DateTimeMonthPickerComponent} from '../monthPicker/monthPicker.component';\nimport {DateTimeYearPickerComponent} from '../yearPicker/yearPicker.component';\nimport {scaleUpDownTrigger} from './picker.component.animations';\n\n//TODO - merge options\n\n/**\n * Default configuration for picker\n */\nconst defaultConfiguration: DateTimePickerOptions<DateTimePicker> =\n{\n defaultPeriod: 'day',\n pickerPeriodsDefinition:\n {\n 'day': DateTimeDayPickerComponent,\n 'month': DateTimeMonthPickerComponent,\n 'year': DateTimeYearPickerComponent\n },\n pickerPeriodsOrder: null,\n cssClasses:\n {\n }\n};\n\n/**\n * Component used for displaying date time picker\n */\n@Component(\n{\n selector: 'date-time-picker',\n templateUrl: 'picker.component.html',\n styleUrls: ['picker.component.css'],\n animations: [scaleUpDownTrigger],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DateTimePickerComponent<TDate = any> implements OnInit, OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Instance of active date time picker\n */\n protected _activePicker?: DateTimePicker<TDate>;\n\n /**\n * Name, id of displayed picker\n */\n protected _activePickerName!: string;\n\n /**\n * Array of available picker names\n */\n protected _pickerNames: string[] = [];\n\n /**\n * Current selected value\n */\n protected _value: DateTimeValue<TDate>|null = null;\n\n /**\n * All subscriptions for active picker\n */\n protected _activePickerSubscriptions: Subscription = new Subscription();\n\n /**\n * Date that should be displayed in picker, used when moving up or down in periods\n */\n protected _display?: TDate;\n\n /**\n * Minimal possible value that can be picked\n */\n protected _minValue: TDate|null = null;\n\n /**\n * Maximal possible value that can be picked\n */\n protected _maxValue: TDate|null = null;\n\n /**\n * Current options used by picker\n */\n protected _options: DateTimePickerOptions<DateTimePicker<TDate>>;\n\n //######################### public properties - template bindings #########################\n\n /**\n * Currently active date time picker component type\n * @internal\n */\n public activePickerComponent?: Type<DateTimePicker<TDate>>;\n\n /**\n * Active picker index\n * @internal\n */\n public activePickerIndex: number = 0;\n\n //######################### public properties - inputs #########################\n\n /**\n * Current options used by picker\n */\n @Input()\n public get options(): Partial<DateTimePickerOptions<DateTimePicker<TDate>>>\n {\n return this._options;\n }\n public set options(value: Partial<DateTimePickerOptions<DateTimePicker<TDate>>>)\n {\n this._options = extend(true, this._options, value);\n\n // without deep-copy for this attribute\n if (value?.pickerPeriodsDefinition)\n {\n this._options.pickerPeriodsDefinition = value.pickerPeriodsDefinition;\n }\n }\n\n /**\n * Current selected value\n */\n @Input()\n public get value(): DateTimeValue<TDate>|null\n {\n return this._value;\n }\n public set value(value: DateTimeValue<TDate>|null)\n {\n this._value = value;\n\n this._activePicker?.setValue(value);\n this._activePicker?.invalidateVisuals();\n }\n\n /**\n * Gets or sets minimal possible value for picker, that can be picked\n */\n @Input()\n public get minValue(): TDate|null\n {\n return this._minValue;\n }\n public set minValue(value: TDate|null)\n {\n this._minValue = value;\n this._activePicker?.setMinValue(this._minValue);\n }\n\n /**\n * Gets or sets maximal possible value for picker, that can be picked\n */\n @Input()\n public get maxValue(): TDate|null\n {\n return this._maxValue;\n }\n public set maxValue(value: TDate|null)\n {\n this._maxValue = value;\n this._activePicker?.setMaxValue(this._maxValue);\n }\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when value changes\n */\n @Output()\n public valueChange: EventEmitter<DateTimeValue<TDate>> = new EventEmitter<DateTimeValue<TDate>>();\n\n //######################### constructor #########################\n constructor(@Optional() @Inject(DATE_TIME_PICKER_CONFIGURATION) configuration: Partial<DateTimePickerOptions<DateTimePicker<TDate>>>,\n @Inject(DATE_API) protected _dateApi: DateApi<TDate>,\n protected _changeDetector: ChangeDetectorRef)\n {\n this._options = extend(true, {}, defaultConfiguration, configuration);\n // without deep-copy for this attribute\n if (configuration?.pickerPeriodsDefinition)\n {\n this._options.pickerPeriodsDefinition = configuration.pickerPeriodsDefinition;\n }\n }\n\n //######################### public methods - implementation of OnInit #########################\n\n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n if (this._options.pickerPeriodsOrder)\n {\n if (Array.isArray(this._options.pickerPeriodsOrder))\n {\n this._pickerNames = this._options.pickerPeriodsOrder;\n }\n else\n {\n this._pickerNames = this._options.pickerPeriodsOrder.split(',')\n .map(x => x.trim())\n .filter(x => x);\n }\n }\n if (this._pickerNames && this._pickerNames.length > 0)\n {\n this._pickerNames.forEach(x => \n {\n if(!this._options.pickerPeriodsDefinition![x!])\n {\n throw new Error(`There is no period '${x}' in picker options`);\n }\n });\n }\n else\n {\n this._pickerNames = Object.keys(this._options.pickerPeriodsDefinition!);\n }\n\n if(this._pickerNames.findIndex(x => x == this._options.defaultPeriod) < 0)\n {\n throw new Error(`There is no period '${this._options.defaultPeriod}' in picker options`);\n }\n\n this.activePickerComponent = this._options.pickerPeriodsDefinition![this._options.defaultPeriod!];\n this._activePickerName = this._options.defaultPeriod!;\n this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n\n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._display = undefined;\n this._activePickerSubscriptions.unsubscribe();\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Handles created or destroyed date time picker instance\n * @param picker - Instance of picker or null\n * @internal\n */\n public pickerCreated(picker: DateTimePicker<TDate>): void\n {\n if(picker == this._activePicker)\n {\n return;\n }\n\n this._activePicker = picker;\n\n this._activePickerSubscriptions.unsubscribe();\n this._activePickerSubscriptions = new Subscription();\n\n if(!this._activePicker)\n {\n return;\n }\n\n this._activePickerSubscriptions.add(picker.valueChange.subscribe(() =>\n {\n this._value = picker.value;\n this.valueChange.emit(this._value!);\n }));\n\n this._activePickerSubscriptions.add(picker.scaleUp.subscribe(display =>\n {\n this._display = display;\n const index = this._pickerNames.indexOf(this._activePickerName) + 1;\n this._activePickerName = this._pickerNames[index];\n this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);\n this.activePickerComponent = this._options.pickerPeriodsDefinition![this._activePickerName];\n }));\n\n this._activePickerSubscriptions.add(picker.scaleDown.subscribe(display =>\n {\n this._display = display;\n const index = this._pickerNames.indexOf(this._activePickerName) - 1;\n this._activePickerName = this._pickerNames[index];\n this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);\n this.activePickerComponent = this._options.pickerPeriodsDefinition![this._activePickerName];\n }));\n\n picker.setCanGoDown(this._pickerNames.indexOf(this._activePickerName) > 0);\n picker.setCanGoUp(this._pickerNames.indexOf(this._activePickerName) < this._pickerNames.length - 1);\n\n this._setPickerCssClasses();\n picker.setValue(this._value);\n picker.setMinValue(this._minValue);\n picker.setMaxValue(this._maxValue);\n picker.display(this._display ? this._dateApi.getValue(this._display) : this._dateApi.getValue(this._value?.from ?? this._dateApi.now().value));\n\n picker.invalidateVisuals();\n }\n\n //######################### protected methods #########################\n\n /**\n * Sets picker css classes\n */\n protected _setPickerCssClasses(): void\n {\n if(!this._activePicker)\n {\n return;\n }\n\n //sets shared css\n this._activePicker.setCssClasses(this._options?.cssClasses?.pickerShared ?? {});\n\n if(this._options?.cssClasses?.pickerCustom && this._options?.cssClasses?.pickerCustom[this._activePickerName])\n {\n this._activePicker.setCssClasses(this._options?.cssClasses?.pickerCustom[this._activePickerName]);\n }\n }\n}\n","<div [@scaleUpDown]=\"activePickerIndex\">\r\n <ng-template [ngComponentOutletEx]=\"activePickerComponent\" (ngComponentOutletExCreated)=\"pickerCreated($event)\"></ng-template>\r\n</div>"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pickerBase.component.js","sourceRoot":"","sources":["../../../../src/picker/components/pickerBase.component.ts"],"names":[],"mappings":"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","sourcesContent":["import {ChangeDetectorRef, Directive, Inject} from '@angular/core';\n\nimport {DateTimeValue} from '../../misc/datetime.interface';\nimport {DATE_API} from '../../misc/tokens';\nimport {DateApi, DateApiObject} from '../../services/dateApi.interface';\nimport {DateTimePicker, PeriodData} from '../misc/datetimePicker.interface';\nimport {PickerImplBaseComponent} from './pickerImplBase.component';\n\n/**\n * Base class used as base for picker\n */\n@Directive()\nexport abstract class PickerBaseComponent<TDate = any, TDateData extends PeriodData<TDate> = any, TCssClasses = object> extends PickerImplBaseComponent<TDate, TCssClasses> implements DateTimePicker<TDate, TCssClasses>\n{\n //######################### protected fields #########################\n\n /**\n * Value of originaly set hour\n */\n protected _originalHour: number = 0;\n\n /**\n * Value of originaly set minute\n */\n protected _originalMinute: number = 0;\n\n //######################### public properties - template bindings #########################\n\n /**\n * Array of period data to be displayed\n * @internal\n */\n public periodData: TDateData[] = [];\n\n //######################### constructor #########################\n constructor(@Inject(DATE_API) dateApi: DateApi<TDate>,\n changeDetector: ChangeDetectorRef)\n {\n super(dateApi, changeDetector);\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Selects period\n * @param event - Event that occured\n * @param period - Selected period\n * @internal\n */\n public select(event: Event, period: PeriodData<TDate>): void\n {\n event.preventDefault();\n\n if(period.disabled)\n {\n return;\n }\n\n //handle selection of value\n if(!this.canGoDown)\n {\n this._setPeriod(period);\n\n this._value =\n {\n from: period.date,\n to: this._endOfPeriod(period)\n };\n\n this._valueChange.next();\n\n return;\n }\n\n this._scaleDown.next(period.date);\n }\n\n //######################### public methods - implementation of DateTimePicker #########################\n\n /**\n * Sets minimal possible value for picker, that can be picked\n * @param value - Minimal possible value that can be picked\n */\n public setMinValue(value: TDate|null): void\n {\n this._minValue = value;\n this._updateMinMax();\n }\n\n /**\n * Sets maximal possible value for picker, that can be picked\n * @param value - Maximal possible value that can be picked\n */\n public setMaxValue(value: TDate|null): void\n {\n this._maxValue = value;\n this._updateMinMax();\n }\n\n /**\n * Sets value of datetime picker\n * @param value - Value to be set to this picker\n */\n public setValue(value: DateTimeValue<TDate>|null): void\n {\n this._value = value;\n\n if(this._value)\n {\n this._originalHour = this._dateApi.getValue(this._value.from).hour();\n this._originalMinute = this._dateApi.getValue(this._value.from).minute();\n }\n\n //value is present\n if(this._value && this.displayDate)\n {\n const val = this._dateApi.getValue(this._value.from);\n\n //change picker to value\n if(!this._isSamePeriodAsDisplayed(val))\n {\n this.display(val);\n\n return;\n }\n\n const period = this._getPeriodData(val);\n\n //was initialized\n if(period)\n {\n this._setPeriod(period);\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Sets period as active\n * @param period - Period to be set as active\n */\n protected _setPeriod(period: PeriodData<TDate>): void\n {\n this.periodData.forEach(itm => itm.active = false);\n\n period.active = true;\n }\n\n /**\n * Updates minimal and maximal value for picker\n */\n protected _updateMinMax(): void\n {\n if(!this.periodData.length)\n {\n return;\n }\n\n //no min, no max\n if(!this._minValue && !this._maxValue)\n {\n this.periodData.forEach(itm => itm.disabled = false);\n\n return;\n }\n\n const minDateApi = this._minValue ? this._dateApi.getValue(this._minValue) : null;\n const maxDateApi = this._maxValue ? this._dateApi.getValue(this._maxValue) : null;\n let restAfter = false;\n\n this.periodData.forEach(period =>\n {\n if(!!minDateApi && minDateApi.isAfter(period.date) && !this._isSamePeriod(minDateApi, period.date))\n {\n period.disabled = true;\n }\n\n if(restAfter || (!!maxDateApi && maxDateApi.isBefore(period.date) && !this._isSamePeriod(maxDateApi, period.date)))\n {\n restAfter = true;\n period.disabled = true;\n }\n });\n }\n\n /**\n * Obtains end of period\n * @param period - Period for which should be end obtained\n */\n protected abstract _endOfPeriod(period: PeriodData<TDate>): TDate;\n\n /**\n * Tests whether provided value is in same period as displayed picker\n * @param val - Tested value for same period as displayed picker\n */\n protected abstract _isSamePeriodAsDisplayed(val: DateApiObject<TDate>): boolean;\n\n /**\n * Tests whether provided value is in same period target value\n * @param val - Tested value\n * @param target - Target value to be tested against\n */\n protected abstract _isSamePeriod(val: DateApiObject<TDate>, target: TDate): boolean;\n\n /**\n * Gets period data for specified value\n * @param val - Value for which is period data obtained\n */\n protected abstract _getPeriodData(val: DateApiObject<TDate>): PeriodData<TDate>;\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pickerImplBase.component.js","sourceRoot":"","sources":["../../../../src/picker/components/pickerImplBase.component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AACjF,OAAO,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAa,OAAO,EAAC,MAAM,MAAM,CAAC;AAGzC,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;;AAI3C;;GAEG;AAEH,MAAM,OAAgB,uBAAuB;IA8FzC,iEAAiE;IACjE,YAAwC,QAAwB,EAC1C,eAAkC;QADhB,aAAQ,GAAR,QAAQ,CAAgB;QAC1C,oBAAe,GAAf,eAAe,CAAmB;QA9FxD,sEAAsE;QAEtE;;WAEG;QACO,WAAM,GAA8B,IAAI,CAAC;QAEnD;;WAEG;QACO,iBAAY,GAAkB,IAAI,OAAO,EAAQ,CAAC;QAE5D;;WAEG;QACO,aAAQ,GAAmB,IAAI,OAAO,EAAS,CAAC;QAE1D;;WAEG;QACO,eAAU,GAAmB,IAAI,OAAO,EAAS,CAAC;QAE5D;;WAEG;QACO,cAAS,GAAe,IAAI,CAAC;QAEvC;;WAEG;QACO,cAAS,GAAe,IAAI,CAAC;QAoCvC,2FAA2F;QAE3F;;;WAGG;QACI,gBAAW,GAA8B,IAAI,CAAC;QAErD;;;WAGG;QACI,YAAO,GAAY,KAAK,CAAC;QAEhC;;;WAGG;QACI,cAAS,GAAY,KAAK,CAAC;IAYlC,CAAC;IAhED,0GAA0G;IAE1G;;OAEG;IACH,IAAW,KAAK;QAEZ,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAW,WAAW;QAElB,OAAO,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;IAC5C,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QAEd,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAEhB,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;IAC1C,CAAC;IAkCD,wFAAwF;IAExF;;;;OAIG;IACI,IAAI,CAAC,KAAY;QAEpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAG,CAAC,IAAI,CAAC,OAAO,EAChB;YACI,OAAO;SACV;QAED,IAAG,IAAI,CAAC,WAAW,EACnB;YACI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;SAC9C;IACL,CAAC;IAED,uGAAuG;IAEvG;;;OAGG;IACI,aAAa,CAAC,UAAuB;QAExC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACpE,CAAC;IA0BD;;;OAGG;IACI,YAAY,CAAC,KAAc;QAE9B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACI,UAAU,CAAC,KAAc;QAE5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;OAEG;IACI,iBAAiB;QAEpB,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED,2EAA2E;IAE3E;;;;OAIG;IAEI,WAAW,CAAC,KAAY;QAE3B,KAAK,CAAC,cAAc,EAAE,CAAC;IAC3B,CAAC;;oHAlMiB,uBAAuB,kBA+FrB,QAAQ;wGA/FV,uBAAuB;2FAAvB,uBAAuB;kBAD5C,SAAS;;0BAgGO,MAAM;2BAAC,QAAQ;4EAgGrB,WAAW;sBADjB,YAAY;uBAAC,WAAW,EAAE,CAAC,QAAQ,CAAC","sourcesContent":["import {ChangeDetectorRef, Directive, HostListener, Inject} from '@angular/core';\nimport {extend} from '@jscrpt/common';\nimport {Observable, Subject} from 'rxjs';\n\nimport {DateTimeValue} from '../../misc/datetime.interface';\nimport {DATE_API} from '../../misc/tokens';\nimport {DateApi, DateApiObject} from '../../services/dateApi.interface';\nimport {DateTimePicker} from '../misc/datetimePicker.interface';\n\n/**\n * Base class used as base for picker as base implementation of DateTimePicker interface\n */\n@Directive()\nexport abstract class PickerImplBaseComponent<TDate = any, TCssClasses = any> implements DateTimePicker<TDate, TCssClasses>\n{\n //######################### protected fields #########################\n\n /**\n * Current value of datetime\n */\n protected _value: DateTimeValue<TDate>|null = null;\n\n /**\n * Occurs when value changes\n */\n protected _valueChange: Subject<void> = new Subject<void>();\n \n /**\n * Occurs when user scales up\n */\n protected _scaleUp: Subject<TDate> = new Subject<TDate>();\n\n /**\n * Occurs when user scales down\n */\n protected _scaleDown: Subject<TDate> = new Subject<TDate>();\n\n /**\n * Minimal possible value that can be picked\n */\n protected _minValue: TDate|null = null;\n\n /**\n * Maximal possible value that can be picked\n */\n protected _maxValue: TDate|null = null;\n\n //######################### public properties - implementation of DateTimePicker #########################\n\n /**\n * Gets current value of datetime\n */\n public get value(): DateTimeValue<TDate>|null\n {\n return this._value;\n }\n\n /**\n * Occurs when value changes\n */\n public get valueChange(): Observable<void>\n {\n return this._valueChange.asObservable();\n }\n\n /**\n * Occurs when user scales up\n */\n public get scaleUp(): Observable<TDate>\n {\n return this._scaleUp.asObservable();\n }\n\n /**\n * Occurs when user scales down\n */\n public get scaleDown(): Observable<TDate>\n {\n return this._scaleDown.asObservable();\n }\n\n //######################### public properties - template bindings #########################\n\n /**\n * Date api instance for displayed date\n * @internal\n */\n public displayDate: DateApiObject<TDate>|null = null;\n\n /**\n * Indication whether can go up in period\n * @internal\n */\n public canGoUp: boolean = false;\n\n /**\n * Indication whether can go down in period\n * @internal\n */\n public canGoDown: boolean = false;\n\n /**\n * Css classes that are used within picker\n * @internal\n */\n public cssClasses!: TCssClasses;\n\n //######################### constructor #########################\n constructor(@Inject(DATE_API) protected _dateApi: DateApi<TDate>,\n protected _changeDetector: ChangeDetectorRef)\n {\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Changes displayed period to \"higher\" period\n * @param event - Event that occured\n * @internal\n */\n public goUp(event: Event): void\n {\n event.preventDefault();\n\n if(!this.canGoUp)\n {\n return;\n }\n\n if(this.displayDate)\n {\n this._scaleUp.next(this.displayDate.value);\n }\n }\n\n //######################### public methods - implementation of DateTimePicker #########################\n\n /**\n * Sets css classes for picker, allowing to override defaults\n * @param cssClasses - Css classes to be set for picker\n */\n public setCssClasses(cssClasses: TCssClasses): void\n {\n this.cssClasses = extend(true, {}, this.cssClasses, cssClasses);\n }\n\n /**\n * Sets minimal possible value for picker, that can be picked\n * @param value - Minimal possible value that can be picked\n */\n public abstract setMinValue(value: TDate|null): void;\n\n /**\n * Sets maximal possible value for picker, that can be picked\n * @param value - Maximal possible value that can be picked\n */\n public abstract setMaxValue(value: TDate|null): void;\n\n /**\n * Sets value of datetime picker\n * @param value - Value to be set to this picker\n */\n public abstract setValue(value: DateTimeValue<TDate>|null): void;\n\n /**\n * Sets display date to be displayed\n * @param value - Value that identifies period that is going to be displayed\n */\n public abstract display(value: DateApiObject<TDate>): void;\n\n /**\n * Sets indication whether can go down\n * @param value - Indication whether can go down in period\n */\n public setCanGoDown(value: boolean): void\n {\n this.canGoDown = value;\n }\n\n /**\n * Sets indication whether can go up\n * @param value - Indication whether can go up in period\n */\n public setCanGoUp(value: boolean): void\n {\n this.canGoUp = value;\n }\n\n /**\n * Explicitly runs invalidation of content (change detection)\n */\n public invalidateVisuals(): void\n {\n this._changeDetector.detectChanges();\n }\n\n //######################### public methods - host #########################\n\n /**\n * Handles click anyway in picker, that blocks blur\n * @param event - Event that occured\n * @internal\n */\n @HostListener('mousedown', ['$event'])\n public handleClick(event: Event): void\n {\n event.preventDefault();\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rollerTimePicker.component.js","sourceRoot":"","sources":["../../../../../src/picker/components/rollerTimePicker/rollerTimePicker.component.ts","../../../../../src/picker/components/rollerTimePicker/rollerTimePicker.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy} from '@angular/core';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DateApiObject} from '../../../services';\nimport {LoopScrollData} from '../../directives';\nimport {DateTimePicker} from '../../interfaces';\nimport {PickerImplBaseComponent} from '../pickerImplBase.component';\nimport {hours, minutes} from './rollerTimePicker.data';\nimport {RollerTimePickerCssClasses} from './rollerTimePicker.interface';\n\n/**\n * Component used for rendering roller time picker\n */\n@Component(\n{\n selector: 'date-time-roller-time-picker',\n templateUrl: 'rollerTimePicker.component.html',\n styleUrls: ['rollerTimePicker.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DateTimeRollerTimePickerComponent<TDate = any> extends PickerImplBaseComponent<TDate, RollerTimePickerCssClasses> implements DateTimePicker<TDate, RollerTimePickerCssClasses>\n{\n //######################### public properties - template bindings #########################\n\n /**\n * Array of available hours\n */\n public hours: LoopScrollData[] = hours;\n\n /**\n * Array of available minutes\n */\n public minutes: LoopScrollData[] = minutes;\n\n /**\n * Indication whether are minutes open\n */\n public minutesOpen: boolean = false;\n\n /**\n * Indication whether are hours open\n */\n public hoursOpen: boolean = false;\n\n /**\n * Current value of hour\n */\n public get hour(): number\n {\n return this.displayDate?.hour() ?? 0;\n }\n public set hour(value: number)\n {\n this.displayDate?.hour(value);\n }\n\n /**\n * Current value of minute\n */\n public get minute(): number\n {\n return this.displayDate?.minute() ?? 0;\n }\n public set minute(value: number)\n {\n this.displayDate?.minute(value);\n }\n\n //######################### public methods - implementation of PickerBaseComponent #########################\n \n /**\n * @inheritdoc\n */\n public display(value: DateApiObject<TDate>): void\n {\n this.displayDate = value;\n }\n\n /**\n * @inheritdoc\n */\n public setMinValue(_value: TDate | null): void\n {\n }\n\n /**\n * @inheritdoc\n */\n public setMaxValue(_value: TDate | null): void\n {\n }\n\n /**\n * @inheritdoc\n */\n public setValue(value: DateTimeValue<TDate> | null): void\n {\n if(value)\n {\n this.displayDate = this._dateApi.getValue(value.from);\n }\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Sets hour\n * @param event - Mouse event that was triggered\n * @param value - Value to be set as hour\n * @returns \n */\n public setHour<TData = any>(event: MouseEvent|null, value: TData): void\n {\n if(!this.hoursOpen && event)\n {\n return;\n }\n\n event?.stopPropagation();\n event?.preventDefault();\n\n if(this.hour == value as unknown as number)\n {\n this.hoursOpen = false;\n\n return;\n }\n\n this.hour = value as unknown as number;\n \n if(event)\n {\n this.hoursOpen = false;\n }\n\n if(this.displayDate)\n {\n this._value =\n {\n from: this.displayDate?.value,\n to: this.displayDate?.value\n };\n\n this._valueChange.next();\n }\n }\n\n /**\n * Sets minute\n * @param event - Mouse event that was triggered\n * @param value - Value to be set as minute\n * @returns \n */\n public setMinute<TData = any>(event: MouseEvent|null, value: TData): void\n {\n if(!this.minutesOpen && event)\n {\n return;\n }\n\n event?.stopPropagation();\n event?.preventDefault();\n\n if(this.minute == value as unknown as number)\n {\n return;\n }\n\n this.minute = value as unknown as number;\n \n if(event)\n {\n this.minutesOpen = false;\n }\n\n if(this.displayDate)\n {\n this._value =\n {\n from: this.displayDate?.value,\n to: this.displayDate?.value\n };\n\n this._valueChange.next();\n }\n }\n}","<div class=\"flex-row\" style=\"justify-content: center;\">\n <div [class.clickable]=\"canGoUp\" (mousedown)=\"goUp($event)\">{{displayDate?.value | dateFormat: 'date'}}</div>\n</div>\n\n<div class=\"time-area\">\n <div class=\"value-container\"\n [clickOutside]=\"true\"\n (clickOutsideChange)=\"hoursOpen = false\"\n [clickOutsideElement]=\"hoursScroll\">\n <div #hoursScroll\n class=\"roller-scroll\"\n [class.open]=\"hoursOpen\"\n [loopScroll]=\"hour\"\n [open]=\"hoursOpen\"\n (loopScrollChange)=\"setHour(null, $event)\"\n (click)=\"hoursOpen = !hoursOpen\">\n <div *ngFor=\"let hour of hours | slice: -14\"\n [loopScrollData]=\"hour?.data\"\n [clone]=\"true\"\n class=\"roller-item\"\n (click)=\"setHour($event, hour?.data)\">{{hour?.displayText}}</div>\n\n <div *ngFor=\"let hour of hours\"\n [loopScrollData]=\"hour?.data\"\n class=\"roller-item\"\n (click)=\"setHour($event, hour?.data)\">{{hour?.displayText}}</div>\n\n <div *ngFor=\"let hour of hours | slice: 0: 14\"\n [loopScrollData]=\"hour?.data\"\n [clone]=\"true\"\n class=\"roller-item\"\n (click)=\"setHour($event, hour?.data)\">{{hour?.displayText}}</div>\n </div>\n </div>\n\n <div class=\"minute-second-separator\">:</div>\n\n <div class=\"value-container\"\n [clickOutside]=\"true\"\n (clickOutsideChange)=\"minutesOpen = false\"\n [clickOutsideElement]=\"minutesScroll\">\n <div #minutesScroll\n class=\"roller-scroll\"\n [class.open]=\"minutesOpen\"\n [loopScroll]=\"minute\"\n [open]=\"minutesOpen\"\n (loopScrollChange)=\"setMinute(null, $event)\"\n (click)=\"minutesOpen = !minutesOpen\">\n <div *ngFor=\"let minute of minutes | slice: -14\"\n [loopScrollData]=\"minute?.data\"\n [clone]=\"true\"\n class=\"roller-item\"\n (click)=\"setMinute($event, minute?.data)\">{{minute?.displayText}}</div>\n\n <div *ngFor=\"let minute of minutes\"\n [loopScrollData]=\"minute?.data\"\n class=\"roller-item\"\n (click)=\"setMinute($event, minute?.data)\">{{minute?.displayText}}</div>\n\n <div *ngFor=\"let minute of minutes | slice: 0: 14\"\n [loopScrollData]=\"minute?.data\"\n [clone]=\"true\"\n class=\"roller-item\"\n (click)=\"setMinute($event, minute?.data)\">{{minute?.displayText}}</div>\n </div>\n </div>\n</div>\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rollerTimePicker.data.js","sourceRoot":"","sources":["../../../../../src/picker/components/rollerTimePicker/rollerTimePicker.data.ts"],"names":[],"mappings":"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AI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;IACD;QACI,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,EAAE;KACX;CACJ,CAAC","sourcesContent":["import {LoopScrollData} from '../../directives';\n\nexport const hours: LoopScrollData[] =\n[\n {\n displayText: '00',\n data: 0\n },\n {\n displayText: '01',\n data: 1\n },\n {\n displayText: '02',\n data: 2\n },\n {\n displayText: '03',\n data: 3\n },\n {\n displayText: '04',\n data: 4\n },\n {\n displayText: '05',\n data: 5\n },\n {\n displayText: '06',\n data: 6\n },\n {\n displayText: '07',\n data: 7\n },\n {\n displayText: '08',\n data: 8\n },\n {\n displayText: '09',\n data: 9\n },\n {\n displayText: '10',\n data: 10\n },\n {\n displayText: '11',\n data: 11\n },\n {\n displayText: '12',\n data: 12\n },\n {\n displayText: '13',\n data: 13\n },\n {\n displayText: '14',\n data: 14\n },\n {\n displayText: '15',\n data: 15\n },\n {\n displayText: '16',\n data: 16\n },\n {\n displayText: '17',\n data: 17\n },\n {\n displayText: '18',\n data: 18\n },\n {\n displayText: '19',\n data: 19\n },\n {\n displayText: '20',\n data: 20\n },\n {\n displayText: '21',\n data: 21\n },\n {\n displayText: '22',\n data: 22\n },\n {\n displayText: '23',\n data: 23\n }\n];\n\nexport const minutes: LoopScrollData[] =\n[\n {\n displayText: '00',\n data: 0\n },\n {\n displayText: '01',\n data: 1\n },\n {\n displayText: '02',\n data: 2\n },\n {\n displayText: '03',\n data: 3\n },\n {\n displayText: '04',\n data: 4\n },\n {\n displayText: '05',\n data: 5\n },\n {\n displayText: '06',\n data: 6\n },\n {\n displayText: '07',\n data: 7\n },\n {\n displayText: '08',\n data: 8\n },\n {\n displayText: '09',\n data: 9\n },\n {\n displayText: '10',\n data: 10\n },\n {\n displayText: '11',\n data: 11\n },\n {\n displayText: '12',\n data: 12\n },\n {\n displayText: '13',\n data: 13\n },\n {\n displayText: '14',\n data: 14\n },\n {\n displayText: '15',\n data: 15\n },\n {\n displayText: '16',\n data: 16\n },\n {\n displayText: '17',\n data: 17\n },\n {\n displayText: '18',\n data: 18\n },\n {\n displayText: '19',\n data: 19\n },\n {\n displayText: '20',\n data: 20\n },\n {\n displayText: '21',\n data: 21\n },\n {\n displayText: '22',\n data: 22\n },\n {\n displayText: '23',\n data: 23\n },\n {\n displayText: '24',\n data: 24\n },\n {\n displayText: '25',\n data: 25\n },\n {\n displayText: '26',\n data: 26\n },\n {\n displayText: '27',\n data: 27\n },\n {\n displayText: '28',\n data: 28\n },\n {\n displayText: '29',\n data: 29\n },\n {\n displayText: '30',\n data: 30\n },\n {\n displayText: '31',\n data: 31\n },\n {\n displayText: '32',\n data: 32\n },\n {\n displayText: '33',\n data: 33\n },\n {\n displayText: '34',\n data: 34\n },\n {\n displayText: '35',\n data: 35\n },\n {\n displayText: '36',\n data: 36\n },\n {\n displayText: '37',\n data: 37\n },\n {\n displayText: '38',\n data: 38\n },\n {\n displayText: '39',\n data: 39\n },\n {\n displayText: '40',\n data: 40\n },\n {\n displayText: '41',\n data: 41\n },\n {\n displayText: '42',\n data: 42\n },\n {\n displayText: '43',\n data: 43\n },\n {\n displayText: '44',\n data: 44\n },\n {\n displayText: '45',\n data: 45\n },\n {\n displayText: '46',\n data: 46\n },\n {\n displayText: '47',\n data: 47\n },\n {\n displayText: '48',\n data: 48\n },\n {\n displayText: '49',\n data: 49\n },\n {\n displayText: '50',\n data: 50\n },\n {\n displayText: '51',\n data: 51\n },\n {\n displayText: '52',\n data: 52\n },\n {\n displayText: '53',\n data: 53\n },\n {\n displayText: '54',\n data: 54\n },\n {\n displayText: '55',\n data: 55\n },\n {\n displayText: '56',\n data: 56\n },\n {\n displayText: '57',\n data: 57\n },\n {\n displayText: '58',\n data: 58\n },\n {\n displayText: '59',\n data: 59\n },\n];"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"rollerTimePicker.interface.js","sourceRoot":"","sources":["../../../../../src/picker/components/rollerTimePicker/rollerTimePicker.interface.ts"],"names":[],"mappings":"","sourcesContent":["/**\n * Specific css classes for roller time picker\n */\nexport interface RollerTimePickerCssClasses\n{\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"yearPicker.component.js","sourceRoot":"","sources":["../../../../../src/picker/components/yearPicker/yearPicker.component.ts","../../../../../src/picker/components/yearPicker/yearPicker.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Inject, ChangeDetectorRef} from '@angular/core';\nimport {extend} from '@jscrpt/common';\n\nimport {DATE_API} from '../../../misc/tokens';\nimport {DateApi, DateApiObject} from '../../../services/dateApi.interface';\nimport {DateTimePicker, PeriodData, YearData} from '../../misc/datetimePicker.interface';\nimport {PickerBaseComponent} from '../pickerBase.component';\nimport {YearPickerCssClasses} from './yearPicker.interfaces';\n\n/**\n * Default styles for picker\n */\nconst defaultStyles: YearPickerCssClasses =\n{\n periodSelection: 'period',\n previousPeriod: 'fas fa-angle-left clickable',\n nextPeriod: 'fas fa-angle-right clickable',\n periodValue: 'period-value',\n periodData: 'period-data',\n periodDatum: 'period-datum clickable',\n clickable: 'clickable'\n};\n\n/**\n * Component used for displaying year picker\n */\n@Component(\n{\n selector: 'date-time-year-picker',\n templateUrl: 'yearPicker.component.html',\n styleUrls: ['yearPicker.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DateTimeYearPickerComponent<TDate = any> extends PickerBaseComponent<TDate, YearData<TDate>, YearPickerCssClasses> implements DateTimePicker<TDate, YearPickerCssClasses>\n{\n //######################### public properties - template bindings #########################\n\n /**\n * Displayed decade period\n * @internal\n */\n public period: string = '';\n\n //######################### constructor #########################\n constructor(@Inject(DATE_API) dateApi: DateApi<TDate>,\n changeDetector: ChangeDetectorRef)\n {\n super(dateApi, changeDetector);\n\n this.cssClasses = extend(true, {}, defaultStyles);\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Changes displayed decade to next decade\n * @param event - Event that occured\n * @internal\n */\n public nextDecade(event: Event)\n {\n event.preventDefault();\n this.displayDate!.addYears(10);\n\n this.display(this.displayDate!);\n }\n\n /**\n * Changes displayed decade to previous decade\n * @param event - Event that occured\n * @internal\n */\n public previousDecade(event: Event)\n {\n event.preventDefault();\n this.displayDate!.subtractYears(10);\n\n this.display(this.displayDate!);\n }\n\n //######################### public methods - implementation of DateTimePicker #########################\n\n /**\n * Set displays date to be displayed\n * @param value - Value that identifies period that is going to be displayed\n */\n public display(value: DateApiObject<TDate>): void\n {\n this.displayDate = value;\n\n let year = this.displayDate.startOfYear().year();\n\n while(year % 10 !== 0)\n {\n year--;\n }\n\n this.displayDate.year(year).updateOriginal();\n\n this.periodData = [];\n\n for(let x = 0; x < 10; x++)\n {\n this.periodData.push(\n {\n active: false,\n disabled: false,\n date: this.displayDate.value,\n value: year\n });\n\n year++;\n this.displayDate.addYears(1);\n }\n\n this.displayDate.resetOriginal();\n this._updateMinMax();\n this.period = `${this.displayDate.year()} - ${this.displayDate.year() + 10}`;\n\n //set value if exists\n if(this._value && (this.displayDate.isSameDecade(this._value.from) || this.displayDate.isSameDecade(this._value.to)))\n {\n this.setValue(this._value);\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Obtains end of period\n * @param period - Period for which should be end obtained\n */\n protected _endOfPeriod(period: PeriodData<TDate>): TDate\n {\n return this._dateApi.getValue(period.date).endOfYear().value;\n }\n\n /**\n * Tests whether provided value is in same period as displayed picker\n * @param val - Tested value for same period as displayed picker\n */\n protected _isSamePeriodAsDisplayed(val: DateApiObject<TDate>): boolean\n {\n return val.isSameDecade(this.displayDate!.value);\n }\n\n /**\n * Tests whether provided value is in same period target value\n * @param val - Tested value\n * @param target - Target value to be tested against\n */\n protected _isSamePeriod(val: DateApiObject<TDate>, target: TDate): boolean\n {\n return val.isSameYear(target);\n }\n\n /**\n * Gets period data for specified value\n * @param val - Value for which is period data obtained\n */\n protected _getPeriodData(val: DateApiObject<TDate>): PeriodData<TDate>\n {\n return this.periodData[val.year() % 10];\n }\n}","<div [ngClass]=\"cssClasses?.periodSelection | asRequired\">\r\n <div [ngClass]=\"cssClasses?.previousPeriod | asRequired\" (mousedown)=\"previousDecade($event)\"></div>\r\n <div [ngClass]=\"cssClasses?.periodValue | asRequired\" [class.clickable]=\"canGoUp\" (mousedown)=\"goUp($event)\">{{period}}</div>\r\n <div [ngClass]=\"cssClasses?.nextPeriod | asRequired\" (mousedown)=\"nextDecade($event)\"></div>\r\n</div>\r\n\r\n<div [ngClass]=\"cssClasses?.periodData | asRequired\">\r\n <div *ngFor=\"let year of periodData\"\r\n [ngClass]=\"cssClasses?.periodDatum | asRequired\"\r\n [class.active]=\"year.active\"\r\n [class.disabled]=\"year.disabled\"\r\n (mousedown)=\"select($event, year)\">{{year.value}}</div>\r\n</div>"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"yearPicker.interfaces.js","sourceRoot":"","sources":["../../../../../src/picker/components/yearPicker/yearPicker.interfaces.ts"],"names":[],"mappings":"","sourcesContent":["import {CommonPickerCssClasses} from '../../misc/datetimePicker.interface';\n\n/**\n * Specific css classes for year picker\n */\nexport interface YearPickerCssClasses extends CommonPickerCssClasses\n{\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/picker/directives/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,2CAA2C,CAAC","sourcesContent":["export * from './loopScroll/loopScroll.directive';\nexport * from './loopScroll/loopScroll.interface';\nexport * from './loopScrollData/loopScrollData.directive';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"loopScroll.directive.js","sourceRoot":"","sources":["../../../../../src/picker/directives/loopScroll/loopScroll.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {AfterContentInit, ContentChildren, Directive, ElementRef, EventEmitter, HostListener, Input, OnChanges, Output, QueryList, SimpleChanges} from '@angular/core';\nimport {DebounceCall, isBlank, nameof} from '@jscrpt/common';\n\nimport {LoopScrollDataDirective} from '../loopScrollData/loopScrollData.directive';\n\n/**\n * Renders loop scroll for array of elements\n */\n@Directive(\n{\n selector: '[loopScroll]'\n})\nexport class LoopScrollDirective<TData = any> implements OnChanges, AfterContentInit\n{\n //######################### protected fields #########################\n\n /**\n * Item height that obtained\n */\n protected _itemHeight?: number;\n\n /**\n * Array of elements for scrolled stuff\n */\n protected _items?: LoopScrollDataDirective[];\n\n /**\n * Array of elements and data for scrolled stuff\n */ \n protected _dataItems?: LoopScrollDataDirective[];\n\n /**\n * Indication whether is loop scroll initialized\n */\n protected _initialized: boolean = false;\n\n /**\n * Count of cloned elements before or after\n */\n protected _clonedCount: number = 0;\n\n /**\n * Indication whether ignore scroll handle\n */\n protected _ignoreScrollHandle: boolean = false;\n\n /**\n * Indication whether skip value change\n */\n protected _skipValueChange: boolean = false;\n\n /**\n * Value that is being set in loop scroll\n */\n protected _value?: TData;\n\n //######################### public properties - inputs #########################\n\n /**\n * Gets or sets value that is being set in loop scroll\n */\n @Input('loopScroll')\n public get value(): TData\n {\n return this._value;\n }\n public set value(value: TData)\n {\n this._skipValueChange = this._value == value;\n this._value = value;\n }\n\n /**\n * Indication whether is currently selection scroll open\n */\n @Input()\n public open: boolean = false;\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when current value of loop scroll changes\n */\n @Output('loopScrollChange')\n public valueChange: EventEmitter<TData> = new EventEmitter<TData>();\n\n //######################### protected properties - children #########################\n\n /**\n * Array of items that are loop scrolled\n */\n @ContentChildren(LoopScrollDataDirective)\n protected items?: QueryList<LoopScrollDataDirective>;\n\n //######################### constructor #########################\n constructor(protected _scrollElement: ElementRef<HTMLElement>)\n {\n }\n\n //######################### public methods - implementation of OnChanges #########################\n \n /**\n * Called when input value changes\n */\n public ngOnChanges(changes: SimpleChanges): void\n {\n if(!this._initialized)\n {\n return;\n }\n\n const itemHeight = this._itemHeight ?? 1;\n\n if(nameof<LoopScrollDirective>('open') in changes)\n {\n if(this.open)\n {\n this._scrollElement.nativeElement.scrollTo({top: this._scrollElement.nativeElement.scrollTop - (2 * itemHeight), behavior: 'auto'});\n\n return;\n }\n\n if(nameof<LoopScrollDirective>('value') in changes)\n {\n const selectedItem = this._dataItems?.find(itm => itm.data == this.value);\n\n if(!selectedItem)\n {\n throw new Error('No item selected in loop scroll');\n }\n\n const selectedIndex = this._dataItems!.indexOf(selectedItem);\n\n this._scrollElement.nativeElement.scrollTo({top: (selectedIndex + this._clonedCount) * itemHeight, behavior: 'auto'});\n }\n else\n {\n this._scrollElement.nativeElement.scrollTo({top: this._scrollElement.nativeElement.scrollTop + (2 * itemHeight), behavior: 'auto'});\n }\n }\n else if(nameof<LoopScrollDirective>('value') in changes)\n {\n if(!this._skipValueChange)\n {\n this._ignoreScrollHandle = true;\n this._scrollElement.nativeElement.scrollTo({top: this._itemHeight! * (this._clonedCount + this._dataItems!.findIndex(itm => itm.data == this.value) + (this.open ? -2 : 0)), behavior: 'auto'});\n this._ignoreScrollHandle = false;\n }\n }\n\n this._skipValueChange = false;\n }\n\n //######################### public methods - implementation of AfterContentInit #########################\n \n /**\n * Called when content was initialized\n */\n public ngAfterContentInit(): void\n {\n this._items = this.items?.toArray();\n this._dataItems = this._items?.filter(itm => !itm.clone);\n\n if(!this._dataItems?.length)\n {\n this.items?.changes.subscribe(() =>\n {\n this._items = this.items?.toArray();\n this._dataItems = this._items?.filter(itm => !itm.clone);\n\n this._initialize();\n });\n\n return;\n }\n\n this._initialize();\n }\n\n //######################### protected methods #########################\n\n /**\n * Intialize default value\n */\n protected _initialize(): void\n {\n const cloned = this._items?.filter(itm => itm.clone) ?? [];\n this._clonedCount = cloned.length / 2;\n\n if(!this._dataItems?.length)\n {\n return;\n }\n\n this._dataItems.forEach(itm =>\n {\n if(isBlank(this._itemHeight))\n {\n this._itemHeight = itm.element.nativeElement.offsetHeight;\n\n return;\n }\n\n if(this._itemHeight != itm.element.nativeElement.offsetHeight)\n {\n throw new Error('All items inside of loop scroll should have same height');\n }\n });\n\n this._scrollElement.nativeElement.scrollTo({top: this._itemHeight! * (this._clonedCount + this._dataItems!.findIndex(itm => itm.data == this.value)), behavior: 'auto'});\n this._initialized = true;\n }\n\n /**\n * Handles scroll event\n */\n @HostListener('scroll')\n protected _handleScroll(): void\n {\n if(this._ignoreScrollHandle)\n {\n return;\n }\n\n requestAnimationFrame(() =>\n {\n if(!this._dataItems)\n {\n return;\n }\n\n const index = this._scrollElement.nativeElement.scrollTop / (this._itemHeight ?? 1);\n const dataIndex = index + (this.open ? 2 : 0) - this._clonedCount;\n const dataLength = (this._itemHeight ?? 1) * this._dataItems.length;\n\n if(index % 1 <= .2 || index % 1 >= .8)\n {\n this._scrollElement.nativeElement.querySelector('.selected')?.classList?.remove('selected');\n\n const roundIndex = Math.round(index);\n this._items![roundIndex + (this.open ? 2 : 0)].element.nativeElement.classList.add('selected');\n this._emitValue(dataIndex);\n }\n\n if(dataIndex <= -1)\n {\n this._updateScroll(dataLength, true, index, dataIndex);\n }\n else if(dataIndex >= (this._dataItems.length ?? 0))\n {\n this._updateScroll(dataLength, false, index, dataIndex);\n }\n });\n }\n\n /**\n * Updates scroll to be at full value of item\n * @param dataLength - Length of all data\n * @param add - Indication whether add or subtract length\n * @param index - Current index\n * @param dataIndex - Current index of data \n */\n @DebounceCall(18)\n protected _updateScroll(dataLength: number, add: boolean, index: number, dataIndex: number): void\n {\n this._scrollElement.nativeElement.scrollTo({top: (Math.round(index) * (this._itemHeight ?? 1)) + (add ? dataLength : (dataLength * -1)), behavior: 'auto'});\n\n this._emitValue(dataIndex);\n }\n\n /**\n * Emits value after scroll\n * @param index - Index of currently selected data item\n */\n protected _emitValue(index: number): void\n {\n index = Math.round(index) % this._dataItems!.length;\n \n if(index < 0)\n {\n index = this._dataItems!.length + index;\n }\n\n const item = this._dataItems![index];\n\n if(this.value != item.data)\n {\n this.value = item.data;\n this.valueChange.next(this.value);\n }\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"loopScroll.interface.js","sourceRoot":"","sources":["../../../../../src/picker/directives/loopScroll/loopScroll.interface.ts"],"names":[],"mappings":"AAAA,gDAAgD","sourcesContent":["//FIXME: not used for now, maybe will be removed\n\n/**\n * Represents data for LoopScrollDirective\n */\nexport interface LoopScrollData<TData = any>\n{\n /**\n * Text to be displayed for item\n */\n displayText?: string;\n\n /**\n * Data that are stored per value\n */\n data?: TData;\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"loopScrollData.directive.js","sourceRoot":"","sources":["../../../../../src/picker/directives/loopScrollData/loopScrollData.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAC,MAAM,eAAe,CAAC;;AAE3D;;GAEG;AAKH,MAAM,OAAO,uBAAuB;IAgBhC,iEAAiE;IACjE,YAAmB,OAAgC;QAAhC,YAAO,GAAP,OAAO,CAAyB;QAPnD;;WAEG;QAEI,UAAK,GAAY,KAAK,CAAC;IAK9B,CAAC;;oHAnBQ,uBAAuB;wGAAvB,uBAAuB;2FAAvB,uBAAuB;kBAJnC,SAAS;mBACV;oBACI,QAAQ,EAAE,kBAAkB;iBAC/B;iGASU,IAAI;sBADV,KAAK;uBAAC,gBAAgB;gBAOhB,KAAK;sBADX,KAAK","sourcesContent":["import {Directive, ElementRef, Input} from '@angular/core';\n\n/**\n * Loop scroll data that are used inside LoopScrollDirective\n */\n@Directive(\n{\n selector: '[loopScrollData]'\n})\nexport class LoopScrollDataDirective<TData = any>\n{\n //######################### public properties - inputs #########################\n\n /**\n * Data for loop\n */\n @Input('loopScrollData')\n public data!: TData;\n\n /**\n * Indication that this node is clone\n */\n @Input()\n public clone: boolean = false;\n\n //######################### constructor #########################\n constructor(public element: ElementRef<HTMLElement>)\n {\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/picker/interfaces.ts"],"names":[],"mappings":"AAAA,cAAc,6CAA6C,CAAC;AAC5D,cAAc,iDAAiD,CAAC;AAChE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,0DAA0D,CAAC;AACzE,cAAc,iCAAiC,CAAC","sourcesContent":["export * from './components/dayPicker/dayPicker.interfaces';\nexport * from './components/monthPicker/monthPicker.interfaces';\nexport * from './components/yearPicker/yearPicker.interfaces';\nexport * from './components/rollerTimePicker/rollerTimePicker.interface';\nexport * from './misc/datetimePicker.interface';"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"datetimePicker.interface.js","sourceRoot":"","sources":["../../../../src/picker/misc/datetimePicker.interface.ts"],"names":[],"mappings":"","sourcesContent":["import {Type} from '@angular/core';\nimport {Dictionary} from '@jscrpt/common';\nimport {Observable} from 'rxjs';\n\nimport {DateTimeValue} from '../../misc/datetime.interface';\nimport {DateApiObject} from '../../services/dateApi.interface';\n\n/**\n * Shared css classes for all pickers\n */\nexport interface CommonPickerCssClasses\n{\n /**\n * Period selection element wrapping displayed period and previous, next buttons\n */\n periodSelection: string;\n\n /**\n * Element used for switching period to previous one\n */\n previousPeriod: string;\n\n /**\n * Element used for switching period to next one\n */\n nextPeriod: string;\n\n /**\n * Element representing currently displayed period\n */\n periodValue: string;\n\n /**\n * Element wrapping displayed period data\n */\n periodData: string;\n\n /**\n * Element representing single datum for period item\n */\n periodDatum: string;\n\n /**\n * Name of css class that represents clickable items in picker\n */\n clickable: string;\n}\n\n/**\n * Css classes applied to datetime picker\n */\nexport interface DateTimePickerCssClasses\n{\n /**\n * Shared css classes for all pickers\n */\n pickerShared?: CommonPickerCssClasses;\n\n /**\n * Custom css classes specific for each picker type\n */\n pickerCustom?: Dictionary<object>;\n}\n\n/**\n * Defintion of datetime picker component options\n */\nexport interface DateTimePickerOptions<TPicker = any>\n{\n /**\n * Order of pickers, it's possible use less pickers as is defined in pickerPeriodsDefinition for example 'month,year'\n */\n pickerPeriodsOrder: string[]|string|null;\n\n /**\n * Definition of types for each period type for picker\n */\n pickerPeriodsDefinition: Dictionary<Type<TPicker>>;\n\n /**\n * Name of default period for picker that is displayed\n */\n defaultPeriod: string;\n\n /**\n * Css classes for date time picker\n */\n cssClasses: DateTimePickerCssClasses;\n}\n\n/**\n * Describes datetime picker component used for displaying and selecting value\n */\nexport interface DateTimePicker<TDate = any, TCssClasses = object>\n{\n /**\n * Gets current value of datetime\n */\n readonly value: DateTimeValue<TDate>|null;\n\n /**\n * Occurs when value changes\n */\n readonly valueChange: Observable<void>;\n\n /**\n * Occurs when user scales up\n */\n readonly scaleUp: Observable<TDate>;\n\n /**\n * Occurs when user scales down\n */\n readonly scaleDown: Observable<TDate>;\n\n /**\n * Sets css classes for picker, allowing to override defaults\n * @param cssClasses - Css classes to be set for picker\n */\n setCssClasses(cssClasses: TCssClasses): void;\n\n /**\n * Sets minimal possible value for picker, that can be picked\n * @param value - Minimal possible value that can be picked\n */\n setMinValue(value: TDate|null): void;\n\n /**\n * Sets maximal possible value for picker, that can be picked\n * @param value - Maximal possible value that can be picked\n */\n setMaxValue(value: TDate|null): void;\n\n /**\n * Sets value of datetime picker\n * @param value - Value to be set to this picker\n */\n setValue(value: DateTimeValue<TDate>|null): void;\n\n /**\n * Set displays date to be displayed\n * @param value - Value that identifies period that is going to be displayed\n */\n display(value: DateApiObject<TDate>): void;\n\n /**\n * Sets indication whether can go down\n * @param value - Indication whether can go down in period\n */\n setCanGoDown(value: boolean): void;\n\n /**\n * Sets indication whether can go up\n * @param value - Indication whether can go up in period\n */\n setCanGoUp(value: boolean): void;\n\n /**\n * Explicitly runs invalidation of content (change detection)\n */\n invalidateVisuals(): void;\n}\n\n/**\n * Data that represents data for any picker type\n */\nexport interface PeriodData<TDate = any>\n{\n /**\n * Indication that this period item is active and selected\n */\n active: boolean;\n\n /**\n * Indication that this period item is disabled\n */\n disabled: boolean;\n\n /**\n * Date for this period item\n */\n date: TDate;\n}\n\n/**\n * Data that represents day in date picker\n */\nexport interface DayData<TDate = any> extends PeriodData<TDate>\n{\n /**\n * Indication that range is selected and this day is between selected dates\n */\n betweenActive: boolean;\n\n /**\n * Indication that this day is out of currently selected month\n */\n otherMonth: boolean;\n\n /**\n * Indication that this day is today\n */\n today: boolean;\n\n /**\n * Indication that this day is weekend day\n */\n weekend: boolean;\n\n /**\n * Day number of month\n */\n day: number;\n}\n\n/**\n * Data that represents month in date picker\n */\nexport interface MonthData<TDate = any> extends PeriodData<TDate>\n{\n /**\n * Name of month\n */\n name: string;\n}\n\n/**\n * Data that represents year in date picker\n */\nexport interface YearData<TDate = any> extends PeriodData<TDate>\n{\n /**\n * Value of year\n */\n value: number;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../../src/picker/misc/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAI7C;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAA+C,IAAI,cAAc,CAA6B,gCAAgC,CAAC,CAAC","sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {DateTimePickerOptions} from './datetimePicker.interface';\n\n/**\n * Injection token used for obtaining datetime picker configuration\n */\nexport const DATE_TIME_PICKER_CONFIGURATION: InjectionToken<DateTimePickerOptions<any>> = new InjectionToken<DateTimePickerOptions<any>>('DATE_TIME_PICKER_CONFIGURATION');"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"picker.module.js","sourceRoot":"","sources":["../../../../src/picker/modules/picker.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AACvC,OAAO,EAAC,YAAY,IAAI,mBAAmB,EAAC,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAC,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAC,MAAM,eAAe,CAAC;AAE1G,OAAO,EAAC,uBAAuB,EAAC,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAC,0BAA0B,EAAC,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAC,4BAA4B,EAAC,MAAM,iDAAiD,CAAC;AAC7F,OAAO,EAAC,2BAA2B,EAAC,MAAM,+CAA+C,CAAC;AAC1F,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,iCAAiC,EAAC,MAAM,2DAA2D,CAAC;AAC5G,OAAO,EAAC,uBAAuB,EAAE,mBAAmB,EAAC,MAAM,eAAe,CAAC;;AAE3E;;GAEG;AA2BH,MAAM,OAAO,oBAAoB;;iHAApB,oBAAoB;kHAApB,oBAAoB,iBAbzB,uBAAuB;QACvB,iCAAiC;QACjC,0BAA0B;QAC1B,4BAA4B;QAC5B,2BAA2B;QAC3B,uBAAuB;QACvB,mBAAmB,aAfnB,mBAAmB;QACnB,mBAAmB;QACnB,iBAAiB;QACjB,eAAe;QACf,eAAe;QACf,kBAAkB,aAclB,uBAAuB;kHAGlB,oBAAoB,YAvB7B;YACI,mBAAmB;YACnB,mBAAmB;YACnB,iBAAiB;YACjB,eAAe;YACf,eAAe;YACf,kBAAkB;SACrB;2FAgBQ,oBAAoB;kBA1BhC,QAAQ;mBACT;oBACI,OAAO,EACP;wBACI,mBAAmB;wBACnB,mBAAmB;wBACnB,iBAAiB;wBACjB,eAAe;wBACf,eAAe;wBACf,kBAAkB;qBACrB;oBACD,YAAY,EACZ;wBACI,uBAAuB;wBACvB,iCAAiC;wBACjC,0BAA0B;wBAC1B,4BAA4B;wBAC5B,2BAA2B;wBAC3B,uBAAuB;wBACvB,mBAAmB;qBACtB;oBACD,OAAO,EACP;wBACI,uBAAuB;qBAC1B;iBACJ","sourcesContent":["import {NgModule} from '@angular/core';\nimport {CommonModule as AngularCommonModule} from '@angular/common';\nimport {CommonDynamicModule, CastPipesModule, ClickOutsideModule, CommonUtilsModule} from '@anglr/common';\n\nimport {DateTimePickerComponent} from '../components/picker/picker.component';\nimport {DateTimeDayPickerComponent} from '../components/dayPicker/dayPicker.component';\nimport {DateTimeMonthPickerComponent} from '../components/monthPicker/monthPicker.component';\nimport {DateTimeYearPickerComponent} from '../components/yearPicker/yearPicker.component';\nimport {DatePipesModule} from '../../modules/datePipes.module';\nimport {DateTimeRollerTimePickerComponent} from '../components/rollerTimePicker/rollerTimePicker.component';\nimport {LoopScrollDataDirective, LoopScrollDirective} from '../directives';\n\n/**\n * Angular module for date time picker components\n */\n@NgModule(\n{\n imports:\n [\n AngularCommonModule,\n CommonDynamicModule,\n CommonUtilsModule,\n DatePipesModule,\n CastPipesModule,\n ClickOutsideModule,\n ],\n declarations:\n [\n DateTimePickerComponent,\n DateTimeRollerTimePickerComponent,\n DateTimeDayPickerComponent,\n DateTimeMonthPickerComponent,\n DateTimeYearPickerComponent,\n LoopScrollDataDirective,\n LoopScrollDirective,\n ],\n exports:\n [\n DateTimePickerComponent\n ]\n})\nexport class DateTimePickerModule\n{\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/picker/types.ts"],"names":[],"mappings":"AAAA,cAAc,sCAAsC,CAAC;AACrD,cAAc,iDAAiD,CAAC;AAChE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,8CAA8C,CAAC;AAC7D,cAAc,0DAA0D,CAAC;AACzE,cAAc,mCAAmC,CAAC;AAClD,cAAc,uCAAuC,CAAC;AACtD,cAAc,eAAe,CAAC","sourcesContent":["export * from './components/picker/picker.component';\nexport * from './components/picker/picker.component.animations';\nexport * from './components/dayPicker/dayPicker.component';\nexport * from './components/monthPicker/monthPicker.component';\nexport * from './components/yearPicker/yearPicker.component';\nexport * from './components/rollerTimePicker/rollerTimePicker.component';\nexport * from './components/pickerBase.component';\nexport * from './components/pickerImplBase.component';\nexport * from './misc/tokens';"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"inputDateTime.component.js","sourceRoot":"","sources":["../../../../../src/selector/components/inputDateTime/inputDateTime.component.ts","../../../../../src/selector/components/inputDateTime/inputDateTime.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Inject, ChangeDetectorRef, ElementRef, ViewChild} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\nimport {Observable, Subject} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DATE_API} from '../../../misc/tokens';\nimport {DateApi, DateApiObject, DatePositionParser} from '../../../services';\nimport {DatePositionParserService} from '../../../services/datePositionParser.service';\nimport {DateValueProvider} from '../../../services/dateValueProvider.service';\nimport {DateTimeSelector} from '../../misc/datetimeSelector.interface';\n\n/**\n * Component used as datetime selector with input\n */\n@Component(\n{\n selector: 'input-date-time-selector',\n templateUrl: 'inputDateTime.component.html',\n styleUrls: ['inputDateTime.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class InputDateTimeSelectorComponent<TDate = any> implements DateTimeSelector<TDate>\n{\n //######################### protected fields #########################\n\n /**\n * Occurs when value changes\n */\n protected _valueChange: Subject<void> = new Subject<void>();\n\n /**\n * Occurs when selector is touched by user\n */\n protected _touched: Subject<void> = new Subject<void>();\n\n /**\n * Occurs when selector requires picker to be displayed or hidden\n */\n protected _pickerRequest: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Instance of parser created for specific format\n */\n protected _parser: DatePositionParser|null = null;\n\n /**\n * Currently used format for displaying data\n */\n protected _format: string = '';\n\n /**\n * Current value representation as date api wrapper\n */\n protected _dateApiValue: null|DateApiObject<TDate> = null;\n\n /**\n * Indication whether is current value valid value\n */\n protected _isValid: boolean = true;\n\n /**\n * Minimal possible value that can be picked\n */\n protected _minValue: TDate|null = null;\n\n /**\n * Maximal possible value that can be picked\n */\n protected _maxValue: TDate|null = null;\n\n //######################### public properties - implementation of DateTimeSelector #########################\n\n /**\n * Gets or sets currently used format for displaying data\n */\n public get format(): string\n {\n return this._format;\n }\n public set format(value: string)\n {\n if(isPresent(value))\n {\n value = this._dateApi.getFormat(value);\n }\n\n //only if format changes\n if(this._format != value)\n {\n this._parser = this._parserSvc.createParser(this._dateApi.getFormat(value));\n }\n\n this._format = value;\n }\n\n /**\n * Gets or sets placeholder that is displayed when there is no value selected\n */\n public placeholder: string|null = null;\n\n /**\n * Gets current value of datetime\n */\n public get value(): DateTimeValue<TDate>|null\n {\n if(!this._dateApiValue || !this._isValid)\n {\n return null;\n }\n\n return this._valueProvider.getValue(this._dateApiValue.value, this._format);\n }\n\n /**\n * Gets formatted value\n */\n public get formattedValue(): string|null\n {\n if(!this._isValid)\n {\n return null;\n }\n\n return this.currentValue;\n }\n\n /**\n * Gets indication whether is current value valid\n */\n public get valid(): boolean\n {\n return this._isValid;\n }\n\n /**\n * Occurs when value changes\n */\n public get valueChange(): Observable<void>\n {\n return this._valueChange.asObservable();\n }\n\n /**\n * Occurs when selector is touched by user\n */\n public get touched(): Observable<void>\n {\n return this._touched.asObservable();\n }\n\n /**\n * Occurs when selector requires picker to be displayed\n */\n public get pickerRequest(): Observable<boolean>\n {\n return this._pickerRequest.asObservable();\n }\n\n //######################### public properties - template bindings #########################\n\n /**\n * Indication whether is input disabled\n * @internal\n */\n public disabled: boolean = false;\n\n //######################### public properties - children #########################\n\n /**\n * Instance of html input element\n * @internal\n */\n @ViewChild('input', {static: true})\n public inputElement!: ElementRef<HTMLInputElement>;\n\n //######################### protected properties #########################\n\n /**\n * Gets or sets string representation current of value\n */\n protected get currentValue(): string|null\n {\n return this.input.value || null;\n }\n protected set currentValue(value: string|null)\n {\n if(this.input)\n {\n this.input.value = value ?? '';\n }\n }\n\n /**\n * Gets input element used for handling date time value\n */\n protected get input(): HTMLInputElement\n {\n return this.inputElement.nativeElement;\n }\n\n //######################### constructor #########################\n constructor(@Inject(DATE_API) protected _dateApi: DateApi<TDate>,\n protected _parserSvc: DatePositionParserService,\n protected _valueProvider: DateValueProvider<TDate>,\n protected _changeDetector: ChangeDetectorRef)\n {\n }\n\n //######################### public methods - implementation of DateTimeSelector #########################\n\n /**\n * Sets minimal possible value for picker, that can be picked\n * @param value - Minimal possible value that can be picked\n */\n public setMinValue(value: TDate|null): void\n {\n this._minValue = value;\n }\n\n /**\n * Sets maximal possible value for picker, that can be picked\n * @param value - Maximal possible value that can be picked\n */\n public setMaxValue(value: TDate|null): void\n {\n this._maxValue = value;\n }\n\n /**\n * Sets value of datetime selector\n * @param value - Value to be set to this selector\n */\n public setValue(value: DateTimeValue<TDate>|null): void\n {\n if(value?.from)\n {\n this._dateApiValue = this._dateApi.getValue(value?.from, this._format);\n this._isValid = this._dateApiValue.isValid();\n \n this._show();\n }\n else\n {\n this._clearValue();\n }\n }\n\n /**\n * Sets as 'control' disabled\n * @param disabled - Indication whether sets value as disabled, if omitted it is same as disabled set to true\n */\n public setDisabled(disabled: boolean = true): void\n {\n this.disabled = disabled;\n }\n\n /**\n * Explicitly runs invalidation of content (change detection)\n */\n public invalidateVisuals(): void\n {\n this._changeDetector.detectChanges();\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Handles gaining of focus\n * @internal\n */\n public handleFocus(): void\n {\n this._pickerRequest.next(true);\n\n //no value\n if(!this._dateApiValue)\n {\n this._dateApiValue = this._dateApi.now();\n this._isValid = this._dateApiValue.isValid();\n\n if(this._minMaxConstraintTest())\n {\n this._clearValue();\n }\n else\n {\n this._valueChange.next();\n }\n }\n\n if(!this._isValid)\n {\n return;\n }\n\n this._show();\n\n const result = this._parser!.parse(this.currentValue!, this.input.selectionStart!);\n\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n }\n\n /**\n * Handles blur on input\n * @internal\n */\n public handleBlur(): void\n {\n this._pickerRequest.next(false);\n }\n\n /**\n * Handles user input\n * @internal\n */\n public handleInput(): void\n {\n //empty value\n if(!this.currentValue)\n {\n this._clearValue();\n this._valueChange.next();\n\n return;\n }\n\n this._dateApiValue = this._dateApi.getValue(this.currentValue, this._format);\n this._isValid = this._dateApiValue.isValid();\n this._valueChange.next();\n }\n\n /**\n * Handles selection of text inside of input\n * @internal\n */\n public handleSelect(): void\n {\n //handles when all text is selected\n if(this.currentValue && this.input.selectionStart == 0 && this.input.selectionEnd == this.input.value.length)\n {\n const result = this._parser!.parse(this.input.value, this.input.selectionStart!);\n\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n }\n }\n\n /**\n * Handles click event inside of input\n * @internal\n */\n public handleClick(): void\n {\n this._pickerRequest.next(true);\n\n if(!this._dateApiValue)\n {\n return;\n }\n\n const result = this._parser!.parse(this.input.value, this.input.selectionStart!);\n\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n }\n\n /**\n * Handles keyboard events\n * @param event - Keyboard event that occured\n * @param input - Html input element that holds current value and selection\n * @internal\n */\n public handleKeyboard(event: KeyboardEvent): void\n {\n if(!this._dateApiValue?.isValid())\n {\n return;\n }\n\n switch(event.key)\n {\n case 'ArrowRight':\n case 'ArrowLeft':\n {\n event.preventDefault();\n event.stopPropagation();\n\n const result = event.key == 'ArrowLeft' ? this._parser!.previous(this.input.value, this.input.selectionStart!) : this._parser!.next(this.input.value, this.input.selectionStart!);\n\n if(result)\n {\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n }\n\n break;\n }\n case 'ArrowUp':\n case 'ArrowDown':\n {\n event.preventDefault();\n event.stopPropagation();\n\n let result = this._parser!.parse(this.input.value, this.input.selectionStart!);\n const selectionStart = result.positionFrom;\n\n this._stepChangeValue(result.part, event.key == 'ArrowUp');\n this._show();\n\n result = this._parser!.parse(this.input.value, selectionStart);\n\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n\n break;\n }\n case 'Tab':\n {\n const result = event.shiftKey ? this._parser!.previous(this.input.value, this.input.selectionStart!) : this._parser!.next(this.input.value, this.input.selectionStart!);\n\n if(result)\n {\n event.preventDefault();\n event.stopPropagation();\n\n this.input.selectionStart = result.positionFrom;\n this.input.selectionEnd = result.positionTo;\n }\n\n break;\n }\n case 'a':\n {\n if(event.ctrlKey)\n {\n event.preventDefault();\n event.stopPropagation();\n }\n\n break;\n }\n case 'Backspace':\n {\n this._clearValue();\n this._valueChange.next();\n\n break;\n }\n case 'Escape':\n {\n this._pickerRequest.next(false);\n\n break;\n }\n case ' ':\n {\n if(event.ctrlKey)\n {\n this._pickerRequest.next(true);\n }\n\n break;\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Shows current value in input\n */\n protected _show(): void\n {\n if(this._isValid)\n {\n this.currentValue = this._dateApiValue?.format(this._format) ?? null;\n }\n }\n\n /**\n * Tests whether are min or max constraint broken, returns true if constraint is broken\n */\n protected _minMaxConstraintTest(): boolean\n {\n return (!!this._minValue && this._dateApiValue!.isBefore(this._minValue)) ||\n (!!this._maxValue && this._dateApiValue!.isAfter(this._maxValue));\n }\n\n /**\n * Runs code with check whether min max constrains was broken\n * @param code - Code that should be executed which can change current value\n */\n protected _withMinMaxConstraint(code: () => void): void\n {\n this._dateApiValue!.updateOriginal();\n\n code();\n\n //min value constraint failure\n if(this._minMaxConstraintTest())\n {\n this._dateApiValue?.resetOriginal();\n\n return;\n }\n\n this._valueChange.next();\n }\n\n /**\n * Clears current value\n */\n protected _clearValue(): void\n {\n this._dateApiValue = null;\n this._isValid = true;\n this.currentValue = null;\n }\n\n /**\n * Changes current value of date for for specified part by single step\n * @param part - Part of date that should be changed\n * @param increment - Indication whether value should be incremented or decremented\n */\n protected _stepChangeValue(part: string, increment: boolean): void\n {\n if(!this._dateApiValue?.isValid())\n {\n return;\n }\n\n switch(part)\n {\n case 'y':\n case 'Y':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addYears(1) : this._dateApiValue!.subtractYears(1));\n\n break;\n }\n case 'Q':\n {\n break;\n }\n case 'M':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addMonths(1) : this._dateApiValue!.subtractMonths(1));\n\n break;\n }\n case 'w':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addWeeks(1) : this._dateApiValue!.subtractWeeks(1));\n\n break;\n }\n case 'd':\n case 'D':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addDays(1) : this._dateApiValue!.subtractDays(1));\n\n break;\n }\n case 'H':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addHours(1) : this._dateApiValue!.subtractHours(1));\n\n break;\n }\n case 'm':\n {\n this._withMinMaxConstraint(() => increment ? this._dateApiValue!.addMinutes(1) : this._dateApiValue!.subtractMinutes(1));\n\n break;\n }\n }\n }\n}","<input type=\"text\"\r\n #input\r\n (focus)=\"handleFocus()\"\r\n (blur)=\"handleBlur()\"\r\n (input)=\"handleInput()\"\r\n (click)=\"handleClick()\"\r\n (select)=\"handleSelect()\"\r\n (keydown)=\"handleKeyboard($any($event))\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder ?? ''\">"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector.component.animations.js","sourceRoot":"","sources":["../../../../../src/selector/components/selector/selector.component.animations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,UAAU,EAAE,OAAO,EAAC,MAAM,qBAAqB,CAAC;AAEtE;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,OAAO,CAAC,wBAAwB,EAC7E;IACI,UAAU,CAAC,QAAQ,EACnB;QACI,YAAY,EAAE;QACd,kCAAkC;KACrC,CAAC;IACF,UAAU,CAAC,QAAQ,EACnB;QACI,YAAY,EAAE;QACd,kCAAkC;KACrC,CAAC;CACL,CAAC,CAAC","sourcesContent":["import {animateChild, transition, trigger} from '@angular/animations';\n\n/**\n * Animation trigger for animating children on enter leave\n */\nexport const enterLeaveAnimateChildTrigger = trigger('enterLeaveAnimateChild',\n[\n transition(':enter', \n [\n animateChild()\n // query(':enter', animateChild())\n ]),\n transition(':leave', \n [\n animateChild()\n // query(':leave', animateChild())\n ])\n]);"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector.component.js","sourceRoot":"","sources":["../../../../../src/selector/components/selector/selector.component.ts","../../../../../src/selector/components/selector/selector.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Input, Inject, Optional, Type, OnInit, OnDestroy, OnChanges, SimpleChanges, ChangeDetectorRef, ElementRef} from '@angular/core';\nimport {PositionPlacement} from '@anglr/common';\nimport {extend, isBlank, isString, nameof} from '@jscrpt/common';\nimport {Observable, Subject, Subscription} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DATE_API, FORMAT_PROVIDER} from '../../../misc/tokens';\nimport {DateTimeDayPickerComponent} from '../../../picker/components/dayPicker/dayPicker.component';\nimport {DateTimeMonthPickerComponent} from '../../../picker/components/monthPicker/monthPicker.component';\nimport {DateTimeYearPickerComponent} from '../../../picker/components/yearPicker/yearPicker.component';\nimport {DateApi, FormatProvider} from '../../../services';\nimport {DateValueProvider} from '../../../services/dateValueProvider.service';\nimport {DateTimeSelector, DateTimeSelectorOptions} from '../../misc/datetimeSelector.interface';\nimport {DATE_TIME_SELECTOR_CONFIGURATION} from '../../misc/tokens';\nimport {InputDateTimeSelectorComponent} from '../inputDateTime/inputDateTime.component';\nimport {enterLeaveAnimateChildTrigger} from './selector.component.animations';\n\n//TODO - add support for body absolute picker\n\n/**\n * Default configuration for selector\n */\nconst defaultConfiguration: DateTimeSelectorOptions<DateTimeSelector> =\n{\n selectorComponent: InputDateTimeSelectorComponent,\n pickerCloseOnValueSelect: false,\n pickerDisabled: false,\n pickerAbsolute: true,\n pickerAbsoluteContainer: 'body',\n positionOptions:\n {\n flip: true,\n placement: PositionPlacement.BottomStart,\n autoUpdate: true\n },\n defaultPeriod: 'day',\n pickerPeriodsOrder: null,\n pickerPeriodsDefinition:\n {\n 'day': DateTimeDayPickerComponent,\n 'month': DateTimeMonthPickerComponent,\n 'year': DateTimeYearPickerComponent\n },\n cssClasses:\n {\n }\n};\n\n/**\n * Component used for displaying and selecting date time\n */\n@Component(\n{\n selector: 'date-time-selector',\n templateUrl: 'selector.component.html',\n styleUrls: ['selector.component.css'],\n animations: [enterLeaveAnimateChildTrigger],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class DateTimeSelectorComponent<TDate = any> implements OnInit, OnChanges ,OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Current value of datetime\n */\n protected _value: DateTimeValue<TDate>|null = null;\n\n /**\n * Occurs when selector is touched by user\n */\n protected _touched: Subject<void> = new Subject<void>();\n\n /**\n * Occurs when value changes\n */\n protected _valueChange: Subject<void> = new Subject<void>();\n\n /**\n * Indication whether is control disabled\n */\n protected _disabled: boolean = false;\n\n /**\n * Instance of active date time selector\n */\n protected _activeSelector?: DateTimeSelector<TDate>;\n\n /**\n * All subscriptions for active selector\n */\n protected _activeSelectorSubscriptions: Subscription = new Subscription();\n\n /**\n * Subscription for changes of min value selector\n */\n protected _minValueChangeSubscription: Subscription|null = null;\n\n /**\n * Subscription for changes of max value selector\n */\n protected _maxValueChangeSubscription: Subscription|null = null;\n\n /**\n * Current options used by selector\n */\n protected _options: DateTimeSelectorOptions<DateTimeSelector<TDate>>;\n\n /**\n * Placeholder that is displayed when there is no value selected\n */\n protected _placeholder?: string;\n\n //######################### public properties #########################\n\n /**\n * Gets or sets current value of datetime\n */\n public get value(): DateTimeValue<TDate>|null\n {\n return this._value;\n }\n public set value(value: DateTimeValue<TDate>|null)\n {\n this._value = value;\n\n this._activeSelector?.setValue(this._value);\n }\n\n /**\n * Gets indication whether is current value valid\n */\n public get valid(): boolean\n {\n return this._activeSelector?.valid ?? true;\n }\n\n /**\n * Gets or sets formatted value\n */\n public get formattedValue(): string|null\n {\n return this._activeSelector?.formattedValue ?? null;\n }\n public set formattedValue(value: string|null)\n {\n if(value)\n {\n const val = this._dateApi.getValue(value, this.format);\n this.value = this._valueProvider.getValue(val.value, this.format);\n }\n else\n {\n this.value = null;\n }\n }\n\n /**\n * Occurs when selector is touched by user\n */\n public get touched(): Observable<void>\n {\n return this._touched.asObservable();\n }\n\n /**\n * Occurs when value changes\n */\n public get valueChange(): Observable<void>\n {\n return this._valueChange.asObservable();\n }\n\n //######################### public properties - template bindings #########################\n\n /**\n * Currently active date time selector component type\n * @internal\n */\n public activeSelectorComponent!: Type<DateTimeSelector<TDate>>;\n\n /**\n * Indication whether is picker visible or not\n * @internal\n */\n public pickerVisible: boolean = false;\n\n /**\n * Gets or sets minimal possible value for picker, that can be picked\n */\n public min: TDate|null = null;\n\n /**\n * Gets or sets maximal possible value for picker, that can be picked\n */\n public max: TDate|null = null;\n\n //######################### public properties - inputs #########################\n\n /**\n * Format of displayed\n */\n @Input()\n public format: string;\n\n /**\n * Gets or sets placeholder that is displayed when there is no value selected\n */\n @Input()\n public get placeholder(): string|undefined\n {\n return this._placeholder;\n }\n public set placeholder(value: string|undefined)\n {\n this._placeholder = value;\n\n if(this._activeSelector)\n {\n this._activeSelector.placeholder = this._placeholder ?? null;\n\n this._activeSelector.invalidateVisuals();\n }\n }\n\n /**\n * Current options used by selector\n */\n @Input()\n public get options(): Partial<DateTimeSelectorOptions<DateTimeSelector<TDate>>>\n {\n return this._options;\n }\n public set options(value: Partial<DateTimeSelectorOptions<DateTimeSelector<TDate>>>)\n {\n this._options = extend(true, this._options, value);\n // without deep-copy for this attribute\n if (value?.pickerPeriodsDefinition)\n {\n this._options.pickerPeriodsDefinition = value.pickerPeriodsDefinition;\n }\n }\n\n /**\n * Gets or sets minimal possible value for picker, that can be picked\n */\n @Input()\n public get minValue(): TDate|string|null|DateTimeSelectorComponent<TDate>\n {\n return this.min;\n }\n public set minValue(value: TDate|string|null|DateTimeSelectorComponent<TDate>)\n {\n this._minValueChangeSubscription?.unsubscribe();\n this._minValueChangeSubscription = null;\n\n if(isBlank(value))\n {\n this.min = null;\n }\n else if(isString(value))\n {\n const date = this._dateApi.getValue(value);\n\n if(date.isValid())\n {\n this.min = date.value;\n }\n }\n else if(value instanceof DateTimeSelectorComponent)\n {\n this.min = value.valueOf();\n\n this._minValueChangeSubscription = value.valueChange.subscribe(() =>\n {\n this.min = value.valueOf();\n this._activeSelector?.setMinValue(this.min);\n\n this._changeDetector.detectChanges();\n });\n }\n else\n {\n this.min = value;\n }\n\n this._activeSelector?.setMinValue(this.min);\n }\n\n /**\n * Gets or sets maximal possible value for picker, that can be picked\n */\n @Input()\n public get maxValue(): TDate|string|null|DateTimeSelectorComponent<TDate>\n {\n return this.max;\n }\n public set maxValue(value: TDate|string|null|DateTimeSelectorComponent<TDate>)\n {\n this._maxValueChangeSubscription?.unsubscribe();\n this._maxValueChangeSubscription = null;\n\n if(isBlank(value))\n {\n this.max = null;\n }\n else if(isString(value))\n {\n const date = this._dateApi.getValue(value);\n\n if(date.isValid())\n {\n this.max = date.value;\n }\n }\n else if(value instanceof DateTimeSelectorComponent)\n {\n this.max = value.valueOf();\n\n this._maxValueChangeSubscription = value.valueChange.subscribe(() =>\n {\n this.max = value.valueOf();\n this._activeSelector?.setMaxValue(this.max);\n\n this._changeDetector.detectChanges();\n });\n }\n else\n {\n this.max = value;\n }\n\n this._activeSelector?.setMaxValue(this.max);\n }\n\n //######################### constructor #########################\n constructor(@Optional() @Inject(DATE_TIME_SELECTOR_CONFIGURATION) configuration: Partial<DateTimeSelectorOptions<DateTimeSelector<TDate>>>,\n protected _valueProvider: DateValueProvider<TDate>,\n protected _changeDetector: ChangeDetectorRef,\n public element: ElementRef<HTMLElement>,\n @Inject(DATE_API) protected _dateApi: DateApi<TDate>,\n @Inject(FORMAT_PROVIDER) formatProvider: FormatProvider)\n {\n this.format = formatProvider.date;\n this._options = extend(true, {}, defaultConfiguration, configuration);\n // without deep-copy for this attribute\n if (configuration?.pickerPeriodsDefinition)\n {\n this._options.pickerPeriodsDefinition = configuration.pickerPeriodsDefinition;\n }\n }\n\n //######################### public methods - implementation of OnInit #########################\n\n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this.activeSelectorComponent = this._options.selectorComponent;\n }\n\n //######################### public methods - implementation of OnChanges #########################\n\n /**\n * Called when input value changes\n */\n public ngOnChanges(changes: SimpleChanges): void\n {\n if(nameof<DateTimeSelectorComponent>('format') in changes && this._activeSelector)\n {\n this._activeSelector.format = this.format;\n this._activeSelector.invalidateVisuals();\n }\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n\n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._activeSelectorSubscriptions.unsubscribe();\n\n this._minValueChangeSubscription?.unsubscribe();\n this._minValueChangeSubscription = null;\n\n this._maxValueChangeSubscription?.unsubscribe();\n this._maxValueChangeSubscription = null;\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Handles created or destroyed date time selector instance\n * @param selector - Instance of selector or null\n * @internal\n */\n public selectorCreated(selector: DateTimeSelector<TDate>): void\n {\n this._activeSelector = selector;\n\n this._activeSelectorSubscriptions.unsubscribe();\n this._activeSelectorSubscriptions = new Subscription();\n\n this._activeSelectorSubscriptions.add(selector.touched.subscribe(() => this._touched.next()));\n this._activeSelectorSubscriptions.add(selector.pickerRequest.subscribe(visible => this.pickerVisible = visible));\n\n this._activeSelectorSubscriptions.add(selector.valueChange.subscribe(() =>\n {\n this._value = selector.value;\n this._valueChange.next();\n }));\n\n selector.format = this.format;\n selector.setMaxValue(this.max);\n selector.setMinValue(this.min);\n selector.setValue(this._value);\n selector.setDisabled(this._disabled);\n selector.placeholder = this._placeholder ?? null;\n\n selector.invalidateVisuals();\n }\n\n /**\n * Handles changed value by picker\n * @param value - Value that was changed\n * @internal\n */\n public pickerChangedValue(value: DateTimeValue<TDate>): void\n {\n this._activeSelector?.setValue(value);\n this._value = value;\n this._valueChange.next();\n\n if(this._options.pickerCloseOnValueSelect)\n {\n this.pickerVisible = false;\n }\n }\n\n //######################### public methods #########################\n\n /**\n * Sets as 'control' disabled\n * @param disabled - Indication whether sets value as disabled, if omitted it is same as disabled set to true\n */\n public setDisabled(disabled: boolean = true): void\n {\n this._disabled = disabled;\n this._activeSelector?.setDisabled(disabled);\n this._activeSelector?.invalidateVisuals();\n }\n\n /**\n * Gets simple value of selector\n */\n public valueOf(): TDate|null\n {\n if(!this._value)\n {\n return null;\n }\n\n return this._value.from;\n }\n}\n","<ng-template [ngComponentOutletEx]=\"activeSelectorComponent\" (ngComponentOutletExCreated)=\"selectorCreated($event)\"></ng-template>\r\n\r\n<ng-template [ngIf]=\"!options?.pickerDisabled && pickerVisible\">\r\n <ng-template [dateTimePicker]=\"value\"\r\n [minValue]=\"min\"\r\n [maxValue]=\"max\"\r\n [options]=\"options\"\r\n [selectorElement]=\"element\"\r\n (valueChange)=\"pickerChangedValue($event)\"></ng-template>\r\n</ng-template>"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"simpleInputDateTime.component.js","sourceRoot":"","sources":["../../../../../src/selector/components/simpleInputDateTime/simpleInputDateTime.component.ts","../../../../../src/selector/components/simpleInputDateTime/simpleInputDateTime.component.html"],"names":[],"mappings":"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","sourcesContent":["import {Component, ChangeDetectionStrategy, Inject, ChangeDetectorRef, ElementRef, ViewChild} from '@angular/core';\nimport {isPresent} from '@jscrpt/common';\nimport {Observable, Subject} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DATE_API} from '../../../misc/tokens';\nimport {DateApi, DateApiObject} from '../../../services';\nimport {DateValueProvider} from '../../../services/dateValueProvider.service';\nimport {DateTimeSelector} from '../../misc/datetimeSelector.interface';\n\n/**\n * Component used as datetime selector with simple input\n */\n@Component(\n{\n selector: 'simple-input-date-time-selector',\n templateUrl: 'simpleInputDateTime.component.html',\n styleUrls: ['simpleInputDateTime.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class SimpleInputDateTimeSelectorComponent<TDate = any> implements DateTimeSelector<TDate>\n{\n //######################### protected fields #########################\n\n /**\n * Occurs when value changes\n */\n protected _valueChange: Subject<void> = new Subject<void>();\n\n /**\n * Occurs when selector is touched by user\n */\n protected _touched: Subject<void> = new Subject<void>();\n\n /**\n * Occurs when selector requires picker to be displayed or hidden\n */\n protected _pickerRequest: Subject<boolean> = new Subject<boolean>();\n\n /**\n * Currently used format for displaying data\n */\n protected _format: string = '';\n\n /**\n * Current value representation as date api wrapper\n */\n protected _dateApiValue: null|DateApiObject<TDate> = null;\n\n /**\n * Indication whether is current value valid value\n */\n protected _isValid: boolean = true;\n\n /**\n * Minimal possible value that can be picked\n */\n protected _minValue: TDate|null = null;\n\n /**\n * Maximal possible value that can be picked\n */\n protected _maxValue: TDate|null = null;\n\n //######################### public properties - implementation of DateTimeSelector #########################\n\n /**\n * Gets or sets currently used format for displaying data\n */\n public get format(): string\n {\n return this._format;\n }\n public set format(value: string)\n {\n if(isPresent(value))\n {\n value = this._dateApi.getFormat(value);\n }\n\n this._format = value;\n }\n\n /**\n * Gets or sets placeholder that is displayed when there is no value selected\n */\n public placeholder: string|null = null;\n\n /**\n * Gets current value of datetime\n */\n public get value(): DateTimeValue<TDate>|null\n {\n if(!this._dateApiValue || !this._isValid)\n {\n return null;\n }\n\n return this._valueProvider.getValue(this._dateApiValue.value, this._format);\n }\n\n /**\n * Gets formatted value\n */\n public get formattedValue(): string|null\n {\n if(!this._isValid)\n {\n return null;\n }\n\n return this.currentValue;\n }\n\n /**\n * Gets indication whether is current value valid\n */\n public get valid(): boolean\n {\n return this._isValid;\n }\n\n /**\n * Occurs when value changes\n */\n public get valueChange(): Observable<void>\n {\n return this._valueChange.asObservable();\n }\n\n /**\n * Occurs when selector is touched by user\n */\n public get touched(): Observable<void>\n {\n return this._touched.asObservable();\n }\n\n /**\n * Occurs when selector requires picker to be displayed\n */\n public get pickerRequest(): Observable<boolean>\n {\n return this._pickerRequest.asObservable();\n }\n\n //######################### public properties - template bindings #########################\n\n /**\n * Indication whether is input disabled\n * @internal\n */\n public disabled: boolean = false;\n\n //######################### public properties - children #########################\n\n /**\n * Instance of html input element\n * @internal\n */\n @ViewChild('input', {static: true})\n public inputElement?: ElementRef<HTMLInputElement>;\n\n //######################### protected properties #########################\n\n /**\n * Gets or sets string representation current of value\n */\n protected get currentValue(): string|null\n {\n return this.input.value || null;\n }\n protected set currentValue(value: string|null)\n {\n if(this.input)\n {\n this.input.value = value ?? '';\n }\n }\n\n /**\n * Gets input element used for handling date time value\n */\n protected get input(): HTMLInputElement\n {\n return this.inputElement!.nativeElement;\n }\n\n //######################### constructor #########################\n constructor(@Inject(DATE_API) protected _dateApi: DateApi<TDate>,\n protected _valueProvider: DateValueProvider<TDate>,\n protected _changeDetector: ChangeDetectorRef)\n {\n }\n\n //######################### public methods - implementation of DateTimeSelector #########################\n\n /**\n * Sets minimal possible value for picker, that can be picked\n * @param value - Minimal possible value that can be picked\n */\n public setMinValue(value: TDate|null): void\n {\n this._minValue = value;\n }\n\n /**\n * Sets maximal possible value for picker, that can be picked\n * @param value - Maximal possible value that can be picked\n */\n public setMaxValue(value: TDate|null): void\n {\n this._maxValue = value;\n }\n\n /**\n * Sets value of datetime selector\n * @param value - Value to be set to this selector\n */\n public setValue(value: DateTimeValue<TDate>|null): void\n {\n if(value?.from)\n {\n this._dateApiValue = this._dateApi.getValue(value?.from, this._format);\n this._isValid = this._dateApiValue.isValid();\n\n this._show();\n }\n else\n {\n this._clearValue();\n }\n }\n\n /**\n * Sets as 'control' disabled\n * @param disabled - Indication whether sets value as disabled, if omitted it is same as disabled set to true\n */\n public setDisabled(disabled: boolean = true): void\n {\n this.disabled = disabled;\n }\n\n /**\n * Explicitly runs invalidation of content (change detection)\n */\n public invalidateVisuals(): void\n {\n this._changeDetector.detectChanges();\n }\n\n //######################### public methods - template bindings #########################\n\n /**\n * Handles gaining of focus\n * @internal\n */\n public handleFocus(): void\n {\n this._pickerRequest.next(true);\n\n //no value\n if(!this._dateApiValue)\n {\n this._dateApiValue = this._dateApi.now();\n this._isValid = this._dateApiValue.isValid();\n\n if(this._minMaxConstraintTest())\n {\n this._clearValue();\n }\n else\n {\n this._valueChange.next();\n }\n }\n\n if(!this._isValid)\n {\n return;\n }\n\n this._show();\n }\n\n /**\n * Handles blur on input\n * @internal\n */\n public handleBlur(): void\n {\n this._pickerRequest.next(false);\n }\n\n /**\n * Handles user input\n * @internal\n */\n public handleInput(): void\n {\n //empty value\n if(!this.currentValue)\n {\n this._clearValue();\n this._valueChange.next();\n\n return;\n }\n\n this._dateApiValue = this._dateApi.getValue(this.currentValue, this._format);\n this._isValid = this._dateApiValue.isValid();\n this._valueChange.next();\n }\n\n /**\n * Handles click event inside of input\n * @internal\n */\n public handleClick(): void\n {\n this._pickerRequest.next(true);\n }\n\n /**\n * Handles keyboard events\n * @param event - Keyboard event that occured\n * @param input - Html input element that holds current value and selection\n * @internal\n */\n public handleKeyboard(event: KeyboardEvent): void\n {\n if(!this._dateApiValue?.isValid())\n {\n return;\n }\n\n switch(event.key)\n {\n case 'ArrowRight':\n case 'ArrowLeft':\n {\n event.preventDefault();\n event.stopPropagation();\n\n this._withMinMaxConstraint(() => event.key == 'ArrowLeft' ? this._dateApiValue!.subtractDays(1) : this._dateApiValue!.addDays(1));\n this._show();\n\n break;\n }\n case 'ArrowUp':\n case 'ArrowDown':\n {\n event.preventDefault();\n event.stopPropagation();\n\n this._withMinMaxConstraint(() => event.key == 'ArrowUp' ? this._dateApiValue!.subtractWeeks(1) : this._dateApiValue!.addWeeks(1));\n this._show();\n\n break;\n }\n case 'Escape':\n {\n this._pickerRequest.next(false);\n\n break;\n }\n case ' ':\n {\n if(event.ctrlKey)\n {\n this._pickerRequest.next(true);\n }\n\n break;\n }\n }\n }\n\n //######################### protected methods #########################\n\n /**\n * Clears current value\n */\n protected _clearValue(): void\n {\n this._dateApiValue = null;\n this._isValid = true;\n this.currentValue = null;\n }\n\n /**\n * Tests whether are min or max constraint broken, returns true if constraint is broken\n */\n protected _minMaxConstraintTest(): boolean\n {\n return (!!this._minValue && this._dateApiValue!.isBefore(this._minValue)) ||\n (!!this._maxValue && this._dateApiValue!.isAfter(this._maxValue));\n }\n\n /**\n * Runs code with check whether min max constrains was broken\n * @param code - Code that should be executed which can change current value\n */\n protected _withMinMaxConstraint(code: () => void): void\n {\n this._dateApiValue!.updateOriginal();\n\n code();\n\n //min value constraint failure\n if(this._minMaxConstraintTest())\n {\n this._dateApiValue?.resetOriginal();\n\n return;\n }\n\n this._valueChange.next();\n }\n\n /**\n * Shows current value in input\n */\n protected _show(): void\n {\n if(this._isValid)\n {\n this.currentValue = this._dateApiValue?.format(this._format) ?? null;\n }\n }\n}","<input type=\"text\"\r\n #input\r\n (focus)=\"handleFocus()\"\r\n (blur)=\"handleBlur()\"\r\n (input)=\"handleInput()\"\r\n (click)=\"handleClick()\"\r\n (keydown)=\"handleKeyboard($any($event))\"\r\n [disabled]=\"disabled\"\r\n [placeholder]=\"placeholder ?? ''\">"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateTimePickerRenderer.directive.js","sourceRoot":"","sources":["../../../../../src/selector/directives/dateTimePickerRenderer/dateTimePickerRenderer.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {ComponentRef, Directive, ElementRef, EmbeddedViewRef, EventEmitter, Inject, Injector, Input, OnChanges, OnDestroy, OnInit, Optional, Output, ViewContainerRef} from '@angular/core';\nimport {DOCUMENT} from '@angular/common';\nimport {POSITION, Position, applyPositionResult} from '@anglr/common';\nimport {Subscription} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DateTimeSelector, DateTimeSelectorOptions} from '../../interfaces';\nimport {DateTimePickerComponent} from '../../../picker/types';\n\n/**\n * Directive for rendering datetime picker in selector\n */\n@Directive(\n{\n selector: '[dateTimePicker]'\n})\nexport class DateTimePickerRendererDirective<TDate = any> implements OnInit, OnChanges, OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Instance of component used for rendering picker\n */\n protected _pickerComponent?: ComponentRef<DateTimePickerComponent>;\n\n /**\n * Instance of HTML element for picker\n */\n protected _pickerElement?: HTMLElement;\n\n /**\n * Subscriptions created during initialization\n */\n protected _initSubscriptions: Subscription = new Subscription();\n\n //######################### protected properties #########################\n\n /**\n * Current options used by selector\n */\n protected get _options(): DateTimeSelectorOptions<DateTimeSelector<TDate>>\n {\n return this.options as DateTimeSelectorOptions<DateTimeSelector<TDate>>;\n }\n\n //######################### public properties - inputs #########################\n\n /**\n * Current options used by selector\n */\n @Input()\n public options!: Partial<DateTimeSelectorOptions<DateTimeSelector<TDate>>>;\n\n /**\n * Current selected value\n */\n @Input('dateTimePicker')\n public value!: DateTimeValue<TDate>|null;\n\n /**\n * Gets or sets minimal possible value for picker, that can be picked\n */\n @Input()\n public minValue!: TDate|null;\n\n /**\n * Gets or sets maximal possible value for picker, that can be picked\n */\n @Input()\n public maxValue!: TDate|null;\n\n /**\n * Selector element which is used during absolute positioning of picker\n */\n @Input()\n public selectorElement!: ElementRef<HTMLElement>;\n\n //######################### public properties - outputs #########################\n\n /**\n * Occurs when value changes\n */\n @Output()\n public valueChange: EventEmitter<DateTimeValue<TDate>> = new EventEmitter<DateTimeValue<TDate>>();\n\n //######################### constructor #########################\n constructor(protected _viewContainer: ViewContainerRef,\n protected _injector: Injector,\n @Inject(POSITION) @Optional() protected _position: Position,\n @Inject(DOCUMENT) protected _document: Document)\n {\n }\n\n //######################### public methods - implementation of OnInit #########################\n \n /**\n * Initialize component\n */\n public ngOnInit(): void\n {\n this._createPicker();\n }\n\n //######################### public methods - implementation of OnChanges #########################\n \n /**\n * Called when input value changes\n */\n public ngOnChanges(): void\n {\n this._createPicker();\n\n if(this._pickerComponent)\n {\n const picker = this._pickerComponent.instance;\n\n picker.value = this.value;\n picker.minValue = this.minValue;\n picker.maxValue = this.maxValue;\n picker.options = this.options;\n }\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._destroyPicker();\n this._initSubscriptions.unsubscribe();\n }\n\n //######################### protected methods #########################\n\n /**\n * Destroys picker component\n */\n protected _destroyPicker(): void\n {\n if(this._pickerComponent)\n {\n this._pickerComponent.destroy();\n this._pickerComponent = undefined;\n this._pickerElement = undefined;\n }\n }\n\n /**\n * Creates picker component\n */\n protected _createPicker(): void\n {\n if(this._pickerComponent)\n {\n return;\n }\n\n // 1. Create a component reference from the component\n this._pickerComponent = this._viewContainer\n .createComponent(DateTimePickerComponent,\n {\n injector: this._injector\n });\n\n if(this._pickerComponent)\n {\n this._initSubscriptions.add(this._pickerComponent.instance.valueChange.subscribe(itm => this.valueChange.next(itm)));\n\n //absolutely position\n if(this._options.pickerAbsolute && this._position)\n {\n // 3. Get DOM element from component\n this._pickerElement = (this._pickerComponent.hostView as EmbeddedViewRef<any>)\n .rootNodes[0] as HTMLElement;\n\n // 4. Append DOM element to the body\n this._document.querySelector(this._options.pickerAbsoluteContainer)?.appendChild(this._pickerElement);\n this._pickerElement.style.position = 'absolute';\n this._initSubscriptions.add(this._position.placeElement(this._pickerElement, this.selectorElement.nativeElement, this._options.positionOptions).subscribe(applyPositionResult));\n }\n else\n {\n return;\n }\n }\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"datetimeMaxValidator.directive.js","sourceRoot":"","sources":["../../../../../src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,UAAU,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAC,aAAa,EAA4D,MAAM,gBAAgB,CAAC;AAExG,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,yBAAyB,EAAC,MAAM,8CAA8C,CAAC;AAEvF,OAAO,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;;;AAE9C;;GAEG;AACH,MAAM,sBAAsB,GAC5B;IACI,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC;IAC5D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAMH,MAAM,OAAO,6BAA6B;IAStC,iEAAiE;IACjE,YAAY,gBAAkD,EAChC,OAAuB;QATrD,oEAAoE;QAEpE;;WAEG;QACK,eAAU,GAAgB,GAAG,EAAE,CAAC,IAAI,CAAC;QAMzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,kGAAkG;IAElG;;;;OAIG;IACI,QAAQ,CAAC,OAAwB;QAEpC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;;0HA1BQ,6BAA6B,2DAWlB,QAAQ;8GAXnB,6BAA6B,6NAF3B,CAAC,sBAAsB,CAAC;2FAE1B,6BAA6B;kBALzC,SAAS;mBACV;oBACI,QAAQ,EAAE,oMAAoM;oBAC9M,SAAS,EAAE,CAAC,sBAAsB,CAAC;iBACtC;;0BAYgB,MAAM;2BAAC,QAAQ","sourcesContent":["import {ExistingProvider, forwardRef, Directive, Inject} from '@angular/core';\nimport {NG_VALIDATORS, AbstractControl, Validator, ValidatorFn, ValidationErrors} from '@angular/forms';\n\nimport {Validators} from '../../../misc/validators';\nimport {DateTimeSelectorComponent} from '../../components/selector/selector.component';\nimport {DateApi} from '../../../services/dateApi.interface';\nimport {DATE_API} from '../../../misc/tokens';\n\n/**\n * Validator that is injected with directive DatetimeMaxValidatorDirective\n */\nconst DATETIME_MIN_VALIDATOR = <ExistingProvider>\n{\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => DatetimeMaxValidatorDirective),\n multi: true\n};\n\n/**\n * Directive injecting datetime max validator, validating max datetime value \n */\n@Directive(\n{\n selector: 'date-time-selector[validate][maxValue][formControlName]:not([range]),date-time-selector[validate][maxValue][formControl]:not([range]),date-time-selector[validate][maxValue][ngModel]:not([range])',\n providers: [DATETIME_MIN_VALIDATOR]\n})\nexport class DatetimeMaxValidatorDirective<TDate = any> implements Validator\n{\n //######################### private fields #########################\n\n /**\n * Function used for validations\n */\n private _validator: ValidatorFn = () => null;\n\n //######################### constructor #########################\n constructor(datetimeSelector: DateTimeSelectorComponent<TDate>,\n @Inject(DATE_API) dateApi: DateApi<TDate>)\n {\n this._validator = Validators.maxDatetime(datetimeSelector, dateApi);\n }\n\n //######################### public methods - implementation of Validator #########################\n\n /**\n * Validates input and returns validation result\n * @param control - Control that is being validated\n * @returns validation results\n */\n public validate(control: AbstractControl): ValidationErrors|null\n {\n return this._validator(control);\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"datetimeMinValidator.directive.js","sourceRoot":"","sources":["../../../../../src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,UAAU,EAAE,SAAS,EAAE,MAAM,EAAC,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAC,aAAa,EAA4D,MAAM,gBAAgB,CAAC;AAExG,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,yBAAyB,EAAC,MAAM,8CAA8C,CAAC;AAEvF,OAAO,EAAC,QAAQ,EAAC,MAAM,sBAAsB,CAAC;;;AAE9C;;GAEG;AACH,MAAM,sBAAsB,GAC5B;IACI,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,6BAA6B,CAAC;IAC5D,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAMH,MAAM,OAAO,6BAA6B;IAStC,iEAAiE;IACjE,YAAY,gBAAkD,EAChC,OAAuB;QATrD,oEAAoE;QAEpE;;WAEG;QACK,eAAU,GAAgB,GAAG,EAAE,CAAC,IAAI,CAAC;QAMzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACxE,CAAC;IAED,kGAAkG;IAElG;;;;OAIG;IACI,QAAQ,CAAC,OAAwB;QAEpC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;;0HA1BQ,6BAA6B,2DAWlB,QAAQ;8GAXnB,6BAA6B,6NAF3B,CAAC,sBAAsB,CAAC;2FAE1B,6BAA6B;kBALzC,SAAS;mBACV;oBACI,QAAQ,EAAE,oMAAoM;oBAC9M,SAAS,EAAE,CAAC,sBAAsB,CAAC;iBACtC;;0BAYgB,MAAM;2BAAC,QAAQ","sourcesContent":["import {ExistingProvider, forwardRef, Directive, Inject} from '@angular/core';\nimport {NG_VALIDATORS, AbstractControl, Validator, ValidatorFn, ValidationErrors} from '@angular/forms';\n\nimport {Validators} from '../../../misc/validators';\nimport {DateTimeSelectorComponent} from '../../components/selector/selector.component';\nimport {DateApi} from '../../../services/dateApi.interface';\nimport {DATE_API} from '../../../misc/tokens';\n\n/**\n * Validator that is injected with directive DatetimeMinValidatorDirective\n */\nconst DATETIME_MIN_VALIDATOR = <ExistingProvider>\n{\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => DatetimeMinValidatorDirective),\n multi: true\n};\n\n/**\n * Directive injecting datetime min validator, validating min datetime value \n */\n@Directive(\n{\n selector: 'date-time-selector[validate][minValue][formControlName]:not([range]),date-time-selector[validate][minValue][formControl]:not([range]),date-time-selector[validate][minValue][ngModel]:not([range])',\n providers: [DATETIME_MIN_VALIDATOR]\n})\nexport class DatetimeMinValidatorDirective<TDate = any> implements Validator\n{\n //######################### private fields #########################\n\n /**\n * Function used for validations\n */\n private _validator: ValidatorFn = () => null;\n\n //######################### constructor #########################\n constructor(datetimeSelector: DateTimeSelectorComponent<TDate>,\n @Inject(DATE_API) dateApi: DateApi<TDate>)\n {\n this._validator = Validators.minDatetime(datetimeSelector, dateApi);\n }\n\n //######################### public methods - implementation of Validator #########################\n\n /**\n * Validates input and returns validation result\n * @param control - Control that is being validated\n * @returns validation results\n */\n public validate(control: AbstractControl): ValidationErrors|null\n {\n return this._validator(control);\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"datetimeValidator.directive.js","sourceRoot":"","sources":["../../../../../src/selector/directives/datetimeValidator/datetimeValidator.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,UAAU,EAAE,SAAS,EAAC,MAAM,eAAe,CAAC;AACtE,OAAO,EAAC,aAAa,EAA4D,MAAM,gBAAgB,CAAC;AAExG,OAAO,EAAC,UAAU,EAAC,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAC,yBAAyB,EAAC,MAAM,8CAA8C,CAAC;;;AAEvF;;GAEG;AACH,MAAM,kBAAkB,GACxB;IACI,OAAO,EAAE,aAAa;IACtB,WAAW,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,0BAA0B,CAAC;IACzD,KAAK,EAAE,IAAI;CACd,CAAC;AAEF;;GAEG;AAMH,MAAM,OAAO,0BAA0B;IASnC,iEAAiE;IACjE,YAAY,gBAAkD;QAR9D,oEAAoE;QAEpE;;WAEG;QACK,eAAU,GAAgB,GAAG,EAAE,CAAC,IAAI,CAAC;QAKzC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC5D,CAAC;IAED,kGAAkG;IAElG;;;;OAIG;IACI,QAAQ,CAAC,OAAwB;QAEpC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;;uHAzBQ,0BAA0B;2GAA1B,0BAA0B,+LAFxB,CAAC,kBAAkB,CAAC;2FAEtB,0BAA0B;kBALtC,SAAS;mBACV;oBACI,QAAQ,EAAE,sKAAsK;oBAChL,SAAS,EAAE,CAAC,kBAAkB,CAAC;iBAClC","sourcesContent":["import {ExistingProvider, forwardRef, Directive} from '@angular/core';\nimport {NG_VALIDATORS, AbstractControl, Validator, ValidatorFn, ValidationErrors} from '@angular/forms';\n\nimport {Validators} from '../../../misc/validators';\nimport {DateTimeSelectorComponent} from '../../components/selector/selector.component';\n\n/**\n * Validator that is injected with directive DatetimeValidatorDirective\n */\nconst DATETIME_VALIDATOR = <ExistingProvider>\n{\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => DatetimeValidatorDirective),\n multi: true\n};\n\n/**\n * Directive injecting datetime validator, validating datetime\n */\n@Directive(\n{\n selector: 'date-time-selector[validate][formControlName]:not([range]),date-time-selector[validate][formControl]:not([range]),date-time-selector[validate][ngModel]:not([range])',\n providers: [DATETIME_VALIDATOR]\n})\nexport class DatetimeValidatorDirective<TDate = any> implements Validator\n{\n //######################### private fields #########################\n\n /**\n * Function used for validations\n */\n private _validator: ValidatorFn = () => null;\n\n //######################### constructor #########################\n constructor(datetimeSelector: DateTimeSelectorComponent<TDate>)\n {\n this._validator = Validators.datetime(datetimeSelector);\n }\n\n //######################### public methods - implementation of Validator #########################\n\n /**\n * Validates input and returns validation result\n * @param control - Control that is being validated\n * @returns validation results\n */\n public validate(control: AbstractControl): ValidationErrors|null\n {\n return this._validator(control);\n }\n}"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selectorControlValueAccessor.directive.js","sourceRoot":"","sources":["../../../../../src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {Directive, ExistingProvider, forwardRef, Input, OnDestroy} from '@angular/core';\nimport {NG_VALUE_ACCESSOR, ControlValueAccessor} from '@angular/forms';\nimport {Subscription} from 'rxjs';\n\nimport {DateTimeValue} from '../../../misc/datetime.interface';\nimport {DateTimeSelectorComponent} from '../../components/selector/selector.component';\n\n/**\n * Value accessor provider for date time selector\n */\nconst DATE_TIME_SELECTOR_VALUE_ACCESSOR = <ExistingProvider>\n{\n provide: NG_VALUE_ACCESSOR, \n useExisting: forwardRef(() => DateTimeSelectorControlValueAccessor), \n multi: true\n};\n\n/**\n * Value accessor for getting and setting values for date time selector\n */\n@Directive(\n{\n selector: 'date-time-selector[formControlName],date-time-selector[formControl],date-time-selector[ngModel]',\n providers: [DATE_TIME_SELECTOR_VALUE_ACCESSOR]\n})\nexport class DateTimeSelectorControlValueAccessor<TDate> implements ControlValueAccessor, OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Subscriptions that are destroyed on directive destruction\n */\n protected _subscriptions: Subscription = new Subscription();\n\n //######################### public properties - inputs #########################\n\n /**\n * Indication whether value for selector is represented as range from, to\n */\n @Input()\n public range: boolean = false;\n\n /**\n * Indication whether value for selector is represented as formatted string value, if both 'formatted' and 'range' are set, 'range' takes precedence\n */\n @Input()\n public formatted: boolean = false;\n\n //######################### constructor #########################\n constructor(protected _selector: DateTimeSelectorComponent<TDate>)\n {\n }\n\n //######################### public methods - implementation of OnDestroy #########################\n \n /**\n * Called when component is destroyed\n */\n public ngOnDestroy(): void\n {\n this._subscriptions?.unsubscribe();\n }\n\n //######################### public methods - implementation of ControlValueAccessor #########################\n\n /**\n * Sets value to datetime selector\n */\n public writeValue(value: string|DateTimeValue<TDate>|TDate|null): void\n {\n if(this.range)\n {\n this._selector.value = value as DateTimeValue<TDate>;\n }\n else if(this.formatted)\n {\n this._selector.formattedValue = value as string;\n }\n else\n {\n this._selector.value =\n {\n from: value as TDate,\n to: value as TDate\n };\n }\n }\n\n /**\n * Registers callback that is called when value of datetime selector value changes\n */\n public registerOnChange(fn: (data: string|DateTimeValue<TDate>|TDate|null) => any): void\n {\n this._subscriptions.add(this._selector.valueChange.subscribe(() => this._emitValue(fn)));\n }\n\n /**\n * Registers callback that is called when datetime selector was touched by user\n */\n public registerOnTouched(fn: () => any): void\n {\n this._subscriptions.add(this._selector.touched.subscribe(() => fn()));\n }\n\n /**\n * Used for setting control as disabled\n * @param isDisabled - disabled status to set on the element\n */\n public setDisabledState(isDisabled: boolean): void\n {\n this._selector.setDisabled(isDisabled);\n }\n\n //######################### protected methods #########################\n\n /**\n * Used for emitting value that was changed\n * @param fn - Function that is used for emitting changed value\n */\n protected _emitValue(fn: (value: string|DateTimeValue<TDate>|TDate|null) => any): void\n {\n if(this.range)\n {\n fn(this._selector.value);\n }\n else if(this.formatted)\n {\n fn(this._selector.formattedValue);\n }\n else\n {\n const value = this._selector.value;\n\n if(!value)\n {\n fn(null);\n }\n else\n {\n fn(value.from);\n }\n }\n }\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/selector/interfaces.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC","sourcesContent":["export * from './misc/datetimeSelector.interface';"]}