@checkdigit/time 1.0.0

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 (588) hide show
  1. package/.github/workflows/ci.yml +72 -0
  2. package/.github/workflows/codeql-analysis.yml +31 -0
  3. package/.github/workflows/coverage.yml +46 -0
  4. package/LICENSE.txt +21 -0
  5. package/README.md +76 -0
  6. package/SECURITY.md +14 -0
  7. package/dist/date-fns/_lib/addLeadingZeros/index.d.ts +1 -0
  8. package/dist/date-fns/_lib/assign/index.d.ts +1 -0
  9. package/dist/date-fns/_lib/cloneObject/index.d.ts +1 -0
  10. package/dist/date-fns/_lib/defaultLocale/index.d.ts +2 -0
  11. package/dist/date-fns/_lib/defaultOptions/index.d.ts +4 -0
  12. package/dist/date-fns/_lib/format/formatters/index.d.ts +9 -0
  13. package/dist/date-fns/_lib/format/lightFormatters/index.d.ts +12 -0
  14. package/dist/date-fns/_lib/format/longFormatters/index.d.ts +4 -0
  15. package/dist/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.d.ts +12 -0
  16. package/dist/date-fns/_lib/protectedTokens/index.d.ts +3 -0
  17. package/dist/date-fns/_lib/roundingMethods/index.d.ts +2 -0
  18. package/dist/date-fns/add/index.d.ts +40 -0
  19. package/dist/date-fns/addBusinessDays/index.d.ts +18 -0
  20. package/dist/date-fns/addDays/index.d.ts +18 -0
  21. package/dist/date-fns/addHours/index.d.ts +18 -0
  22. package/dist/date-fns/addISOWeekYears/index.d.ts +20 -0
  23. package/dist/date-fns/addMilliseconds/index.d.ts +18 -0
  24. package/dist/date-fns/addMinutes/index.d.ts +18 -0
  25. package/dist/date-fns/addMonths/index.d.ts +18 -0
  26. package/dist/date-fns/addQuarters/index.d.ts +18 -0
  27. package/dist/date-fns/addSeconds/index.d.ts +18 -0
  28. package/dist/date-fns/addWeeks/index.d.ts +18 -0
  29. package/dist/date-fns/addYears/index.d.ts +18 -0
  30. package/dist/date-fns/areIntervalsOverlapping/index.d.ts +61 -0
  31. package/dist/date-fns/clamp/index.d.ts +27 -0
  32. package/dist/date-fns/closestIndexTo/index.d.ts +24 -0
  33. package/dist/date-fns/closestTo/index.d.ts +22 -0
  34. package/dist/date-fns/compareAsc/index.d.ts +32 -0
  35. package/dist/date-fns/compareDesc/index.d.ts +32 -0
  36. package/dist/date-fns/constants/index.d.ts +211 -0
  37. package/dist/date-fns/constructFrom/index.d.ts +26 -0
  38. package/dist/date-fns/daysToWeeks/index.d.ts +23 -0
  39. package/dist/date-fns/differenceInBusinessDays/index.d.ts +49 -0
  40. package/dist/date-fns/differenceInCalendarDays/index.d.ts +30 -0
  41. package/dist/date-fns/differenceInCalendarISOWeekYears/index.d.ts +23 -0
  42. package/dist/date-fns/differenceInCalendarISOWeeks/index.d.ts +23 -0
  43. package/dist/date-fns/differenceInCalendarMonths/index.d.ts +21 -0
  44. package/dist/date-fns/differenceInCalendarQuarters/index.d.ts +21 -0
  45. package/dist/date-fns/differenceInCalendarWeeks/index.d.ts +38 -0
  46. package/dist/date-fns/differenceInCalendarYears/index.d.ts +21 -0
  47. package/dist/date-fns/differenceInDays/index.d.ts +49 -0
  48. package/dist/date-fns/differenceInHours/index.d.ts +28 -0
  49. package/dist/date-fns/differenceInISOWeekYears/index.d.ts +23 -0
  50. package/dist/date-fns/differenceInMilliseconds/index.d.ts +22 -0
  51. package/dist/date-fns/differenceInMinutes/index.d.ts +36 -0
  52. package/dist/date-fns/differenceInMonths/index.d.ts +18 -0
  53. package/dist/date-fns/differenceInQuarters/index.d.ts +25 -0
  54. package/dist/date-fns/differenceInSeconds/index.d.ts +29 -0
  55. package/dist/date-fns/differenceInWeeks/index.d.ts +46 -0
  56. package/dist/date-fns/differenceInYears/index.d.ts +18 -0
  57. package/dist/date-fns/eachDayOfInterval/index.d.ts +36 -0
  58. package/dist/date-fns/eachHourOfInterval/index.d.ts +35 -0
  59. package/dist/date-fns/eachMinuteOfInterval/index.d.ts +35 -0
  60. package/dist/date-fns/eachMonthOfInterval/index.d.ts +31 -0
  61. package/dist/date-fns/eachQuarterOfInterval/index.d.ts +27 -0
  62. package/dist/date-fns/eachWeekOfInterval/index.d.ts +38 -0
  63. package/dist/date-fns/eachWeekendOfInterval/index.d.ts +28 -0
  64. package/dist/date-fns/eachWeekendOfMonth/index.d.ts +27 -0
  65. package/dist/date-fns/eachWeekendOfYear/index.d.ts +24 -0
  66. package/dist/date-fns/eachYearOfInterval/index.d.ts +28 -0
  67. package/dist/date-fns/endOfDay/index.d.ts +18 -0
  68. package/dist/date-fns/endOfDecade/index.d.ts +17 -0
  69. package/dist/date-fns/endOfHour/index.d.ts +18 -0
  70. package/dist/date-fns/endOfISOWeek/index.d.ts +20 -0
  71. package/dist/date-fns/endOfISOWeekYear/index.d.ts +21 -0
  72. package/dist/date-fns/endOfMinute/index.d.ts +18 -0
  73. package/dist/date-fns/endOfMonth/index.d.ts +18 -0
  74. package/dist/date-fns/endOfQuarter/index.d.ts +18 -0
  75. package/dist/date-fns/endOfSecond/index.d.ts +18 -0
  76. package/dist/date-fns/endOfToday/index.d.ts +20 -0
  77. package/dist/date-fns/endOfTomorrow/index.d.ts +20 -0
  78. package/dist/date-fns/endOfWeek/index.d.ts +30 -0
  79. package/dist/date-fns/endOfYear/index.d.ts +18 -0
  80. package/dist/date-fns/endOfYesterday/index.d.ts +20 -0
  81. package/dist/date-fns/format/index.d.ts +289 -0
  82. package/dist/date-fns/formatDistance/index.d.ts +85 -0
  83. package/dist/date-fns/formatDistanceStrict/index.d.ts +85 -0
  84. package/dist/date-fns/formatDistanceToNow/index.d.ts +89 -0
  85. package/dist/date-fns/formatDistanceToNowStrict/index.d.ts +76 -0
  86. package/dist/date-fns/formatDuration/index.d.ts +67 -0
  87. package/dist/date-fns/formatISO/index.d.ts +40 -0
  88. package/dist/date-fns/formatISO9075/index.d.ts +40 -0
  89. package/dist/date-fns/formatISODuration/index.d.ts +26 -0
  90. package/dist/date-fns/formatRFC3339/index.d.ts +35 -0
  91. package/dist/date-fns/formatRFC7231/index.d.ts +19 -0
  92. package/dist/date-fns/formatRelative/index.d.ts +39 -0
  93. package/dist/date-fns/fp/_lib/convertToFP/index.d.ts +1 -0
  94. package/dist/date-fns/fp/add/index.d.ts +2 -0
  95. package/dist/date-fns/fp/addBusinessDays/index.d.ts +2 -0
  96. package/dist/date-fns/fp/addDays/index.d.ts +2 -0
  97. package/dist/date-fns/fp/addHours/index.d.ts +2 -0
  98. package/dist/date-fns/fp/addISOWeekYears/index.d.ts +2 -0
  99. package/dist/date-fns/fp/addMilliseconds/index.d.ts +2 -0
  100. package/dist/date-fns/fp/addMinutes/index.d.ts +2 -0
  101. package/dist/date-fns/fp/addMonths/index.d.ts +2 -0
  102. package/dist/date-fns/fp/addQuarters/index.d.ts +2 -0
  103. package/dist/date-fns/fp/addSeconds/index.d.ts +2 -0
  104. package/dist/date-fns/fp/addWeeks/index.d.ts +2 -0
  105. package/dist/date-fns/fp/addYears/index.d.ts +2 -0
  106. package/dist/date-fns/fp/areIntervalsOverlapping/index.d.ts +2 -0
  107. package/dist/date-fns/fp/areIntervalsOverlappingWithOptions/index.d.ts +2 -0
  108. package/dist/date-fns/fp/clamp/index.d.ts +2 -0
  109. package/dist/date-fns/fp/closestIndexTo/index.d.ts +2 -0
  110. package/dist/date-fns/fp/closestTo/index.d.ts +2 -0
  111. package/dist/date-fns/fp/compareAsc/index.d.ts +2 -0
  112. package/dist/date-fns/fp/compareDesc/index.d.ts +2 -0
  113. package/dist/date-fns/fp/daysToWeeks/index.d.ts +2 -0
  114. package/dist/date-fns/fp/differenceInBusinessDays/index.d.ts +2 -0
  115. package/dist/date-fns/fp/differenceInCalendarDays/index.d.ts +2 -0
  116. package/dist/date-fns/fp/differenceInCalendarISOWeekYears/index.d.ts +2 -0
  117. package/dist/date-fns/fp/differenceInCalendarISOWeeks/index.d.ts +2 -0
  118. package/dist/date-fns/fp/differenceInCalendarMonths/index.d.ts +2 -0
  119. package/dist/date-fns/fp/differenceInCalendarQuarters/index.d.ts +2 -0
  120. package/dist/date-fns/fp/differenceInCalendarWeeks/index.d.ts +2 -0
  121. package/dist/date-fns/fp/differenceInCalendarWeeksWithOptions/index.d.ts +2 -0
  122. package/dist/date-fns/fp/differenceInCalendarYears/index.d.ts +2 -0
  123. package/dist/date-fns/fp/differenceInDays/index.d.ts +2 -0
  124. package/dist/date-fns/fp/differenceInHours/index.d.ts +2 -0
  125. package/dist/date-fns/fp/differenceInHoursWithOptions/index.d.ts +2 -0
  126. package/dist/date-fns/fp/differenceInISOWeekYears/index.d.ts +2 -0
  127. package/dist/date-fns/fp/differenceInMilliseconds/index.d.ts +2 -0
  128. package/dist/date-fns/fp/differenceInMinutes/index.d.ts +2 -0
  129. package/dist/date-fns/fp/differenceInMinutesWithOptions/index.d.ts +2 -0
  130. package/dist/date-fns/fp/differenceInMonths/index.d.ts +2 -0
  131. package/dist/date-fns/fp/differenceInQuarters/index.d.ts +2 -0
  132. package/dist/date-fns/fp/differenceInQuartersWithOptions/index.d.ts +2 -0
  133. package/dist/date-fns/fp/differenceInSeconds/index.d.ts +2 -0
  134. package/dist/date-fns/fp/differenceInSecondsWithOptions/index.d.ts +2 -0
  135. package/dist/date-fns/fp/differenceInWeeks/index.d.ts +2 -0
  136. package/dist/date-fns/fp/differenceInWeeksWithOptions/index.d.ts +2 -0
  137. package/dist/date-fns/fp/differenceInYears/index.d.ts +2 -0
  138. package/dist/date-fns/fp/eachDayOfInterval/index.d.ts +2 -0
  139. package/dist/date-fns/fp/eachDayOfIntervalWithOptions/index.d.ts +2 -0
  140. package/dist/date-fns/fp/eachHourOfInterval/index.d.ts +2 -0
  141. package/dist/date-fns/fp/eachHourOfIntervalWithOptions/index.d.ts +2 -0
  142. package/dist/date-fns/fp/eachMinuteOfInterval/index.d.ts +2 -0
  143. package/dist/date-fns/fp/eachMinuteOfIntervalWithOptions/index.d.ts +2 -0
  144. package/dist/date-fns/fp/eachMonthOfInterval/index.d.ts +2 -0
  145. package/dist/date-fns/fp/eachQuarterOfInterval/index.d.ts +2 -0
  146. package/dist/date-fns/fp/eachWeekOfInterval/index.d.ts +2 -0
  147. package/dist/date-fns/fp/eachWeekOfIntervalWithOptions/index.d.ts +2 -0
  148. package/dist/date-fns/fp/eachWeekendOfInterval/index.d.ts +2 -0
  149. package/dist/date-fns/fp/eachWeekendOfMonth/index.d.ts +2 -0
  150. package/dist/date-fns/fp/eachWeekendOfYear/index.d.ts +2 -0
  151. package/dist/date-fns/fp/eachYearOfInterval/index.d.ts +2 -0
  152. package/dist/date-fns/fp/endOfDay/index.d.ts +2 -0
  153. package/dist/date-fns/fp/endOfDecade/index.d.ts +2 -0
  154. package/dist/date-fns/fp/endOfDecadeWithOptions/index.d.ts +2 -0
  155. package/dist/date-fns/fp/endOfHour/index.d.ts +2 -0
  156. package/dist/date-fns/fp/endOfISOWeek/index.d.ts +2 -0
  157. package/dist/date-fns/fp/endOfISOWeekYear/index.d.ts +2 -0
  158. package/dist/date-fns/fp/endOfMinute/index.d.ts +2 -0
  159. package/dist/date-fns/fp/endOfMonth/index.d.ts +2 -0
  160. package/dist/date-fns/fp/endOfQuarter/index.d.ts +2 -0
  161. package/dist/date-fns/fp/endOfSecond/index.d.ts +2 -0
  162. package/dist/date-fns/fp/endOfWeek/index.d.ts +2 -0
  163. package/dist/date-fns/fp/endOfWeekWithOptions/index.d.ts +2 -0
  164. package/dist/date-fns/fp/endOfYear/index.d.ts +2 -0
  165. package/dist/date-fns/fp/format/index.d.ts +2 -0
  166. package/dist/date-fns/fp/formatDistance/index.d.ts +2 -0
  167. package/dist/date-fns/fp/formatDistanceStrict/index.d.ts +2 -0
  168. package/dist/date-fns/fp/formatDistanceStrictWithOptions/index.d.ts +2 -0
  169. package/dist/date-fns/fp/formatDistanceWithOptions/index.d.ts +2 -0
  170. package/dist/date-fns/fp/formatDuration/index.d.ts +2 -0
  171. package/dist/date-fns/fp/formatDurationWithOptions/index.d.ts +2 -0
  172. package/dist/date-fns/fp/formatISO/index.d.ts +2 -0
  173. package/dist/date-fns/fp/formatISO9075/index.d.ts +2 -0
  174. package/dist/date-fns/fp/formatISO9075WithOptions/index.d.ts +2 -0
  175. package/dist/date-fns/fp/formatISODuration/index.d.ts +2 -0
  176. package/dist/date-fns/fp/formatISOWithOptions/index.d.ts +2 -0
  177. package/dist/date-fns/fp/formatRFC3339/index.d.ts +2 -0
  178. package/dist/date-fns/fp/formatRFC3339WithOptions/index.d.ts +2 -0
  179. package/dist/date-fns/fp/formatRFC7231/index.d.ts +2 -0
  180. package/dist/date-fns/fp/formatRelative/index.d.ts +2 -0
  181. package/dist/date-fns/fp/formatRelativeWithOptions/index.d.ts +2 -0
  182. package/dist/date-fns/fp/formatWithOptions/index.d.ts +2 -0
  183. package/dist/date-fns/fp/fromUnixTime/index.d.ts +2 -0
  184. package/dist/date-fns/fp/getDate/index.d.ts +2 -0
  185. package/dist/date-fns/fp/getDay/index.d.ts +2 -0
  186. package/dist/date-fns/fp/getDayOfYear/index.d.ts +2 -0
  187. package/dist/date-fns/fp/getDaysInMonth/index.d.ts +2 -0
  188. package/dist/date-fns/fp/getDaysInYear/index.d.ts +2 -0
  189. package/dist/date-fns/fp/getDecade/index.d.ts +2 -0
  190. package/dist/date-fns/fp/getHours/index.d.ts +2 -0
  191. package/dist/date-fns/fp/getISODay/index.d.ts +2 -0
  192. package/dist/date-fns/fp/getISOWeek/index.d.ts +2 -0
  193. package/dist/date-fns/fp/getISOWeekYear/index.d.ts +2 -0
  194. package/dist/date-fns/fp/getISOWeeksInYear/index.d.ts +2 -0
  195. package/dist/date-fns/fp/getMilliseconds/index.d.ts +2 -0
  196. package/dist/date-fns/fp/getMinutes/index.d.ts +2 -0
  197. package/dist/date-fns/fp/getMonth/index.d.ts +2 -0
  198. package/dist/date-fns/fp/getOverlappingDaysInIntervals/index.d.ts +2 -0
  199. package/dist/date-fns/fp/getQuarter/index.d.ts +2 -0
  200. package/dist/date-fns/fp/getSeconds/index.d.ts +2 -0
  201. package/dist/date-fns/fp/getTime/index.d.ts +2 -0
  202. package/dist/date-fns/fp/getUnixTime/index.d.ts +2 -0
  203. package/dist/date-fns/fp/getWeek/index.d.ts +2 -0
  204. package/dist/date-fns/fp/getWeekOfMonth/index.d.ts +2 -0
  205. package/dist/date-fns/fp/getWeekOfMonthWithOptions/index.d.ts +2 -0
  206. package/dist/date-fns/fp/getWeekWithOptions/index.d.ts +2 -0
  207. package/dist/date-fns/fp/getWeekYear/index.d.ts +2 -0
  208. package/dist/date-fns/fp/getWeekYearWithOptions/index.d.ts +2 -0
  209. package/dist/date-fns/fp/getWeeksInMonth/index.d.ts +2 -0
  210. package/dist/date-fns/fp/getWeeksInMonthWithOptions/index.d.ts +2 -0
  211. package/dist/date-fns/fp/getYear/index.d.ts +2 -0
  212. package/dist/date-fns/fp/hoursToMilliseconds/index.d.ts +2 -0
  213. package/dist/date-fns/fp/hoursToMinutes/index.d.ts +2 -0
  214. package/dist/date-fns/fp/hoursToSeconds/index.d.ts +2 -0
  215. package/dist/date-fns/fp/index.d.ts +255 -0
  216. package/dist/date-fns/fp/intervalToDuration/index.d.ts +2 -0
  217. package/dist/date-fns/fp/intlFormat/index.d.ts +2 -0
  218. package/dist/date-fns/fp/intlFormatDistance/index.d.ts +2 -0
  219. package/dist/date-fns/fp/intlFormatDistanceWithOptions/index.d.ts +2 -0
  220. package/dist/date-fns/fp/isAfter/index.d.ts +2 -0
  221. package/dist/date-fns/fp/isBefore/index.d.ts +2 -0
  222. package/dist/date-fns/fp/isDate/index.d.ts +2 -0
  223. package/dist/date-fns/fp/isEqual/index.d.ts +2 -0
  224. package/dist/date-fns/fp/isExists/index.d.ts +2 -0
  225. package/dist/date-fns/fp/isFirstDayOfMonth/index.d.ts +2 -0
  226. package/dist/date-fns/fp/isFriday/index.d.ts +2 -0
  227. package/dist/date-fns/fp/isLastDayOfMonth/index.d.ts +2 -0
  228. package/dist/date-fns/fp/isLeapYear/index.d.ts +2 -0
  229. package/dist/date-fns/fp/isMatch/index.d.ts +2 -0
  230. package/dist/date-fns/fp/isMatchWithOptions/index.d.ts +2 -0
  231. package/dist/date-fns/fp/isMonday/index.d.ts +2 -0
  232. package/dist/date-fns/fp/isSameDay/index.d.ts +2 -0
  233. package/dist/date-fns/fp/isSameHour/index.d.ts +2 -0
  234. package/dist/date-fns/fp/isSameISOWeek/index.d.ts +2 -0
  235. package/dist/date-fns/fp/isSameISOWeekYear/index.d.ts +2 -0
  236. package/dist/date-fns/fp/isSameMinute/index.d.ts +2 -0
  237. package/dist/date-fns/fp/isSameMonth/index.d.ts +2 -0
  238. package/dist/date-fns/fp/isSameQuarter/index.d.ts +2 -0
  239. package/dist/date-fns/fp/isSameSecond/index.d.ts +2 -0
  240. package/dist/date-fns/fp/isSameWeek/index.d.ts +2 -0
  241. package/dist/date-fns/fp/isSameWeekWithOptions/index.d.ts +2 -0
  242. package/dist/date-fns/fp/isSameYear/index.d.ts +2 -0
  243. package/dist/date-fns/fp/isSaturday/index.d.ts +2 -0
  244. package/dist/date-fns/fp/isSunday/index.d.ts +2 -0
  245. package/dist/date-fns/fp/isThursday/index.d.ts +2 -0
  246. package/dist/date-fns/fp/isTuesday/index.d.ts +2 -0
  247. package/dist/date-fns/fp/isValid/index.d.ts +2 -0
  248. package/dist/date-fns/fp/isWednesday/index.d.ts +2 -0
  249. package/dist/date-fns/fp/isWeekend/index.d.ts +2 -0
  250. package/dist/date-fns/fp/isWithinInterval/index.d.ts +2 -0
  251. package/dist/date-fns/fp/lastDayOfDecade/index.d.ts +2 -0
  252. package/dist/date-fns/fp/lastDayOfISOWeek/index.d.ts +2 -0
  253. package/dist/date-fns/fp/lastDayOfISOWeekYear/index.d.ts +2 -0
  254. package/dist/date-fns/fp/lastDayOfMonth/index.d.ts +2 -0
  255. package/dist/date-fns/fp/lastDayOfQuarter/index.d.ts +2 -0
  256. package/dist/date-fns/fp/lastDayOfQuarterWithOptions/index.d.ts +2 -0
  257. package/dist/date-fns/fp/lastDayOfWeek/index.d.ts +2 -0
  258. package/dist/date-fns/fp/lastDayOfWeekWithOptions/index.d.ts +2 -0
  259. package/dist/date-fns/fp/lastDayOfYear/index.d.ts +2 -0
  260. package/dist/date-fns/fp/lightFormat/index.d.ts +2 -0
  261. package/dist/date-fns/fp/max/index.d.ts +2 -0
  262. package/dist/date-fns/fp/milliseconds/index.d.ts +2 -0
  263. package/dist/date-fns/fp/millisecondsToHours/index.d.ts +2 -0
  264. package/dist/date-fns/fp/millisecondsToMinutes/index.d.ts +2 -0
  265. package/dist/date-fns/fp/millisecondsToSeconds/index.d.ts +2 -0
  266. package/dist/date-fns/fp/min/index.d.ts +2 -0
  267. package/dist/date-fns/fp/minutesToHours/index.d.ts +2 -0
  268. package/dist/date-fns/fp/minutesToMilliseconds/index.d.ts +2 -0
  269. package/dist/date-fns/fp/minutesToSeconds/index.d.ts +2 -0
  270. package/dist/date-fns/fp/monthsToQuarters/index.d.ts +2 -0
  271. package/dist/date-fns/fp/monthsToYears/index.d.ts +2 -0
  272. package/dist/date-fns/fp/nextDay/index.d.ts +2 -0
  273. package/dist/date-fns/fp/nextFriday/index.d.ts +2 -0
  274. package/dist/date-fns/fp/nextMonday/index.d.ts +2 -0
  275. package/dist/date-fns/fp/nextSaturday/index.d.ts +2 -0
  276. package/dist/date-fns/fp/nextSunday/index.d.ts +2 -0
  277. package/dist/date-fns/fp/nextThursday/index.d.ts +2 -0
  278. package/dist/date-fns/fp/nextTuesday/index.d.ts +2 -0
  279. package/dist/date-fns/fp/nextWednesday/index.d.ts +2 -0
  280. package/dist/date-fns/fp/parse/index.d.ts +2 -0
  281. package/dist/date-fns/fp/parseISO/index.d.ts +2 -0
  282. package/dist/date-fns/fp/parseISOWithOptions/index.d.ts +2 -0
  283. package/dist/date-fns/fp/parseJSON/index.d.ts +2 -0
  284. package/dist/date-fns/fp/parseWithOptions/index.d.ts +2 -0
  285. package/dist/date-fns/fp/previousDay/index.d.ts +2 -0
  286. package/dist/date-fns/fp/previousFriday/index.d.ts +2 -0
  287. package/dist/date-fns/fp/previousMonday/index.d.ts +2 -0
  288. package/dist/date-fns/fp/previousSaturday/index.d.ts +2 -0
  289. package/dist/date-fns/fp/previousSunday/index.d.ts +2 -0
  290. package/dist/date-fns/fp/previousThursday/index.d.ts +2 -0
  291. package/dist/date-fns/fp/previousTuesday/index.d.ts +2 -0
  292. package/dist/date-fns/fp/previousWednesday/index.d.ts +2 -0
  293. package/dist/date-fns/fp/quartersToMonths/index.d.ts +2 -0
  294. package/dist/date-fns/fp/quartersToYears/index.d.ts +2 -0
  295. package/dist/date-fns/fp/roundToNearestMinutes/index.d.ts +2 -0
  296. package/dist/date-fns/fp/roundToNearestMinutesWithOptions/index.d.ts +2 -0
  297. package/dist/date-fns/fp/secondsToHours/index.d.ts +2 -0
  298. package/dist/date-fns/fp/secondsToMilliseconds/index.d.ts +2 -0
  299. package/dist/date-fns/fp/secondsToMinutes/index.d.ts +2 -0
  300. package/dist/date-fns/fp/set/index.d.ts +2 -0
  301. package/dist/date-fns/fp/setDate/index.d.ts +2 -0
  302. package/dist/date-fns/fp/setDay/index.d.ts +2 -0
  303. package/dist/date-fns/fp/setDayOfYear/index.d.ts +2 -0
  304. package/dist/date-fns/fp/setDayWithOptions/index.d.ts +2 -0
  305. package/dist/date-fns/fp/setHours/index.d.ts +2 -0
  306. package/dist/date-fns/fp/setISODay/index.d.ts +2 -0
  307. package/dist/date-fns/fp/setISOWeek/index.d.ts +2 -0
  308. package/dist/date-fns/fp/setISOWeekYear/index.d.ts +2 -0
  309. package/dist/date-fns/fp/setMilliseconds/index.d.ts +2 -0
  310. package/dist/date-fns/fp/setMinutes/index.d.ts +2 -0
  311. package/dist/date-fns/fp/setMonth/index.d.ts +2 -0
  312. package/dist/date-fns/fp/setQuarter/index.d.ts +2 -0
  313. package/dist/date-fns/fp/setSeconds/index.d.ts +2 -0
  314. package/dist/date-fns/fp/setWeek/index.d.ts +2 -0
  315. package/dist/date-fns/fp/setWeekWithOptions/index.d.ts +2 -0
  316. package/dist/date-fns/fp/setWeekYear/index.d.ts +2 -0
  317. package/dist/date-fns/fp/setWeekYearWithOptions/index.d.ts +2 -0
  318. package/dist/date-fns/fp/setYear/index.d.ts +2 -0
  319. package/dist/date-fns/fp/startOfDay/index.d.ts +2 -0
  320. package/dist/date-fns/fp/startOfDecade/index.d.ts +2 -0
  321. package/dist/date-fns/fp/startOfHour/index.d.ts +2 -0
  322. package/dist/date-fns/fp/startOfISOWeek/index.d.ts +2 -0
  323. package/dist/date-fns/fp/startOfISOWeekYear/index.d.ts +2 -0
  324. package/dist/date-fns/fp/startOfMinute/index.d.ts +2 -0
  325. package/dist/date-fns/fp/startOfMonth/index.d.ts +2 -0
  326. package/dist/date-fns/fp/startOfQuarter/index.d.ts +2 -0
  327. package/dist/date-fns/fp/startOfSecond/index.d.ts +2 -0
  328. package/dist/date-fns/fp/startOfWeek/index.d.ts +2 -0
  329. package/dist/date-fns/fp/startOfWeekWithOptions/index.d.ts +2 -0
  330. package/dist/date-fns/fp/startOfWeekYear/index.d.ts +2 -0
  331. package/dist/date-fns/fp/startOfWeekYearWithOptions/index.d.ts +2 -0
  332. package/dist/date-fns/fp/startOfYear/index.d.ts +2 -0
  333. package/dist/date-fns/fp/sub/index.d.ts +2 -0
  334. package/dist/date-fns/fp/subBusinessDays/index.d.ts +2 -0
  335. package/dist/date-fns/fp/subDays/index.d.ts +2 -0
  336. package/dist/date-fns/fp/subHours/index.d.ts +2 -0
  337. package/dist/date-fns/fp/subISOWeekYears/index.d.ts +2 -0
  338. package/dist/date-fns/fp/subMilliseconds/index.d.ts +2 -0
  339. package/dist/date-fns/fp/subMinutes/index.d.ts +2 -0
  340. package/dist/date-fns/fp/subMonths/index.d.ts +2 -0
  341. package/dist/date-fns/fp/subQuarters/index.d.ts +2 -0
  342. package/dist/date-fns/fp/subSeconds/index.d.ts +2 -0
  343. package/dist/date-fns/fp/subWeeks/index.d.ts +2 -0
  344. package/dist/date-fns/fp/subYears/index.d.ts +2 -0
  345. package/dist/date-fns/fp/toDate/index.d.ts +2 -0
  346. package/dist/date-fns/fp/weeksToDays/index.d.ts +2 -0
  347. package/dist/date-fns/fp/yearsToMonths/index.d.ts +2 -0
  348. package/dist/date-fns/fp/yearsToQuarters/index.d.ts +2 -0
  349. package/dist/date-fns/fromUnixTime/index.d.ts +17 -0
  350. package/dist/date-fns/getDate/index.d.ts +17 -0
  351. package/dist/date-fns/getDay/index.d.ts +17 -0
  352. package/dist/date-fns/getDayOfYear/index.d.ts +17 -0
  353. package/dist/date-fns/getDaysInMonth/index.d.ts +17 -0
  354. package/dist/date-fns/getDaysInYear/index.d.ts +17 -0
  355. package/dist/date-fns/getDecade/index.d.ts +17 -0
  356. package/dist/date-fns/getDefaultOptions/index.d.ts +26 -0
  357. package/dist/date-fns/getHours/index.d.ts +17 -0
  358. package/dist/date-fns/getISODay/index.d.ts +20 -0
  359. package/dist/date-fns/getISOWeek/index.d.ts +19 -0
  360. package/dist/date-fns/getISOWeekYear/index.d.ts +20 -0
  361. package/dist/date-fns/getISOWeeksInYear/index.d.ts +19 -0
  362. package/dist/date-fns/getMilliseconds/index.d.ts +17 -0
  363. package/dist/date-fns/getMinutes/index.d.ts +17 -0
  364. package/dist/date-fns/getMonth/index.d.ts +17 -0
  365. package/dist/date-fns/getOverlappingDaysInIntervals/index.d.ts +32 -0
  366. package/dist/date-fns/getQuarter/index.d.ts +17 -0
  367. package/dist/date-fns/getSeconds/index.d.ts +17 -0
  368. package/dist/date-fns/getTime/index.d.ts +17 -0
  369. package/dist/date-fns/getUnixTime/index.d.ts +17 -0
  370. package/dist/date-fns/getWeek/index.d.ts +39 -0
  371. package/dist/date-fns/getWeekOfMonth/index.d.ts +24 -0
  372. package/dist/date-fns/getWeekYear/index.d.ts +40 -0
  373. package/dist/date-fns/getWeeksInMonth/index.d.ts +30 -0
  374. package/dist/date-fns/getYear/index.d.ts +17 -0
  375. package/dist/date-fns/hoursToMilliseconds/index.d.ts +18 -0
  376. package/dist/date-fns/hoursToMinutes/index.d.ts +18 -0
  377. package/dist/date-fns/hoursToSeconds/index.d.ts +18 -0
  378. package/dist/date-fns/index.d.ts +240 -0
  379. package/dist/date-fns/intervalToDuration/index.d.ts +25 -0
  380. package/dist/date-fns/intlFormat/index.d.ts +10 -0
  381. package/dist/date-fns/intlFormatDistance/index.d.ts +107 -0
  382. package/dist/date-fns/isAfter/index.d.ts +18 -0
  383. package/dist/date-fns/isBefore/index.d.ts +18 -0
  384. package/dist/date-fns/isDate/index.d.ts +32 -0
  385. package/dist/date-fns/isEqual/index.d.ts +21 -0
  386. package/dist/date-fns/isExists/index.d.ts +24 -0
  387. package/dist/date-fns/isFirstDayOfMonth/index.d.ts +17 -0
  388. package/dist/date-fns/isFriday/index.d.ts +17 -0
  389. package/dist/date-fns/isFuture/index.d.ts +21 -0
  390. package/dist/date-fns/isLastDayOfMonth/index.d.ts +17 -0
  391. package/dist/date-fns/isLeapYear/index.d.ts +17 -0
  392. package/dist/date-fns/isMatch/index.d.ts +291 -0
  393. package/dist/date-fns/isMonday/index.d.ts +17 -0
  394. package/dist/date-fns/isPast/index.d.ts +21 -0
  395. package/dist/date-fns/isSameDay/index.d.ts +28 -0
  396. package/dist/date-fns/isSameHour/index.d.ts +23 -0
  397. package/dist/date-fns/isSameISOWeek/index.d.ts +25 -0
  398. package/dist/date-fns/isSameISOWeekYear/index.d.ts +20 -0
  399. package/dist/date-fns/isSameMinute/index.d.ts +29 -0
  400. package/dist/date-fns/isSameMonth/index.d.ts +23 -0
  401. package/dist/date-fns/isSameQuarter/index.d.ts +23 -0
  402. package/dist/date-fns/isSameSecond/index.d.ts +37 -0
  403. package/dist/date-fns/isSameWeek/index.d.ts +38 -0
  404. package/dist/date-fns/isSameYear/index.d.ts +18 -0
  405. package/dist/date-fns/isSaturday/index.d.ts +17 -0
  406. package/dist/date-fns/isSunday/index.d.ts +17 -0
  407. package/dist/date-fns/isThisHour/index.d.ts +22 -0
  408. package/dist/date-fns/isThisISOWeek/index.d.ts +23 -0
  409. package/dist/date-fns/isThisMinute/index.d.ts +22 -0
  410. package/dist/date-fns/isThisMonth/index.d.ts +21 -0
  411. package/dist/date-fns/isThisQuarter/index.d.ts +21 -0
  412. package/dist/date-fns/isThisSecond/index.d.ts +22 -0
  413. package/dist/date-fns/isThisWeek/index.d.ts +34 -0
  414. package/dist/date-fns/isThisYear/index.d.ts +21 -0
  415. package/dist/date-fns/isThursday/index.d.ts +17 -0
  416. package/dist/date-fns/isToday/index.d.ts +21 -0
  417. package/dist/date-fns/isTomorrow/index.d.ts +21 -0
  418. package/dist/date-fns/isTuesday/index.d.ts +17 -0
  419. package/dist/date-fns/isValid/index.d.ts +31 -0
  420. package/dist/date-fns/isWednesday/index.d.ts +17 -0
  421. package/dist/date-fns/isWeekend/index.d.ts +17 -0
  422. package/dist/date-fns/isWithinInterval/index.d.ts +40 -0
  423. package/dist/date-fns/isYesterday/index.d.ts +21 -0
  424. package/dist/date-fns/lastDayOfDecade/index.d.ts +17 -0
  425. package/dist/date-fns/lastDayOfISOWeek/index.d.ts +20 -0
  426. package/dist/date-fns/lastDayOfISOWeekYear/index.d.ts +21 -0
  427. package/dist/date-fns/lastDayOfMonth/index.d.ts +18 -0
  428. package/dist/date-fns/lastDayOfQuarter/index.d.ts +18 -0
  429. package/dist/date-fns/lastDayOfWeek/index.d.ts +30 -0
  430. package/dist/date-fns/lastDayOfYear/index.d.ts +18 -0
  431. package/dist/date-fns/lightFormat/index.d.ts +1 -0
  432. package/dist/date-fns/locale/_lib/buildFormatLongFn/index.d.ts +10 -0
  433. package/dist/date-fns/locale/_lib/buildLocalizeFn/index.d.ts +37 -0
  434. package/dist/date-fns/locale/_lib/buildMatchFn/index.d.ts +2 -0
  435. package/dist/date-fns/locale/_lib/buildMatchPatternFn/index.d.ts +7 -0
  436. package/dist/date-fns/locale/en-US/_lib/formatDistance/index.d.ts +3 -0
  437. package/dist/date-fns/locale/en-US/_lib/formatLong/index.d.ts +3 -0
  438. package/dist/date-fns/locale/en-US/_lib/formatRelative/index.d.ts +3 -0
  439. package/dist/date-fns/locale/en-US/_lib/localize/index.d.ts +3 -0
  440. package/dist/date-fns/locale/en-US/_lib/match/index.d.ts +3 -0
  441. package/dist/date-fns/locale/en-US/index.d.ts +12 -0
  442. package/dist/date-fns/locale/index.d.ts +1 -0
  443. package/dist/date-fns/locale/types.d.ts +115 -0
  444. package/dist/date-fns/max/index.d.ts +22 -0
  445. package/dist/date-fns/milliseconds/index.d.ts +30 -0
  446. package/dist/date-fns/millisecondsToHours/index.d.ts +23 -0
  447. package/dist/date-fns/millisecondsToMinutes/index.d.ts +23 -0
  448. package/dist/date-fns/millisecondsToSeconds/index.d.ts +23 -0
  449. package/dist/date-fns/min/index.d.ts +22 -0
  450. package/dist/date-fns/minutesToHours/index.d.ts +23 -0
  451. package/dist/date-fns/minutesToMilliseconds/index.d.ts +18 -0
  452. package/dist/date-fns/minutesToSeconds/index.d.ts +18 -0
  453. package/dist/date-fns/monthsToQuarters/index.d.ts +23 -0
  454. package/dist/date-fns/monthsToYears/index.d.ts +22 -0
  455. package/dist/date-fns/nextDay/index.d.ts +24 -0
  456. package/dist/date-fns/nextFriday/index.d.ts +17 -0
  457. package/dist/date-fns/nextMonday/index.d.ts +17 -0
  458. package/dist/date-fns/nextSaturday/index.d.ts +17 -0
  459. package/dist/date-fns/nextSunday/index.d.ts +17 -0
  460. package/dist/date-fns/nextThursday/index.d.ts +17 -0
  461. package/dist/date-fns/nextTuesday/index.d.ts +17 -0
  462. package/dist/date-fns/nextWednesday/index.d.ts +17 -0
  463. package/dist/date-fns/parse/_lib/Parser.d.ts +15 -0
  464. package/dist/date-fns/parse/_lib/Setter.d.ts +21 -0
  465. package/dist/date-fns/parse/_lib/constants.d.ts +28 -0
  466. package/dist/date-fns/parse/_lib/parsers/AMPMMidnightParser.d.ts +9 -0
  467. package/dist/date-fns/parse/_lib/parsers/AMPMParser.d.ts +9 -0
  468. package/dist/date-fns/parse/_lib/parsers/DateParser.d.ts +11 -0
  469. package/dist/date-fns/parse/_lib/parsers/DayOfYearParser.d.ts +11 -0
  470. package/dist/date-fns/parse/_lib/parsers/DayParser.d.ts +10 -0
  471. package/dist/date-fns/parse/_lib/parsers/DayPeriodParser.d.ts +9 -0
  472. package/dist/date-fns/parse/_lib/parsers/EraParser.d.ts +10 -0
  473. package/dist/date-fns/parse/_lib/parsers/ExtendedYearParser.d.ts +8 -0
  474. package/dist/date-fns/parse/_lib/parsers/FractionOfSecondParser.d.ts +8 -0
  475. package/dist/date-fns/parse/_lib/parsers/Hour0To11Parser.d.ts +10 -0
  476. package/dist/date-fns/parse/_lib/parsers/Hour0to23Parser.d.ts +10 -0
  477. package/dist/date-fns/parse/_lib/parsers/Hour1To24Parser.d.ts +10 -0
  478. package/dist/date-fns/parse/_lib/parsers/Hour1to12Parser.d.ts +10 -0
  479. package/dist/date-fns/parse/_lib/parsers/ISODayParser.d.ts +10 -0
  480. package/dist/date-fns/parse/_lib/parsers/ISOTimezoneParser.d.ts +8 -0
  481. package/dist/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.d.ts +8 -0
  482. package/dist/date-fns/parse/_lib/parsers/ISOWeekParser.d.ts +10 -0
  483. package/dist/date-fns/parse/_lib/parsers/ISOWeekYearParser.d.ts +8 -0
  484. package/dist/date-fns/parse/_lib/parsers/LocalDayParser.d.ts +10 -0
  485. package/dist/date-fns/parse/_lib/parsers/LocalWeekParser.d.ts +10 -0
  486. package/dist/date-fns/parse/_lib/parsers/LocalWeekYearParser.d.ts +11 -0
  487. package/dist/date-fns/parse/_lib/parsers/MinuteParser.d.ts +10 -0
  488. package/dist/date-fns/parse/_lib/parsers/MonthParser.d.ts +10 -0
  489. package/dist/date-fns/parse/_lib/parsers/QuarterParser.d.ts +10 -0
  490. package/dist/date-fns/parse/_lib/parsers/SecondParser.d.ts +10 -0
  491. package/dist/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.d.ts +10 -0
  492. package/dist/date-fns/parse/_lib/parsers/StandAloneMonthParser.d.ts +10 -0
  493. package/dist/date-fns/parse/_lib/parsers/StandAloneQuarterParser.d.ts +10 -0
  494. package/dist/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.d.ts +8 -0
  495. package/dist/date-fns/parse/_lib/parsers/TimestampSecondsParser.d.ts +8 -0
  496. package/dist/date-fns/parse/_lib/parsers/YearParser.d.ts +14 -0
  497. package/dist/date-fns/parse/_lib/parsers/index.d.ts +2 -0
  498. package/dist/date-fns/parse/_lib/types.d.ts +10 -0
  499. package/dist/date-fns/parse/_lib/utils.d.ts +11 -0
  500. package/dist/date-fns/parse/index.d.ts +300 -0
  501. package/dist/date-fns/parseISO/index.d.ts +36 -0
  502. package/dist/date-fns/parseJSON/index.d.ts +34 -0
  503. package/dist/date-fns/previousDay/index.d.ts +24 -0
  504. package/dist/date-fns/previousFriday/index.d.ts +17 -0
  505. package/dist/date-fns/previousMonday/index.d.ts +17 -0
  506. package/dist/date-fns/previousSaturday/index.d.ts +17 -0
  507. package/dist/date-fns/previousSunday/index.d.ts +17 -0
  508. package/dist/date-fns/previousThursday/index.d.ts +17 -0
  509. package/dist/date-fns/previousTuesday/index.d.ts +17 -0
  510. package/dist/date-fns/previousWednesday/index.d.ts +17 -0
  511. package/dist/date-fns/quartersToMonths/index.d.ts +18 -0
  512. package/dist/date-fns/quartersToYears/index.d.ts +23 -0
  513. package/dist/date-fns/roundToNearestMinutes/index.d.ts +33 -0
  514. package/dist/date-fns/secondsToHours/index.d.ts +23 -0
  515. package/dist/date-fns/secondsToMilliseconds/index.d.ts +18 -0
  516. package/dist/date-fns/secondsToMinutes/index.d.ts +23 -0
  517. package/dist/date-fns/set/index.d.ts +38 -0
  518. package/dist/date-fns/setDate/index.d.ts +18 -0
  519. package/dist/date-fns/setDay/index.d.ts +30 -0
  520. package/dist/date-fns/setDayOfYear/index.d.ts +18 -0
  521. package/dist/date-fns/setDefaultOptions/index.d.ts +50 -0
  522. package/dist/date-fns/setHours/index.d.ts +18 -0
  523. package/dist/date-fns/setISODay/index.d.ts +20 -0
  524. package/dist/date-fns/setISOWeek/index.d.ts +20 -0
  525. package/dist/date-fns/setISOWeekYear/index.d.ts +21 -0
  526. package/dist/date-fns/setMilliseconds/index.d.ts +18 -0
  527. package/dist/date-fns/setMinutes/index.d.ts +18 -0
  528. package/dist/date-fns/setMonth/index.d.ts +18 -0
  529. package/dist/date-fns/setQuarter/index.d.ts +18 -0
  530. package/dist/date-fns/setSeconds/index.d.ts +18 -0
  531. package/dist/date-fns/setWeek/index.d.ts +41 -0
  532. package/dist/date-fns/setWeekYear/index.d.ts +42 -0
  533. package/dist/date-fns/setYear/index.d.ts +18 -0
  534. package/dist/date-fns/startOfDay/index.d.ts +18 -0
  535. package/dist/date-fns/startOfDecade/index.d.ts +17 -0
  536. package/dist/date-fns/startOfHour/index.d.ts +18 -0
  537. package/dist/date-fns/startOfISOWeek/index.d.ts +20 -0
  538. package/dist/date-fns/startOfISOWeekYear/index.d.ts +21 -0
  539. package/dist/date-fns/startOfMinute/index.d.ts +18 -0
  540. package/dist/date-fns/startOfMonth/index.d.ts +18 -0
  541. package/dist/date-fns/startOfQuarter/index.d.ts +18 -0
  542. package/dist/date-fns/startOfSecond/index.d.ts +18 -0
  543. package/dist/date-fns/startOfToday/index.d.ts +20 -0
  544. package/dist/date-fns/startOfTomorrow/index.d.ts +20 -0
  545. package/dist/date-fns/startOfWeek/index.d.ts +30 -0
  546. package/dist/date-fns/startOfWeekYear/index.d.ts +40 -0
  547. package/dist/date-fns/startOfYear/index.d.ts +18 -0
  548. package/dist/date-fns/startOfYesterday/index.d.ts +20 -0
  549. package/dist/date-fns/sub/index.d.ts +40 -0
  550. package/dist/date-fns/subBusinessDays/index.d.ts +18 -0
  551. package/dist/date-fns/subDays/index.d.ts +18 -0
  552. package/dist/date-fns/subHours/index.d.ts +18 -0
  553. package/dist/date-fns/subISOWeekYears/index.d.ts +20 -0
  554. package/dist/date-fns/subMilliseconds/index.d.ts +18 -0
  555. package/dist/date-fns/subMinutes/index.d.ts +18 -0
  556. package/dist/date-fns/subMonths/index.d.ts +18 -0
  557. package/dist/date-fns/subQuarters/index.d.ts +18 -0
  558. package/dist/date-fns/subSeconds/index.d.ts +18 -0
  559. package/dist/date-fns/subWeeks/index.d.ts +18 -0
  560. package/dist/date-fns/subYears/index.d.ts +18 -0
  561. package/dist/date-fns/toDate/index.d.ts +31 -0
  562. package/dist/date-fns/transpose/index.d.ts +25 -0
  563. package/dist/date-fns/types.d.ts +70 -0
  564. package/dist/date-fns/weeksToDays/index.d.ts +18 -0
  565. package/dist/date-fns/yearsToMonths/index.d.ts +18 -0
  566. package/dist/date-fns/yearsToQuarters/index.d.ts +18 -0
  567. package/dist/date-fns-tz/_lib/newDateUTC/index.d.ts +8 -0
  568. package/dist/date-fns-tz/_lib/tzIntlTimeZoneName/index.d.ts +10 -0
  569. package/dist/date-fns-tz/_lib/tzParseTimezone/index.d.ts +1 -0
  570. package/dist/date-fns-tz/_lib/tzPattern/index.d.ts +3 -0
  571. package/dist/date-fns-tz/_lib/tzTokenizeDate/index.d.ts +5 -0
  572. package/dist/date-fns-tz/format/formatters/index.d.ts +19 -0
  573. package/dist/date-fns-tz/format/index.d.ts +312 -0
  574. package/dist/date-fns-tz/formatInTimeZone/index.d.ts +24 -0
  575. package/dist/date-fns-tz/getTimezoneOffset/index.d.ts +28 -0
  576. package/dist/date-fns-tz/index.d.ts +6 -0
  577. package/dist/date-fns-tz/toDate/index.d.ts +43 -0
  578. package/dist/date-fns-tz/types.d.ts +13 -0
  579. package/dist/date-fns-tz/utcToZonedTime/index.d.ts +26 -0
  580. package/dist/date-fns-tz/zonedTimeToUtc/index.d.ts +26 -0
  581. package/dist/format-utc.d.ts +1 -0
  582. package/dist/index.d.ts +4 -0
  583. package/dist/index.js +2 -0
  584. package/dist/index.js.map +1 -0
  585. package/dist/instant.d.ts +28 -0
  586. package/dist/now.d.ts +9 -0
  587. package/dist/temporal.d.ts +2 -0
  588. package/package.json +55 -0
@@ -0,0 +1,72 @@
1
+ name: CI
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - 'main'
7
+
8
+ env:
9
+ CI: true
10
+
11
+ jobs:
12
+ pullRequestBuild:
13
+ name: Pull Request Build
14
+ runs-on: ubuntu-latest
15
+ strategy:
16
+ matrix:
17
+ node-version: [16.x, 18.x]
18
+ steps:
19
+ - uses: actions/checkout@v3
20
+ - name: Use Node.js ${{ matrix.node-version }}
21
+ uses: actions/setup-node@v3
22
+ with:
23
+ node-version: ${{ matrix.node-version }}
24
+ cache: 'npm'
25
+ - name: Install dependencies
26
+ run: npm ci --ignore-scripts
27
+ env:
28
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
29
+ - name: Audit Signatures
30
+ run: npm audit signatures
31
+ env:
32
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
33
+ - name: Compile
34
+ run: npm run ci:compile
35
+ - name: Check Code Style
36
+ run: npm run ci:style
37
+ - name: Perform Linting
38
+ run: npm run ci:lint
39
+ - name: Run Tests
40
+ run: npm run ci:test
41
+
42
+ branchBuild:
43
+ runs-on: ubuntu-latest
44
+ name: Branch Build
45
+ strategy:
46
+ matrix:
47
+ node-version: [16.x, 18.x]
48
+ steps:
49
+ - uses: actions/checkout@v3
50
+ with:
51
+ ref: ${{ github.event.pull_request.head.sha }}
52
+ - name: Use Node.js ${{ matrix.node-version }}
53
+ uses: actions/setup-node@v3
54
+ with:
55
+ node-version: ${{ matrix.node-version }}
56
+ cache: 'npm'
57
+ - name: Install dependencies
58
+ run: npm ci --ignore-scripts
59
+ env:
60
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
61
+ - name: Audit Signatures
62
+ run: npm audit signatures
63
+ env:
64
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
65
+ - name: Compile
66
+ run: npm run ci:compile
67
+ - name: Check Code Style
68
+ run: npm run ci:style
69
+ - name: Perform Linting
70
+ run: npm run ci:lint
71
+ - name: Run Tests
72
+ run: npm run ci:test
@@ -0,0 +1,31 @@
1
+ name: 'CodeQL'
2
+
3
+ on:
4
+ push:
5
+ branches: ['main']
6
+ pull_request:
7
+ branches: ['main']
8
+ schedule:
9
+ - cron: '22 7 * * 1'
10
+
11
+ jobs:
12
+ analyze:
13
+ name: Analyze
14
+ runs-on: ubuntu-latest
15
+ permissions:
16
+ actions: read
17
+ contents: read
18
+ security-events: write
19
+ strategy:
20
+ fail-fast: false
21
+ matrix:
22
+ language: ['javascript']
23
+ steps:
24
+ - name: Checkout repository
25
+ uses: actions/checkout@v3
26
+ - name: Initialize CodeQL
27
+ uses: github/codeql-action/init@v2
28
+ with:
29
+ languages: ${{ matrix.language }}
30
+ - name: Perform CodeQL Analysis
31
+ uses: github/codeql-action/analyze@v2
@@ -0,0 +1,46 @@
1
+ name: Coverage
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - 'main'
7
+
8
+ env:
9
+ CI: true
10
+
11
+ jobs:
12
+ branchBuild:
13
+ runs-on: ubuntu-latest
14
+ name: Branch Build
15
+ strategy:
16
+ matrix:
17
+ node-version: [16.x]
18
+ steps:
19
+ - uses: actions/checkout@v3
20
+ with:
21
+ ref: ${{ github.event.pull_request.head.sha }}
22
+ - name: Use Node.js ${{ matrix.node-version }}
23
+ uses: actions/setup-node@v3
24
+ with:
25
+ node-version: ${{ matrix.node-version }}
26
+ cache: 'npm'
27
+ - name: Install dependencies
28
+ run: npm ci --ignore-scripts
29
+ env:
30
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
31
+ - name: Calculate Code Coverage
32
+ run: npm run ci:coverage
33
+ - name: Create Coverage Report for base branch
34
+ run: |
35
+ mv coverage/lcov.info coverage/lcov_head.info
36
+ git fetch
37
+ git checkout origin/${{ github.event.pull_request.base.ref }}
38
+ npm ci --ignore-scripts && npm run ci:coverage
39
+ env:
40
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
41
+ - name: Post Coverage Report
42
+ uses: checkdigit/github-actions/coverage-reporter@main
43
+ with:
44
+ lcov-file: 'coverage/lcov_head.info'
45
+ lcov-base: 'coverage/lcov.info'
46
+ delete-old-comments: true
package/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License
2
+
3
+ Copyright (c) 2022 Check Digit, LLC.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,76 @@
1
+ # Check Digit Time Library
2
+
3
+ The Check Digit time library is the officially sanctioned method for Check Digit services to deal with time. It is a partial implementation of the new TC39 Temporal proposal
4
+ and date manipulation functions provided by date-fns. Features:
5
+
6
+ - Nanosecond precision date times, simulated with Node's built-in high-resolution timer
7
+ - Tests that verify compliance with latest TC39 polyfill
8
+ - Designed to be removed once Temporal is included, by default, within V8.
9
+ - Implements most of Temporal.Instant, except timezone/calendar functionality
10
+ - Implements Temporal.Now.instant()
11
+ - Stripped down `date-fns` functions
12
+ - `date-fns-tz` for timezone support
13
+ - `formatUtc` for formatting UTC dates
14
+
15
+ Temporal (vs the millisecond precision of standard Date built-in) is useful for webservices recording the time of events, where concurrent activity may occur and millisecond precision does not provide adequate uniqueness and ordering.
16
+
17
+ The [`date-fns`](https://date-fns.org) library is included. The only locale currently supported is `en-US`, but otherwise contains all
18
+ available functionality as of v2.29.1.
19
+
20
+ Additionally, the [`date-fns-tz`](https://github.com/marnusw/date-fns-tz) library is included. Contains all
21
+ available functionality as of v1.3.7.
22
+
23
+ ### `formatUtc`
24
+
25
+ The `formatUtc` function is a wrapper around `date-fns-tz`'s `format` function, but with the following differences:
26
+
27
+ - There is no `options` argument, `timeZone` is always UTC.
28
+
29
+ Generally speaking, `formatUtc` should be used in place of `format` or `tzFormat`, unless non-UTC time zones are required.
30
+
31
+ ### Important note about `Instant.toString()`
32
+
33
+ Unlike built-in `Date.toISOString()`, `Instant.toString()` will not add fractional second digits if those values are zero.
34
+
35
+ E.g.
36
+
37
+ ```
38
+ new Date(0).toISOString() -> 1970-01-01T00:00:00.100Z
39
+
40
+ vs
41
+
42
+ Temporal.Instant(0n).toString() -> 1970-01-01T00:00:00.1Z
43
+ ```
44
+
45
+ ### Why not just use the polyfill?
46
+
47
+ The polyfill is not production ready. The implementation is designed to be used in the browser so cannot make use of Node's high-resolution timer to more accurately simulate nanosecond precision time. Crucially, the polyfill does not guarantee always increasing nanosecond precision times on subsequent calls, which makes it a non-starter for recording the time of events in production webservices.
48
+
49
+ ### Installing and usage
50
+
51
+ `npm install @checkdigit/time` then:
52
+
53
+ ```
54
+ import { Temporal } from '@checkdigit/time'; // delete this once Temporal becomes a built-in
55
+
56
+ // print out nanosecond-precision ISO8601 datetime
57
+ console.log('Current time', Temporal.Now.instant().toString());
58
+ ```
59
+
60
+ For `date-fns` functionality:
61
+
62
+ ```
63
+ import { formatUtc } from '@checkdigit/time';
64
+
65
+ console.log(formatUtc(new Date(), 'yyyy-MM-dd'));
66
+ ```
67
+
68
+ ### Documentation
69
+
70
+ The stage 3 proposal can be found here: https://github.com/tc39/proposal-temporal
71
+
72
+ The reference documentation is here: https://tc39.es/proposal-temporal/docs/
73
+
74
+ The documentation for `date-fns` is here: https://date-fns.org/
75
+
76
+ The documentation for `date-fns-tz` is here: https://github.com/marnusw/date-fns-tz
package/SECURITY.md ADDED
@@ -0,0 +1,14 @@
1
+ # Security Policy
2
+
3
+ ## Supported Versions
4
+
5
+ These versions of `@checkdigit/time` are currently being supported with security updates.
6
+
7
+ | Version | Supported |
8
+ | ------- | ------------------ |
9
+ | \>= 1.x | :white_check_mark: |
10
+ | < 1.0 | :x: |
11
+
12
+ ## Reporting a Vulnerability
13
+
14
+ Please create an issue at https://github.com/checkdigit/time/issues
@@ -0,0 +1 @@
1
+ export default function addLeadingZeros(number: number, targetLength: number): string;
@@ -0,0 +1 @@
1
+ export default function assign<T, U>(target: T, object: U): T & U;
@@ -0,0 +1 @@
1
+ export default function cloneObject<T>(object: T): T;
@@ -0,0 +1,2 @@
1
+ import defaultLocale from '../../locale/en-US/index';
2
+ export default defaultLocale;
@@ -0,0 +1,4 @@
1
+ import type { FirstWeekContainsDateOptions, LocaleOptions, WeekStartOptions } from '../../types';
2
+ export declare type DefaultOptions = LocaleOptions & WeekStartOptions & FirstWeekContainsDateOptions;
3
+ export declare function getDefaultOptions(): DefaultOptions;
4
+ export declare function setDefaultOptions(newOptions: DefaultOptions): void;
@@ -0,0 +1,9 @@
1
+ import type { Localize } from '../../../locale/types';
2
+ import type { FirstWeekContainsDateOptions, LocaleOptions, WeekStartOptions } from '../../../types';
3
+ declare type Formatter = (date: Date, token: string, localize: Localize, options: Required<LocaleOptions & WeekStartOptions & FirstWeekContainsDateOptions> & {
4
+ _originalDate: Date;
5
+ }) => string;
6
+ declare const formatters: {
7
+ [token: string]: Formatter;
8
+ };
9
+ export default formatters;
@@ -0,0 +1,12 @@
1
+ declare const formatters: {
2
+ y(date: Date, token: string): string;
3
+ M(date: Date, token: string): string;
4
+ d(date: Date, token: string): string;
5
+ a(date: Date, token: string): string;
6
+ h(date: Date, token: string): string;
7
+ H(date: Date, token: string): string;
8
+ m(date: Date, token: string): string;
9
+ s(date: Date, token: string): string;
10
+ S(date: Date, token: string): string;
11
+ };
12
+ export default formatters;
@@ -0,0 +1,4 @@
1
+ import type { FormatLong } from '../../../locale/types';
2
+ declare type LongFormatter = (pattern: string, formatLong: FormatLong) => string;
3
+ declare const longFormatters: Record<string, LongFormatter>;
4
+ export default longFormatters;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.
3
+ * They usually appear for dates that denote time before the timezones were introduced
4
+ * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891
5
+ * and GMT+01:00:00 after that date)
6
+ *
7
+ * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,
8
+ * which would lead to incorrect calculations.
9
+ *
10
+ * This function returns the timezone offset in milliseconds that takes seconds in account.
11
+ */
12
+ export default function getTimezoneOffsetInMilliseconds(date: Date): number;
@@ -0,0 +1,3 @@
1
+ export declare function isProtectedDayOfYearToken(token: string): boolean;
2
+ export declare function isProtectedWeekYearToken(token: string): boolean;
3
+ export declare function throwProtectedError(token: string, format: string, input: string): void;
@@ -0,0 +1,2 @@
1
+ import type { RoundingMethod } from '../../types';
2
+ export declare function getRoundingMethod(method: RoundingMethod | undefined): (x: number) => number;
@@ -0,0 +1,40 @@
1
+ import type { Duration } from '../types';
2
+ /**
3
+ * @name add
4
+ * @category Common Helpers
5
+ * @summary Add the specified years, months, weeks, days, hours, minutes and seconds to the given date.
6
+ *
7
+ * @description
8
+ * Add the specified years, months, weeks, days, hours, minutes and seconds to the given date.
9
+ *
10
+ * @param date - the date to be changed
11
+ * @param duration - the object with years, months, weeks, days, hours, minutes and seconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
12
+ *
13
+ * | Key | Description |
14
+ * |----------------|------------------------------------|
15
+ * | years | Amount of years to be added |
16
+ * | months | Amount of months to be added |
17
+ * | weeks | Amount of weeks to be added |
18
+ * | days | Amount of days to be added |
19
+ * | hours | Amount of hours to be added |
20
+ * | minutes | Amount of minutes to be added |
21
+ * | seconds | Amount of seconds to be added |
22
+ *
23
+ * All values default to 0
24
+ *
25
+ * @returns the new date with the seconds added
26
+ *
27
+ * @example
28
+ * // Add the following duration to 1 September 2014, 10:19:50
29
+ * const result = add(new Date(2014, 8, 1, 10, 19, 50), {
30
+ * years: 2,
31
+ * months: 9,
32
+ * weeks: 1,
33
+ * days: 7,
34
+ * hours: 5,
35
+ * minutes: 9,
36
+ * seconds: 30,
37
+ * })
38
+ * //=> Thu Jun 15 2017 15:29:20
39
+ */
40
+ export default function add<DateType extends Date>(dirtyDate: DateType | number, duration: Duration): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addBusinessDays
3
+ * @category Date Extension Helpers
4
+ * @summary Add the specified number of business days (mon - fri) to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of business days (mon - fri) to the given date, ignoring weekends.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of business days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the business days added
12
+ *
13
+ * @example
14
+ * // Add 10 business days to 1 September 2014:
15
+ * const result = addBusinessDays(new Date(2014, 8, 1), 10)
16
+ * //=> Mon Sep 15 2014 00:00:00 (skipped weekend days)
17
+ */
18
+ export default function addBusinessDays<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addDays
3
+ * @category Day Helpers
4
+ * @summary Add the specified number of days to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of days to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns - the new date with the days added
12
+ *
13
+ * @example
14
+ * // Add 10 days to 1 September 2014:
15
+ * const result = addDays(new Date(2014, 8, 1), 10)
16
+ * //=> Thu Sep 11 2014 00:00:00
17
+ */
18
+ export default function addDays<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addHours
3
+ * @category Hour Helpers
4
+ * @summary Add the specified number of hours to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of hours to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of hours to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the hours added
12
+ *
13
+ * @example
14
+ * // Add 2 hours to 10 July 2014 23:00:00:
15
+ * const result = addHours(new Date(2014, 6, 10, 23, 0), 2)
16
+ * //=> Fri Jul 11 2014 01:00:00
17
+ */
18
+ export default function addHours<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * @name addISOWeekYears
3
+ * @category ISO Week-Numbering Year Helpers
4
+ * @summary Add the specified number of ISO week-numbering years to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of ISO week-numbering years to the given date.
8
+ *
9
+ * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date
10
+ *
11
+ * @param date - the date to be changed
12
+ * @param amount - the amount of ISO week-numbering years to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
13
+ * @returns the new date with the ISO week-numbering years added
14
+ *
15
+ * @example
16
+ * // Add 5 ISO week-numbering years to 2 July 2010:
17
+ * const result = addISOWeekYears(new Date(2010, 6, 2), 5)
18
+ * //=> Fri Jn 26 2015 00:00:00
19
+ */
20
+ export default function addISOWeekYears<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addMilliseconds
3
+ * @category Millisecond Helpers
4
+ * @summary Add the specified number of milliseconds to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of milliseconds to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the milliseconds added
12
+ *
13
+ * @example
14
+ * // Add 750 milliseconds to 10 July 2014 12:45:30.000:
15
+ * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)
16
+ * //=> Thu Jul 10 2014 12:45:30.750
17
+ */
18
+ export default function addMilliseconds<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addMinutes
3
+ * @category Minute Helpers
4
+ * @summary Add the specified number of minutes to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of minutes to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of minutes to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the minutes added
12
+ *
13
+ * @example
14
+ * // Add 30 minutes to 10 July 2014 12:00:00:
15
+ * const result = addMinutes(new Date(2014, 6, 10, 12, 0), 30)
16
+ * //=> Thu Jul 10 2014 12:30:00
17
+ */
18
+ export default function addMinutes<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addMonths
3
+ * @category Month Helpers
4
+ * @summary Add the specified number of months to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of months to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of months to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the months added
12
+ *
13
+ * @example
14
+ * // Add 5 months to 1 September 2014:
15
+ * const result = addMonths(new Date(2014, 8, 1), 5)
16
+ * //=> Sun Feb 01 2015 00:00:00
17
+ */
18
+ export default function addMonths<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addQuarters
3
+ * @category Quarter Helpers
4
+ * @summary Add the specified number of year quarters to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of year quarters to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of quarters to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the quarters added
12
+ *
13
+ * @example
14
+ * // Add 1 quarter to 1 September 2014:
15
+ * const result = addQuarters(new Date(2014, 8, 1), 1)
16
+ * //=> Mon Dec 01 2014 00:00:00
17
+ */
18
+ export default function addQuarters<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addSeconds
3
+ * @category Second Helpers
4
+ * @summary Add the specified number of seconds to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of seconds to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of seconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the seconds added
12
+ *
13
+ * @example
14
+ * // Add 30 seconds to 10 July 2014 12:45:00:
15
+ * const result = addSeconds(new Date(2014, 6, 10, 12, 45, 0), 30)
16
+ * //=> Thu Jul 10 2014 12:45:30
17
+ */
18
+ export default function addSeconds<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addWeeks
3
+ * @category Week Helpers
4
+ * @summary Add the specified number of weeks to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of week to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of weeks to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the weeks added
12
+ *
13
+ * @example
14
+ * // Add 4 weeks to 1 September 2014:
15
+ * const result = addWeeks(new Date(2014, 8, 1), 4)
16
+ * //=> Mon Sep 29 2014 00:00:00
17
+ */
18
+ export default function addWeeks<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @name addYears
3
+ * @category Year Helpers
4
+ * @summary Add the specified number of years to the given date.
5
+ *
6
+ * @description
7
+ * Add the specified number of years to the given date.
8
+ *
9
+ * @param date - the date to be changed
10
+ * @param amount - the amount of years to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.
11
+ * @returns the new date with the years added
12
+ *
13
+ * @example
14
+ * // Add 5 years to 1 September 2014:
15
+ * const result = addYears(new Date(2014, 8, 1), 5)
16
+ * //=> Sun Sep 01 2019 00:00:00
17
+ */
18
+ export default function addYears<DateType extends Date>(dirtyDate: DateType | number, amount: number): DateType;
@@ -0,0 +1,61 @@
1
+ import type { Interval } from '../types';
2
+ /**
3
+ * The {@link areIntervalsOverlapping} function options.
4
+ */
5
+ export interface AreIntervalsOverlappingOptions {
6
+ inclusive?: boolean;
7
+ }
8
+ /**
9
+ * @name areIntervalsOverlapping
10
+ * @category Interval Helpers
11
+ * @summary Is the given time interval overlapping with another time interval?
12
+ *
13
+ * @description
14
+ * Is the given time interval overlapping with another time interval? Adjacent intervals do not count as overlapping.
15
+ *
16
+ * @param intervalLeft - the first interval to compare. See [Interval]{@link https://date-fns.org/docs/Interval}
17
+ * @param intervalRight - the second interval to compare. See [Interval]{@link https://date-fns.org/docs/Interval}
18
+ * @param options - the object with options
19
+ * @returns whether the time intervals are overlapping
20
+ * @throws {RangeError} The start of an interval cannot be after its end
21
+ * @throws {RangeError} Date in interval cannot be `Invalid Date`
22
+ *
23
+ * @example
24
+ * // For overlapping time intervals:
25
+ * areIntervalsOverlapping(
26
+ * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },
27
+ * { start: new Date(2014, 0, 17), end: new Date(2014, 0, 21) }
28
+ * )
29
+ * //=> true
30
+ *
31
+ * @example
32
+ * // For non-overlapping time intervals:
33
+ * areIntervalsOverlapping(
34
+ * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },
35
+ * { start: new Date(2014, 0, 21), end: new Date(2014, 0, 22) }
36
+ * )
37
+ * //=> false
38
+ *
39
+ * @example
40
+ * // For adjacent time intervals:
41
+ * areIntervalsOverlapping(
42
+ * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },
43
+ * { start: new Date(2014, 0, 20), end: new Date(2014, 0, 30) }
44
+ * )
45
+ * //=> false
46
+ *
47
+ * @example
48
+ * // Using the inclusive option:
49
+ * areIntervalsOverlapping(
50
+ * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },
51
+ * { start: new Date(2014, 0, 20), end: new Date(2014, 0, 24) }
52
+ * )
53
+ * //=> false
54
+ * areIntervalsOverlapping(
55
+ * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },
56
+ * { start: new Date(2014, 0, 20), end: new Date(2014, 0, 24) },
57
+ * { inclusive: true }
58
+ * )
59
+ * //=> true
60
+ */
61
+ export default function areIntervalsOverlapping(intervalLeft: Interval, intervalRight: Interval, options?: AreIntervalsOverlappingOptions): boolean;