chrono-node 2.9.2 → 2.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (319) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/locales/en/constants.d.ts +1 -1
  3. package/dist/cjs/locales/en/constants.js +1 -1
  4. package/dist/cjs/locales/en/constants.js.map +1 -1
  5. package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
  6. package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
  7. package/dist/cjs/locales/fr/constants.js +13 -0
  8. package/dist/cjs/locales/fr/constants.js.map +1 -1
  9. package/dist/cjs/locales/it/configuration.d.ts +5 -0
  10. package/dist/cjs/locales/it/configuration.js +66 -0
  11. package/dist/cjs/locales/it/configuration.js.map +1 -0
  12. package/dist/cjs/locales/it/constants.d.ts +8 -4
  13. package/dist/cjs/locales/it/constants.js +216 -90
  14. package/dist/cjs/locales/it/constants.js.map +1 -1
  15. package/dist/cjs/locales/it/index.d.ts +9 -7
  16. package/dist/cjs/locales/it/index.js +13 -51
  17. package/dist/cjs/locales/it/index.js.map +1 -1
  18. package/dist/cjs/locales/it/parsers/ITCasualDateParser.js +19 -10
  19. package/dist/cjs/locales/it/parsers/ITCasualDateParser.js.map +1 -1
  20. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
  21. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js +70 -37
  22. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
  23. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
  24. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js +6 -6
  25. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
  26. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
  27. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -6
  28. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
  29. package/dist/cjs/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
  30. package/dist/cjs/locales/it/parsers/ITMonthNameParser.js +5 -4
  31. package/dist/cjs/locales/it/parsers/ITMonthNameParser.js.map +1 -1
  32. package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
  33. package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
  34. package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
  35. package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.js +2 -2
  36. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
  37. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js +37 -29
  38. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
  39. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
  40. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
  41. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
  42. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
  43. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +17 -9
  44. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
  45. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
  46. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
  47. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
  48. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
  49. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js +21 -6
  50. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
  51. package/dist/cjs/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
  52. package/dist/cjs/locales/it/parsers/ITWeekdayParser.js +21 -12
  53. package/dist/cjs/locales/it/parsers/ITWeekdayParser.js.map +1 -1
  54. package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
  55. package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -8
  56. package/dist/cjs/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
  57. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
  58. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js +34 -0
  59. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
  60. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
  61. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js +3 -3
  62. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
  63. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
  64. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js +3 -3
  65. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
  66. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
  67. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +30 -0
  68. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
  69. package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
  70. package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +8 -8
  71. package/dist/cjs/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
  72. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
  73. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js +26 -0
  74. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
  75. package/dist/cjs/results.js +15 -9
  76. package/dist/cjs/results.js.map +1 -1
  77. package/dist/esm/locales/en/constants.d.ts +1 -1
  78. package/dist/esm/locales/en/constants.js +1 -1
  79. package/dist/esm/locales/en/constants.js.map +1 -1
  80. package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
  81. package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
  82. package/dist/esm/locales/fr/constants.js +13 -0
  83. package/dist/esm/locales/fr/constants.js.map +1 -1
  84. package/dist/esm/locales/it/configuration.d.ts +5 -0
  85. package/dist/esm/locales/it/configuration.js +60 -0
  86. package/dist/esm/locales/it/configuration.js.map +1 -0
  87. package/dist/esm/locales/it/constants.d.ts +8 -4
  88. package/dist/esm/locales/it/constants.js +256 -117
  89. package/dist/esm/locales/it/constants.js.map +1 -1
  90. package/dist/esm/locales/it/index.d.ts +9 -7
  91. package/dist/esm/locales/it/index.js +8 -48
  92. package/dist/esm/locales/it/index.js.map +1 -1
  93. package/dist/esm/locales/it/parsers/ITCasualDateParser.js +19 -10
  94. package/dist/esm/locales/it/parsers/ITCasualDateParser.js.map +1 -1
  95. package/dist/esm/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
  96. package/dist/esm/locales/it/parsers/ITCasualTimeParser.js +37 -37
  97. package/dist/esm/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
  98. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
  99. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js +5 -5
  100. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
  101. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
  102. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -5
  103. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
  104. package/dist/esm/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
  105. package/dist/esm/locales/it/parsers/ITMonthNameParser.js +4 -3
  106. package/dist/esm/locales/it/parsers/ITMonthNameParser.js.map +1 -1
  107. package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
  108. package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
  109. package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
  110. package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.js +1 -1
  111. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
  112. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js +35 -27
  113. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
  114. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
  115. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
  116. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
  117. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
  118. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +18 -9
  119. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
  120. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
  121. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
  122. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
  123. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
  124. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js +22 -6
  125. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
  126. package/dist/esm/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
  127. package/dist/esm/locales/it/parsers/ITWeekdayParser.js +21 -12
  128. package/dist/esm/locales/it/parsers/ITWeekdayParser.js.map +1 -1
  129. package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
  130. package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -7
  131. package/dist/esm/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
  132. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
  133. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js +31 -0
  134. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
  135. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
  136. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js +2 -2
  137. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
  138. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
  139. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js +2 -2
  140. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
  141. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
  142. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +27 -0
  143. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
  144. package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
  145. package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +7 -7
  146. package/dist/esm/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
  147. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
  148. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js +23 -0
  149. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
  150. package/dist/esm/results.js +14 -9
  151. package/dist/esm/results.js.map +1 -1
  152. package/package.json +5 -1
  153. package/src/locales/en/constants.ts +1 -1
  154. package/src/locales/en/parsers/ENMonthNameMiddleEndianParser.ts +1 -1
  155. package/src/locales/fr/constants.ts +13 -0
  156. package/src/locales/it/configuration.ts +85 -0
  157. package/src/locales/it/constants.ts +273 -123
  158. package/src/locales/it/index.ts +14 -73
  159. package/src/locales/it/parsers/ITCasualDateParser.ts +20 -12
  160. package/src/locales/it/parsers/ITCasualTimeParser.ts +39 -44
  161. package/src/locales/it/parsers/ITMonthNameLittleEndianParser.ts +6 -6
  162. package/src/locales/it/parsers/ITMonthNameMiddleEndianParser.ts +34 -17
  163. package/src/locales/it/parsers/ITMonthNameParser.ts +9 -8
  164. package/src/locales/it/parsers/ITRelativeDateFormatParser.ts +33 -12
  165. package/src/locales/it/parsers/ITSlashMonthFormatParser.ts +1 -1
  166. package/src/locales/it/parsers/ITTimeExpressionParser.ts +42 -28
  167. package/src/locales/it/parsers/ITTimeUnitAgoFormatParser.ts +9 -8
  168. package/src/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.ts +21 -11
  169. package/src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts +12 -6
  170. package/src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts +28 -8
  171. package/src/locales/it/parsers/ITWeekdayParser.ts +23 -13
  172. package/src/locales/it/parsers/{ITCasualYearMonthDayParser.ts → ITYearMonthDayParser.ts} +19 -8
  173. package/src/locales/it/refiners/ITExtractYearSuffixRefiner.ts +34 -0
  174. package/src/locales/it/refiners/ITMergeDateRangeRefiner.ts +5 -9
  175. package/src/locales/it/refiners/ITMergeDateTimeRefiner.ts +5 -5
  176. package/src/locales/it/refiners/ITMergeRelativeAfterDateRefiner.ts +46 -0
  177. package/src/locales/it/refiners/{ITMergeRelativeDateRefiner.ts → ITMergeRelativeFollowByDateRefiner.ts} +10 -10
  178. package/src/locales/it/refiners/ITUnlikelyFormatFilter.ts +31 -0
  179. package/src/results.ts +40 -9
  180. package/dist/cjs/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
  181. package/dist/cjs/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
  182. package/dist/esm/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
  183. package/dist/esm/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
  184. package/test/calculation_duration.test.ts +0 -165
  185. package/test/calculation_weekdays.test.ts +0 -133
  186. package/test/de/de_casual.test.ts +0 -336
  187. package/test/de/de_dash.test.ts +0 -32
  188. package/test/de/de_month_name_little_endian.test.ts +0 -273
  189. package/test/de/de_time_exp.test.ts +0 -223
  190. package/test/de/de_time_units_casual_relative.test.ts +0 -120
  191. package/test/de/de_time_units_within.test.ts +0 -119
  192. package/test/de/de_weekday.test.ts +0 -158
  193. package/test/de/de_year.test.ts +0 -147
  194. package/test/debugging.test.ts +0 -17
  195. package/test/en/en.test.ts +0 -191
  196. package/test/en/en_casual.test.ts +0 -425
  197. package/test/en/en_inter_std.test.ts +0 -118
  198. package/test/en/en_merging_relative_dates.test.ts +0 -50
  199. package/test/en/en_month.test.ts +0 -339
  200. package/test/en/en_month_name_little_endian.test.ts +0 -448
  201. package/test/en/en_month_name_middle_endian.test.ts +0 -386
  202. package/test/en/en_performance.test.ts +0 -26
  203. package/test/en/en_relative.test.ts +0 -393
  204. package/test/en/en_slash.test.ts +0 -284
  205. package/test/en/en_time_exp.test.ts +0 -535
  206. package/test/en/en_time_units_ago.test.ts +0 -357
  207. package/test/en/en_time_units_casual_relative.test.ts +0 -186
  208. package/test/en/en_time_units_later.test.ts +0 -361
  209. package/test/en/en_time_units_within.test.ts +0 -417
  210. package/test/en/en_timezone_exp.test.ts +0 -410
  211. package/test/en/en_weekday.test.ts +0 -573
  212. package/test/en/en_year.test.ts +0 -138
  213. package/test/en/en_year_month_day.test.ts +0 -101
  214. package/test/en/negative_cases.test.ts +0 -99
  215. package/test/es/es_casual.test.ts +0 -175
  216. package/test/es/es_month_name_little_endian.test.ts +0 -217
  217. package/test/es/es_slash.test.ts +0 -26
  218. package/test/es/es_time_exp.test.ts +0 -175
  219. package/test/es/es_time_units_within.test.ts +0 -119
  220. package/test/fi/fi_casual.test.ts +0 -99
  221. package/test/fi/fi_casual_time.test.ts +0 -56
  222. package/test/fi/fi_month_name_little_endian.test.ts +0 -50
  223. package/test/fi/fi_time_exp.test.ts +0 -39
  224. package/test/fi/fi_time_units_ago.test.ts +0 -93
  225. package/test/fi/fi_time_units_casual_relative.test.ts +0 -117
  226. package/test/fi/fi_time_units_within.test.ts +0 -74
  227. package/test/fi/fi_weekday.test.ts +0 -90
  228. package/test/fr/fr_casual.test.ts +0 -314
  229. package/test/fr/fr_little_endian.test.ts +0 -320
  230. package/test/fr/fr_slash.test.ts +0 -49
  231. package/test/fr/fr_time_exp.test.ts +0 -588
  232. package/test/fr/fr_time_units_ago.test.ts +0 -103
  233. package/test/fr/fr_time_units_casual_relative.test.ts +0 -114
  234. package/test/fr/fr_time_units_within.test.ts +0 -129
  235. package/test/fr/fr_weekday.test.ts +0 -130
  236. package/test/it/it_casual.test.ts +0 -81
  237. package/test/it/it_month_name_little_endian.test.ts +0 -28
  238. package/test/it/it_month_name_middle_endian.test.ts +0 -39
  239. package/test/it/it_time_exp.test.ts +0 -84
  240. package/test/it/it_weekday.test.ts +0 -37
  241. package/test/it/it_year_month_day.test.ts +0 -41
  242. package/test/ja/ja_casual.test.ts +0 -73
  243. package/test/ja/ja_slash_date_format.test.ts +0 -60
  244. package/test/ja/ja_standard.test.ts +0 -235
  245. package/test/ja/ja_time_exp.test.ts +0 -305
  246. package/test/ja/ja_weekday.test.ts +0 -183
  247. package/test/nl/nl_casual.test.ts +0 -408
  248. package/test/nl/nl_month.test.ts +0 -205
  249. package/test/nl/nl_month_name_little_endian.test.ts +0 -358
  250. package/test/nl/nl_relative.test.ts +0 -242
  251. package/test/nl/nl_slash.test.ts +0 -206
  252. package/test/nl/nl_time_exp.test.ts +0 -79
  253. package/test/nl/nl_time_units_ago.test.ts +0 -243
  254. package/test/nl/nl_time_units_casual_relative.test.ts +0 -130
  255. package/test/nl/nl_time_units_later.test.ts +0 -250
  256. package/test/nl/nl_time_units_within.test.ts +0 -225
  257. package/test/nl/nl_weekday.test.ts +0 -216
  258. package/test/pt/pt_casual.test.ts +0 -175
  259. package/test/pt/pt_month_name_little_endian.test.ts +0 -217
  260. package/test/pt/pt_slash.test.ts +0 -26
  261. package/test/pt/pt_time_exp.test.ts +0 -175
  262. package/test/result.test.ts +0 -283
  263. package/test/ru/ru_casual.test.ts +0 -159
  264. package/test/ru/ru_month.test.ts +0 -70
  265. package/test/ru/ru_month_name_little_endian.test.ts +0 -145
  266. package/test/ru/ru_relative.test.ts +0 -107
  267. package/test/ru/ru_time_exp.test.ts +0 -111
  268. package/test/ru/ru_time_units_ago.test.ts +0 -48
  269. package/test/ru/ru_time_units_casual_relative.test.ts +0 -190
  270. package/test/ru/ru_time_units_within.test.ts +0 -16
  271. package/test/ru/ru_weekday.test.ts +0 -52
  272. package/test/sv/sv_casual.test.ts +0 -87
  273. package/test/sv/sv_month_name_little_endian.test.ts +0 -48
  274. package/test/sv/sv_time_units_casual_relative.test.ts +0 -143
  275. package/test/sv/sv_weekday.test.ts +0 -68
  276. package/test/system.test.ts +0 -247
  277. package/test/system_timezone.test.ts +0 -284
  278. package/test/test_util.ts +0 -135
  279. package/test/uk/uk_casual.test.ts +0 -153
  280. package/test/uk/uk_month.test.ts +0 -70
  281. package/test/uk/uk_month_name_little_endian.test.ts +0 -148
  282. package/test/uk/uk_relative.test.ts +0 -107
  283. package/test/uk/uk_time_exp.test.ts +0 -111
  284. package/test/uk/uk_time_units_ago.test.ts +0 -48
  285. package/test/uk/uk_time_units_casual_relative.test.ts +0 -142
  286. package/test/uk/uk_time_units_within.test.ts +0 -23
  287. package/test/uk/uk_weekday.test.ts +0 -52
  288. package/test/vi/vi_casual.test.ts +0 -84
  289. package/test/vi/vi_casual_time.test.ts +0 -77
  290. package/test/vi/vi_date_range.test.ts +0 -61
  291. package/test/vi/vi_forward_date.test.ts +0 -45
  292. package/test/vi/vi_month_year.test.ts +0 -40
  293. package/test/vi/vi_negative_cases.test.ts +0 -60
  294. package/test/vi/vi_slash.test.ts +0 -36
  295. package/test/vi/vi_standard.test.ts +0 -86
  296. package/test/vi/vi_strict.test.ts +0 -67
  297. package/test/vi/vi_time_exp.test.ts +0 -99
  298. package/test/vi/vi_time_units_ago.test.ts +0 -56
  299. package/test/vi/vi_time_units_casual_relative.test.ts +0 -56
  300. package/test/vi/vi_time_units_later.test.ts +0 -43
  301. package/test/vi/vi_time_units_within.test.ts +0 -24
  302. package/test/vi/vi_weekday.test.ts +0 -77
  303. package/test/vi/vi_year.test.ts +0 -42
  304. package/test/zh/hans/zh_hans_ago.test.ts +0 -58
  305. package/test/zh/hans/zh_hans_casual.test.ts +0 -242
  306. package/test/zh/hans/zh_hans_date.test.ts +0 -116
  307. package/test/zh/hans/zh_hans_deadline.test.ts +0 -175
  308. package/test/zh/hans/zh_hans_time_exp.test.ts +0 -508
  309. package/test/zh/hans/zh_hans_weekday.test.ts +0 -219
  310. package/test/zh/hant/zh_hant_ago.test.ts +0 -58
  311. package/test/zh/hant/zh_hant_casual.test.ts +0 -260
  312. package/test/zh/hant/zh_hant_date.test.ts +0 -116
  313. package/test/zh/hant/zh_hant_deadline.test.ts +0 -136
  314. package/test/zh/hant/zh_hant_time_exp.test.ts +0 -226
  315. package/test/zh/hant/zh_hant_weekday.test.ts +0 -175
  316. package/test/zh/zh.test.ts +0 -36
  317. package/tsconfig.build.esm.json +0 -8
  318. package/tsconfig.build.json +0 -10
  319. package/tsconfig.json +0 -29
@@ -1,165 +0,0 @@
1
- import { addDuration, reverseDuration } from "../src/calculation/duration";
2
-
3
- test("Test - Adding Duration w/ single timeunit", () => {
4
- {
5
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
6
- const output = addDuration(reference, { "year": 1 });
7
- expect(output).toStrictEqual(new Date("Sun, Aug 27 2023 12:52:11"));
8
- }
9
- {
10
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
11
- const output = addDuration(reference, { "month": 1 });
12
- expect(output).toStrictEqual(new Date("Wed, Sep 27 2022 12:52:11"));
13
- }
14
- {
15
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
16
- const output = addDuration(reference, { "week": 1 });
17
- expect(output).toStrictEqual(new Date("Sat, Sep 3 2022 12:52:11"));
18
- }
19
- {
20
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
21
- const output = addDuration(reference, { "day": 1 });
22
- expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 12:52:11"));
23
- }
24
- {
25
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
26
- const output = addDuration(reference, { "hour": 1 });
27
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:52:11"));
28
- }
29
- {
30
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
31
- const output = addDuration(reference, { "minute": 1 });
32
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:53:11"));
33
- }
34
- {
35
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
36
- const output = addDuration(reference, { "second": 1 });
37
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:12"));
38
- }
39
- {
40
- const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
41
- const output = addDuration(reference, { "millisecond": 1 });
42
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:01"));
43
- }
44
- });
45
-
46
- test("Test - Adding Duration w/ single timeunit shorten", () => {
47
- {
48
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
49
- const output = addDuration(reference, { "y": 1 });
50
- expect(output).toStrictEqual(new Date("Sun, Aug 27 2023 12:52:11"));
51
- }
52
- {
53
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
54
- const output = addDuration(reference, { "M": 1 });
55
- expect(output).toStrictEqual(new Date("Wed, Sep 27 2022 12:52:11"));
56
- }
57
- {
58
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
59
- const output = addDuration(reference, { "w": 1 });
60
- expect(output).toStrictEqual(new Date("Sat, Sep 3 2022 12:52:11"));
61
- }
62
- {
63
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
64
- const output = addDuration(reference, { "d": 1 });
65
- expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 12:52:11"));
66
- }
67
- {
68
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
69
- const output = addDuration(reference, { "h": 1 });
70
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:52:11"));
71
- }
72
- {
73
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
74
- const output = addDuration(reference, { "m": 1 });
75
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:53:11"));
76
- }
77
- {
78
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
79
- const output = addDuration(reference, { "s": 1 });
80
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:12"));
81
- }
82
- {
83
- const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
84
- const output = addDuration(reference, { "ms": 1 });
85
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:01"));
86
- }
87
- });
88
-
89
- test("Test - Adding Duration w/ multiple timeunits", () => {
90
- {
91
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
92
- const output = addDuration(reference, { "month": 1, "day": 4 });
93
- expect(output).toStrictEqual(new Date("Wed, Oct 1 2022 12:52:11"));
94
- }
95
- {
96
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
97
- const output = addDuration(reference, { "month": 1, "day": 4, "hour": 12 });
98
- expect(output).toStrictEqual(new Date("Wed, Oct 2 2022 00:52:11"));
99
- }
100
- });
101
-
102
- test("Test - Adding Duration w/ fractions", () => {
103
- {
104
- // 0.5 year (aka. half year) => 6 months
105
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
106
- const output = addDuration(reference, { "year": 0.5 });
107
- expect(output).toStrictEqual(new Date("Mon, Feb 27 2023 12:52:11"));
108
- }
109
- {
110
- // 0.5 month => 2 weeks
111
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
112
- const output = addDuration(reference, { "month": 0.5 });
113
- expect(output).toStrictEqual(new Date("Sat, Sep 10 2022 12:52:11"));
114
- }
115
- {
116
- // 0.5 week => 4 days (actually 3.5 days, but we round up to 4 days)
117
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
118
- const output = addDuration(reference, { "week": 0.5 });
119
- expect(output).toStrictEqual(new Date("Sat, Aug 31 2022 12:52:11"));
120
- }
121
- {
122
- // 0.5 day (aka. half day) => 12 hours
123
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
124
- const output = addDuration(reference, { "day": 0.5 });
125
- expect(output).toStrictEqual(new Date("Sat, Aug 28 2022 00:52:11"));
126
- }
127
- {
128
- // 0.5 hour (aka. half hour) => 30 minutes
129
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
130
- const output = addDuration(reference, { "hour": 0.5 });
131
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 13:22:11"));
132
- }
133
- {
134
- // 0.5 minute (aka. half minute) => 30 seconds
135
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
136
- const output = addDuration(reference, { "minute": 0.5 });
137
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:41"));
138
- }
139
- {
140
- // 0.5 second (aka. half second) => 500 milliseconds
141
- const reference = new Date("Sat, Aug 27 2022 12:52:11:00");
142
- const output = addDuration(reference, { "second": 0.5 });
143
- expect(output).toStrictEqual(new Date("Sat, Aug 27 2022 12:52:11:500"));
144
- }
145
- });
146
-
147
- test("Test - Adding Duration w/ multiple fractions", () => {
148
- {
149
- // 0.5 year (aka. half year) => 6 months
150
- const reference = new Date("Sat, Aug 27 2022 12:52:11");
151
- const output = addDuration(reference, { "year": 0.5, "month": 2 });
152
- expect(output).toStrictEqual(new Date("Thu, April 27 2023 12:52:11"));
153
- }
154
- });
155
-
156
- test("Test - Reverse Duration", () => {
157
- {
158
- const timeunits = { year: 5, month: 5 };
159
- expect(reverseDuration(timeunits)).toStrictEqual({ year: -5, month: -5 });
160
- }
161
- {
162
- const timeunits = { year: -5, month: -5 };
163
- expect(reverseDuration(timeunits)).toStrictEqual({ year: 5, month: 5 });
164
- }
165
- });
@@ -1,133 +0,0 @@
1
- import { createParsingComponentsAtWeekday, getDaysToWeekday } from "../src/calculation/weekdays";
2
- import { Weekday } from "../src";
3
- import { ReferenceWithTimezone } from "../src/results";
4
-
5
- test("Test - This Weekday Calculation", () => {
6
- {
7
- const reference = new ReferenceWithTimezone(new Date("Sat, 20 Aug 2022 12:00:00"));
8
- const output = createParsingComponentsAtWeekday(reference, Weekday.MONDAY, "this");
9
- expect(output.date()).toStrictEqual(new Date("Mon, Aug 22 2022 12:00:00"));
10
- }
11
- {
12
- const reference = new ReferenceWithTimezone(new Date("Sun, 21 Aug 2022 12:00:00"));
13
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "this");
14
- expect(output.date()).toStrictEqual(new Date("Fri, Aug 26 2022 12:00:00"));
15
- }
16
- {
17
- const reference = new ReferenceWithTimezone(new Date("Tue, Aug 2 2022 12:00:00"));
18
- const output = createParsingComponentsAtWeekday(reference, Weekday.SUNDAY, "this");
19
- expect(output.date()).toStrictEqual(new Date("Sun, Aug 7 2022 12:00:00"));
20
- }
21
- });
22
-
23
- test("Test - Last Weekday Calculation", () => {
24
- {
25
- const reference = new ReferenceWithTimezone(new Date("Sat, 20 Aug 2022 12:00:00"));
26
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "last");
27
- expect(output.date()).toStrictEqual(new Date("Fri, Aug 19 2022 12:00:00"));
28
- }
29
- {
30
- const reference = new ReferenceWithTimezone(new Date("Sat, 20 Aug 2022 12:00:00"));
31
- const output = createParsingComponentsAtWeekday(reference, Weekday.MONDAY, "last");
32
- expect(output.date()).toStrictEqual(new Date("Mon, Aug 15 2022 12:00:00"));
33
- }
34
- {
35
- const reference = new ReferenceWithTimezone(new Date("Sat, 20 Aug 2022 12:00:00"));
36
- const output = createParsingComponentsAtWeekday(reference, Weekday.SUNDAY, "last");
37
- expect(output.date()).toStrictEqual(new Date("Sun, Aug 14 2022 12:00:00"));
38
- }
39
- {
40
- const reference = new ReferenceWithTimezone(new Date("Sat, 20 Aug 2022 12:00:00"));
41
- const output = createParsingComponentsAtWeekday(reference, Weekday.SATURDAY, "last");
42
- expect(output.date()).toStrictEqual(new Date("Sat, Aug 13 2022 12:00:00"));
43
- }
44
- });
45
-
46
- test("Test - Next Weekday Calculation", () => {
47
- {
48
- const reference = new ReferenceWithTimezone(new Date("Sun, Aug 21 2022 12:00:00"));
49
- const output = createParsingComponentsAtWeekday(reference, Weekday.MONDAY, "next");
50
- expect(output.date()).toStrictEqual(new Date("Mon, Aug 22 2022 12:00:00"));
51
- }
52
- {
53
- const reference = new ReferenceWithTimezone(new Date("Sun, Aug 21 2022 12:00:00"));
54
- const output = createParsingComponentsAtWeekday(reference, Weekday.SATURDAY, "next");
55
- expect(output.date()).toStrictEqual(new Date("Sat, Aug 27 2022 12:00:00"));
56
- }
57
- {
58
- const reference = new ReferenceWithTimezone(new Date("Sun, Aug 21 2022 12:00:00"));
59
- const output = createParsingComponentsAtWeekday(reference, Weekday.SUNDAY, "next");
60
- expect(output.date()).toStrictEqual(new Date("Sun, Aug 28 2022 12:00:00"));
61
- }
62
- {
63
- const reference = new ReferenceWithTimezone(new Date("Sat, Aug 20 2022 12:00:00"));
64
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "next");
65
- expect(output.date()).toStrictEqual(new Date("Fri, Aug 26 2022 12:00:00"));
66
- }
67
- {
68
- const reference = new ReferenceWithTimezone(new Date("Sat, Aug 20 2022 12:00:00"));
69
- const output = createParsingComponentsAtWeekday(reference, Weekday.SATURDAY, "next");
70
- expect(output.date()).toStrictEqual(new Date("Sat, Aug 27 2022 12:00:00"));
71
- }
72
- {
73
- const reference = new ReferenceWithTimezone(new Date("Sat, Aug 20 2022 12:00:00"));
74
- const output = createParsingComponentsAtWeekday(reference, Weekday.SUNDAY, "next");
75
- expect(output.date()).toStrictEqual(new Date("Sun, Aug 28 2022 12:00:00"));
76
- }
77
- {
78
- const reference = new ReferenceWithTimezone(new Date("Tue, Aug 2 2022 12:00:00"));
79
- const output = createParsingComponentsAtWeekday(reference, Weekday.MONDAY, "next");
80
- expect(output.date()).toStrictEqual(new Date("Mon, Aug 8 2022 12:00:00"));
81
- }
82
- {
83
- const reference = new ReferenceWithTimezone(new Date("Tue, Aug 2 2022 12:00:00"));
84
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "next");
85
- expect(output.date()).toStrictEqual(new Date("Fri, Aug 12 2022 12:00:00"));
86
- }
87
-
88
- {
89
- const reference = new ReferenceWithTimezone(new Date("Tue, Aug 2 2022 12:00:00"));
90
- const output = createParsingComponentsAtWeekday(reference, Weekday.SUNDAY, "next");
91
- expect(output.date()).toStrictEqual(new Date("Sun, Aug 14 2022 12:00:00"));
92
- }
93
- });
94
-
95
- test("Test - Closest Weekday Calculation", () => {
96
- {
97
- const refDate = new Date("Sat, 20 Aug 2022 12:00:00");
98
- expect(getDaysToWeekday(refDate, Weekday.MONDAY)).toBe(2);
99
- }
100
- {
101
- const refDate = new Date("Sat, 20 Aug 2022 12:00:00");
102
- expect(getDaysToWeekday(refDate, Weekday.TUESDAY)).toBe(3);
103
- }
104
- {
105
- const refDate = new Date("Sat, 20 Aug 2022 12:00:00");
106
- expect(getDaysToWeekday(refDate, Weekday.FRIDAY)).toBe(-1);
107
- }
108
- {
109
- const refDate = new Date("Sat, 20 Aug 2022 12:00:00");
110
- expect(getDaysToWeekday(refDate, Weekday.THURSDAY)).toBe(-2);
111
- }
112
- {
113
- const refDate = new Date("Sat, 20 Aug 2022 12:00:00");
114
- expect(getDaysToWeekday(refDate, Weekday.WEDNESDAY)).toBe(-3);
115
- }
116
- });
117
-
118
- test("Test - Weekdays calculation with timezone", () => {
119
- // Thu Feb 27 2025 17:00:00 GMT+0000
120
- // Thu Feb 27 2025 09:00:00 GMT-0800 (PST)
121
- // Fri Feb 28 2025 02:00:00 GMT+0900 (JST)
122
- const refInstant = new Date("2025-02-27T17:00:00.000Z");
123
- {
124
- const reference = ReferenceWithTimezone.fromInput({ instant: refInstant, timezone: "JST" });
125
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "this");
126
- expect(output.date()).toStrictEqual(new Date("Fri Feb 28 2025 12:00:00 GMT+0900 (JST)"));
127
- }
128
- {
129
- const reference = ReferenceWithTimezone.fromInput({ instant: refInstant, timezone: "PST" });
130
- const output = createParsingComponentsAtWeekday(reference, Weekday.FRIDAY, "this");
131
- expect(output.date()).toStrictEqual(new Date("Fri Feb 28 2025 12:00:00 GMT-0800 (PST)"));
132
- }
133
- });
@@ -1,336 +0,0 @@
1
- import * as chrono from "../../src/";
2
- import { testSingleCase, testUnexpectedResult } from "../test_util";
3
-
4
- test("Test - Casual date expression", function () {
5
- testSingleCase(chrono.de, "Die Deadline ist jetzt", new Date(2012, 7, 10, 8, 9, 10, 11), (result) => {
6
- expect(result.index).toBe(17);
7
- expect(result.text).toBe("jetzt");
8
-
9
- expect(result.start).not.toBeNull();
10
- expect(result.start.get("year")).toBe(2012);
11
- expect(result.start.get("month")).toBe(8);
12
- expect(result.start.get("day")).toBe(10);
13
- expect(result.start.get("hour")).toBe(8);
14
- expect(result.start.get("minute")).toBe(9);
15
- expect(result.start.get("second")).toBe(10);
16
- expect(result.start.get("millisecond")).toBe(11);
17
-
18
- expect(result.start).toBeDate(new Date(2012, 7, 10, 8, 9, 10, 11));
19
- });
20
-
21
- testSingleCase(chrono.de, "Die Deadline ist heute", new Date(2012, 7, 10, 12), (result) => {
22
- expect(result.index).toBe(17);
23
- expect(result.text).toBe("heute");
24
-
25
- expect(result.start).not.toBeNull();
26
- expect(result.start.get("year")).toBe(2012);
27
- expect(result.start.get("month")).toBe(8);
28
- expect(result.start.get("day")).toBe(10);
29
-
30
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12));
31
- });
32
-
33
- testSingleCase(chrono.de, "Die Deadline ist morgen", new Date(2012, 7, 10, 12), (result) => {
34
- expect(result.index).toBe(17);
35
- expect(result.text).toBe("morgen");
36
-
37
- expect(result.start.get("year")).toBe(2012);
38
- expect(result.start.get("month")).toBe(8);
39
- expect(result.start.get("day")).toBe(11);
40
- //expect(result.start.get("hour")).toBe(8);
41
- });
42
-
43
- testSingleCase(chrono.de, "Die Deadline ist morgen", new Date(2012, 8 - 1, 10, 1), (result) => {
44
- expect(result.start.get("year")).toBe(2012);
45
- expect(result.start.get("month")).toBe(8);
46
- expect(result.start.get("day")).toBe(11);
47
- expect(result.start.get("hour")).toBe(1);
48
- });
49
-
50
- testSingleCase(chrono.de, "Die Deadline war gestern", new Date(2012, 7, 10, 12), (result) => {
51
- expect(result.index).toBe(17);
52
- expect(result.text).toBe("gestern");
53
-
54
- expect(result.start).not.toBeNull();
55
- expect(result.start.get("year")).toBe(2012);
56
- expect(result.start.get("month")).toBe(8);
57
- expect(result.start.get("day")).toBe(9);
58
-
59
- expect(result.start).toBeDate(new Date(2012, 7, 9, 12));
60
- });
61
-
62
- testSingleCase(chrono.de, "Die Deadline war letzte Nacht ", new Date(2012, 7, 10, 12), (result) => {
63
- expect(result.index).toBe(17);
64
- expect(result.text).toBe("letzte Nacht");
65
-
66
- expect(result.start).not.toBeNull();
67
- expect(result.start.get("year")).toBe(2012);
68
- expect(result.start.get("month")).toBe(8);
69
- expect(result.start.get("day")).toBe(9);
70
- expect(result.start.get("hour")).toBe(0);
71
-
72
- expect(result.start).toBeDate(new Date(2012, 7, 9, 0));
73
- });
74
-
75
- testSingleCase(chrono.de, "Die Deadline war gestern Nacht ", new Date(2012, 7, 10, 12), (result) => {
76
- expect(result.index).toBe(17);
77
- expect(result.text).toBe("gestern Nacht");
78
-
79
- expect(result.start).not.toBeNull();
80
- expect(result.start.get("year")).toBe(2012);
81
- expect(result.start.get("month")).toBe(8);
82
- expect(result.start.get("day")).toBe(9);
83
- expect(result.start.get("hour")).toBe(22);
84
-
85
- expect(result.start).toBeDate(new Date(2012, 7, 9, 22));
86
- });
87
-
88
- testSingleCase(chrono.de, "Die Deadline war heute Morgen ", new Date(2012, 7, 10, 12), (result) => {
89
- expect(result.index).toBe(17);
90
- expect(result.text).toBe("heute Morgen");
91
-
92
- expect(result.start).not.toBeNull();
93
- expect(result.start.get("year")).toBe(2012);
94
- expect(result.start.get("month")).toBe(8);
95
- expect(result.start.get("day")).toBe(10);
96
- expect(result.start.get("hour")).toBe(6);
97
-
98
- expect(result.start).toBeDate(new Date(2012, 7, 10, 6));
99
- });
100
-
101
- testSingleCase(chrono.de, "Die Deadline war heute Nachmittag ", new Date(2012, 7, 10, 12), (result) => {
102
- expect(result.index).toBe(17);
103
- expect(result.text).toBe("heute Nachmittag");
104
-
105
- expect(result.start).not.toBeNull();
106
- expect(result.start.get("year")).toBe(2012);
107
- expect(result.start.get("month")).toBe(8);
108
- expect(result.start.get("day")).toBe(10);
109
- expect(result.start.get("hour")).toBe(15);
110
-
111
- expect(result.start).toBeDate(new Date(2012, 7, 10, 15));
112
- });
113
-
114
- testSingleCase(chrono.de, "Die Deadline war heute Abend ", new Date(2012, 7, 10, 12), (result) => {
115
- expect(result.index).toBe(17);
116
- expect(result.text).toBe("heute Abend");
117
-
118
- expect(result.start).not.toBeNull();
119
- expect(result.start.get("year")).toBe(2012);
120
- expect(result.start.get("month")).toBe(8);
121
- expect(result.start.get("day")).toBe(10);
122
- expect(result.start.get("hour")).toBe(18);
123
-
124
- expect(result.start).toBeDate(new Date(2012, 7, 10, 18));
125
- });
126
- });
127
-
128
- test("Test - Casual time expression", function () {
129
- testSingleCase(chrono.de, "Die Deadline ist mittags", new Date(2012, 7, 10, 8, 9, 10, 11), (result) => {
130
- expect(result.index).toBe(17);
131
- expect(result.text).toBe("mittags");
132
-
133
- expect(result.start.get("year")).toBe(2012);
134
- expect(result.start.get("month")).toBe(8);
135
- expect(result.start.get("day")).toBe(10);
136
- expect(result.start.get("hour")).toBe(12);
137
- expect(result.start.get("minute")).toBe(0);
138
- expect(result.start.get("second")).toBe(0);
139
- });
140
-
141
- testSingleCase(chrono.de, "um Mitternacht", new Date(2012, 7, 10, 12), (result) => {
142
- expect(result.start.get("year")).toBe(2012);
143
- expect(result.start.get("month")).toBe(8);
144
- expect(result.start.get("day")).toBe(11);
145
- expect(result.start.get("hour")).toBe(0);
146
- expect(result.start.get("minute")).toBe(0);
147
- expect(result.start.get("second")).toBe(0);
148
- });
149
-
150
- testSingleCase(chrono.de, "um Mitternacht", new Date(2012, 7, 10, 1), (result) => {
151
- expect(result.start.get("year")).toBe(2012);
152
- expect(result.start.get("month")).toBe(8);
153
- expect(result.start.get("day")).toBe(10);
154
- expect(result.start.get("hour")).toBe(0);
155
- expect(result.start.get("minute")).toBe(0);
156
- expect(result.start.get("second")).toBe(0);
157
- });
158
- });
159
-
160
- test("Test - Combined Expression", function () {
161
- testSingleCase(chrono.de, "Die Deadline ist heute 17 Uhr", new Date(2012, 7, 10, 12), (result) => {
162
- expect(result.index).toBe(17);
163
- expect(result.text).toBe("heute 17 Uhr");
164
-
165
- expect(result.start).not.toBeNull();
166
- expect(result.start.get("year")).toBe(2012);
167
- expect(result.start.get("month")).toBe(8);
168
- expect(result.start.get("day")).toBe(10);
169
- expect(result.start.get("hour")).toBe(17);
170
-
171
- expect(result.start).toBeDate(new Date(2012, 7, 10, 17));
172
- });
173
-
174
- testSingleCase(chrono.de, "Die Deadline ist heute um 17 Uhr", new Date(2012, 7, 10, 12), (result) => {
175
- expect(result.index).toBe(17);
176
- expect(result.text).toBe("heute um 17 Uhr");
177
-
178
- expect(result.start).not.toBeNull();
179
- expect(result.start.get("year")).toBe(2012);
180
- expect(result.start.get("month")).toBe(8);
181
- expect(result.start.get("day")).toBe(10);
182
- expect(result.start.get("hour")).toBe(17);
183
-
184
- expect(result.start).toBeDate(new Date(2012, 7, 10, 17));
185
- });
186
- });
187
-
188
- test("Test - Casual date range", function () {
189
- testSingleCase(chrono.de, "Der Event ist heute - nächsten Freitag", new Date(2012, 7, 4, 12), (result) => {
190
- expect(result.index).toBe(14);
191
- expect(result.text).toBe("heute - nächsten Freitag");
192
-
193
- expect(result.start).not.toBeNull();
194
- expect(result.start.get("year")).toBe(2012);
195
- expect(result.start.get("month")).toBe(8);
196
- expect(result.start.get("day")).toBe(4);
197
- expect(result.start.get("hour")).toBe(12);
198
-
199
- expect(result.start).toBeDate(new Date(2012, 7, 4, 12));
200
-
201
- expect(result.end).not.toBeNull();
202
- expect(result.end.get("year")).toBe(2012);
203
- expect(result.end.get("month")).toBe(8);
204
- expect(result.end.get("day")).toBe(10);
205
- expect(result.end.get("hour")).toBe(12);
206
-
207
- expect(result.end).toBeDate(new Date(2012, 7, 10, 12));
208
- });
209
-
210
- testSingleCase(chrono.de, "Der Event ist heute - nächsten Freitag", new Date(2012, 7, 10, 12), (result) => {
211
- expect(result.index).toBe(14);
212
- expect(result.text).toBe("heute - nächsten Freitag");
213
-
214
- expect(result.start).not.toBeNull();
215
- expect(result.start.get("year")).toBe(2012);
216
- expect(result.start.get("month")).toBe(8);
217
- expect(result.start.get("day")).toBe(10);
218
- expect(result.start.get("hour")).toBe(12);
219
-
220
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12));
221
-
222
- expect(result.end).not.toBeNull();
223
- expect(result.end.get("year")).toBe(2012);
224
- expect(result.end.get("month")).toBe(8);
225
- expect(result.end.get("day")).toBe(17);
226
- expect(result.end.get("hour")).toBe(12);
227
-
228
- expect(result.end).toBeDate(new Date(2012, 7, 17, 12));
229
- });
230
- });
231
-
232
- test("Test - Random text", function () {
233
- testSingleCase(chrono.de, "heute Nacht", new Date(2012, 1 - 1, 1, 12), (result, text) => {
234
- expect(result.text).toBe(text);
235
- expect(result.start.get("year")).toBe(2012);
236
- expect(result.start.get("month")).toBe(1);
237
- expect(result.start.get("day")).toBe(1);
238
- expect(result.start.get("hour")).toBe(22);
239
- expect(result.start.get("meridiem")).toBe(1);
240
- });
241
-
242
- testSingleCase(chrono.de, "heute Nacht um 20 Uhr", new Date(2012, 1 - 1, 1, 12), (result, text) => {
243
- expect(result.text).toBe(text);
244
- expect(result.start.get("hour")).toBe(20);
245
- expect(result.start.get("year")).toBe(2012);
246
- expect(result.start.get("month")).toBe(1);
247
- expect(result.start.get("day")).toBe(1);
248
- expect(result.start.get("meridiem")).toBe(1);
249
- });
250
-
251
- testSingleCase(chrono.de, "heute Abend um 8", new Date(2012, 1 - 1, 1, 12), (result, text) => {
252
- expect(result.text).toBe(text);
253
- expect(result.start.get("hour")).toBe(20);
254
- expect(result.start.get("year")).toBe(2012);
255
- expect(result.start.get("month")).toBe(1);
256
- expect(result.start.get("day")).toBe(1);
257
- expect(result.start.get("meridiem")).toBe(1);
258
- });
259
-
260
- testSingleCase(chrono.de, "8 Uhr abends", new Date(2012, 1 - 1, 1, 12), (result, text) => {
261
- expect(result.text).toBe(text);
262
- expect(result.start.get("hour")).toBe(20);
263
- expect(result.start.get("year")).toBe(2012);
264
- expect(result.start.get("month")).toBe(1);
265
- expect(result.start.get("day")).toBe(1);
266
- expect(result.start.get("meridiem")).toBe(1);
267
- });
268
-
269
- testSingleCase(chrono.de, "Do", (result, text) => {
270
- expect(result.text).toBe(text);
271
- expect(result.start.get("weekday")).toBe(4);
272
- });
273
-
274
- testSingleCase(chrono.de, "Donnerstag", (result, text) => {
275
- expect(result.text).toBe(text);
276
- expect(result.start.get("weekday")).toBe(4);
277
- });
278
-
279
- testSingleCase(chrono.de, "gestern Nachmittag", new Date(2016, 10 - 1, 1), (result, text) => {
280
- expect(result.text).toBe(text);
281
- expect(result.start.get("year")).toBe(2016);
282
- expect(result.start.get("month")).toBe(9);
283
- expect(result.start.get("day")).toBe(30);
284
- expect(result.start.get("hour")).toBe(15);
285
- });
286
-
287
- testSingleCase(chrono.de, "morgen Morgen", new Date(2016, 10 - 1, 1, 8), (result, text) => {
288
- expect(result.text).toBe(text);
289
- expect(result.start.get("year")).toBe(2016);
290
- expect(result.start.get("month")).toBe(10);
291
- expect(result.start.get("day")).toBe(2);
292
- expect(result.start.get("hour")).toBe(6);
293
- });
294
-
295
- testSingleCase(chrono.de, "uebermorgen Abend", new Date(2016, 10 - 1, 1, 8), (result, text) => {
296
- expect(result.text).toBe(text);
297
- expect(result.start.get("year")).toBe(2016);
298
- expect(result.start.get("month")).toBe(10);
299
- expect(result.start.get("day")).toBe(3);
300
- expect(result.start.get("hour")).toBe(18);
301
- });
302
-
303
- testSingleCase(chrono.de, "vorgestern Vormittag", new Date(2016, 10 - 1, 1), (result, text) => {
304
- expect(result.text).toBe(text);
305
- expect(result.start.get("year")).toBe(2016);
306
- expect(result.start.get("month")).toBe(9);
307
- expect(result.start.get("day")).toBe(29);
308
- expect(result.start.get("hour")).toBe(9);
309
- });
310
- });
311
-
312
- test("Test - Random negative text", function () {
313
- testUnexpectedResult(chrono.de, "nicheute");
314
-
315
- testUnexpectedResult(chrono.de, "heutenicht");
316
-
317
- testUnexpectedResult(chrono.de, "angestern");
318
-
319
- testUnexpectedResult(chrono.de, "jetztig");
320
-
321
- testUnexpectedResult(chrono.de, "ljetztlich");
322
- });
323
-
324
- test("Test - Casual time keeps its meridiem when merged with an explicit time", () => {
325
- testSingleCase(chrono.de, "nachmittag um 5", new Date(2016, 7, 10, 12), (result, text) => {
326
- expect(result.text).toBe(text);
327
- expect(result.start.get("hour")).toBe(17);
328
- expect(result.start.get("meridiem")).toBe(1);
329
- });
330
-
331
- testSingleCase(chrono.de, "abend um 5", new Date(2016, 7, 10, 12), (result, text) => {
332
- expect(result.text).toBe(text);
333
- expect(result.start.get("hour")).toBe(17);
334
- expect(result.start.get("meridiem")).toBe(1);
335
- });
336
- });
@@ -1,32 +0,0 @@
1
- import * as chrono from "../../src/";
2
- import { testSingleCase } from "../test_util";
3
-
4
- test("Test - Single date expression with dash notation", () => {
5
- testSingleCase(chrono.de, "30-12-16", (result) => {
6
- expect(result.start.get("year")).toBe(2016);
7
- expect(result.start.get("month")).toBe(12);
8
- expect(result.start.get("day")).toBe(30);
9
- });
10
-
11
- testSingleCase(chrono.de, "Freitag 30-12-16", (result) => {
12
- expect(result.text).toBe("Freitag 30-12-16");
13
- expect(result.start.get("year")).toBe(2016);
14
- expect(result.start.get("month")).toBe(12);
15
- expect(result.start.get("day")).toBe(30);
16
- });
17
- });
18
-
19
- test("Test - Single date expression with dot notation", () => {
20
- testSingleCase(chrono.de, "30.12.16", (result) => {
21
- expect(result.start.get("year")).toBe(2016);
22
- expect(result.start.get("month")).toBe(12);
23
- expect(result.start.get("day")).toBe(30);
24
- });
25
-
26
- testSingleCase(chrono.de, "Freitag 30.12.16", (result) => {
27
- expect(result.text).toBe("Freitag 30.12.16");
28
- expect(result.start.get("year")).toBe(2016);
29
- expect(result.start.get("month")).toBe(12);
30
- expect(result.start.get("day")).toBe(30);
31
- });
32
- });