@anglr/datetime 7.0.0-beta.20230815120707 → 7.0.0-beta.20230817095054

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 (425) hide show
  1. package/changelog.md +40 -9
  2. package/date-fns/package.json +3 -4
  3. package/{es2020 → es2022}/date-fns/src/services/dateFnsDateApi.service.js +31 -17
  4. package/es2022/date-fns/src/services/dateFnsDateApi.service.js.map +1 -0
  5. package/{es2020 → es2022}/moment/src/services/momentDateApi.service.js +20 -8
  6. package/es2022/moment/src/services/momentDateApi.service.js.map +1 -0
  7. package/{es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js → es2022/src/directives/buttonDateTimeInput/buttonDateTimeInput.directive.js} +56 -73
  8. package/es2022/src/directives/buttonDateTimeInput/buttonDateTimeInput.directive.js.map +1 -0
  9. package/{es2015 → es2022}/src/directives/datePickerInput/datePickerInput.directive.js +5 -4
  10. package/es2022/src/directives/datePickerInput/datePickerInput.directive.js.map +1 -0
  11. package/{es2020 → es2022}/src/directives/dateTimeInputHandler/dateTimeInputHandler.directive.js +29 -18
  12. package/{es2015 → es2022}/src/directives/dateTimeInputHandler/dateTimeInputHandler.directive.js.map +1 -1
  13. package/{es2020 → es2022}/src/directives/dateTimePickerInput/dateTimePickerInput.directive.js +5 -4
  14. package/es2022/src/directives/dateTimePickerInput/dateTimePickerInput.directive.js.map +1 -0
  15. package/{es2020 → es2022}/src/directives/simpleDatePickerInput/simpleDatePickerInput.directive.js +5 -4
  16. package/es2022/src/directives/simpleDatePickerInput/simpleDatePickerInput.directive.js.map +1 -0
  17. package/{es2020 → es2022}/src/directives/simpleDateTimeInputHandler/simpleDateTimeInputHandler.directive.js +9 -4
  18. package/es2022/src/directives/simpleDateTimeInputHandler/simpleDateTimeInputHandler.directive.js.map +1 -0
  19. package/{es2020 → es2022}/src/directives/simpleDateTimePickerInput/simpleDateTimePickerInput.directive.js +5 -4
  20. package/es2022/src/directives/simpleDateTimePickerInput/simpleDateTimePickerInput.directive.js.map +1 -0
  21. package/{es2020 → es2022}/src/directives/withNow/withNow.directive.js +10 -9
  22. package/es2022/src/directives/withNow/withNow.directive.js.map +1 -0
  23. package/{es2015 → es2022}/src/directives/withTime/withTime.directive.js +5 -4
  24. package/es2022/src/directives/withTime/withTime.directive.js.map +1 -0
  25. package/{es2020 → es2022}/src/directives/withToday/withToday.directive.js +10 -9
  26. package/es2022/src/directives/withToday/withToday.directive.js.map +1 -0
  27. package/{es2020 → es2022}/src/misc/validators.js +2 -2
  28. package/es2022/src/misc/validators.js.map +1 -0
  29. package/{es2020 → es2022}/src/modules/calendar/components/monthCalendar/monthCalendar.component.js +65 -39
  30. package/es2022/src/modules/calendar/components/monthCalendar/monthCalendar.component.js.map +1 -0
  31. package/{es2020 → es2022}/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.directive.js +6 -4
  32. package/es2022/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.directive.js.map +1 -0
  33. package/{es2015 → es2022}/src/modules/calendar/modules/monthCalendar.module.js +8 -7
  34. package/es2022/src/modules/calendar/modules/monthCalendar.module.js.map +1 -0
  35. package/{es2020 → es2022}/src/modules/calendar/services/eventParser/eventParser.service.js +6 -4
  36. package/es2022/src/modules/calendar/services/eventParser/eventParser.service.js.map +1 -0
  37. package/es2022/src/modules/datePipes.module.js +29 -0
  38. package/es2022/src/modules/datePipes.module.js.map +1 -0
  39. package/{es2020 → es2022}/src/modules/dateTime/directives/dateTime/dateTime.directive.js +69 -41
  40. package/es2022/src/modules/dateTime/directives/dateTime/dateTime.directive.js.map +1 -0
  41. package/{es2015 → es2022}/src/modules/dateTime/directives/dateTimeBase.js +27 -22
  42. package/es2022/src/modules/dateTime/directives/dateTimeBase.js.map +1 -0
  43. package/{es2020 → es2022}/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +17 -15
  44. package/es2022/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +1 -0
  45. package/{es2020 → es2022}/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js +36 -27
  46. package/es2022/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +1 -0
  47. package/{es2015 → es2022}/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +17 -15
  48. package/es2022/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +1 -0
  49. package/{es2020 → es2022}/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +17 -15
  50. package/es2022/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +1 -0
  51. package/{es2020 → es2022}/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +17 -15
  52. package/es2022/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +1 -0
  53. package/{es2015 → es2022}/src/modules/dateTime/modules/dateTime.module.js +16 -15
  54. package/es2022/src/modules/dateTime/modules/dateTime.module.js.map +1 -0
  55. package/{es2020 → es2022}/src/modules/dateTimePicker/components/dateTimePeriodPickerBase.js +58 -39
  56. package/es2022/src/modules/dateTimePicker/components/dateTimePeriodPickerBase.js.map +1 -0
  57. package/{es2020 → es2022}/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +61 -24
  58. package/es2022/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +1 -0
  59. package/{es2020 → es2022}/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js +15 -14
  60. package/es2022/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js.map +1 -0
  61. package/{es2020 → es2022}/src/modules/dateTimePicker/components/monthPicker/monthPicker.component.js +6 -4
  62. package/es2022/src/modules/dateTimePicker/components/monthPicker/monthPicker.component.js.map +1 -0
  63. package/{es2020 → es2022}/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js +24 -27
  64. package/es2022/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js.map +1 -0
  65. package/{es2020 → es2022}/src/modules/dateTimePicker/components/yearPicker/yearPicker.component.js +10 -12
  66. package/es2022/src/modules/dateTimePicker/components/yearPicker/yearPicker.component.js.map +1 -0
  67. package/{es2020 → es2022}/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.js +52 -21
  68. package/es2022/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.js.map +1 -0
  69. package/{es2020 → es2022}/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.js.map +1 -1
  70. package/{es2020 → es2022}/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.js +57 -41
  71. package/es2022/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.js.map +1 -0
  72. package/es2022/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js +37 -0
  73. package/es2022/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js.map +1 -0
  74. package/{es2015 → es2022}/src/modules/dateTimePicker/modules/dateTimePicker.module.js +7 -6
  75. package/es2022/src/modules/dateTimePicker/modules/dateTimePicker.module.js.map +1 -0
  76. package/{es2015 → es2022}/src/pipes/dateConvert.pipe.js +6 -4
  77. package/es2022/src/pipes/dateConvert.pipe.js.map +1 -0
  78. package/{es2015 → es2022}/src/pipes/dateFormat.pipe.js +7 -4
  79. package/es2022/src/pipes/dateFormat.pipe.js.map +1 -0
  80. package/{es2020 → es2022}/src/services/datePositionParser/datePositionParser.service.js +19 -17
  81. package/es2022/src/services/datePositionParser/datePositionParser.service.js.map +1 -0
  82. package/{es2020 → es2022}/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js +11 -4
  83. package/es2022/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js.map +1 -0
  84. package/{es2020 → es2022}/src/services/dateValueProvider/dateValueProvider.service.js +6 -4
  85. package/es2022/src/services/dateValueProvider/dateValueProvider.service.js.map +1 -0
  86. package/moment/package.json +3 -4
  87. package/package.json +50 -58
  88. package/src/directives/buttonDateTimeInput/buttonDateTimeInput.directive.d.ts +67 -0
  89. package/src/directives/buttonDateTimeInput/buttonDateTimeInput.directive.d.ts.map +1 -0
  90. package/src/misc/types.d.ts +2 -2
  91. package/src/misc/types.d.ts.map +1 -1
  92. package/src/modules/calendar/components/monthCalendar/monthCalendar.component.d.ts +1 -1
  93. package/src/modules/dateTime/directives/dateTime/dateTime.directive.d.ts +1 -1
  94. package/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.d.ts +1 -1
  95. package/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.d.ts +1 -1
  96. package/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.d.ts.map +1 -1
  97. package/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.d.ts +6 -0
  98. package/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.d.ts.map +1 -1
  99. package/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.d.ts +1 -1
  100. package/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.d.ts +1 -1
  101. package/src/services/dateApi/dateApi.interface.d.ts +2 -2
  102. package/src/services/dateApi/dateApi.interface.d.ts.map +1 -1
  103. package/version.bak +1 -1
  104. package/es2015/date-fns/src/services/dateFnsDateApi.service.js +0 -590
  105. package/es2015/date-fns/src/services/dateFnsDateApi.service.js.map +0 -1
  106. package/es2015/moment/src/services/momentDateApi.service.js +0 -547
  107. package/es2015/moment/src/services/momentDateApi.service.js.map +0 -1
  108. package/es2015/src/directives/datePickerInput/datePickerInput.directive.js.map +0 -1
  109. package/es2015/src/directives/dateTimeInputHandler/dateTimeInputHandler.directive.js +0 -325
  110. package/es2015/src/directives/dateTimePickerInput/dateTimePickerInput.directive.js +0 -29
  111. package/es2015/src/directives/dateTimePickerInput/dateTimePickerInput.directive.js.map +0 -1
  112. package/es2015/src/directives/simpleDatePickerInput/simpleDatePickerInput.directive.js +0 -37
  113. package/es2015/src/directives/simpleDatePickerInput/simpleDatePickerInput.directive.js.map +0 -1
  114. package/es2015/src/directives/simpleDateTimeInputHandler/simpleDateTimeInputHandler.directive.js +0 -137
  115. package/es2015/src/directives/simpleDateTimeInputHandler/simpleDateTimeInputHandler.directive.js.map +0 -1
  116. package/es2015/src/directives/simpleDateTimePickerInput/simpleDateTimePickerInput.directive.js +0 -29
  117. package/es2015/src/directives/simpleDateTimePickerInput/simpleDateTimePickerInput.directive.js.map +0 -1
  118. package/es2015/src/directives/withNow/withNow.directive.js +0 -44
  119. package/es2015/src/directives/withNow/withNow.directive.js.map +0 -1
  120. package/es2015/src/directives/withTime/withTime.directive.js.map +0 -1
  121. package/es2015/src/directives/withToday/withToday.directive.js +0 -44
  122. package/es2015/src/directives/withToday/withToday.directive.js.map +0 -1
  123. package/es2015/src/misc/utils.js +0 -164
  124. package/es2015/src/misc/utils.js.map +0 -1
  125. package/es2015/src/misc/validators.js +0 -142
  126. package/es2015/src/misc/validators.js.map +0 -1
  127. package/es2015/src/modules/calendar/components/monthCalendar/monthCalendar.component.js +0 -198
  128. package/es2015/src/modules/calendar/components/monthCalendar/monthCalendar.component.js.map +0 -1
  129. package/es2015/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.directive.js +0 -27
  130. package/es2015/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.directive.js.map +0 -1
  131. package/es2015/src/modules/calendar/modules/monthCalendar.module.js.map +0 -1
  132. package/es2015/src/modules/calendar/services/eventParser/eventParser.service.js +0 -75
  133. package/es2015/src/modules/calendar/services/eventParser/eventParser.service.js.map +0 -1
  134. package/es2015/src/modules/datePipes.module.js +0 -28
  135. package/es2015/src/modules/datePipes.module.js.map +0 -1
  136. package/es2015/src/modules/dateTime/directives/dateTime/dateTime.directive.js +0 -254
  137. package/es2015/src/modules/dateTime/directives/dateTime/dateTime.directive.js.map +0 -1
  138. package/es2015/src/modules/dateTime/directives/dateTimeBase.js.map +0 -1
  139. package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js +0 -77
  140. package/es2015/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +0 -1
  141. package/es2015/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +0 -1
  142. package/es2015/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +0 -1
  143. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js +0 -70
  144. package/es2015/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +0 -1
  145. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js +0 -63
  146. package/es2015/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +0 -1
  147. package/es2015/src/modules/dateTime/modules/dateTime.module.js.map +0 -1
  148. package/es2015/src/modules/dateTimePicker/components/dateTimePeriodPickerBase.js +0 -186
  149. package/es2015/src/modules/dateTimePicker/components/dateTimePeriodPickerBase.js.map +0 -1
  150. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js +0 -299
  151. package/es2015/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +0 -1
  152. package/es2015/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js +0 -151
  153. package/es2015/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js.map +0 -1
  154. package/es2015/src/modules/dateTimePicker/components/monthPicker/monthPicker.component.js +0 -123
  155. package/es2015/src/modules/dateTimePicker/components/monthPicker/monthPicker.component.js.map +0 -1
  156. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js +0 -137
  157. package/es2015/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
  158. package/es2015/src/modules/dateTimePicker/components/yearPicker/yearPicker.component.js +0 -126
  159. package/es2015/src/modules/dateTimePicker/components/yearPicker/yearPicker.component.js.map +0 -1
  160. package/es2015/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.js +0 -261
  161. package/es2015/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.js.map +0 -1
  162. package/es2015/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.js.map +0 -1
  163. package/es2015/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.js +0 -222
  164. package/es2015/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.js.map +0 -1
  165. package/es2015/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js +0 -30
  166. package/es2015/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
  167. package/es2015/src/modules/dateTimePicker/modules/dateTimePicker.module.js.map +0 -1
  168. package/es2015/src/pipes/dateConvert.pipe.js.map +0 -1
  169. package/es2015/src/pipes/dateFormat.pipe.js.map +0 -1
  170. package/es2015/src/services/datePositionParser/datePositionParser.service.js +0 -243
  171. package/es2015/src/services/datePositionParser/datePositionParser.service.js.map +0 -1
  172. package/es2015/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js +0 -81
  173. package/es2015/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js.map +0 -1
  174. package/es2015/src/services/dateValueProvider/dateValueProvider.service.js +0 -69
  175. package/es2015/src/services/dateValueProvider/dateValueProvider.service.js.map +0 -1
  176. package/es2020/date-fns/src/index.js +0 -4
  177. package/es2020/date-fns/src/index.js.map +0 -1
  178. package/es2020/date-fns/src/misc/tokens.js +0 -31
  179. package/es2020/date-fns/src/misc/tokens.js.map +0 -1
  180. package/es2020/date-fns/src/services/dateFnsDateApi.service.js.map +0 -1
  181. package/es2020/date-fns/src/services/dateFnsLocale.service.js +0 -2
  182. package/es2020/date-fns/src/services/dateFnsLocale.service.js.map +0 -1
  183. package/es2020/moment/src/index.js +0 -3
  184. package/es2020/moment/src/index.js.map +0 -1
  185. package/es2020/moment/src/misc/tokens.js +0 -26
  186. package/es2020/moment/src/misc/tokens.js.map +0 -1
  187. package/es2020/moment/src/services/momentDateApi.service.js.map +0 -1
  188. package/es2020/src/directives/datePickerInput/datePickerInput.directive.js +0 -37
  189. package/es2020/src/directives/datePickerInput/datePickerInput.directive.js.map +0 -1
  190. package/es2020/src/directives/dateTimeInputHandler/dateTimeInputHandler.directive.js.map +0 -1
  191. package/es2020/src/directives/dateTimePickerInput/dateTimePickerInput.directive.js.map +0 -1
  192. package/es2020/src/directives/index.js +0 -10
  193. package/es2020/src/directives/index.js.map +0 -1
  194. package/es2020/src/directives/simpleDatePickerInput/simpleDatePickerInput.directive.js.map +0 -1
  195. package/es2020/src/directives/simpleDateTimeInputHandler/simpleDateTimeInputHandler.directive.js.map +0 -1
  196. package/es2020/src/directives/simpleDateTimePickerInput/simpleDateTimePickerInput.directive.js.map +0 -1
  197. package/es2020/src/directives/withNow/withNow.directive.js.map +0 -1
  198. package/es2020/src/directives/withTime/withTime.directive.js +0 -32
  199. package/es2020/src/directives/withTime/withTime.directive.js.map +0 -1
  200. package/es2020/src/directives/withToday/withToday.directive.js.map +0 -1
  201. package/es2020/src/index.js +0 -13
  202. package/es2020/src/index.js.map +0 -1
  203. package/es2020/src/interfaces/dateTime/datetime.interface.js +0 -2
  204. package/es2020/src/interfaces/dateTime/datetime.interface.js.map +0 -1
  205. package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js +0 -2
  206. package/es2020/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +0 -1
  207. package/es2020/src/interfaces/formatProvider/formatProvider.interface.js +0 -2
  208. package/es2020/src/interfaces/formatProvider/formatProvider.interface.js.map +0 -1
  209. package/es2020/src/interfaces/index.js +0 -4
  210. package/es2020/src/interfaces/index.js.map +0 -1
  211. package/es2020/src/legacy/picker/components/picker/picker.component.animations.js +0 -94
  212. package/es2020/src/legacy/picker/components/picker/picker.component.animations.js.map +0 -1
  213. package/es2020/src/misc/constants.js +0 -33
  214. package/es2020/src/misc/constants.js.map +0 -1
  215. package/es2020/src/misc/enums.js +0 -23
  216. package/es2020/src/misc/enums.js.map +0 -1
  217. package/es2020/src/misc/tokens.js +0 -38
  218. package/es2020/src/misc/tokens.js.map +0 -1
  219. package/es2020/src/misc/types.js +0 -2
  220. package/es2020/src/misc/types.js.map +0 -1
  221. package/es2020/src/misc/validators.js.map +0 -1
  222. package/es2020/src/modules/calendar/components/index.js +0 -2
  223. package/es2020/src/modules/calendar/components/index.js.map +0 -1
  224. package/es2020/src/modules/calendar/components/monthCalendar/monthCalendar.component.js.map +0 -1
  225. package/es2020/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.context.js +0 -2
  226. package/es2020/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.context.js.map +0 -1
  227. package/es2020/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.directive.js.map +0 -1
  228. package/es2020/src/modules/calendar/directives/index.js +0 -3
  229. package/es2020/src/modules/calendar/directives/index.js.map +0 -1
  230. package/es2020/src/modules/calendar/index.js +0 -7
  231. package/es2020/src/modules/calendar/index.js.map +0 -1
  232. package/es2020/src/modules/calendar/interfaces/calendarDayData.interface.js +0 -2
  233. package/es2020/src/modules/calendar/interfaces/calendarDayData.interface.js.map +0 -1
  234. package/es2020/src/modules/calendar/interfaces/calendarEventDayMetadata.interface.js +0 -2
  235. package/es2020/src/modules/calendar/interfaces/calendarEventDayMetadata.interface.js.map +0 -1
  236. package/es2020/src/modules/calendar/interfaces/eventData.interface.js +0 -2
  237. package/es2020/src/modules/calendar/interfaces/eventData.interface.js.map +0 -1
  238. package/es2020/src/modules/calendar/interfaces/index.js +0 -4
  239. package/es2020/src/modules/calendar/interfaces/index.js.map +0 -1
  240. package/es2020/src/modules/calendar/misc/enums/calendarDayAspectRatio.enum.js +0 -27
  241. package/es2020/src/modules/calendar/misc/enums/calendarDayAspectRatio.enum.js.map +0 -1
  242. package/es2020/src/modules/calendar/misc/enums/index.js +0 -3
  243. package/es2020/src/modules/calendar/misc/enums/index.js.map +0 -1
  244. package/es2020/src/modules/calendar/misc/enums/monthCalendarDayFormat.enum.js +0 -19
  245. package/es2020/src/modules/calendar/misc/enums/monthCalendarDayFormat.enum.js.map +0 -1
  246. package/es2020/src/modules/calendar/misc/index.js +0 -2
  247. package/es2020/src/modules/calendar/misc/index.js.map +0 -1
  248. package/es2020/src/modules/calendar/modules/index.js +0 -2
  249. package/es2020/src/modules/calendar/modules/index.js.map +0 -1
  250. package/es2020/src/modules/calendar/modules/monthCalendar.module.js +0 -32
  251. package/es2020/src/modules/calendar/modules/monthCalendar.module.js.map +0 -1
  252. package/es2020/src/modules/calendar/services/eventParser/eventParser.service.js.map +0 -1
  253. package/es2020/src/modules/calendar/services/index.js +0 -2
  254. package/es2020/src/modules/calendar/services/index.js.map +0 -1
  255. package/es2020/src/modules/datePipes.module.js +0 -28
  256. package/es2020/src/modules/datePipes.module.js.map +0 -1
  257. package/es2020/src/modules/dateTime/directives/dateTime/dateTime.directive.js.map +0 -1
  258. package/es2020/src/modules/dateTime/directives/dateTimeBase.js +0 -61
  259. package/es2020/src/modules/dateTime/directives/dateTimeBase.js.map +0 -1
  260. package/es2020/src/modules/dateTime/directives/dateTimeControlValueAccessor/dateTimeControlValueAccessor.directive.js.map +0 -1
  261. package/es2020/src/modules/dateTime/directives/dateTimeInput/dateTimeInput.directive.js.map +0 -1
  262. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js +0 -70
  263. package/es2020/src/modules/dateTime/directives/dateTimeMaxValidator/dateTimeMaxValidator.directive.js.map +0 -1
  264. package/es2020/src/modules/dateTime/directives/dateTimeMinValidator/dateTimeMinValidator.directive.js.map +0 -1
  265. package/es2020/src/modules/dateTime/directives/dateTimeValidator/dateTimeValidator.directive.js.map +0 -1
  266. package/es2020/src/modules/dateTime/directives/index.js +0 -8
  267. package/es2020/src/modules/dateTime/directives/index.js.map +0 -1
  268. package/es2020/src/modules/dateTime/index.js +0 -3
  269. package/es2020/src/modules/dateTime/index.js.map +0 -1
  270. package/es2020/src/modules/dateTime/modules/dateTime.module.js +0 -43
  271. package/es2020/src/modules/dateTime/modules/dateTime.module.js.map +0 -1
  272. package/es2020/src/modules/dateTime/modules/index.js +0 -2
  273. package/es2020/src/modules/dateTime/modules/index.js.map +0 -1
  274. package/es2020/src/modules/dateTimePicker/components/dateTimePeriodPickerBase.js.map +0 -1
  275. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.component.js.map +0 -1
  276. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.interface.js +0 -2
  277. package/es2020/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.interface.js.map +0 -1
  278. package/es2020/src/modules/dateTimePicker/components/dayPicker/dayPicker.component.js.map +0 -1
  279. package/es2020/src/modules/dateTimePicker/components/index.js +0 -9
  280. package/es2020/src/modules/dateTimePicker/components/index.js.map +0 -1
  281. package/es2020/src/modules/dateTimePicker/components/monthPicker/monthPicker.component.js.map +0 -1
  282. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.component.js.map +0 -1
  283. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js +0 -347
  284. package/es2020/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -1
  285. package/es2020/src/modules/dateTimePicker/components/yearPicker/yearPicker.component.js.map +0 -1
  286. package/es2020/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.directive.js.map +0 -1
  287. package/es2020/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.js +0 -2
  288. package/es2020/src/modules/dateTimePicker/directives/index.js +0 -6
  289. package/es2020/src/modules/dateTimePicker/directives/index.js.map +0 -1
  290. package/es2020/src/modules/dateTimePicker/directives/loopScroll/loopScroll.directive.js.map +0 -1
  291. package/es2020/src/modules/dateTimePicker/directives/loopScroll/loopScroll.interface.js +0 -2
  292. package/es2020/src/modules/dateTimePicker/directives/loopScroll/loopScroll.interface.js.map +0 -1
  293. package/es2020/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js +0 -30
  294. package/es2020/src/modules/dateTimePicker/directives/loopScrollData/loopScrollData.directive.js.map +0 -1
  295. package/es2020/src/modules/dateTimePicker/index.js +0 -6
  296. package/es2020/src/modules/dateTimePicker/index.js.map +0 -1
  297. package/es2020/src/modules/dateTimePicker/interfaces/dateTimePicker/dateTimePicker.interface.js +0 -2
  298. package/es2020/src/modules/dateTimePicker/interfaces/dateTimePicker/dateTimePicker.interface.js.map +0 -1
  299. package/es2020/src/modules/dateTimePicker/interfaces/index.js +0 -3
  300. package/es2020/src/modules/dateTimePicker/interfaces/index.js.map +0 -1
  301. package/es2020/src/modules/dateTimePicker/interfaces/periodData/periodData.interface.js +0 -2
  302. package/es2020/src/modules/dateTimePicker/interfaces/periodData/periodData.interface.js.map +0 -1
  303. package/es2020/src/modules/dateTimePicker/misc/tokens.js +0 -10
  304. package/es2020/src/modules/dateTimePicker/misc/tokens.js.map +0 -1
  305. package/es2020/src/modules/dateTimePicker/modules/dateTimePicker.module.js +0 -29
  306. package/es2020/src/modules/dateTimePicker/modules/dateTimePicker.module.js.map +0 -1
  307. package/es2020/src/modules/dateTimePicker/modules/index.js +0 -2
  308. package/es2020/src/modules/dateTimePicker/modules/index.js.map +0 -1
  309. package/es2020/src/modules/index.js +0 -5
  310. package/es2020/src/modules/index.js.map +0 -1
  311. package/es2020/src/pipes/dateConvert.pipe.js +0 -35
  312. package/es2020/src/pipes/dateConvert.pipe.js.map +0 -1
  313. package/es2020/src/pipes/dateFormat.pipe.js +0 -39
  314. package/es2020/src/pipes/dateFormat.pipe.js.map +0 -1
  315. package/es2020/src/services/dateApi/dateApi.interface.js +0 -2
  316. package/es2020/src/services/dateApi/dateApi.interface.js.map +0 -1
  317. package/es2020/src/services/datePositionParser/datePositionParser.interface.js +0 -2
  318. package/es2020/src/services/datePositionParser/datePositionParser.interface.js.map +0 -1
  319. package/es2020/src/services/datePositionParser/datePositionParser.service.js.map +0 -1
  320. package/es2020/src/services/dateTimeRelativeParser/dateTimeRelativeParser.service.js.map +0 -1
  321. package/es2020/src/services/dateValueProvider/dateValueProvider.service.js.map +0 -1
  322. package/es2020/src/services/index.js +0 -6
  323. package/es2020/src/services/index.js.map +0 -1
  324. package/src/dark.scss +0 -38
  325. package/src/default.scss +0 -33
  326. package/src/theme.scss +0 -80
  327. /package/{es2015 → es2022}/date-fns/src/index.js +0 -0
  328. /package/{es2015 → es2022}/date-fns/src/index.js.map +0 -0
  329. /package/{es2015 → es2022}/date-fns/src/misc/tokens.js +0 -0
  330. /package/{es2015 → es2022}/date-fns/src/misc/tokens.js.map +0 -0
  331. /package/{es2015 → es2022}/date-fns/src/services/dateFnsLocale.service.js +0 -0
  332. /package/{es2015 → es2022}/date-fns/src/services/dateFnsLocale.service.js.map +0 -0
  333. /package/{es2015 → es2022}/moment/src/index.js +0 -0
  334. /package/{es2015 → es2022}/moment/src/index.js.map +0 -0
  335. /package/{es2015 → es2022}/moment/src/misc/tokens.js +0 -0
  336. /package/{es2015 → es2022}/moment/src/misc/tokens.js.map +0 -0
  337. /package/{es2015 → es2022}/src/directives/index.js +0 -0
  338. /package/{es2015 → es2022}/src/directives/index.js.map +0 -0
  339. /package/{es2015 → es2022}/src/index.js +0 -0
  340. /package/{es2015 → es2022}/src/index.js.map +0 -0
  341. /package/{es2015 → es2022}/src/interfaces/dateTime/datetime.interface.js +0 -0
  342. /package/{es2015 → es2022}/src/interfaces/dateTime/datetime.interface.js.map +0 -0
  343. /package/{es2015 → es2022}/src/interfaces/dateTimeInput/dateTimeInput.interface.js +0 -0
  344. /package/{es2015 → es2022}/src/interfaces/dateTimeInput/dateTimeInput.interface.js.map +0 -0
  345. /package/{es2015 → es2022}/src/interfaces/formatProvider/formatProvider.interface.js +0 -0
  346. /package/{es2015 → es2022}/src/interfaces/formatProvider/formatProvider.interface.js.map +0 -0
  347. /package/{es2015 → es2022}/src/interfaces/index.js +0 -0
  348. /package/{es2015 → es2022}/src/interfaces/index.js.map +0 -0
  349. /package/{es2015 → es2022}/src/legacy/picker/components/picker/picker.component.animations.js +0 -0
  350. /package/{es2015 → es2022}/src/legacy/picker/components/picker/picker.component.animations.js.map +0 -0
  351. /package/{es2015 → es2022}/src/misc/constants.js +0 -0
  352. /package/{es2015 → es2022}/src/misc/constants.js.map +0 -0
  353. /package/{es2015 → es2022}/src/misc/enums.js +0 -0
  354. /package/{es2015 → es2022}/src/misc/enums.js.map +0 -0
  355. /package/{es2015 → es2022}/src/misc/tokens.js +0 -0
  356. /package/{es2015 → es2022}/src/misc/tokens.js.map +0 -0
  357. /package/{es2015 → es2022}/src/misc/types.js +0 -0
  358. /package/{es2015 → es2022}/src/misc/types.js.map +0 -0
  359. /package/{es2020 → es2022}/src/misc/utils.js +0 -0
  360. /package/{es2020 → es2022}/src/misc/utils.js.map +0 -0
  361. /package/{es2015 → es2022}/src/modules/calendar/components/index.js +0 -0
  362. /package/{es2015 → es2022}/src/modules/calendar/components/index.js.map +0 -0
  363. /package/{es2015 → es2022}/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.context.js +0 -0
  364. /package/{es2015 → es2022}/src/modules/calendar/directives/calendarDayTemplate/calendarDayTemplate.context.js.map +0 -0
  365. /package/{es2015 → es2022}/src/modules/calendar/directives/index.js +0 -0
  366. /package/{es2015 → es2022}/src/modules/calendar/directives/index.js.map +0 -0
  367. /package/{es2015 → es2022}/src/modules/calendar/index.js +0 -0
  368. /package/{es2015 → es2022}/src/modules/calendar/index.js.map +0 -0
  369. /package/{es2015 → es2022}/src/modules/calendar/interfaces/calendarDayData.interface.js +0 -0
  370. /package/{es2015 → es2022}/src/modules/calendar/interfaces/calendarDayData.interface.js.map +0 -0
  371. /package/{es2015 → es2022}/src/modules/calendar/interfaces/calendarEventDayMetadata.interface.js +0 -0
  372. /package/{es2015 → es2022}/src/modules/calendar/interfaces/calendarEventDayMetadata.interface.js.map +0 -0
  373. /package/{es2015 → es2022}/src/modules/calendar/interfaces/eventData.interface.js +0 -0
  374. /package/{es2015 → es2022}/src/modules/calendar/interfaces/eventData.interface.js.map +0 -0
  375. /package/{es2015 → es2022}/src/modules/calendar/interfaces/index.js +0 -0
  376. /package/{es2015 → es2022}/src/modules/calendar/interfaces/index.js.map +0 -0
  377. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/calendarDayAspectRatio.enum.js +0 -0
  378. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/calendarDayAspectRatio.enum.js.map +0 -0
  379. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/index.js +0 -0
  380. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/index.js.map +0 -0
  381. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/monthCalendarDayFormat.enum.js +0 -0
  382. /package/{es2015 → es2022}/src/modules/calendar/misc/enums/monthCalendarDayFormat.enum.js.map +0 -0
  383. /package/{es2015 → es2022}/src/modules/calendar/misc/index.js +0 -0
  384. /package/{es2015 → es2022}/src/modules/calendar/misc/index.js.map +0 -0
  385. /package/{es2015 → es2022}/src/modules/calendar/modules/index.js +0 -0
  386. /package/{es2015 → es2022}/src/modules/calendar/modules/index.js.map +0 -0
  387. /package/{es2015 → es2022}/src/modules/calendar/services/index.js +0 -0
  388. /package/{es2015 → es2022}/src/modules/calendar/services/index.js.map +0 -0
  389. /package/{es2015 → es2022}/src/modules/dateTime/directives/index.js +0 -0
  390. /package/{es2015 → es2022}/src/modules/dateTime/directives/index.js.map +0 -0
  391. /package/{es2015 → es2022}/src/modules/dateTime/index.js +0 -0
  392. /package/{es2015 → es2022}/src/modules/dateTime/index.js.map +0 -0
  393. /package/{es2015 → es2022}/src/modules/dateTime/modules/index.js +0 -0
  394. /package/{es2015 → es2022}/src/modules/dateTime/modules/index.js.map +0 -0
  395. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.interface.js +0 -0
  396. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/dateTimePicker/dateTimePicker.interface.js.map +0 -0
  397. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/index.js +0 -0
  398. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/index.js.map +0 -0
  399. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js +0 -0
  400. /package/{es2015 → es2022}/src/modules/dateTimePicker/components/rollerTimePicker/rollerTimePicker.data.js.map +0 -0
  401. /package/{es2015 → es2022}/src/modules/dateTimePicker/directives/dateTimePicker/dateTimePicker.interface.js +0 -0
  402. /package/{es2015 → es2022}/src/modules/dateTimePicker/directives/index.js +0 -0
  403. /package/{es2015 → es2022}/src/modules/dateTimePicker/directives/index.js.map +0 -0
  404. /package/{es2015 → es2022}/src/modules/dateTimePicker/directives/loopScroll/loopScroll.interface.js +0 -0
  405. /package/{es2015 → es2022}/src/modules/dateTimePicker/directives/loopScroll/loopScroll.interface.js.map +0 -0
  406. /package/{es2015 → es2022}/src/modules/dateTimePicker/index.js +0 -0
  407. /package/{es2015 → es2022}/src/modules/dateTimePicker/index.js.map +0 -0
  408. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/dateTimePicker/dateTimePicker.interface.js +0 -0
  409. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/dateTimePicker/dateTimePicker.interface.js.map +0 -0
  410. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/index.js +0 -0
  411. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/index.js.map +0 -0
  412. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/periodData/periodData.interface.js +0 -0
  413. /package/{es2015 → es2022}/src/modules/dateTimePicker/interfaces/periodData/periodData.interface.js.map +0 -0
  414. /package/{es2015 → es2022}/src/modules/dateTimePicker/misc/tokens.js +0 -0
  415. /package/{es2015 → es2022}/src/modules/dateTimePicker/misc/tokens.js.map +0 -0
  416. /package/{es2015 → es2022}/src/modules/dateTimePicker/modules/index.js +0 -0
  417. /package/{es2015 → es2022}/src/modules/dateTimePicker/modules/index.js.map +0 -0
  418. /package/{es2015 → es2022}/src/modules/index.js +0 -0
  419. /package/{es2015 → es2022}/src/modules/index.js.map +0 -0
  420. /package/{es2015 → es2022}/src/services/dateApi/dateApi.interface.js +0 -0
  421. /package/{es2015 → es2022}/src/services/dateApi/dateApi.interface.js.map +0 -0
  422. /package/{es2015 → es2022}/src/services/datePositionParser/datePositionParser.interface.js +0 -0
  423. /package/{es2015 → es2022}/src/services/datePositionParser/datePositionParser.interface.js.map +0 -0
  424. /package/{es2015 → es2022}/src/services/index.js +0 -0
  425. /package/{es2015 → es2022}/src/services/index.js.map +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"withTime.directive.js","sourceRoot":"","sources":["../../../../src/directives/withTime/withTime.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AAExC,OAAO,EAAC,2BAA2B,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,mBAAmB,EAAC,MAAM,eAAe,CAAC;;;AAE/K;;GAEG;AAMH,MAAM,OAAO,mBAAmB;IAE5B,iEAAiE;IACjE,YAAY,MAAwC,EACxC,QAAoC;QAE5C,MAAM,CAAC,aAAa;YACpB;gBACI,iBAAiB,EACjB;oBACI,MAAM,EAAE,2BAA2B;oBACnC,KAAK,EAAE,oBAAoB;oBAC3B,OAAO,EAAE,sBAAsB;oBAC/B,MAAM,EAAE,qBAAqB;iBAChC;aACJ,CAAC;QAEF,QAAQ,CAAC,MAAM,GAAG,UAAU,CAAC;IACjC,CAAC;;gHAlBQ,mBAAmB;oGAAnB,mBAAmB;2FAAnB,mBAAmB;kBAL/B,SAAS;mBACV;oBACI,QAAQ,EAAE,kCAAkC;oBAC5C,UAAU,EAAE,IAAI;iBACnB","sourcesContent":["import {Directive} from '@angular/core';\n\nimport {RollerTimePickerSAComponent, DateTimePickerSADirective, DayPickerSAComponent, MonthPickerSAComponent, YearPickerSAComponent, DateTimeSADirective} from '../../modules';\n\n/**\n * Directive that sets up usage of date time picker to use time format and time picker\n */\n@Directive(\n{\n selector: '[dateTime][withPicker][withTime]',\n standalone: true,\n})\nexport class WithTimeSADirective<TDate = unknown>\n{\n //######################### constructor #########################\n constructor(picker: DateTimePickerSADirective<TDate>,\n dateTime: DateTimeSADirective<TDate>,)\n {\n picker.pickerOptions = \n {\n periodsDefinition:\n {\n 'time': RollerTimePickerSAComponent,\n 'day': DayPickerSAComponent,\n 'month': MonthPickerSAComponent,\n 'year': YearPickerSAComponent,\n },\n };\n\n dateTime.format = 'dateTime';\n }\n}"]}
@@ -1,44 +0,0 @@
1
- import { Directive, Inject } from '@angular/core';
2
- import { Subscription } from 'rxjs';
3
- import { DATE_API } from '../../misc/tokens';
4
- import { DateTimeInputSADirective } from '../../modules';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "../../modules";
7
- /**
8
- * Directive that sets today (start of a day) as day for empty date time on focus
9
- */
10
- export class WithTodaySADirective {
11
- //######################### constructor #########################
12
- constructor(input, dateApi) {
13
- //######################### protected fields #########################
14
- /**
15
- * Subscriptions created during initialization
16
- */
17
- this.initSubscriptions = new Subscription();
18
- this.initSubscriptions.add(input.focus.subscribe(() => {
19
- if (!input.value) {
20
- input.value = dateApi.now().startOfDay().value;
21
- }
22
- }));
23
- }
24
- //######################### public methods - implementation of OnDestroy #########################
25
- /**
26
- * Called when component is destroyed
27
- */
28
- ngOnDestroy() {
29
- this.initSubscriptions.unsubscribe();
30
- }
31
- }
32
- WithTodaySADirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WithTodaySADirective, deps: [{ token: i1.DateTimeInputSADirective }, { token: DATE_API }], target: i0.ɵɵFactoryTarget.Directive });
33
- WithTodaySADirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.0.4", type: WithTodaySADirective, isStandalone: true, selector: "[dateTime][withToday]", ngImport: i0 });
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: WithTodaySADirective, decorators: [{
35
- type: Directive,
36
- args: [{
37
- selector: '[dateTime][withToday]',
38
- standalone: true,
39
- }]
40
- }], ctorParameters: function () { return [{ type: i1.DateTimeInputSADirective }, { type: undefined, decorators: [{
41
- type: Inject,
42
- args: [DATE_API]
43
- }] }]; } });
44
- //# sourceMappingURL=withToday.directive.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"withToday.directive.js","sourceRoot":"","sources":["../../../../src/directives/withToday/withToday.directive.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAE,MAAM,EAAY,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAC,YAAY,EAAC,MAAM,MAAM,CAAC;AAElC,OAAO,EAAC,QAAQ,EAAC,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAC,wBAAwB,EAAC,MAAM,eAAe,CAAC;;;AAGvD;;GAEG;AAMH,MAAM,OAAO,oBAAoB;IAS7B,iEAAiE;IACjE,YAAY,KAAsC,EACpB,OAAuB;QATrD,sEAAsE;QAEtE;;WAEG;QACO,sBAAiB,GAAiB,IAAI,YAAY,EAAE,CAAC;QAM3D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;YAElD,IAAG,CAAC,KAAK,CAAC,KAAK,EACf;gBACI,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC;aAClD;QACL,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,kGAAkG;IAElG;;OAEG;IACI,WAAW;QAEd,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;;iHA9BQ,oBAAoB,0DAWT,QAAQ;qGAXnB,oBAAoB;2FAApB,oBAAoB;kBALhC,SAAS;mBACV;oBACI,QAAQ,EAAE,uBAAuB;oBACjC,UAAU,EAAE,IAAI;iBACnB;;0BAYgB,MAAM;2BAAC,QAAQ","sourcesContent":["import {Directive, Inject, OnDestroy} from '@angular/core';\nimport {Subscription} from 'rxjs';\n\nimport {DATE_API} from '../../misc/tokens';\nimport {DateTimeInputSADirective} from '../../modules';\nimport {DateApi} from '../../services';\n\n/**\n * Directive that sets today (start of a day) as day for empty date time on focus\n */\n@Directive(\n{\n selector: '[dateTime][withToday]',\n standalone: true,\n})\nexport class WithTodaySADirective<TDate = unknown> implements OnDestroy\n{\n //######################### protected fields #########################\n\n /**\n * Subscriptions created during initialization\n */\n protected initSubscriptions: Subscription = new Subscription();\n\n //######################### constructor #########################\n constructor(input: DateTimeInputSADirective<TDate>,\n @Inject(DATE_API) dateApi: DateApi<TDate>,)\n {\n this.initSubscriptions.add(input.focus.subscribe(() =>\n {\n if(!input.value)\n {\n input.value = dateApi.now().startOfDay().value;\n }\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.initSubscriptions.unsubscribe();\n }\n}"]}
@@ -1,164 +0,0 @@
1
- import { isBlank, isJsObject, isPresent, isString, nameof } from '@jscrpt/common';
2
- import { DateTimeValueFormat } from './enums';
3
- /**
4
- * Parses date time input output value
5
- * @param value - Value to be parsed
6
- * @param dateApi - Date api used for obtaining result
7
- * @param dateTimeFormat - Date time format type, optional, if not specified autodetection of format will be used
8
- * @param stringFormat - String format for parsing string dates, required only for string dates
9
- */
10
- export function parseDateTime(value, dateApi, dateTimeFormat, stringFormat) {
11
- if (isBlank(value)) {
12
- return value;
13
- }
14
- //format is specified
15
- if (isPresent(dateTimeFormat)) {
16
- //string format required, but format string was not provided
17
- if (dateTimeFormat == DateTimeValueFormat.FormattedString && isBlank(stringFormat)) {
18
- throw new Error('DateTime: unable to parse string date, because format is missing!');
19
- }
20
- //value is range
21
- if (isDateTimeValue(value)) {
22
- //requirested format is different
23
- if (dateTimeFormat != DateTimeValueFormat.RangeOfDateInstances) {
24
- throw new Error('DateTime: requested datetime format is not range, but value is range!');
25
- }
26
- return [
27
- isBlank(value.from) ? null : parseDateTime(value.from, dateApi, DateTimeValueFormat.DateInstance, null),
28
- isBlank(value.to) ? null : parseDateTime(value.to, dateApi, DateTimeValueFormat.DateInstance, null),
29
- ];
30
- }
31
- //value should be date instance, or number, or string, but it is not
32
- if (dateTimeFormat != DateTimeValueFormat.DateInstance &&
33
- dateTimeFormat != DateTimeValueFormat.FormattedString &&
34
- dateTimeFormat != DateTimeValueFormat.UnixTimestamp) {
35
- throw new Error('DateTime: unable to get date time value, should be date instance, or string, or number!');
36
- }
37
- //value is string, instance of date or unix timestamp
38
- return dateApi.getValue(value, stringFormat !== null && stringFormat !== void 0 ? stringFormat : undefined);
39
- }
40
- //value is range
41
- if (isDateTimeValue(value)) {
42
- return [
43
- isBlank(value.from) ? null : parseDateTime(value.from, dateApi, DateTimeValueFormat.DateInstance, null),
44
- isBlank(value.to) ? null : parseDateTime(value.to, dateApi, DateTimeValueFormat.DateInstance, null),
45
- ];
46
- }
47
- //string format, but format string was not provided
48
- if (isString(value) && isBlank(stringFormat)) {
49
- throw new Error('DateTime: unable to parse string date, because format is missing!');
50
- }
51
- //value is string, instance of date or unix timestamp
52
- return dateApi.getValue(value, stringFormat !== null && stringFormat !== void 0 ? stringFormat : undefined);
53
- }
54
- /**
55
- * Formats value into specified format of date time
56
- * @param value - Value that should be converted to input output date time value
57
- * @param dateTimeFormat - Date time format type
58
- * @param stringFormat - String format for parsing string dates, required only for string dates
59
- */
60
- export function formatDateTime(value, dateTimeFormat, stringFormat) {
61
- var _a, _b, _c, _d;
62
- if (isBlank(value)) {
63
- return value;
64
- }
65
- //value is range
66
- if (Array.isArray(value)) {
67
- //range is expected
68
- if (dateTimeFormat != DateTimeValueFormat.RangeOfDateInstances) {
69
- throw new Error('DateTime: value is array of values, but format is not range!');
70
- }
71
- return {
72
- from: (_b = (_a = value[0]) === null || _a === void 0 ? void 0 : _a.value) !== null && _b !== void 0 ? _b : null,
73
- to: (_d = (_c = value[1]) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : null,
74
- };
75
- }
76
- //range is not expected
77
- if (dateTimeFormat == DateTimeValueFormat.RangeOfDateInstances) {
78
- throw new Error('DateTime: value is not array of values, but format is range!');
79
- }
80
- //string date time
81
- if (dateTimeFormat == DateTimeValueFormat.FormattedString) {
82
- //string format is missing for string date time
83
- if (isBlank(stringFormat)) {
84
- throw new Error('DateTime: missing string format for string date time!');
85
- }
86
- return value.format(stringFormat);
87
- }
88
- if (dateTimeFormat == DateTimeValueFormat.UnixTimestamp) {
89
- value.unixTimestamp();
90
- }
91
- return value.value;
92
- }
93
- /**
94
- * Tests whether value is `DateTimeValue`
95
- * @param value - Value that is tested
96
- */
97
- export function isDateTimeValue(value) {
98
- return isJsObject(value) &&
99
- nameof('from') in value &&
100
- nameof('to') in value;
101
- }
102
- /**
103
- * Gets single date time value, use in places where ranged date time can not be used
104
- * @param value - Value to be examined
105
- */
106
- export function getSingleDateTimeValue(value) {
107
- if (isDateTimeValue(value)) {
108
- throw new Error('DateTime: Unable to apply ranged date time input as value restriction!');
109
- }
110
- return value;
111
- }
112
- /**
113
- * Parses raw value into internal value and value
114
- * @param rawValue - Raw value to be parsed
115
- * @param dateApi - Date api for manipulation with date
116
- * @param dateTimeData - Object storing information about format
117
- * @param valueProvider - Provider used for obtaining rounded value according format
118
- */
119
- export function parseRawInput(rawValue, dateApi, dateTimeData, valueProvider) {
120
- if (!rawValue) {
121
- return [null, null];
122
- }
123
- const internalValue = getInternalValue(rawValue, dateApi, dateTimeData, valueProvider);
124
- const value = formatDateTime(internalValue, dateTimeData.valueFormat, dateTimeData.customFormat);
125
- return [internalValue, value];
126
- }
127
- /**
128
- * Gets internal value and fix lowest time difference
129
- * @param value - Value to be get as internal value
130
- * @param dateApi - Date api for manipulation with date
131
- * @param dateTimeData - Object storing information about format
132
- * @param valueProvider - Provider used for obtaining rounded value according format
133
- */
134
- export function getInternalValue(value, dateApi, dateTimeData, valueProvider) {
135
- let internalValue = parseDateTime(value, dateApi, null, dateTimeData.customFormat);
136
- if (isBlank(internalValue)) {
137
- return;
138
- }
139
- //update for specified format, round value
140
- //ranged value
141
- if (Array.isArray(internalValue)) {
142
- const [from, to] = internalValue;
143
- if (from) {
144
- const val = valueProvider.getValue(from.value, dateTimeData.customFormat).from;
145
- if (val) {
146
- internalValue[0] = dateApi.getValue(val, dateTimeData.customFormat);
147
- }
148
- }
149
- if (to) {
150
- const val = valueProvider.getValue(to.value, dateTimeData.customFormat).to;
151
- if (val) {
152
- internalValue[1] = dateApi.getValue(val, dateTimeData.customFormat);
153
- }
154
- }
155
- }
156
- else {
157
- const val = valueProvider.getValue(internalValue.value, dateTimeData.customFormat).from;
158
- if (val) {
159
- internalValue = dateApi.getValue(val, dateTimeData.customFormat);
160
- }
161
- }
162
- return internalValue;
163
- }
164
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/misc/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {isBlank, isJsObject, isPresent, isString, nameof} from '@jscrpt/common';\n\nimport {DateTimeValue} from '../interfaces';\nimport type {DateTimeSADirective} from '../modules/dateTime/directives/dateTime/dateTime.directive';\nimport {DateApi, DateApiObject, DateValue, DateValueProvider} from '../services';\nimport {DateTimeValueFormat} from './enums';\nimport {DateTimeInputOutputValue, DateTimeObjectValue} from './types';\n\n/**\n * Parses date time input output value\n * @param value - Value to be parsed\n * @param dateApi - Date api used for obtaining result\n * @param dateTimeFormat - Date time format type, optional, if not specified autodetection of format will be used\n * @param stringFormat - String format for parsing string dates, required only for string dates\n */\nexport function parseDateTime<TDate = unknown>(value: DateTimeInputOutputValue<TDate>|undefined|null,\n dateApi: DateApi<TDate>,\n dateTimeFormat: DateTimeValueFormat|undefined|null,\n stringFormat: string|undefined|null,): DateTimeObjectValue<TDate>|undefined|null\n{\n if(isBlank(value))\n {\n return value;\n }\n\n //format is specified\n if(isPresent(dateTimeFormat))\n {\n //string format required, but format string was not provided\n if(dateTimeFormat == DateTimeValueFormat.FormattedString && isBlank(stringFormat))\n {\n throw new Error('DateTime: unable to parse string date, because format is missing!');\n }\n\n //value is range\n if(isDateTimeValue(value))\n {\n //requirested format is different\n if(dateTimeFormat != DateTimeValueFormat.RangeOfDateInstances)\n {\n throw new Error('DateTime: requested datetime format is not range, but value is range!');\n }\n\n return [\n isBlank(value.from) ? null : parseDateTime(value.from, dateApi, DateTimeValueFormat.DateInstance, null) as DateApiObject<TDate>,\n isBlank(value.to) ? null : parseDateTime(value.to, dateApi, DateTimeValueFormat.DateInstance, null) as DateApiObject<TDate>,\n ];\n }\n\n //value should be date instance, or number, or string, but it is not\n if(dateTimeFormat != DateTimeValueFormat.DateInstance &&\n dateTimeFormat != DateTimeValueFormat.FormattedString &&\n dateTimeFormat != DateTimeValueFormat.UnixTimestamp)\n {\n throw new Error('DateTime: unable to get date time value, should be date instance, or string, or number!');\n }\n\n //value is string, instance of date or unix timestamp\n return dateApi.getValue(value, stringFormat ?? undefined);\n }\n\n //value is range\n if(isDateTimeValue(value))\n {\n return [\n isBlank(value.from) ? null : parseDateTime(value.from, dateApi, DateTimeValueFormat.DateInstance, null) as DateApiObject<TDate>,\n isBlank(value.to) ? null : parseDateTime(value.to, dateApi, DateTimeValueFormat.DateInstance , null) as DateApiObject<TDate>,\n ];\n }\n\n //string format, but format string was not provided\n if(isString(value) && isBlank(stringFormat))\n {\n throw new Error('DateTime: unable to parse string date, because format is missing!');\n }\n\n //value is string, instance of date or unix timestamp\n return dateApi.getValue(value, stringFormat ?? undefined);\n}\n\n/**\n * Formats value into specified format of date time\n * @param value - Value that should be converted to input output date time value\n * @param dateTimeFormat - Date time format type\n * @param stringFormat - String format for parsing string dates, required only for string dates\n */\nexport function formatDateTime<TDate = unknown>(value: DateTimeObjectValue<TDate>|undefined|null,\n dateTimeFormat: DateTimeValueFormat,\n stringFormat: string|undefined|null): DateTimeInputOutputValue<TDate>|undefined|null\n{\n if(isBlank(value))\n {\n return value;\n }\n\n //value is range\n if(Array.isArray(value))\n {\n //range is expected\n if(dateTimeFormat != DateTimeValueFormat.RangeOfDateInstances)\n {\n throw new Error('DateTime: value is array of values, but format is not range!');\n }\n\n return {\n from: value[0]?.value ?? null,\n to: value[1]?.value ?? null,\n };\n }\n\n //range is not expected\n if(dateTimeFormat == DateTimeValueFormat.RangeOfDateInstances)\n {\n throw new Error('DateTime: value is not array of values, but format is range!');\n }\n\n //string date time\n if(dateTimeFormat == DateTimeValueFormat.FormattedString)\n {\n //string format is missing for string date time\n if(isBlank(stringFormat))\n {\n throw new Error('DateTime: missing string format for string date time!');\n }\n\n return value.format(stringFormat);\n }\n\n if(dateTimeFormat == DateTimeValueFormat.UnixTimestamp)\n {\n value.unixTimestamp();\n }\n\n return value.value;\n}\n\n/**\n * Tests whether value is `DateTimeValue`\n * @param value - Value that is tested\n */\nexport function isDateTimeValue<TDate = unknown>(value: unknown): value is DateTimeValue<TDate>\n{\n return isJsObject(value) &&\n nameof<DateTimeValue>('from') in value &&\n nameof<DateTimeValue>('to') in value;\n}\n\n/**\n * Gets single date time value, use in places where ranged date time can not be used\n * @param value - Value to be examined\n */\nexport function getSingleDateTimeValue<TDate>(value: DateTimeInputOutputValue<TDate>|undefined|null): DateValue|TDate|null|undefined\n{\n if(isDateTimeValue(value))\n {\n throw new Error('DateTime: Unable to apply ranged date time input as value restriction!');\n }\n\n return value;\n}\n\n/**\n * Parses raw value into internal value and value\n * @param rawValue - Raw value to be parsed\n * @param dateApi - Date api for manipulation with date\n * @param dateTimeData - Object storing information about format\n * @param valueProvider - Provider used for obtaining rounded value according format\n */\nexport function parseRawInput<TDate>(rawValue: string, \n dateApi: DateApi<TDate>,\n dateTimeData: DateTimeSADirective<TDate>,\n valueProvider: DateValueProvider<TDate>,): [DateTimeObjectValue<TDate>|undefined|null, DateTimeInputOutputValue<TDate>|undefined|null]\n{\n if(!rawValue)\n {\n return [null, null];\n }\n\n const internalValue = getInternalValue(rawValue, dateApi, dateTimeData, valueProvider);\n const value = formatDateTime(internalValue, dateTimeData.valueFormat, dateTimeData.customFormat);\n\n return [internalValue, value];\n}\n\n/**\n * Gets internal value and fix lowest time difference\n * @param value - Value to be get as internal value\n * @param dateApi - Date api for manipulation with date\n * @param dateTimeData - Object storing information about format\n * @param valueProvider - Provider used for obtaining rounded value according format\n */\nexport function getInternalValue<TDate>(value: DateTimeInputOutputValue<TDate>|undefined|null,\n dateApi: DateApi<TDate>,\n dateTimeData: DateTimeSADirective<TDate>,\n valueProvider: DateValueProvider<TDate>,): DateTimeObjectValue<TDate>|undefined|null\n{\n let internalValue = parseDateTime(value, dateApi, null, dateTimeData.customFormat);\n\n if(isBlank(internalValue))\n {\n return;\n }\n\n //update for specified format, round value\n\n //ranged value\n if(Array.isArray(internalValue))\n {\n const [from, to] = internalValue;\n\n if(from)\n {\n const val = valueProvider.getValue(from.value, dateTimeData.customFormat).from;\n\n if(val)\n {\n internalValue[0] = dateApi.getValue(val, dateTimeData.customFormat);\n }\n }\n\n if(to)\n {\n const val = valueProvider.getValue(to.value, dateTimeData.customFormat).to;\n\n if(val)\n {\n internalValue[1] = dateApi.getValue(val, dateTimeData.customFormat);\n }\n }\n }\n else\n {\n const val = valueProvider.getValue(internalValue.value, dateTimeData.customFormat).from;\n\n if(val)\n {\n internalValue = dateApi.getValue(val, dateTimeData.customFormat);\n }\n }\n\n return internalValue;\n}"]}
@@ -1,142 +0,0 @@
1
- import { ModelPropertyMetadata, ValidatorFnFactory } from '@anglr/common/forms';
2
- import { isBlank, isNumber, isString } from '@jscrpt/common';
3
- import { getSingleDateTimeValue, parseDateTime } from './utils';
4
- import { DateTimeBase } from '../modules/dateTime/directives/dateTimeBase';
5
- import { DATE_API } from './tokens';
6
- /**
7
- * Date time validator factory function, creates validator for checking validity of datetime
8
- * @param dateApi - Date api used for parsing date time
9
- * @param valueFormat - Optional required format
10
- * @param stringFormat - Optional string format of value
11
- */
12
- export function datetimeValidator(dateApi, valueFormat, stringFormat) {
13
- return (control) => {
14
- if (isBlank(control.value)) {
15
- return null;
16
- }
17
- const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);
18
- if (!parsedValue) {
19
- return null;
20
- }
21
- if (!Array.isArray(parsedValue)) {
22
- if (!parsedValue.isValid()) {
23
- return {
24
- 'datetime': stringFormat
25
- };
26
- }
27
- }
28
- else {
29
- //TODO: support for ranges
30
- }
31
- return null;
32
- };
33
- }
34
- /**
35
- * Factory function that creates validator function factory
36
- * @param args - Static arguments for date time validator
37
- */
38
- export function dateTimeModelValidatorFactory(args) {
39
- return new ValidatorFnFactory(args => {
40
- var _a;
41
- const dateApi = (_a = args.injector) === null || _a === void 0 ? void 0 : _a.get(DATE_API, null);
42
- if (!dateApi) {
43
- throw new Error('DateTime: missing DateApi! Please provide one.');
44
- }
45
- return datetimeValidator(dateApi, args.valueFormat, args.stringFormat);
46
- }, args);
47
- }
48
- /**
49
- * Sets date time validator to property on which is used
50
- */
51
- export function DateTime(valueFormatOrStringFormat, stringFormat) {
52
- let valueFormat;
53
- if (isNumber(valueFormatOrStringFormat)) {
54
- valueFormat = valueFormatOrStringFormat;
55
- }
56
- if (isString(valueFormatOrStringFormat)) {
57
- stringFormat = valueFormatOrStringFormat;
58
- }
59
- return ModelPropertyMetadata({
60
- validators: [dateTimeModelValidatorFactory({
61
- stringFormat,
62
- valueFormat,
63
- })]
64
- });
65
- }
66
- /**
67
- * Date time validator factory function, creates validator for checking validity of datetime max value
68
- * @param dateApi - Date api used for parsing date time
69
- * @param maxValue - Maximal date time value that should be used for validation against
70
- * @param valueFormat - Optional required format
71
- * @param stringFormat - Optional string format of value
72
- */
73
- export function datetimeMaxValidator(dateApi, maxValue, valueFormat, stringFormat) {
74
- return (control) => {
75
- if (isBlank(control.value) || isBlank(maxValue)) {
76
- return null;
77
- }
78
- if (maxValue instanceof (DateTimeBase)) {
79
- const value = getSingleDateTimeValue(maxValue.value);
80
- //no validation
81
- if (isBlank(value)) {
82
- return null;
83
- }
84
- maxValue = value;
85
- }
86
- const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);
87
- if (!parsedValue) {
88
- return null;
89
- }
90
- const maxDateTime = dateApi.getValue(maxValue, stringFormat !== null && stringFormat !== void 0 ? stringFormat : undefined);
91
- if (!Array.isArray(parsedValue)) {
92
- if (parsedValue.isValid() && !parsedValue.isBefore(maxDateTime.value)) {
93
- return {
94
- 'datetimemax': maxDateTime.value
95
- };
96
- }
97
- }
98
- else {
99
- //TODO: support for ranges
100
- }
101
- return null;
102
- };
103
- }
104
- /**
105
- * Date time validator factory function, creates validator for checking validity of datetime min value
106
- * @param dateApi - Date api used for parsing date time
107
- * @param minValue - Minimal date time value that should be used for validation against
108
- * @param valueFormat - Optional required format
109
- * @param stringFormat - Optional string format of value
110
- */
111
- export function datetimeMinValidator(dateApi, minValue, valueFormat, stringFormat) {
112
- return (control) => {
113
- if (isBlank(control.value) || isBlank(minValue)) {
114
- return null;
115
- }
116
- if (minValue instanceof (DateTimeBase)) {
117
- const value = getSingleDateTimeValue(minValue.value);
118
- //no validation
119
- if (isBlank(value)) {
120
- return null;
121
- }
122
- minValue = value;
123
- }
124
- const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);
125
- if (!parsedValue) {
126
- return null;
127
- }
128
- const minDateTime = dateApi.getValue(minValue, stringFormat !== null && stringFormat !== void 0 ? stringFormat : undefined);
129
- if (!Array.isArray(parsedValue)) {
130
- if (parsedValue.isValid() && !parsedValue.isAfter(minDateTime.value)) {
131
- return {
132
- 'datetimemin': minDateTime.value
133
- };
134
- }
135
- }
136
- else {
137
- //TODO: support for ranges
138
- }
139
- return null;
140
- };
141
- }
142
- //# sourceMappingURL=validators.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../src/misc/validators.ts"],"names":[],"mappings":"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","sourcesContent":["import {AbstractControl, ValidationErrors, ValidatorFn} from '@angular/forms';\nimport {ModelPropertyMetadata, ValidatorFnFactory} from '@anglr/common/forms';\nimport {isBlank, isNumber, isString} from '@jscrpt/common';\n\nimport {DateApi, DateValue} from '../services';\nimport {getSingleDateTimeValue, parseDateTime} from './utils';\nimport {DateTimeValueFormat} from './enums';\nimport {DateTimeInputOutputValue} from './types';\nimport {DateTimeBase} from '../modules/dateTime/directives/dateTimeBase';\nimport {DATE_API} from './tokens';\n\n//TODO: add decorators for min and max date time\n\n/**\n * Validations arguments for date time validators for model based forms\n */\nexport interface DateTimeValidationArgs<TDate = unknown>\n{\n /**\n * Format of validated value\n */\n valueFormat?: DateTimeValueFormat|null;\n\n /**\n * Format of string value\n */\n stringFormat?: string|null;\n\n /**\n * Max allowed value\n */\n maxValue?: DateValue|TDate|DateTimeBase<TDate>;\n\n /**\n * Min allowed value\n */\n minValue?: DateValue|TDate|DateTimeBase<TDate>;\n}\n\n/**\n * Date time validator factory function, creates validator for checking validity of datetime\n * @param dateApi - Date api used for parsing date time\n * @param valueFormat - Optional required format\n * @param stringFormat - Optional string format of value\n */\nexport function datetimeValidator<TDate = unknown>(dateApi: DateApi<TDate>,\n valueFormat: DateTimeValueFormat|undefined|null,\n stringFormat: string|undefined|null,): ValidatorFn\n{\n return (control: AbstractControl<DateTimeInputOutputValue<TDate>>): ValidationErrors|null =>\n {\n if(isBlank(control.value))\n {\n return null;\n }\n\n const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);\n\n if(!parsedValue)\n {\n return null;\n }\n\n if(!Array.isArray(parsedValue))\n {\n if(!parsedValue.isValid())\n {\n return {\n 'datetime': stringFormat\n };\n }\n }\n else\n {\n //TODO: support for ranges\n }\n\n return null;\n };\n}\n\n/**\n * Factory function that creates validator function factory\n * @param args - Static arguments for date time validator\n */\nexport function dateTimeModelValidatorFactory<TDate = unknown>(args: DateTimeValidationArgs<TDate>): ValidatorFnFactory<DateTimeValidationArgs<TDate>>\n{\n return new ValidatorFnFactory<DateTimeValidationArgs<TDate>>(args =>\n {\n const dateApi = args.injector?.get(DATE_API, null);\n\n if(!dateApi)\n {\n throw new Error('DateTime: missing DateApi! Please provide one.');\n }\n\n return datetimeValidator(dateApi, args.valueFormat, args.stringFormat);\n }, args);\n}\n\n/**\n * Sets date time validator, with default formats\n */\nexport function DateTime(): PropertyDecorator\n/**\n * Sets date time validator, with default string format\n * @param valueFormat - Format of validated value\n */\nexport function DateTime(valueFormat: DateTimeValueFormat): PropertyDecorator\n/**\n * Sets date time validator, with default value format\n * @param stringFormat - Format of string value\n */\nexport function DateTime(stringFormat: string|null): PropertyDecorator\n/**\n * Sets date time validator\n * @param valueFormat - Format of validated value\n * @param stringFormat - Format of string value\n */\nexport function DateTime(valueFormat: DateTimeValueFormat, stringFormat: string): PropertyDecorator\n/**\n * Sets date time validator to property on which is used\n */\nexport function DateTime(valueFormatOrStringFormat?: DateTimeValueFormat|string|null, stringFormat?: string|undefined|null): PropertyDecorator\n{\n let valueFormat: DateTimeValueFormat|undefined|null;\n\n if(isNumber(valueFormatOrStringFormat))\n {\n valueFormat = valueFormatOrStringFormat;\n }\n\n if(isString(valueFormatOrStringFormat))\n {\n stringFormat = valueFormatOrStringFormat;\n }\n\n return ModelPropertyMetadata(\n {\n validators: [dateTimeModelValidatorFactory(\n {\n stringFormat,\n valueFormat,\n })]\n });\n}\n\n/**\n * Date time validator factory function, creates validator for checking validity of datetime max value\n * @param dateApi - Date api used for parsing date time\n * @param maxValue - Maximal date time value that should be used for validation against\n * @param valueFormat - Optional required format\n * @param stringFormat - Optional string format of value\n */\nexport function datetimeMaxValidator<TDate = unknown>(dateApi: DateApi<TDate>,\n maxValue: DateValue|TDate|DateTimeBase<TDate>|undefined|null,\n valueFormat: DateTimeValueFormat|undefined|null,\n stringFormat: string|undefined|null,): ValidatorFn\n{\n return (control: AbstractControl<DateTimeInputOutputValue<TDate>>): ValidationErrors|null =>\n {\n if(isBlank(control.value) || isBlank(maxValue))\n {\n return null;\n }\n\n if(maxValue instanceof DateTimeBase<TDate>)\n {\n const value = getSingleDateTimeValue(maxValue.value);\n\n //no validation\n if(isBlank(value))\n {\n return null;\n }\n\n maxValue = value;\n }\n\n const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);\n\n if(!parsedValue)\n {\n return null;\n }\n\n const maxDateTime = dateApi.getValue(maxValue, stringFormat ?? undefined);\n\n if(!Array.isArray(parsedValue))\n {\n if(parsedValue.isValid() && !parsedValue.isBefore(maxDateTime.value))\n {\n return {\n 'datetimemax': maxDateTime.value\n };\n }\n }\n else\n {\n //TODO: support for ranges\n }\n\n return null;\n };\n}\n\n/**\n * Date time validator factory function, creates validator for checking validity of datetime min value\n * @param dateApi - Date api used for parsing date time\n * @param minValue - Minimal date time value that should be used for validation against\n * @param valueFormat - Optional required format\n * @param stringFormat - Optional string format of value\n */\nexport function datetimeMinValidator<TDate = unknown>(dateApi: DateApi<TDate>,\n minValue: DateValue|TDate|DateTimeBase<TDate>|undefined|null,\n valueFormat: DateTimeValueFormat|undefined|null,\n stringFormat: string|undefined|null,): ValidatorFn\n{\n return (control: AbstractControl<DateTimeInputOutputValue<TDate>>): ValidationErrors|null =>\n {\n if(isBlank(control.value) || isBlank(minValue))\n {\n return null;\n }\n\n if(minValue instanceof DateTimeBase<TDate>)\n {\n const value = getSingleDateTimeValue(minValue.value);\n\n //no validation\n if(isBlank(value))\n {\n return null;\n }\n\n minValue = value;\n }\n\n const parsedValue = parseDateTime(control.value, dateApi, valueFormat, stringFormat);\n\n if(!parsedValue)\n {\n return null;\n }\n\n const minDateTime = dateApi.getValue(minValue, stringFormat ?? undefined);\n\n if(!Array.isArray(parsedValue))\n {\n if(parsedValue.isValid() && !parsedValue.isAfter(minDateTime.value))\n {\n return {\n 'datetimemin': minDateTime.value\n };\n }\n }\n else\n {\n //TODO: support for ranges\n }\n\n return null;\n };\n}\n"]}
@@ -1,198 +0,0 @@
1
- import { Component, ChangeDetectionStrategy, Input, Inject, ViewChild, TemplateRef, ContentChild } from '@angular/core';
2
- import { isString, nameof } from '@jscrpt/common';
3
- import { CalendarDayTemplateDirective } from '../../directives';
4
- import { MonthCalendarDayFormat, CalendarDayAspectRatio } from '../../misc';
5
- import { EventParser } from '../../services';
6
- import { DATE_API, FORMAT_PROVIDER } from '../../../../misc/tokens';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../../services";
9
- import * as i2 from "@angular/common";
10
- import * as i3 from "../../directives/calendarDayTemplate/calendarDayTemplate.directive";
11
- /**
12
- * Component used for displaying month calendar
13
- */
14
- export class MonthCalendarComponent {
15
- //######################### constructor #########################
16
- constructor(dateApi, formatProvider, eventParser) {
17
- this.dateApi = dateApi;
18
- this.formatProvider = formatProvider;
19
- this.eventParser = eventParser;
20
- //######################### protected properties - template bindings #########################
21
- /**
22
- * Aspect ratio for displayed calendar day cell
23
- */
24
- this.dayAspectRatioValue = CalendarDayAspectRatio.ThreeToTwo;
25
- /**
26
- * Data that represents calendar data
27
- */
28
- this.calendarData = {};
29
- /**
30
- * Array of weekday names
31
- */
32
- this.weekDayNames = [];
33
- //######################### public properties - inputs #########################
34
- /**
35
- * Indication that week number should be displayed
36
- */
37
- this.showWeekNumber = false;
38
- /**
39
- * Format for displaying week day names
40
- */
41
- this.weekDayName = MonthCalendarDayFormat.Short;
42
- /**
43
- * Array of events that should be displayed
44
- */
45
- this.events = [];
46
- }
47
- /**
48
- * Calendar day template to be used
49
- */
50
- get calendarDayTemplate() {
51
- var _a;
52
- return (_a = this.customCalendarDayTemplate) !== null && _a !== void 0 ? _a : this.defaultCalendarDayTemplate;
53
- }
54
- /**
55
- * Aspect ratio for displayed calendar day cell
56
- */
57
- get dayAspectRatio() {
58
- return this.dayAspectRatioValue;
59
- }
60
- set dayAspectRatio(value) {
61
- if (isString(value)) {
62
- this.dayAspectRatioValue = CalendarDayAspectRatio[value];
63
- return;
64
- }
65
- this.dayAspectRatioValue = value;
66
- }
67
- //######################### public methods - implementation of OnInit #########################
68
- /**
69
- * Initialize component
70
- */
71
- ngOnInit() {
72
- this.initWeekdayNames();
73
- this.initializeDisplayCalendar();
74
- }
75
- //######################### public methods - implementation of OnChanges #########################
76
- /**
77
- * Called when input value changes
78
- */
79
- ngOnChanges(changes) {
80
- if (nameof('weekDayName') in changes) {
81
- this.initWeekdayNames();
82
- }
83
- if (nameof('display') in changes) {
84
- this.initializeDisplayCalendar();
85
- }
86
- if (nameof('events') in changes && !(nameof('display') in changes)) {
87
- this.initAndAttachEventData();
88
- }
89
- }
90
- //######################### protected methods #########################
91
- /**
92
- * Initialize weekday names
93
- */
94
- initWeekdayNames() {
95
- this.weekDayNames = [];
96
- const dateApi = this.dateApi.now().startOfWeek();
97
- switch (this.weekDayName) {
98
- default:
99
- // case MonthCalendarDayFormat.None:
100
- {
101
- for (let x = 0; x < 7; x++) {
102
- this.weekDayNames.push('');
103
- }
104
- break;
105
- }
106
- case MonthCalendarDayFormat.Short:
107
- {
108
- for (let x = 0; x < 7; x++) {
109
- this.weekDayNames.push(dateApi.format(this.formatProvider.dayNameShort));
110
- dateApi.addDays(1);
111
- }
112
- break;
113
- }
114
- case MonthCalendarDayFormat.Full:
115
- {
116
- for (let x = 0; x < 7; x++) {
117
- this.weekDayNames.push(dateApi.format(this.formatProvider.dayName));
118
- dateApi.addDays(1);
119
- }
120
- break;
121
- }
122
- }
123
- }
124
- /**
125
- * Initialize date for calendar that should be displayed
126
- */
127
- initializeDisplayCalendar() {
128
- var _a;
129
- (_a = this.display) !== null && _a !== void 0 ? _a : (this.display = this.dateApi.now().value);
130
- const workDate = this.dateApi.getValue(this.display);
131
- workDate.startOfMonth()
132
- .startOfWeek();
133
- this.calendarData = {};
134
- do {
135
- const weekData = this.calendarData[workDate.format(this.formatProvider.week)] = [];
136
- for (let x = 0; x < 7; x++) {
137
- weekData.push({
138
- date: workDate.value,
139
- day: workDate.dayOfMonth(),
140
- events: [],
141
- isCurrentMonth: workDate.isSameMonth(this.display),
142
- isWeekend: workDate.isWeekend(),
143
- week: +workDate.format(this.formatProvider.week),
144
- });
145
- workDate.addDays(1);
146
- }
147
- workDate.startOfWeek();
148
- } while (workDate.isSameMonth(this.display));
149
- this.initAndAttachEventData();
150
- }
151
- /**
152
- * Initialize and attaches event data
153
- */
154
- initAndAttachEventData() {
155
- var _a;
156
- const events = this.eventParser.getEventsPerDay(this.events);
157
- for (const week in this.calendarData) {
158
- const weekData = this.calendarData[week];
159
- for (const day of weekData) {
160
- const found = events.find(itm => this.dateApi.getValue(itm[0]).isSame(day.date));
161
- day.events = (_a = found === null || found === void 0 ? void 0 : found[1]) !== null && _a !== void 0 ? _a : [];
162
- }
163
- }
164
- }
165
- }
166
- MonthCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MonthCalendarComponent, deps: [{ token: DATE_API }, { token: FORMAT_PROVIDER }, { token: i1.EventParser }], target: i0.ɵɵFactoryTarget.Component });
167
- MonthCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.4", type: MonthCalendarComponent, selector: "month-calendar", inputs: { showWeekNumber: "showWeekNumber", display: "display", weekDayName: "weekDayName", dayAspectRatio: "dayAspectRatio", events: "events" }, providers: [
168
- EventParser,
169
- ], queries: [{ propertyName: "customCalendarDayTemplate", first: true, predicate: CalendarDayTemplateDirective, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "defaultCalendarDayTemplate", first: true, predicate: CalendarDayTemplateDirective, descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<div *calendarDayTemplate=\"let data\" class=\"default-calendar-day\" [class.is-weekend]=\"data.isWeekend\" [class.is-other-month]=\"!data.isCurrentMonth\">{{data.day}}</div>\n\n<div></div>\n\n<div *ngFor=\"let dayName of weekDayNames\" [class.week-day-name]=\"dayName\">{{dayName}}</div>\n\n<ng-container *ngFor=\"let weekData of calendarData | keyvalue\">\n <div class=\"week-number\">\n <ng-container *ngIf=\"showWeekNumber\">{{weekData.key}}</ng-container>\n </div>\n \n <div *ngFor=\"let dayData of weekData.value\" [style.padding-bottom.%]=\"dayAspectRatioValue\" class=\"day-wrapper\">\n <div class=\"day-content\"><ng-container *ngTemplateOutlet=\"calendarDayTemplate; context: {$implicit: dayData}\"></ng-container></div>\n </div>\n</ng-container>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CalendarDayTemplateDirective, selector: "[calendarDayTemplate]" }, { kind: "pipe", type: i2.KeyValuePipe, name: "keyvalue" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
170
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: MonthCalendarComponent, decorators: [{
171
- type: Component,
172
- args: [{ selector: 'month-calendar', providers: [
173
- EventParser,
174
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *calendarDayTemplate=\"let data\" class=\"default-calendar-day\" [class.is-weekend]=\"data.isWeekend\" [class.is-other-month]=\"!data.isCurrentMonth\">{{data.day}}</div>\n\n<div></div>\n\n<div *ngFor=\"let dayName of weekDayNames\" [class.week-day-name]=\"dayName\">{{dayName}}</div>\n\n<ng-container *ngFor=\"let weekData of calendarData | keyvalue\">\n <div class=\"week-number\">\n <ng-container *ngIf=\"showWeekNumber\">{{weekData.key}}</ng-container>\n </div>\n \n <div *ngFor=\"let dayData of weekData.value\" [style.padding-bottom.%]=\"dayAspectRatioValue\" class=\"day-wrapper\">\n <div class=\"day-content\"><ng-container *ngTemplateOutlet=\"calendarDayTemplate; context: {$implicit: dayData}\"></ng-container></div>\n </div>\n</ng-container>\n" }]
175
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
176
- type: Inject,
177
- args: [DATE_API]
178
- }] }, { type: undefined, decorators: [{
179
- type: Inject,
180
- args: [FORMAT_PROVIDER]
181
- }] }, { type: i1.EventParser }]; }, propDecorators: { defaultCalendarDayTemplate: [{
182
- type: ViewChild,
183
- args: [CalendarDayTemplateDirective, { static: true, read: TemplateRef }]
184
- }], customCalendarDayTemplate: [{
185
- type: ContentChild,
186
- args: [CalendarDayTemplateDirective, { static: true, read: TemplateRef }]
187
- }], showWeekNumber: [{
188
- type: Input
189
- }], display: [{
190
- type: Input
191
- }], weekDayName: [{
192
- type: Input
193
- }], dayAspectRatio: [{
194
- type: Input
195
- }], events: [{
196
- type: Input
197
- }] } });
198
- //# sourceMappingURL=monthCalendar.component.js.map