@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,590 +0,0 @@
1
- import { Inject, Injectable } from '@angular/core';
2
- import { DateTimeRelativeParser, DATE_API_OBJECT_TYPE } from '@anglr/datetime';
3
- import { isBlank, isPresent, isString } from '@jscrpt/common';
4
- import { toDate, getDate, setDate, isAfter, isBefore, isEqual, differenceInCalendarDays, format, formatISO, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate, getUnixTime } from 'date-fns';
5
- import { DATE_FNS_LOCALE } from '../misc/tokens';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@anglr/datetime";
8
- /**
9
- * Instance of object wrapping TDate, allowing manipulation with it
10
- */
11
- export class DateFnsDateApiObject {
12
- //######################### constructor #########################
13
- constructor(value, format, _localeSvc) {
14
- this._localeSvc = _localeSvc;
15
- if (isString(value)) {
16
- //ISO string
17
- if (/^\d+-\d+-\d+(T\d+:\d+:\d+)?/.test(value)) {
18
- this._value = this._originalValue = parseISO(value);
19
- }
20
- else {
21
- if (isBlank(format)) {
22
- throw new Error('date-fns requires format parameter to be set for parsing non ISO string date!');
23
- }
24
- this._value = this._originalValue = parse(value, format, new Date(1970, 0));
25
- }
26
- }
27
- else {
28
- this._value = this._originalValue = toDate(value);
29
- }
30
- }
31
- //######################### public properties - implementation of DateApiObject #########################
32
- /**
33
- * Original value that is not changed unless 'updateOriginal' is called
34
- */
35
- get originalValue() {
36
- return this._originalValue;
37
- }
38
- /**
39
- * Instance of date
40
- */
41
- get value() {
42
- return this._value;
43
- }
44
- //######################### public methods - implementation of DateApiObject #########################
45
- /**
46
- * Gets indication whether provided instance of date is valid
47
- */
48
- isValid() {
49
- return isValid(this._value);
50
- }
51
- /**
52
- * Gets indication whether provided instance of date is weekend day
53
- */
54
- isWeekend() {
55
- return isWeekend(this._value);
56
- }
57
- /**
58
- * Formats date value
59
- * @param formatString - Format token used for creating formatted string
60
- */
61
- format(formatString) {
62
- return format(this._value, formatString, { locale: this._localeSvc.locale });
63
- }
64
- /**
65
- * @inheritdoc
66
- */
67
- formatISO() {
68
- return formatISO(this._value);
69
- }
70
- /**
71
- * @inheritdoc
72
- */
73
- unixTimestamp() {
74
- return getUnixTime(this._value);
75
- }
76
- /**
77
- * Updates value to start date and time of current decade
78
- * @returns Itself for fluent API
79
- */
80
- startOfDecade() {
81
- this._value = startOfDecade(this._value);
82
- return this;
83
- }
84
- /**
85
- * Updates value to end date and time of current decade
86
- * @returns Itself for fluent API
87
- */
88
- endOfDecade() {
89
- this._value = endOfDecade(this._value);
90
- return this;
91
- }
92
- /**
93
- * Updates value to start date and time of current year
94
- * @returns Itself for fluent API
95
- */
96
- startOfYear() {
97
- this._value = startOfYear(this._value);
98
- return this;
99
- }
100
- /**
101
- * Updates value to end date and time of current year
102
- * @returns Itself for fluent API
103
- */
104
- endOfYear() {
105
- this._value = endOfYear(this._value);
106
- return this;
107
- }
108
- /**
109
- * Add years, if count not specified adds 1 year
110
- * @param count - Number of years count
111
- * @returns Itself for fluent API
112
- */
113
- addYears(count) {
114
- this._value = addYears(this._value, count !== null && count !== void 0 ? count : 1);
115
- return this;
116
- }
117
- /**
118
- * Subtract years, if count not specified subtract 1 year
119
- * @param count - Number of years count
120
- * @returns Itself for fluent API
121
- */
122
- subtractYears(count) {
123
- this._value = subYears(this._value, count !== null && count !== void 0 ? count : 1);
124
- return this;
125
- }
126
- /**
127
- * Updates value to start date and time of current month
128
- * @returns Itself for fluent API
129
- */
130
- startOfMonth() {
131
- this._value = startOfMonth(this._value);
132
- return this;
133
- }
134
- /**
135
- * Updates value to end date and time of current month
136
- * @returns Itself for fluent API
137
- */
138
- endOfMonth() {
139
- this._value = endOfMonth(this._value);
140
- return this;
141
- }
142
- /**
143
- * Add months, if count not specified adds 1 month
144
- * @param count - Number of months count
145
- * @returns Itself for fluent API
146
- */
147
- addMonths(count) {
148
- this._value = addMonths(this._value, count !== null && count !== void 0 ? count : 1);
149
- return this;
150
- }
151
- /**
152
- * Subtract months, if count not specified subtract 1 month
153
- * @param count - Number of months count
154
- * @returns Itself for fluent API
155
- */
156
- subtractMonths(count) {
157
- this._value = subMonths(this._value, count !== null && count !== void 0 ? count : 1);
158
- return this;
159
- }
160
- /**
161
- * Updates value to start date and time of current week
162
- * @returns Itself for fluent API
163
- */
164
- startOfWeek() {
165
- this._value = startOfWeek(this._value, { locale: this._localeSvc.locale });
166
- return this;
167
- }
168
- /**
169
- * Updates value to end date and time of current week
170
- * @returns Itself for fluent API
171
- */
172
- endOfWeek() {
173
- this._value = endOfWeek(this._value, { locale: this._localeSvc.locale });
174
- return this;
175
- }
176
- /**
177
- * Add weeks, if count not specified adds 1 week
178
- * @param count - Number of weeks count
179
- * @returns Itself for fluent API
180
- */
181
- addWeeks(count) {
182
- this._value = addWeeks(this._value, count !== null && count !== void 0 ? count : 1);
183
- return this;
184
- }
185
- /**
186
- * Subtract weeks, if count not specified subtract 1 week
187
- * @param count - Number of weeks count
188
- * @returns Itself for fluent API
189
- */
190
- subtractWeeks(count) {
191
- this._value = subWeeks(this._value, count !== null && count !== void 0 ? count : 1);
192
- return this;
193
- }
194
- /**
195
- * Updates value to start date and time of current day
196
- * @returns Itself for fluent API
197
- */
198
- startOfDay() {
199
- this._value = startOfDay(this._value);
200
- return this;
201
- }
202
- /**
203
- * Updates value to end date and time of current day
204
- * @returns Itself for fluent API
205
- */
206
- endOfDay() {
207
- this._value = endOfDay(this._value);
208
- return this;
209
- }
210
- /**
211
- * Add days, if count not specified adds 1 day
212
- * @param count - Number of days count
213
- * @returns Itself for fluent API
214
- */
215
- addDays(count) {
216
- this._value = addDays(this._value, count !== null && count !== void 0 ? count : 1);
217
- return this;
218
- }
219
- /**
220
- * Subtract days, if count not specified subtract 1 day
221
- * @param count - Number of days count
222
- * @returns Itself for fluent API
223
- */
224
- subtractDays(count) {
225
- this._value = subDays(this._value, count !== null && count !== void 0 ? count : 1);
226
- return this;
227
- }
228
- /**
229
- * Updates value to start date and time of current hour
230
- * @returns Itself for fluent API
231
- */
232
- startOfHour() {
233
- this._value = startOfHour(this._value);
234
- return this;
235
- }
236
- /**
237
- * Updates value to end date and time of current hour
238
- * @returns Itself for fluent API
239
- */
240
- endOfHour() {
241
- this._value = endOfHour(this._value);
242
- return this;
243
- }
244
- /**
245
- * Add hours, if count not specified adds 1 hour
246
- * @param count - Number of hours count
247
- * @returns Itself for fluent API
248
- */
249
- addHours(count) {
250
- this._value = addHours(this._value, count !== null && count !== void 0 ? count : 1);
251
- return this;
252
- }
253
- /**
254
- * Subtract hours, if count not specified subtract 1 hour
255
- * @param count - Number of hours count
256
- * @returns Itself for fluent API
257
- */
258
- subtractHours(count) {
259
- this._value = subHours(this._value, count !== null && count !== void 0 ? count : 1);
260
- return this;
261
- }
262
- /**
263
- * Updates value to start date and time of current minute
264
- * @returns Itself for fluent API
265
- */
266
- startOfMinute() {
267
- this._value = startOfMinute(this._value);
268
- return this;
269
- }
270
- /**
271
- * Updates value to end date and time of current minute
272
- * @returns Itself for fluent API
273
- */
274
- endOfMinute() {
275
- this._value = endOfMinute(this._value);
276
- return this;
277
- }
278
- /**
279
- * Add minutes, if count not specified adds 1 minute
280
- * @param count - Number of minutes count
281
- * @returns Itself for fluent API
282
- */
283
- addMinutes(count) {
284
- this._value = addMinutes(this._value, count !== null && count !== void 0 ? count : 1);
285
- return this;
286
- }
287
- /**
288
- * Subtract minutes, if count not specified subtract 1 minute
289
- * @param count - Number of minutes count
290
- * @returns Itself for fluent API
291
- */
292
- subtractMinutes(count) {
293
- this._value = subMinutes(this._value, count !== null && count !== void 0 ? count : 1);
294
- return this;
295
- }
296
- /**
297
- * Gets number of days in month
298
- */
299
- daysInMonth() {
300
- return getDaysInMonth(this._value);
301
- }
302
- /**
303
- * Gets or sets year
304
- * @param year - If specified, sets year
305
- */
306
- year(year) {
307
- if (isPresent(year)) {
308
- this._value = setYear(this._value, year);
309
- return this;
310
- }
311
- return getYear(this._value);
312
- }
313
- /**
314
- * Gets or sets month
315
- * @param month - If specified, sets month
316
- */
317
- month(month) {
318
- if (isPresent(month)) {
319
- this._value = setMonth(this._value, month);
320
- return this;
321
- }
322
- return getMonth(this._value);
323
- }
324
- /**
325
- * Gets or sets day of month one based
326
- * @param day - If specified, sets day of month
327
- */
328
- dayOfMonth(day) {
329
- if (isPresent(day)) {
330
- this._value = setDate(this._value, day);
331
- return this;
332
- }
333
- return getDate(this._value);
334
- }
335
- /**
336
- * Gets or sets day of week zero based, first is monday
337
- * @param day - If specified, sets day of week
338
- */
339
- dayOfWeek(day) {
340
- if (isPresent(day)) {
341
- this._value = setISODay(this._value, day + 1);
342
- return this;
343
- }
344
- return getISODay(this._value) - 1;
345
- }
346
- /**
347
- * Gets or sets hours zero based
348
- * @param hour - If specified, sets hour
349
- */
350
- hour(hour) {
351
- if (isPresent(hour)) {
352
- this._value = setHours(this._value, hour);
353
- return this;
354
- }
355
- return getHours(this._value);
356
- }
357
- /**
358
- * Gets or sets minutes zero based
359
- * @param minute - If specified, sets minutes
360
- */
361
- minute(minute) {
362
- if (isPresent(minute)) {
363
- this._value = setMinutes(this._value, minute);
364
- return this;
365
- }
366
- return getMinutes(this._value);
367
- }
368
- /**
369
- * Gets indication whether current value is before 'date'
370
- * @param date - Date which is this date compared to
371
- */
372
- isBefore(date) {
373
- date = this.getDate(date);
374
- return isBefore(this._value, date);
375
- }
376
- /**
377
- * Gets indication whether current value is after 'date'
378
- * @param date - Date which is this date compared to
379
- */
380
- isAfter(date) {
381
- date = this.getDate(date);
382
- return isAfter(this._value, date);
383
- }
384
- /**
385
- * Gets number of days between this and provided date
386
- * @param date - Date which is used for computation of diff against
387
- */
388
- diffDays(date) {
389
- date = this.getDate(date);
390
- return differenceInCalendarDays(this._value, date);
391
- }
392
- /**
393
- * Compares whether this date is same week as provided date
394
- * @param date - Date which is used for comparison of same week
395
- */
396
- isSameWeek(date) {
397
- date = this.getDate(date);
398
- return isSameWeek(this._value, date, { locale: this._localeSvc.locale });
399
- }
400
- /**
401
- * Compares whether this date is same decade as provided date
402
- * @param date - Date which is used for comparison of same decade
403
- */
404
- isSameDecade(date) {
405
- date = this.getDate(date);
406
- const year = getYear(this._value);
407
- const start = year - (year % 10);
408
- const end = start + 10;
409
- return getYear(date) >= start && getYear(date) < end;
410
- }
411
- /**
412
- * Compares whether this date is same year as provided date
413
- * @param date - Date which is used for comparison of same year
414
- */
415
- isSameYear(date) {
416
- date = this.getDate(date);
417
- return isSameYear(this._value, date);
418
- }
419
- /**
420
- * Compares whether this date is same month as provided date
421
- * @param date - Date which is used for comparison of same month
422
- */
423
- isSameMonth(date) {
424
- date = this.getDate(date);
425
- return isSameMonth(this._value, date);
426
- }
427
- /**
428
- * @inheritdoc
429
- */
430
- isSameDay(date) {
431
- date = this.getDate(date);
432
- return isSameDay(this._value, date);
433
- }
434
- /**
435
- * @inheritdoc
436
- */
437
- isSame(date) {
438
- date = this.getDate(date);
439
- return isEqual(this._value, date);
440
- }
441
- /**
442
- * Creates clone of this instance, value and originalValue have same value and are cloned from value
443
- */
444
- clone() {
445
- return new DateFnsDateApiObject(new Date(this._value), null, this._localeSvc);
446
- }
447
- /**
448
- * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue
449
- */
450
- cloneOriginal() {
451
- return new DateFnsDateApiObject(new Date(this._originalValue), null, this._localeSvc);
452
- }
453
- /**
454
- * Updates originalValue, if value is not provided originalValue is set to value
455
- * @param value - Value to be set as original, or null (value will be used as value)
456
- * @returns Itself for fluent API
457
- */
458
- updateOriginal(value) {
459
- if (isBlank(value)) {
460
- this._originalValue = this._value;
461
- }
462
- else {
463
- this._value = this._originalValue = value;
464
- }
465
- return this;
466
- }
467
- /**
468
- * Changes value to same value as originalValue
469
- * @returns Itself for fluent API
470
- */
471
- resetOriginal() {
472
- this._value = this._originalValue;
473
- return this;
474
- }
475
- //######################### protected methods #########################
476
- /**
477
- * Converts date object to date
478
- * @param value - Value to be converted to date
479
- */
480
- getDate(value) {
481
- if (value instanceof Date) {
482
- return value;
483
- }
484
- return value.value;
485
- }
486
- }
487
- /**
488
- * Date api using DateFnsJS, used for obtaining DateApi wrapper object
489
- */
490
- export class DateFnsDateApi {
491
- //######################### constructor #########################
492
- constructor(_localeSvc, _relativeParser, _dateApiObjecType) {
493
- this._localeSvc = _localeSvc;
494
- this._relativeParser = _relativeParser;
495
- this._dateApiObjecType = _dateApiObjecType;
496
- }
497
- //######################### public methods - implementation of DateApi #########################
498
- /**
499
- * Gets wrapping object used for manipulation
500
- * @param value - Value to be converted (parsed) and used for manipulation
501
- * @param format - Format string used for parsing string value
502
- */
503
- getValue(value, format) {
504
- return new this._dateApiObjecType(this._relativeParser.parse(value), format, this._localeSvc);
505
- }
506
- /**
507
- * Gets wrapping object used for manipulation instantiated to current date and time
508
- */
509
- now() {
510
- return new this._dateApiObjecType(new Date(), null !== null && null !== void 0 ? null : undefined, this._localeSvc);
511
- }
512
- /**
513
- * Gets format string using pseudo format
514
- * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string
515
- */
516
- getFormat(pseudoFormat) {
517
- if (/^p+$/i.test(pseudoFormat)) {
518
- if (!this._localeSvc.locale.formatLong) {
519
- throw new Error('Missing long formats for locale in DateApi');
520
- }
521
- const widths = {
522
- 1: 'short',
523
- 2: 'medium',
524
- 3: 'long',
525
- 4: 'full'
526
- };
527
- //date time format
528
- if (pseudoFormat.indexOf('Pp') >= 0 && pseudoFormat.length <= 8) {
529
- const partLength = pseudoFormat.length / 2;
530
- return `${this._localeSvc.locale.formatLong.date({ width: widths[partLength] })} ${this._localeSvc.locale.formatLong.time({ width: widths[partLength] })}`;
531
- }
532
- //date format
533
- else if (pseudoFormat.indexOf('P') >= 0 && pseudoFormat.length <= 4) {
534
- return this._localeSvc.locale.formatLong.date({ width: widths[pseudoFormat.length] });
535
- }
536
- //time format
537
- else if (pseudoFormat.indexOf('p') >= 0 && pseudoFormat.length <= 4) {
538
- return this._localeSvc.locale.formatLong.time({ width: widths[pseudoFormat.length] });
539
- }
540
- }
541
- return pseudoFormat;
542
- }
543
- /**
544
- * Gets information
545
- */
546
- weekStartsOnMonday() {
547
- var _a;
548
- return ((_a = this._localeSvc.locale.options) === null || _a === void 0 ? void 0 : _a.weekStartsOn) === 1;
549
- }
550
- /**
551
- * Gets array of weekday names in short format, order of days is dependent on locale
552
- */
553
- weekdaysShort() {
554
- let startIndex = this._localeSvc.locale.options.weekStartsOn;
555
- const weekdays = [];
556
- for (let x = 0; x < 7; x++) {
557
- weekdays.push(this._localeSvc.locale.localize.day(startIndex++ % 7, { width: 'short' }));
558
- }
559
- return weekdays;
560
- }
561
- /**
562
- * @inheritdoc
563
- */
564
- isDate(value) {
565
- return isDate(value);
566
- }
567
- }
568
- DateFnsDateApi.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: DateFnsDateApi, deps: [{ token: DATE_FNS_LOCALE }, { token: i1.DateTimeRelativeParser }, { token: DATE_API_OBJECT_TYPE }], target: i0.ɵɵFactoryTarget.Injectable });
569
- DateFnsDateApi.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: DateFnsDateApi });
570
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.4", ngImport: i0, type: DateFnsDateApi, decorators: [{
571
- type: Injectable
572
- }], ctorParameters: function () { return [{ type: undefined, decorators: [{
573
- type: Inject,
574
- args: [DATE_FNS_LOCALE]
575
- }] }, { type: i1.DateTimeRelativeParser }, { type: undefined, decorators: [{
576
- type: Inject,
577
- args: [DATE_API_OBJECT_TYPE]
578
- }] }]; } });
579
- /**
580
- * Type that represents creation of DateApiObject for date-fns
581
- */
582
- export const dateFnsDateApiObjectType = DateFnsDateApiObject;
583
- /**
584
- * Injection token used for injecting type that creates instance of DateApiObject for date-fns
585
- */
586
- export const DATE_FNS_DATE_API_OBJECT_TYPE = {
587
- provide: DATE_API_OBJECT_TYPE,
588
- useValue: dateFnsDateApiObjectType
589
- };
590
- //# sourceMappingURL=dateFnsDateApi.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dateFnsDateApi.service.js","sourceRoot":"","sources":["../../../../date-fns/src/services/dateFnsDateApi.service.ts"],"names":[],"mappings":"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","sourcesContent":["import {Inject, Injectable, ValueProvider} from '@angular/core';\nimport {DateApi, DateValue, DateApiObject, DateTimeRelativeParser, DateApiObjectCtor, DATE_API_OBJECT_TYPE, DateObject} from '@anglr/datetime';\nimport {isBlank, isPresent, isString} from '@jscrpt/common';\nimport {toDate, getDate, setDate, isAfter, isBefore, isEqual, differenceInCalendarDays, format, formatISO, startOfMonth, endOfMonth, startOfWeek, endOfWeek, startOfDay, endOfDay, addMonths, addWeeks, addDays, subMonths, subWeeks, subDays, getDaysInMonth, isSameDay, isSameWeek, isSameMonth, isValid, parse, parseISO, addYears, subYears, startOfYear, endOfYear, isWeekend, setYear, getYear, isSameYear, startOfDecade, endOfDecade, setMonth, getMonth, setISODay, getISODay, subHours, addHours, endOfHour, startOfHour, startOfMinute, endOfMinute, addMinutes, subMinutes, getHours, setHours, getMinutes, setMinutes, isDate, getUnixTime} from 'date-fns';\n\nimport {DATE_FNS_LOCALE} from '../misc/tokens';\nimport {DateFnsLocale} from './dateFnsLocale.service';\n\n/**\n * Instance of object wrapping TDate, allowing manipulation with it\n */\nexport class DateFnsDateApiObject implements DateApiObject<Date>\n{\n //######################### protected fields #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n protected _originalValue: Date;\n\n /**\n * Instance of date\n */\n protected _value: Date;\n\n //######################### public properties - implementation of DateApiObject #########################\n\n /**\n * Original value that is not changed unless 'updateOriginal' is called\n */\n public get originalValue(): Date\n {\n return this._originalValue;\n }\n\n /**\n * Instance of date\n */\n public get value(): Date\n {\n return this._value;\n }\n\n //######################### constructor #########################\n constructor(value: DateValue|Date,\n format: string|null|undefined,\n protected _localeSvc: DateFnsLocale)\n {\n if(isString(value))\n {\n //ISO string\n if(/^\\d+-\\d+-\\d+(T\\d+:\\d+:\\d+)?/.test(value))\n {\n this._value = this._originalValue = parseISO(value);\n }\n else\n {\n if(isBlank(format))\n {\n throw new Error('date-fns requires format parameter to be set for parsing non ISO string date!');\n }\n\n this._value = this._originalValue = parse(value, format, new Date(1970, 0));\n }\n }\n else\n {\n this._value = this._originalValue = toDate(value);\n }\n }\n\n //######################### public methods - implementation of DateApiObject #########################\n\n /**\n * Gets indication whether provided instance of date is valid\n */\n public isValid(): boolean\n {\n return isValid(this._value);\n }\n\n /**\n * Gets indication whether provided instance of date is weekend day\n */\n public isWeekend(): boolean\n {\n return isWeekend(this._value);\n }\n\n /**\n * Formats date value\n * @param formatString - Format token used for creating formatted string\n */\n public format(formatString: string): string\n {\n return format(this._value, formatString, {locale: this._localeSvc.locale});\n }\n\n /**\n * @inheritdoc\n */\n public formatISO(): string\n {\n return formatISO(this._value);\n }\n\n /**\n * @inheritdoc\n */\n public unixTimestamp(): number\n {\n return getUnixTime(this._value);\n }\n\n /**\n * Updates value to start date and time of current decade\n * @returns Itself for fluent API\n */\n public startOfDecade(): DateApiObject<Date>\n {\n this._value = startOfDecade(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current decade\n * @returns Itself for fluent API\n */\n public endOfDecade(): DateApiObject<Date>\n {\n this._value = endOfDecade(this._value);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current year\n * @returns Itself for fluent API\n */\n public startOfYear(): DateApiObject<Date>\n {\n this._value = startOfYear(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current year\n * @returns Itself for fluent API\n */\n public endOfYear(): DateApiObject<Date>\n {\n this._value = endOfYear(this._value);\n\n return this;\n }\n\n /**\n * Add years, if count not specified adds 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public addYears(count?: number): DateApiObject<Date>\n {\n this._value = addYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract years, if count not specified subtract 1 year\n * @param count - Number of years count\n * @returns Itself for fluent API\n */\n public subtractYears(count?: number): DateApiObject<Date>\n {\n this._value = subYears(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current month\n * @returns Itself for fluent API\n */\n public startOfMonth(): DateApiObject<Date>\n {\n this._value = startOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current month\n * @returns Itself for fluent API\n */\n public endOfMonth(): DateApiObject<Date>\n {\n this._value = endOfMonth(this._value);\n\n return this;\n }\n\n /**\n * Add months, if count not specified adds 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public addMonths(count?: number): DateApiObject<Date>\n {\n this._value = addMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract months, if count not specified subtract 1 month\n * @param count - Number of months count\n * @returns Itself for fluent API\n */\n public subtractMonths(count?: number): DateApiObject<Date>\n {\n this._value = subMonths(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current week\n * @returns Itself for fluent API\n */\n public startOfWeek(): DateApiObject<Date>\n {\n this._value = startOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current week\n * @returns Itself for fluent API\n */\n public endOfWeek(): DateApiObject<Date>\n {\n this._value = endOfWeek(this._value, {locale: this._localeSvc.locale});\n\n return this;\n }\n\n /**\n * Add weeks, if count not specified adds 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public addWeeks(count?: number): DateApiObject<Date>\n {\n this._value = addWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract weeks, if count not specified subtract 1 week\n * @param count - Number of weeks count\n * @returns Itself for fluent API\n */\n public subtractWeeks(count?: number): DateApiObject<Date>\n {\n this._value = subWeeks(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current day\n * @returns Itself for fluent API\n */\n public startOfDay(): DateApiObject<Date>\n {\n this._value = startOfDay(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current day\n * @returns Itself for fluent API\n */\n public endOfDay(): DateApiObject<Date>\n {\n this._value = endOfDay(this._value);\n\n return this;\n }\n\n /**\n * Add days, if count not specified adds 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public addDays(count?: number): DateApiObject<Date>\n {\n this._value = addDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract days, if count not specified subtract 1 day\n * @param count - Number of days count\n * @returns Itself for fluent API\n */\n public subtractDays(count?: number): DateApiObject<Date>\n {\n this._value = subDays(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current hour\n * @returns Itself for fluent API\n */\n public startOfHour(): DateApiObject<Date>\n {\n this._value = startOfHour(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current hour\n * @returns Itself for fluent API\n */\n public endOfHour(): DateApiObject<Date>\n {\n this._value = endOfHour(this._value);\n\n return this;\n }\n\n /**\n * Add hours, if count not specified adds 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public addHours(count?: number): DateApiObject<Date>\n {\n this._value = addHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract hours, if count not specified subtract 1 hour\n * @param count - Number of hours count\n * @returns Itself for fluent API\n */\n public subtractHours(count?: number): DateApiObject<Date>\n {\n this._value = subHours(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Updates value to start date and time of current minute\n * @returns Itself for fluent API\n */\n public startOfMinute(): DateApiObject<Date>\n {\n this._value = startOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Updates value to end date and time of current minute\n * @returns Itself for fluent API\n */\n public endOfMinute(): DateApiObject<Date>\n {\n this._value = endOfMinute(this._value);\n\n return this;\n }\n\n /**\n * Add minutes, if count not specified adds 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public addMinutes(count?: number): DateApiObject<Date>\n {\n this._value = addMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Subtract minutes, if count not specified subtract 1 minute\n * @param count - Number of minutes count\n * @returns Itself for fluent API\n */\n public subtractMinutes(count?: number): DateApiObject<Date>\n {\n this._value = subMinutes(this._value, count ?? 1);\n\n return this;\n }\n\n /**\n * Gets number of days in month\n */\n public daysInMonth(): number\n {\n return getDaysInMonth(this._value);\n }\n\n /**\n * Gets year\n */\n public year(): number;\n /**\n * Sets year\n * @param year - Year to be set\n */\n public year(year: number): DateApiObject<Date>;\n /**\n * Gets or sets year\n * @param year - If specified, sets year\n */\n public year(year?: number): DateApiObject<Date>|number\n {\n if(isPresent(year))\n {\n this._value = setYear(this._value, year);\n\n return this;\n }\n\n return getYear(this._value);\n }\n\n /**\n * Gets month\n */\n public month(): number\n /**\n * Sets month\n * @param month - Month to be set\n */\n public month(month: number): DateApiObject<Date>\n /**\n * Gets or sets month\n * @param month - If specified, sets month\n */\n public month(month?: number): DateApiObject<Date>|number\n {\n if(isPresent(month))\n {\n this._value = setMonth(this._value, month);\n\n return this;\n }\n\n return getMonth(this._value);\n }\n\n /**\n * Gets day of month one based\n */\n public dayOfMonth(): number;\n /**\n * Sets day of month one based\n * @param day - Day of month to be set\n */\n public dayOfMonth(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of month one based\n * @param day - If specified, sets day of month\n */\n public dayOfMonth(day?: number): DateApiObject<Date>|number\n {\n if(isPresent(day))\n {\n this._value = setDate(this._value, day);\n\n return this;\n }\n\n return getDate(this._value);\n }\n\n /**\n * Gets day of week zero based, first is monday\n */\n public dayOfWeek(): number;\n /**\n * Sets day of week zero based, first is monday\n * @param day - Day of week to be set\n */\n public dayOfWeek(day: number): DateApiObject<Date>;\n /**\n * Gets or sets day of week zero based, first is monday\n * @param day - If specified, sets day of week\n */\n public dayOfWeek(day?: number): number|DateApiObject<Date>\n {\n if(isPresent(day))\n {\n this._value = setISODay(this._value, day + 1);\n\n return this;\n }\n\n return getISODay(this._value) - 1;\n }\n\n /**\n * Gets hours zero based\n */\n public hour(): number;\n /**\n * Sets hours zero based\n * @param hour - hour to be set\n */\n public hour(hour: number): DateApiObject<Date>;\n /**\n * Gets or sets hours zero based\n * @param hour - If specified, sets hour\n */\n public hour(hour?: number): DateApiObject<Date>|number\n {\n if(isPresent(hour))\n {\n this._value = setHours(this._value, hour);\n\n return this;\n }\n\n return getHours(this._value);\n }\n\n /**\n * Gets minutes zero based\n */\n public minute(): number;\n /**\n * Sets minutes zero based\n * @param minute - minutes to be set\n */\n public minute(minute: number): DateApiObject<Date>;\n /**\n * Gets or sets minutes zero based\n * @param minute - If specified, sets minutes\n */\n public minute(minute?: number): DateApiObject<Date>|number\n {\n if(isPresent(minute))\n {\n this._value = setMinutes(this._value, minute);\n\n return this;\n }\n\n return getMinutes(this._value);\n }\n\n /**\n * Gets indication whether current value is before 'date'\n * @param date - Date which is this date compared to\n */\n public isBefore(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isBefore(this._value, date);\n }\n\n /**\n * Gets indication whether current value is after 'date'\n * @param date - Date which is this date compared to\n */\n public isAfter(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isAfter(this._value, date);\n }\n\n /**\n * Gets number of days between this and provided date\n * @param date - Date which is used for computation of diff against\n */\n public diffDays(date: DateObject<Date>): number\n {\n date = this.getDate(date);\n\n return differenceInCalendarDays(this._value, date);\n }\n\n /**\n * Compares whether this date is same week as provided date\n * @param date - Date which is used for comparison of same week\n */\n public isSameWeek(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isSameWeek(this._value, date, {locale: this._localeSvc.locale});\n }\n\n /**\n * Compares whether this date is same decade as provided date\n * @param date - Date which is used for comparison of same decade\n */\n public isSameDecade(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n const year = getYear(this._value);\n const start = year - (year % 10);\n const end = start + 10;\n\n return getYear(date) >= start && getYear(date) < end;\n }\n\n /**\n * Compares whether this date is same year as provided date\n * @param date - Date which is used for comparison of same year\n */\n public isSameYear(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isSameYear(this._value, date);\n }\n\n /**\n * Compares whether this date is same month as provided date\n * @param date - Date which is used for comparison of same month\n */\n public isSameMonth(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isSameMonth(this._value, date);\n }\n\n /**\n * @inheritdoc\n */\n public isSameDay(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isSameDay(this._value, date);\n }\n\n /**\n * @inheritdoc\n */\n public isSame(date: DateObject<Date>): boolean\n {\n date = this.getDate(date);\n\n return isEqual(this._value, date);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from value\n */\n public clone(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._value), null, this._localeSvc);\n }\n\n /**\n * Creates clone of this instance, value and originalValue have same value and are cloned from originalValue\n */\n public cloneOriginal(): DateApiObject<Date>\n {\n return new DateFnsDateApiObject(new Date(this._originalValue), null, this._localeSvc);\n }\n\n /**\n * Updates originalValue, if value is not provided originalValue is set to value\n * @param value - Value to be set as original, or null (value will be used as value)\n * @returns Itself for fluent API\n */\n public updateOriginal(value?: Date): DateApiObject<Date>\n {\n if(isBlank(value))\n {\n this._originalValue = this._value;\n }\n else\n {\n this._value = this._originalValue = value;\n }\n\n return this;\n }\n\n /**\n * Changes value to same value as originalValue\n * @returns Itself for fluent API\n */\n public resetOriginal(): DateApiObject<Date>\n {\n this._value = this._originalValue;\n\n return this;\n }\n\n //######################### protected methods #########################\n\n /**\n * Converts date object to date\n * @param value - Value to be converted to date\n */\n protected getDate(value: DateObject<Date>): Date\n {\n if(value instanceof Date)\n {\n return value;\n }\n\n return value.value;\n }\n}\n\n/**\n * Date api using DateFnsJS, used for obtaining DateApi wrapper object\n */\n@Injectable()\nexport class DateFnsDateApi implements DateApi<Date>\n{\n //######################### constructor #########################\n constructor(@Inject(DATE_FNS_LOCALE) protected _localeSvc: DateFnsLocale,\n protected _relativeParser: DateTimeRelativeParser<Date>,\n @Inject(DATE_API_OBJECT_TYPE) protected _dateApiObjecType: DateApiObjectCtor<Date, DateFnsDateApiObject>)\n {\n }\n\n //######################### public methods - implementation of DateApi #########################\n\n /**\n * Gets wrapping object used for manipulation\n * @param value - Value to be converted (parsed) and used for manipulation\n * @param format - Format string used for parsing string value\n */\n public getValue(value: DateValue|Date, format?: string): DateApiObject<Date>\n {\n return new this._dateApiObjecType(this._relativeParser.parse(value), format, this._localeSvc);\n }\n\n /**\n * Gets wrapping object used for manipulation instantiated to current date and time\n */\n public now(): DateApiObject<Date>\n {\n return new this._dateApiObjecType(new Date(), null ?? undefined, this._localeSvc);\n }\n\n /**\n * Gets format string using pseudo format\n * @param pseudoFormat - Pseudo format token, used for obtaining 'date' or 'time' format string\n */\n public getFormat(pseudoFormat: string): string\n {\n if(/^p+$/i.test(pseudoFormat))\n {\n if(!this._localeSvc.locale.formatLong)\n {\n throw new Error('Missing long formats for locale in DateApi');\n }\n\n const widths: {[index: number]: string} =\n {\n 1: 'short',\n 2: 'medium',\n 3: 'long',\n 4: 'full'\n };\n\n //date time format\n if(pseudoFormat.indexOf('Pp') >= 0 && pseudoFormat.length <= 8)\n {\n const partLength = pseudoFormat.length / 2;\n\n return `${this._localeSvc.locale.formatLong.date({width: widths[partLength]})} ${this._localeSvc.locale.formatLong.time({width: widths[partLength]})}`;\n }\n //date format\n else if(pseudoFormat.indexOf('P') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.date({width: widths[pseudoFormat.length]});\n }\n //time format\n else if(pseudoFormat.indexOf('p') >= 0 && pseudoFormat.length <= 4)\n {\n return this._localeSvc.locale.formatLong.time({width: widths[pseudoFormat.length]});\n }\n }\n\n return pseudoFormat;\n }\n\n /**\n * Gets information\n */\n public weekStartsOnMonday(): boolean\n {\n return this._localeSvc.locale.options?.weekStartsOn === 1;\n }\n\n /**\n * Gets array of weekday names in short format, order of days is dependent on locale\n */\n public weekdaysShort(): string[]\n {\n let startIndex = this._localeSvc.locale.options!.weekStartsOn!;\n const weekdays: string[] = [];\n\n for(let x = 0; x < 7; x++)\n {\n weekdays.push(this._localeSvc.locale.localize!.day(startIndex++ % 7, {width: 'short'}));\n }\n\n return weekdays;\n }\n\n /**\n * @inheritdoc\n */\n public isDate(value: unknown): value is Date\n {\n return isDate(value);\n }\n}\n\n/**\n * Type that represents creation of DateApiObject for date-fns\n */\nexport const dateFnsDateApiObjectType: DateApiObjectCtor<Date, DateFnsDateApiObject> = DateFnsDateApiObject;\n\n/**\n * Injection token used for injecting type that creates instance of DateApiObject for date-fns\n */\nexport const DATE_FNS_DATE_API_OBJECT_TYPE: ValueProvider =\n{\n provide: DATE_API_OBJECT_TYPE,\n useValue: dateFnsDateApiObjectType\n};"]}