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,119 +0,0 @@
1
- import * as chrono from "../../src";
2
- import { testSingleCase } from "../test_util";
3
-
4
- test("Test - Single Expression", function () {
5
- testSingleCase(chrono.de, "Wir müssen etwas in 5 Tagen erledigen.", new Date(2012, 7, 10), (result) => {
6
- expect(result.index).toBe(17);
7
- expect(result.text).toBe("in 5 Tagen");
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(15);
13
-
14
- expect(result.start).toBeDate(new Date(2012, 8 - 1, 15));
15
- });
16
-
17
- testSingleCase(chrono.de, "Wir müssen etwas in fünf Tagen erledigen.", new Date(2012, 7, 10, 11, 12), (result) => {
18
- expect(result.index).toBe(17);
19
- expect(result.text).toBe("in fünf Tagen");
20
-
21
- expect(result.start).not.toBeNull();
22
- expect(result.start.get("year")).toBe(2012);
23
- expect(result.start.get("month")).toBe(8);
24
- expect(result.start.get("day")).toBe(15);
25
-
26
- expect(result.start).toBeDate(new Date(2012, 8 - 1, 15, 11, 12));
27
- });
28
-
29
- testSingleCase(chrono.de, "in 5 Minuten", new Date(2012, 7, 10, 12, 14), (result) => {
30
- expect(result.index).toBe(0);
31
- expect(result.text).toBe("in 5 Minuten");
32
-
33
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
34
- });
35
-
36
- testSingleCase(chrono.de, "für 5 minuten", new Date(2012, 7, 10, 12, 14), (result) => {
37
- expect(result.index).toBe(0);
38
- expect(result.text).toBe("für 5 minuten");
39
-
40
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
41
- });
42
-
43
- testSingleCase(chrono.de, "in einer Stunde", new Date(2012, 7, 10, 12, 14), (result) => {
44
- expect(result.index).toBe(0);
45
- expect(result.text).toBe("in einer Stunde");
46
-
47
- expect(result.start).toBeDate(new Date(2012, 7, 10, 13, 14));
48
- });
49
-
50
- testSingleCase(chrono.de, "starte einen Timer für 5 Minuten", new Date(2012, 7, 10, 12, 14), (result) => {
51
- expect(result.index).toBe(19);
52
- expect(result.text).toBe("für 5 Minuten");
53
-
54
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
55
- });
56
-
57
- testSingleCase(chrono.de, "In 5 Minuten gehe ich nach Hause", new Date(2012, 7, 10, 12, 14), (result) => {
58
- expect(result.index).toBe(0);
59
- expect(result.text).toBe("In 5 Minuten");
60
-
61
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
62
- });
63
-
64
- testSingleCase(chrono.de, "In 5 Sekunden wird ein Auto fahren", new Date(2012, 7, 10, 12, 14), (result) => {
65
- expect(result.index).toBe(0);
66
- expect(result.text).toBe("In 5 Sekunden");
67
-
68
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 14, 5));
69
- });
70
-
71
- testSingleCase(chrono.de, "in zwei Wochen", new Date(2012, 7, 10, 12, 14), (result) => {
72
- expect(result.index).toBe(0);
73
- expect(result.text).toBe("in zwei Wochen");
74
-
75
- expect(result.start).toBeDate(new Date(2012, 7, 24, 12, 14));
76
- });
77
-
78
- testSingleCase(chrono.de, "in einem Monat", new Date(2012, 7, 10, 7, 14), (result) => {
79
- expect(result.index).toBe(0);
80
- expect(result.text).toBe("in einem Monat");
81
-
82
- expect(result.start).toBeDate(new Date(2012, 8, 10, 7, 14));
83
- });
84
-
85
- testSingleCase(chrono.de, "in einigen Monaten", new Date(2012, 6, 10, 22, 14), (result) => {
86
- expect(result.index).toBe(0);
87
- expect(result.text).toBe("in einigen Monaten");
88
-
89
- expect(result.start).toBeDate(new Date(2012, 9, 10, 22, 14));
90
- });
91
-
92
- testSingleCase(chrono.de, "in einem Jahr", new Date(2012, 7, 10, 12, 14), (result) => {
93
- expect(result.index).toBe(0);
94
- expect(result.text).toBe("in einem Jahr");
95
-
96
- expect(result.start).toBeDate(new Date(2013, 7, 10, 12, 14));
97
- });
98
-
99
- testSingleCase(chrono.de, "in 20 Jahren", new Date(2012, 7, 10, 12, 14), (result) => {
100
- expect(result.index).toBe(0);
101
- expect(result.text).toBe("in 20 Jahren");
102
-
103
- expect(result.start).toBeDate(new Date(2032, 7, 10, 12, 14));
104
- });
105
-
106
- testSingleCase(chrono.de, "In 5 Minuten wird ein Auto fahren", new Date(2012, 7, 10, 12, 14), (result) => {
107
- expect(result.index).toBe(0);
108
- expect(result.text).toBe("In 5 Minuten");
109
-
110
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
111
- });
112
-
113
- testSingleCase(chrono.de, "In 5 Min wird ein Auto fahren", new Date(2012, 7, 10, 12, 14), (result) => {
114
- expect(result.index).toBe(0);
115
- expect(result.text).toBe("In 5 Min");
116
-
117
- expect(result.start).toBeDate(new Date(2012, 7, 10, 12, 19));
118
- });
119
- });
@@ -1,158 +0,0 @@
1
- import * as chrono from "../../src/";
2
- import { testSingleCase } from "../test_util";
3
-
4
- test("Test - Simple Weekday Expression", () => {
5
- testSingleCase(chrono.de, "Montag", new Date(2012, 7, 9), (result) => {
6
- expect(result.start).not.toBeNull();
7
- expect(result.start.get("year")).toBe(2012);
8
- expect(result.start.get("month")).toBe(8);
9
- expect(result.start.get("day")).toBe(6);
10
- expect(result.start.get("weekday")).toBe(1);
11
-
12
- expect(result.start.isCertain("day")).toBe(false);
13
- expect(result.start.isCertain("month")).toBe(false);
14
- expect(result.start.isCertain("year")).toBe(false);
15
- expect(result.start.isCertain("weekday")).toBe(true);
16
-
17
- expect(result.start).toBeDate(new Date(2012, 7, 6, 12));
18
- });
19
-
20
- testSingleCase(chrono.de, "am Donnerstag", new Date(2012, 7, 9), (result) => {
21
- expect(result.text).toBe("am Donnerstag");
22
-
23
- expect(result.start.get("year")).toBe(2012);
24
- expect(result.start.get("month")).toBe(8);
25
- expect(result.start.get("day")).toBe(9);
26
- expect(result.start.get("weekday")).toBe(4);
27
-
28
- expect(result.start).toBeDate(new Date(2012, 7, 9, 12));
29
- });
30
-
31
- testSingleCase(chrono.de, "Sonntag", new Date(2012, 7, 9), (result) => {
32
- expect(result.text).toBe("Sonntag");
33
-
34
- expect(result.start.get("year")).toBe(2012);
35
- expect(result.start.get("month")).toBe(8);
36
- expect(result.start.get("day")).toBe(12);
37
- expect(result.start.get("weekday")).toBe(0);
38
-
39
- expect(result.start).toBeDate(new Date(2012, 7, 12, 12));
40
- });
41
-
42
- testSingleCase(chrono.de, "Die Deadline war letzten Freitag...", new Date(2012, 7, 9), (result) => {
43
- expect(result.index).toBe(17);
44
- expect(result.text).toBe("letzten Freitag");
45
-
46
- expect(result.start.get("year")).toBe(2012);
47
- expect(result.start.get("month")).toBe(8);
48
- expect(result.start.get("day")).toBe(3);
49
- expect(result.start.get("weekday")).toBe(5);
50
-
51
- expect(result.start).toBeDate(new Date(2012, 7, 3, 12));
52
- });
53
-
54
- testSingleCase(chrono.de, "Treffen wir uns am Freitag nächste Woche", new Date(2015, 3, 18), (result) => {
55
- expect(result.index).toBe(16);
56
- expect(result.text).toBe("am Freitag nächste Woche");
57
-
58
- expect(result.start.get("year")).toBe(2015);
59
- expect(result.start.get("month")).toBe(4);
60
- expect(result.start.get("day")).toBe(24);
61
- expect(result.start.get("weekday")).toBe(5);
62
-
63
- expect(result.start).toBeDate(new Date(2015, 3, 24, 12));
64
- });
65
-
66
- testSingleCase(
67
- chrono.de,
68
- "Ich habe vor, am Dienstag nächste Woche freizunehmen",
69
- new Date(2015, 3, 18),
70
- (result) => {
71
- expect(result.index).toBe(14);
72
- expect(result.text).toBe("am Dienstag nächste Woche");
73
-
74
- expect(result.start).not.toBeNull();
75
- expect(result.start.get("year")).toBe(2015);
76
- expect(result.start.get("month")).toBe(4);
77
- expect(result.start.get("day")).toBe(21);
78
- expect(result.start.get("weekday")).toBe(2);
79
-
80
- expect(result.start).toBeDate(new Date(2015, 3, 21, 12));
81
- }
82
- );
83
- });
84
-
85
- test("Test - Weekday with forward date option", () => {
86
- testSingleCase(
87
- chrono.de,
88
- "diesen Freitag bis diesen Montag",
89
- new Date(2016, 8 - 1, 4),
90
- { forwardDate: true },
91
- (result) => {
92
- expect(result.index).toBe(0);
93
- expect(result.text).toBe("diesen Freitag bis diesen Montag");
94
-
95
- expect(result.start).not.toBeNull();
96
- expect(result.start.get("year")).toBe(2016);
97
- expect(result.start.get("month")).toBe(8);
98
- expect(result.start.get("day")).toBe(5);
99
- expect(result.start.get("weekday")).toBe(5);
100
-
101
- expect(result.start.isCertain("day")).toBe(false);
102
- expect(result.start.isCertain("month")).toBe(false);
103
- expect(result.start.isCertain("year")).toBe(false);
104
- expect(result.start.isCertain("weekday")).toBe(true);
105
-
106
- expect(result.start).toBeDate(new Date(2016, 8 - 1, 5, 12));
107
-
108
- expect(result.end).not.toBeNull();
109
- expect(result.end.get("year")).toBe(2016);
110
- expect(result.end.get("month")).toBe(8);
111
- expect(result.end.get("day")).toBe(8);
112
- expect(result.end.get("weekday")).toBe(1);
113
-
114
- expect(result.end.isCertain("day")).toBe(false);
115
- expect(result.end.isCertain("month")).toBe(false);
116
- expect(result.end.isCertain("year")).toBe(false);
117
- expect(result.end.isCertain("weekday")).toBe(true);
118
-
119
- expect(result.end).toBeDate(new Date(2016, 8 - 1, 8, 12));
120
- }
121
- );
122
- });
123
-
124
- test("Test - Weekday Overlap", function () {
125
- testSingleCase(chrono.de, "Sonntag, den 7. Dezember 2014", new Date(2012, 7, 9), (result) => {
126
- expect(result.index).toBe(0);
127
- expect(result.text).toBe("Sonntag, den 7. Dezember 2014");
128
-
129
- expect(result.start).not.toBeNull();
130
- expect(result.start.get("year")).toBe(2014);
131
- expect(result.start.get("month")).toBe(12);
132
- expect(result.start.get("day")).toBe(7);
133
- expect(result.start.get("weekday")).toBe(0);
134
-
135
- expect(result.start.isCertain("day")).toBe(true);
136
- expect(result.start.isCertain("month")).toBe(true);
137
- expect(result.start.isCertain("year")).toBe(true);
138
- expect(result.start.isCertain("weekday")).toBe(true);
139
-
140
- expect(result.start).toBeDate(new Date(2014, 12 - 1, 7, 12));
141
- });
142
-
143
- testSingleCase(chrono.de, "Sonntag 7.12.2014", new Date(2012, 7, 9), (result) => {
144
- expect(result.text).toBe("Sonntag 7.12.2014");
145
-
146
- expect(result.start.get("year")).toBe(2014);
147
- expect(result.start.get("month")).toBe(12);
148
- expect(result.start.get("day")).toBe(7);
149
- expect(result.start.get("weekday")).toBe(0);
150
-
151
- expect(result.start.isCertain("day")).toBe(true);
152
- expect(result.start.isCertain("month")).toBe(true);
153
- expect(result.start.isCertain("year")).toBe(true);
154
- expect(result.start.isCertain("weekday")).toBe(true);
155
-
156
- expect(result.start).toBeDate(new Date(2014, 12 - 1, 7, 12));
157
- });
158
- });
@@ -1,147 +0,0 @@
1
- import * as chrono from "../../src";
2
- import { testSingleCase } from "../test_util";
3
- //import DETimeExpressionParser from "../../src/locales/de/parsers/DETimeExpressionParser";
4
-
5
- test("Test - Year numbers with v/nuZ Era label", () => {
6
- testSingleCase(chrono.de, "10. August 234 v.u.Z.", new Date(2012, 7, 10), (result) => {
7
- expect(result.index).toBe(0);
8
- expect(result.text).toBe("10. August 234 v.u.Z."); // fails since text is `10 August 234`
9
-
10
- expect(result.start).not.toBeNull();
11
- expect(result.start.get("year")).toBe(-234);
12
- expect(result.start.get("month")).toBe(8);
13
- expect(result.start.get("day")).toBe(10);
14
-
15
- //expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
16
- });
17
-
18
- testSingleCase(chrono.de, "10. August 88 nuZ", new Date(2012, 7, 10), (result) => {
19
- expect(result.index).toBe(0);
20
- expect(result.text).toBe("10. August 88 nuZ");
21
-
22
- expect(result.start).not.toBeNull();
23
- expect(result.start.get("year")).toBe(88);
24
- expect(result.start.get("month")).toBe(8);
25
- expect(result.start.get("day")).toBe(10);
26
-
27
- //const resultDate = result.start.date();
28
- const expectDate = new Date(88, 8 - 1, 10, 12);
29
- expectDate.setFullYear(88);
30
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
31
- });
32
-
33
- testSingleCase(chrono.de, "10. August 88 uZ", new Date(2012, 7, 10), (result) => {
34
- expect(result.index).toBe(0);
35
- expect(result.text).toBe("10. August 88 uZ");
36
-
37
- expect(result.start).not.toBeNull();
38
- expect(result.start.get("year")).toBe(88);
39
- expect(result.start.get("month")).toBe(8);
40
- expect(result.start.get("day")).toBe(10);
41
-
42
- //const resultDate = result.start.date();
43
- const expectDate = new Date(88, 8 - 1, 10, 12);
44
- expectDate.setFullYear(88);
45
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
46
- });
47
-
48
- testSingleCase(chrono.de, "10. August 88 d.g.Z.", new Date(2012, 7, 10), (result) => {
49
- expect(result.index).toBe(0);
50
- expect(result.text).toBe("10. August 88 d.g.Z.");
51
-
52
- expect(result.start).not.toBeNull();
53
- expect(result.start.get("year")).toBe(88);
54
- expect(result.start.get("month")).toBe(8);
55
- expect(result.start.get("day")).toBe(10);
56
-
57
- //const resultDate = result.start.date();
58
- const expectDate = new Date(88, 8 - 1, 10, 12);
59
- expectDate.setFullYear(88);
60
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
61
- });
62
- });
63
-
64
- test("Test - Year numbers with v/nChr Era label", () => {
65
- testSingleCase(chrono.de, "10. August 234 v.Chr.", new Date(2012, 7, 10), (result) => {
66
- expect(result.index).toBe(0);
67
- expect(result.text).toBe("10. August 234 v.Chr.");
68
-
69
- expect(result.start).not.toBeNull();
70
- expect(result.start.get("year")).toBe(-234);
71
- expect(result.start.get("month")).toBe(8);
72
- expect(result.start.get("day")).toBe(10);
73
-
74
- //expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
75
- });
76
-
77
- testSingleCase(chrono.de, "10. August 88 nC", new Date(2012, 7, 10), (result) => {
78
- expect(result.index).toBe(0);
79
- expect(result.text).toBe("10. August 88 nC");
80
-
81
- expect(result.start).not.toBeNull();
82
- expect(result.start.get("year")).toBe(88);
83
- expect(result.start.get("month")).toBe(8);
84
- expect(result.start.get("day")).toBe(10);
85
-
86
- //const resultDate = result.start.date();
87
- const expectDate = new Date(88, 8 - 1, 10, 12);
88
- expectDate.setFullYear(88);
89
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
90
- });
91
- });
92
-
93
- test("Test - Year numbers with v/ndgZ Era label", () => {
94
- testSingleCase(chrono.de, "10. August 234 v.d.Z.", new Date(2012, 7, 10), (result) => {
95
- expect(result.index).toBe(0);
96
- expect(result.text).toBe("10. August 234 v.d.Z.");
97
-
98
- expect(result.start).not.toBeNull();
99
- expect(result.start.get("year")).toBe(-234);
100
- expect(result.start.get("month")).toBe(8);
101
- expect(result.start.get("day")).toBe(10);
102
-
103
- //expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
104
- });
105
-
106
- testSingleCase(chrono.de, "10. August 88 ndZ", new Date(2012, 7, 10), (result) => {
107
- expect(result.index).toBe(0);
108
- expect(result.text).toBe("10. August 88 ndZ");
109
-
110
- expect(result.start).not.toBeNull();
111
- expect(result.start.get("year")).toBe(88);
112
- expect(result.start.get("month")).toBe(8);
113
- expect(result.start.get("day")).toBe(10);
114
-
115
- //const resultDate = result.start.date();
116
- const expectDate = new Date(88, 8 - 1, 10, 12);
117
- expectDate.setFullYear(88);
118
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
119
- });
120
-
121
- testSingleCase(chrono.de, "10. August 234 v.d.g.Z.", new Date(2012, 7, 10), (result) => {
122
- expect(result.index).toBe(0);
123
- expect(result.text).toBe("10. August 234 v.d.g.Z.");
124
-
125
- expect(result.start).not.toBeNull();
126
- expect(result.start.get("year")).toBe(-234);
127
- expect(result.start.get("month")).toBe(8);
128
- expect(result.start.get("day")).toBe(10);
129
-
130
- //expect(result.start).toBeDate(new Date(-234, 8 - 1, 10, 12));
131
- });
132
-
133
- testSingleCase(chrono.de, "10. August 88 ndgZ", new Date(2012, 7, 10), (result) => {
134
- expect(result.index).toBe(0);
135
- expect(result.text).toBe("10. August 88 ndgZ");
136
-
137
- expect(result.start).not.toBeNull();
138
- expect(result.start.get("year")).toBe(88);
139
- expect(result.start.get("month")).toBe(8);
140
- expect(result.start.get("day")).toBe(10);
141
-
142
- //const resultDate = result.start.date();
143
- const expectDate = new Date(88, 8 - 1, 10, 12);
144
- expectDate.setFullYear(88);
145
- //expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime());
146
- });
147
- });
@@ -1,17 +0,0 @@
1
- import { BufferedDebugHandler } from "../src/debugging";
2
-
3
- test("Test - BufferedDebugHandler", () => {
4
- const debugHandler = new BufferedDebugHandler();
5
-
6
- const debugBlockA = jest.fn();
7
- debugHandler.debug(() => debugBlockA());
8
- expect(debugBlockA).not.toBeCalled();
9
-
10
- const debugBlockB = jest.fn();
11
- debugHandler.debug(() => debugBlockB());
12
- expect(debugBlockB).not.toBeCalled();
13
-
14
- debugHandler.executeBufferedBlocks();
15
- expect(debugBlockA).toBeCalled();
16
- expect(debugBlockB).toBeCalled();
17
- });
@@ -1,191 +0,0 @@
1
- import * as chrono from "../../src";
2
- import { testSingleCase, testUnexpectedResult } from "../test_util";
3
- import ENTimeExpressionParser from "../../src/locales/en/parsers/ENTimeExpressionParser";
4
- import { Meridiem } from "../../src";
5
-
6
- test("Test - Date + Time Expression", function () {
7
- testSingleCase(chrono, "Something happen on 2014-04-18 13:00 - 16:00 as", (result) => {
8
- expect(result.text).toBe("2014-04-18 13:00 - 16:00");
9
-
10
- expect(result.start).toBeDate(new Date(2014, 4 - 1, 18, 13));
11
- expect(result.end).toBeDate(new Date(2014, 4 - 1, 18, 16));
12
- });
13
- });
14
-
15
- test("Test - Time Expression", function () {
16
- testSingleCase(chrono, "between 3:30-4:30pm", new Date(2020, 7 - 1, 6), (result) => {
17
- expect(result.text).toBe("3:30-4:30pm");
18
-
19
- expect(result.start).toBeDate(new Date(2020, 7 - 1, 6, 15, 30));
20
- expect(result.end).toBeDate(new Date(2020, 7 - 1, 6, 16, 30));
21
- });
22
-
23
- testSingleCase(chrono, "9:00 PST", new Date(2020, 7 - 1, 6), (result) => {
24
- expect(result.text).toBe("9:00 PST");
25
-
26
- expect(result.start.get("hour")).toBe(9);
27
- expect(result.start.get("minute")).toBe(0);
28
- expect(result.start.get("timezoneOffset")).toBe(-480);
29
- });
30
- });
31
-
32
- test("Test - Quoted Expressions", function () {
33
- testSingleCase(chrono, "Want to meet for dinner (5pm EST)?", new Date(2020, 7 - 1, 6), (result) => {
34
- expect(result.text).toContain("5pm EST");
35
- });
36
-
37
- testSingleCase(chrono, "between '3:30-4:30pm'", new Date(2020, 7 - 1, 6), (result) => {
38
- expect(result.text).toContain("3:30-4:30pm");
39
-
40
- expect(result.start).toBeDate(new Date(2020, 7 - 1, 6, 15, 30));
41
- expect(result.end).toBeDate(new Date(2020, 7 - 1, 6, 16, 30));
42
- });
43
-
44
- testSingleCase(chrono, "The date is '2014-04-18'", (result) => {
45
- expect(result.text).toContain("2014-04-18");
46
- expect(result.start).toBeDate(new Date(2014, 4 - 1, 18, 12));
47
- });
48
- });
49
-
50
- test("Test - Strict Mode", function () {
51
- testUnexpectedResult(chrono.strict, "Tuesday");
52
- });
53
- test("Test - Built-in English variants", () => {
54
- testSingleCase(chrono.en, "6/10/2018", (result) => {
55
- expect(result.start).toBeDate(new Date(2018, 6 - 1, 10, 12));
56
- });
57
- testSingleCase(chrono.en.GB, "6/10/2018", (result) => {
58
- expect(result.start).toBeDate(new Date(2018, 10 - 1, 6, 12));
59
- });
60
- });
61
-
62
- test("Test - Random text", function () {
63
- testSingleCase(chrono, "Adam <Adam@supercalendar.com> написал(а):\nThe date is 02.07.2013", (result) => {
64
- expect(result.text).toBe("02.07.2013");
65
- });
66
-
67
- testSingleCase(chrono, "174 November 1,2001- March 31,2002", (result) => {
68
- expect(result.text).toBe("November 1,2001- March 31,2002");
69
- });
70
-
71
- testSingleCase(chrono, "...Thursday, December 15, 2011 Best Available Rate ", (result) => {
72
- expect(result.text).toBe("Thursday, December 15, 2011");
73
- expect(result.start.get("year")).toBe(2011);
74
- });
75
-
76
- testSingleCase(chrono, "SUN 15SEP 11:05 AM - 12:50 PM", (result) => {
77
- expect(result.text).toBe("SUN 15SEP 11:05 AM - 12:50 PM");
78
-
79
- expect(result.end.get("hour")).toBe(12);
80
- expect(result.end.get("minute")).toBe(50);
81
- });
82
-
83
- testSingleCase(chrono, "FRI 13SEP 1:29 PM - FRI 13SEP 3:29 PM", (result) => {
84
- expect(result.text).toBe("FRI 13SEP 1:29 PM - FRI 13SEP 3:29 PM");
85
-
86
- expect(result.start.get("day")).toBe(13);
87
- expect(result.start.get("hour")).toBe(13);
88
- expect(result.start.get("minute")).toBe(29);
89
-
90
- expect(result.end.get("day")).toBe(13);
91
- expect(result.end.get("hour")).toBe(15);
92
- expect(result.end.get("minute")).toBe(29);
93
- });
94
-
95
- testSingleCase(chrono, "9:00 AM to 5:00 PM, Tuesday, 20 May 2013", (result) => {
96
- expect(result.text).toBe("9:00 AM to 5:00 PM, Tuesday, 20 May 2013");
97
-
98
- expect(result.start).toBeDate(new Date(2013, 4, 20, 9, 0));
99
- expect(result.end).toBeDate(new Date(2013, 4, 20, 17, 0));
100
- });
101
-
102
- testSingleCase(chrono, "Monday afternoon to last night", new Date(2017, 7 - 1, 7), (result) => {
103
- expect(result.text).toBe("Monday afternoon to last night");
104
- expect(result.start.get("day")).toBe(3);
105
- expect(result.start.get("month")).toBe(7);
106
- expect(result.end.get("day")).toBe(7);
107
- expect(result.end.get("month")).toBe(7);
108
- });
109
-
110
- testSingleCase(chrono, "07-27-2022, 02:00 AM", new Date(2017, 7 - 1, 7), (result) => {
111
- expect(result.text).toBe("07-27-2022, 02:00 AM");
112
- expect(result.start.get("day")).toBe(27);
113
- expect(result.start.get("month")).toBe(7);
114
- expect(result.start.get("year")).toBe(2022);
115
- expect(result.start.get("hour")).toBe(2);
116
- expect(result.start.get("meridiem")).toBe(Meridiem.AM);
117
- });
118
- });
119
-
120
- test("Test - Wikipedia Texts", function () {
121
- const text =
122
- "October 7, 2011, of which details were not revealed out of respect to Jobs's family.[239] " +
123
- "Apple announced on the same day that they had no plans for a public service, but were encouraging " +
124
- '"well-wishers" to send their remembrance messages to an email address created to receive such messages.[240] ' +
125
- "Sunday, October 16, 2011";
126
-
127
- const results = chrono.parse(text, new Date(2012, 7, 10));
128
- expect(results.length).toBe(2);
129
-
130
- {
131
- const result = results[0];
132
- expect(result.start.get("year")).toBe(2011);
133
- expect(result.start.get("month")).toBe(10);
134
- expect(result.start.get("day")).toBe(7);
135
-
136
- expect(result.index).toBe(0);
137
- expect(result.text).toBe("October 7, 2011");
138
- }
139
-
140
- {
141
- const result = results[1];
142
- expect(result.start.get("year")).toBe(2011);
143
- expect(result.start.get("month")).toBe(10);
144
- expect(result.start.get("day")).toBe(16);
145
-
146
- expect(result.index).toBe(297);
147
- expect(result.text).toBe("Sunday, October 16, 2011");
148
- }
149
- });
150
-
151
- test("Test - Parse multiple date results", function () {
152
- const text = "I will see you at 2:30. If not I will see you somewhere between 3:30-4:30pm";
153
- const results = chrono.parse(text, new Date(2020, 7 - 1, 6));
154
- expect(results.length).toBe(2);
155
-
156
- {
157
- const result = results[0];
158
- expect(result.text).toBe("at 2:30");
159
- expect(result.start.get("year")).toBe(2020);
160
- expect(result.start.get("month")).toBe(7);
161
- expect(result.start.get("day")).toBe(6);
162
- expect(result.start.get("hour")).toBe(2);
163
-
164
- expect(result.end).toBeNull();
165
- }
166
-
167
- {
168
- const result = results[1];
169
- expect(result.text).toBe("3:30-4:30pm");
170
-
171
- expect(result.start.get("hour")).toBe(15);
172
- expect(result.start.get("minute")).toBe(30);
173
-
174
- expect(result.end.get("hour")).toBe(16);
175
- expect(result.end.get("minute")).toBe(30);
176
- }
177
- });
178
-
179
- test("Test - Customize by removing time extraction", () => {
180
- const custom = chrono.en.casual.clone();
181
- custom.parsers = custom.parsers.filter((p) => !(p instanceof ENTimeExpressionParser));
182
-
183
- custom.parse("Thursday 9AM");
184
-
185
- testSingleCase(custom, "Thursday 9AM", new Date(2020, 11 - 1, 29), (result, text) => {
186
- expect(result.text).toBe("Thursday");
187
- expect(result.start.get("year")).toBe(2020);
188
- expect(result.start.get("month")).toBe(11);
189
- expect(result.start.get("day")).toBe(26);
190
- });
191
- });