chrono-node 2.7.7 → 2.7.8

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 (53) hide show
  1. package/dist/cjs/common/parsers/SlashDateFormatParser.js +1 -1
  2. package/dist/cjs/common/parsers/SlashDateFormatParser.js.map +1 -1
  3. package/dist/cjs/locales/en/configuration.js +2 -0
  4. package/dist/cjs/locales/en/configuration.js.map +1 -1
  5. package/dist/cjs/locales/en/parsers/ENMonthNameParser.js +1 -1
  6. package/dist/cjs/locales/en/parsers/ENMonthNameParser.js.map +1 -1
  7. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.d.ts +2 -1
  8. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.js +7 -0
  9. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.js.map +1 -1
  10. package/dist/cjs/locales/en/parsers/ENWeekdayParser.d.ts +1 -1
  11. package/dist/cjs/locales/en/parsers/ENWeekdayParser.js +24 -3
  12. package/dist/cjs/locales/en/parsers/ENWeekdayParser.js.map +1 -1
  13. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.d.ts +6 -0
  14. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.js +35 -0
  15. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.js.map +1 -0
  16. package/dist/cjs/results.d.ts +2 -0
  17. package/dist/cjs/results.js +16 -0
  18. package/dist/cjs/results.js.map +1 -1
  19. package/dist/esm/common/parsers/SlashDateFormatParser.js +1 -1
  20. package/dist/esm/common/parsers/SlashDateFormatParser.js.map +1 -1
  21. package/dist/esm/locales/en/configuration.js +2 -0
  22. package/dist/esm/locales/en/configuration.js.map +1 -1
  23. package/dist/esm/locales/en/parsers/ENMonthNameParser.js +1 -1
  24. package/dist/esm/locales/en/parsers/ENMonthNameParser.js.map +1 -1
  25. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.d.ts +2 -1
  26. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.js +7 -0
  27. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.js.map +1 -1
  28. package/dist/esm/locales/en/parsers/ENWeekdayParser.d.ts +1 -1
  29. package/dist/esm/locales/en/parsers/ENWeekdayParser.js +24 -3
  30. package/dist/esm/locales/en/parsers/ENWeekdayParser.js.map +1 -1
  31. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.d.ts +6 -0
  32. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js +32 -0
  33. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js.map +1 -0
  34. package/dist/esm/results.d.ts +2 -0
  35. package/dist/esm/results.js +16 -0
  36. package/dist/esm/results.js.map +1 -1
  37. package/package.json +1 -1
  38. package/src/common/parsers/SlashDateFormatParser.ts +1 -1
  39. package/src/locales/en/configuration.ts +2 -0
  40. package/src/locales/en/parsers/ENMonthNameParser.ts +1 -1
  41. package/src/locales/en/parsers/ENTimeExpressionParser.ts +13 -1
  42. package/src/locales/en/parsers/ENWeekdayParser.ts +28 -4
  43. package/src/locales/en/refiners/ENUnlikelyFormatFilter.ts +44 -0
  44. package/src/results.ts +18 -0
  45. package/test/en/en_casual.test.ts +4 -0
  46. package/test/en/en_month.test.ts +22 -1
  47. package/test/en/en_slash.test.ts +4 -0
  48. package/test/en/en_time_exp.test.ts +9 -0
  49. package/test/en/en_time_units_ago.test.ts +4 -0
  50. package/test/en/en_time_units_casual_relative.test.ts +5 -0
  51. package/test/en/en_time_units_later.test.ts +1 -0
  52. package/test/en/en_time_units_within.test.ts +2 -0
  53. package/test/en/en_weekday.test.ts +43 -0
@@ -67,7 +67,7 @@ class SlashDateFormatParser {
67
67
  const year = years_1.findYearClosestToRef(context.refDate, day, month);
68
68
  result.start.imply("year", year);
69
69
  }
70
- return result;
70
+ return result.addTag("parser/SlashDateFormatParser");
71
71
  }
72
72
  }
73
73
  exports.default = SlashDateFormatParser;
@@ -1 +1 @@
1
- {"version":3,"file":"SlashDateFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/SlashDateFormatParser.ts"],"names":[],"mappings":";;AAEA,mDAAqF;AASrF,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,YAAY;IACR,qDAAqD;IACrD,qCAAqC;IACrC,SAAS,EACb,GAAG,CACN,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,MAAM,UAAU,GAAG,CAAC,CAAC;AAErB,MAAqB,qBAAqB;IAItC,YAAY,YAAqB;QAC7B,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAClF,IAAI,CAAC,cAAc,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,oBAAoB,CAAC;IACpF,CAAC;IAED,OAAO;QACH,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,OAAO,CAAC,OAAuB,EAAE,KAAuB;QAGpD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC;QACxD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;QAC5E,IAAI,KAAK,GAAG,CAAC,EAAE;YACX,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACpD,IAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC5B,OAAO;aACV;SACJ;QACD,IAAI,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;YAChC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;gBAC3B,OAAO;aACV;SACJ;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QAGrD,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,EAAE;YACnE,OAAO;SACV;QAID,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YAC7C,OAAO;SACV;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACxD,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACnD,IAAI,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;QAC/C,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE;YACzB,IAAI,KAAK,GAAG,EAAE,EAAE;gBACZ,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,KAAK,IAAI,EAAE,EAAE;oBACtC,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;iBAC/B;qBAAM;oBACH,OAAO,IAAI,CAAC;iBACf;aACJ;SACJ;QAED,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC;SACf;QAED,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACnB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAClD,MAAM,IAAI,GAAG,4BAAoB,CAAC,aAAa,CAAC,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,IAAI,GAAG,4BAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA3ED,wCA2EC"}
1
+ {"version":3,"file":"SlashDateFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/SlashDateFormatParser.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ const ENMergeRelativeAfterDateRefiner_1 = __importDefault(require("./refiners/EN
25
25
  const ENMergeRelativeFollowByDateRefiner_1 = __importDefault(require("./refiners/ENMergeRelativeFollowByDateRefiner"));
26
26
  const OverlapRemovalRefiner_1 = __importDefault(require("../../common/refiners/OverlapRemovalRefiner"));
27
27
  const ENExtractYearSuffixRefiner_1 = __importDefault(require("./refiners/ENExtractYearSuffixRefiner"));
28
+ const ENUnlikelyFormatFilter_1 = __importDefault(require("./refiners/ENUnlikelyFormatFilter"));
28
29
  class ENDefaultConfiguration {
29
30
  createCasualConfiguration(littleEndian = false) {
30
31
  const option = this.createConfiguration(false, littleEndian);
@@ -33,6 +34,7 @@ class ENDefaultConfiguration {
33
34
  option.parsers.push(new ENMonthNameParser_1.default());
34
35
  option.parsers.push(new ENRelativeDateFormatParser_1.default());
35
36
  option.parsers.push(new ENTimeUnitCasualRelativeFormatParser_1.default());
37
+ option.refiners.push(new ENUnlikelyFormatFilter_1.default());
36
38
  return option;
37
39
  }
38
40
  createConfiguration(strictMode = true, littleEndian = false) {
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":";;;;;AAEA,0GAAkF;AAClF,4GAAoF;AACpF,4GAAoF;AACpF,oFAA4D;AAC5D,0FAAkE;AAClE,kGAA0E;AAC1E,8FAAsE;AACtE,oGAA4E;AAC5E,wGAAgF;AAChF,iGAAyE;AACzE,+FAAuE;AAEvE,yDAAkE;AAClE,sFAA8D;AAC9D,sFAA8D;AAC9D,gFAAwD;AACxD,sGAA8E;AAE9E,uGAA+E;AAC/E,0HAAkG;AAClG,iHAAyF;AACzF,uHAA+F;AAC/F,wGAAgF;AAChF,uGAA+E;AAE/E,MAAqB,sBAAsB;IAKvC,yBAAyB,CAAC,YAAY,GAAG,KAAK;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,4BAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,4BAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,2BAAiB,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,oCAA0B,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,8CAAoC,EAAE,CAAC,CAAC;QAChE,OAAO,MAAM,CAAC;IAClB,CAAC;IAQD,mBAAmB,CAAC,UAAU,GAAG,IAAI,EAAE,YAAY,GAAG,KAAK;QACvD,MAAM,OAAO,GAAG,2CAA0B,CACtC;YACI,OAAO,EAAE;gBACL,IAAI,+BAAqB,CAAC,YAAY,CAAC;gBACvC,IAAI,sCAA4B,CAAC,UAAU,CAAC;gBAC5C,IAAI,uCAA6B,EAAE;gBACnC,IAAI,uCAA6B,CAA6B,YAAY,CAAC;gBAC3E,IAAI,yBAAe,EAAE;gBACrB,IAAI,kCAAwB,EAAE;gBAC9B,IAAI,gCAAsB,CAAC,UAAU,CAAC;gBACtC,IAAI,mCAAyB,CAAC,UAAU,CAAC;gBACzC,IAAI,qCAA2B,CAAC,UAAU,CAAC;aAC9C;YACD,QAAQ,EAAE,CAAC,IAAI,gCAAsB,EAAE,CAAC;SAC3C,EACD,UAAU,CACb,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAoB,CAA2B,UAAU,CAAC,CAAC,CAAC;QAGxF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,4CAAkC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,yCAA+B,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,+BAAqB,EAAE,CAAC,CAAC;QAGtD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,gCAAsB,EAAE,CAAC,CAAC;QAGpD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oCAA0B,EAAE,CAAC,CAAC;QAGxD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iCAAuB,EAAE,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAxDD,yCAwDC"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":";;;;;AAEA,0GAAkF;AAClF,4GAAoF;AACpF,4GAAoF;AACpF,oFAA4D;AAC5D,0FAAkE;AAClE,kGAA0E;AAC1E,8FAAsE;AACtE,oGAA4E;AAC5E,wGAAgF;AAChF,iGAAyE;AACzE,+FAAuE;AAEvE,yDAAkE;AAClE,sFAA8D;AAC9D,sFAA8D;AAC9D,gFAAwD;AACxD,sGAA8E;AAE9E,uGAA+E;AAC/E,0HAAkG;AAClG,iHAAyF;AACzF,uHAA+F;AAC/F,wGAAgF;AAChF,uGAA+E;AAC/E,+FAAuE;AAEvE,MAAqB,sBAAsB;IAKvC,yBAAyB,CAAC,YAAY,GAAG,KAAK;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;QAC7D,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,4BAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,4BAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,2BAAiB,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,oCAA0B,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,8CAAoC,EAAE,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,gCAAsB,EAAE,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC;IAClB,CAAC;IAQD,mBAAmB,CAAC,UAAU,GAAG,IAAI,EAAE,YAAY,GAAG,KAAK;QACvD,MAAM,OAAO,GAAG,2CAA0B,CACtC;YACI,OAAO,EAAE;gBACL,IAAI,+BAAqB,CAAC,YAAY,CAAC;gBACvC,IAAI,sCAA4B,CAAC,UAAU,CAAC;gBAC5C,IAAI,uCAA6B,EAAE;gBACnC,IAAI,uCAA6B,CAA6B,YAAY,CAAC;gBAC3E,IAAI,yBAAe,EAAE;gBACrB,IAAI,kCAAwB,EAAE;gBAC9B,IAAI,gCAAsB,CAAC,UAAU,CAAC;gBACtC,IAAI,mCAAyB,CAAC,UAAU,CAAC;gBACzC,IAAI,qCAA2B,CAAC,UAAU,CAAC;aAC9C;YACD,QAAQ,EAAE,CAAC,IAAI,gCAAsB,EAAE,CAAC;SAC3C,EACD,UAAU,CACb,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAoB,CAA2B,UAAU,CAAC,CAAC,CAAC;QAGxF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,4CAAkC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,yCAA+B,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,+BAAqB,EAAE,CAAC,CAAC;QAGtD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,gCAAsB,EAAE,CAAC,CAAC;QAGpD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,oCAA0B,EAAE,CAAC,CAAC;QAGxD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,iCAAuB,EAAE,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAzDD,yCAyDC"}
@@ -9,7 +9,7 @@ const PATTERN = new RegExp(`((?:in)\\s*)?` +
9
9
  `(${pattern_1.matchAnyPattern(constants_1.MONTH_DICTIONARY)})` +
10
10
  `\\s*` +
11
11
  `(?:` +
12
- `[,-]?\\s*(${constants_2.YEAR_PATTERN})?` +
12
+ `(?:,|-|of)?\\s*(${constants_2.YEAR_PATTERN})?` +
13
13
  ")?" +
14
14
  "(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)", "i");
15
15
  const PREFIX_GROUP = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"ENMonthNameParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENMonthNameParser.ts"],"names":[],"mappings":";;AAAA,4CAA4E;AAE5E,sDAAkE;AAClE,oDAAyD;AACzD,4CAAuD;AACvD,2GAAgH;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,eAAe;IACX,IAAI,yBAAe,CAAC,4BAAgB,CAAC,GAAG;IACxC,MAAM;IACN,KAAK;IACL,aAAa,wBAAY,IAAI;IAC7B,IAAI;IACJ,kCAAkC,EACtC,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,UAAU,GAAG,CAAC,CAAC;AASrB,MAAqB,iBAAkB,SAAQ,uEAAsC;IACjF,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAGxD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,sCAA0B,CAAC,SAAS,CAAC,EAAE;YAChE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CACtC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAChD,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAChC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,4BAAgB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACnB,MAAM,IAAI,GAAG,qBAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,IAAI,GAAG,4BAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAjCD,oCAiCC"}
1
+ {"version":3,"file":"ENMonthNameParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENMonthNameParser.ts"],"names":[],"mappings":";;AAAA,4CAA4E;AAE5E,sDAAkE;AAClE,oDAAyD;AACzD,4CAAuD;AACvD,2GAAgH;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,eAAe;IACX,IAAI,yBAAe,CAAC,4BAAgB,CAAC,GAAG;IACxC,MAAM;IACN,KAAK;IACL,mBAAmB,wBAAY,IAAI;IACnC,IAAI;IACJ,kCAAkC,EACtC,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,UAAU,GAAG,CAAC,CAAC;AASrB,MAAqB,iBAAkB,SAAQ,uEAAsC;IACjF,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAGxD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,sCAA0B,CAAC,SAAS,CAAC,EAAE;YAChE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CACtC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAChD,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAChC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,4BAAgB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACnB,MAAM,IAAI,GAAG,qBAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,IAAI,GAAG,4BAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAjCD,oCAiCC"}
@@ -1,5 +1,5 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
- import { ParsingComponents } from "../../../results";
2
+ import { ParsingComponents, ParsingResult } from "../../../results";
3
3
  import { AbstractTimeExpressionParser } from "../../../common/parsers/AbstractTimeExpressionParser";
4
4
  export default class ENTimeExpressionParser extends AbstractTimeExpressionParser {
5
5
  constructor(strictMode: any);
@@ -7,4 +7,5 @@ export default class ENTimeExpressionParser extends AbstractTimeExpressionParser
7
7
  primaryPrefix(): string;
8
8
  primarySuffix(): string;
9
9
  extractPrimaryTimeComponents(context: ParsingContext, match: RegExpMatchArray): null | ParsingComponents;
10
+ extractFollowingTimeComponents(context: ParsingContext, match: RegExpMatchArray, result: ParsingResult): ParsingComponents | null;
10
11
  }
@@ -46,6 +46,13 @@ class ENTimeExpressionParser extends AbstractTimeExpressionParser_1.AbstractTime
46
46
  }
47
47
  return components.addTag("parser/ENTimeExpressionParser");
48
48
  }
49
+ extractFollowingTimeComponents(context, match, result) {
50
+ const followingComponents = super.extractFollowingTimeComponents(context, match, result);
51
+ if (followingComponents) {
52
+ followingComponents.addTag("parser/ENTimeExpressionParser");
53
+ }
54
+ return followingComponents;
55
+ }
49
56
  }
50
57
  exports.default = ENTimeExpressionParser;
51
58
  //# sourceMappingURL=ENTimeExpressionParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ENTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENTimeExpressionParser.ts"],"names":[],"mappings":";;AAEA,0CAA0C;AAC1C,uGAAoG;AAEpG,MAAqB,sBAAuB,SAAQ,2DAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,uDAAuD,CAAC;IACnE,CAAC;IAED,aAAa;QACT,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,aAAa;QACT,OAAO,sFAAsF,CAAC;IAClG,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,UAAU,CAAC;SACrB;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAI,GAAG,CAAC,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YAChC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;aAC1D;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9B,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACX,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACJ;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC9D,CAAC;CACJ;AAnDD,yCAmDC"}
1
+ {"version":3,"file":"ENTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENTimeExpressionParser.ts"],"names":[],"mappings":";;AAEA,0CAA0C;AAC1C,uGAAoG;AAEpG,MAAqB,sBAAuB,SAAQ,2DAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,uDAAuD,CAAC;IACnE,CAAC;IAED,aAAa;QACT,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,aAAa;QACT,OAAO,sFAAsF,CAAC;IAClG,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,UAAU,CAAC;SACrB;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAI,GAAG,CAAC,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YAChC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;aAC1D;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9B,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACX,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACJ;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC9D,CAAC;IAED,8BAA8B,CAC1B,OAAuB,EACvB,KAAuB,EACvB,MAAqB;QAErB,MAAM,mBAAmB,GAAG,KAAK,CAAC,8BAA8B,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzF,IAAI,mBAAmB,EAAE;YACrB,mBAAmB,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;SAC/D;QACD,OAAO,mBAAmB,CAAC;IAC/B,CAAC;CACJ;AA/DD,yCA+DC"}
@@ -3,5 +3,5 @@ import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
4
  export default class ENWeekdayParser extends AbstractParserWithWordBoundaryChecking {
5
5
  innerPattern(): RegExp;
6
- innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
6
+ innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents | null;
7
7
  }
@@ -4,10 +4,11 @@ const constants_1 = require("../constants");
4
4
  const pattern_1 = require("../../../utils/pattern");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
6
  const weekdays_1 = require("../../../common/calculation/weekdays");
7
+ const types_1 = require("../../../types");
7
8
  const PATTERN = new RegExp("(?:(?:\\,|\\(|\\()\\s*)?" +
8
9
  "(?:on\\s*?)?" +
9
10
  "(?:(this|last|past|next)\\s*)?" +
10
- `(${pattern_1.matchAnyPattern(constants_1.WEEKDAY_DICTIONARY)})` +
11
+ `(${pattern_1.matchAnyPattern(constants_1.WEEKDAY_DICTIONARY)}|weekend|weekday)` +
11
12
  "(?:\\s*(?:\\,|\\)|\\)))?" +
12
13
  "(?:\\s*(this|last|past|next)\\s*week)?" +
13
14
  "(?=\\W|$)", "i");
@@ -19,8 +20,6 @@ class ENWeekdayParser extends AbstractParserWithWordBoundary_1.AbstractParserWit
19
20
  return PATTERN;
20
21
  }
21
22
  innerExtract(context, match) {
22
- const dayOfWeek = match[WEEKDAY_GROUP].toLowerCase();
23
- const weekday = constants_1.WEEKDAY_DICTIONARY[dayOfWeek];
24
23
  const prefix = match[PREFIX_GROUP];
25
24
  const postfix = match[POSTFIX_GROUP];
26
25
  let modifierWord = prefix || postfix;
@@ -36,6 +35,28 @@ class ENWeekdayParser extends AbstractParserWithWordBoundary_1.AbstractParserWit
36
35
  else if (modifierWord == "this") {
37
36
  modifier = "this";
38
37
  }
38
+ const weekday_word = match[WEEKDAY_GROUP].toLowerCase();
39
+ let weekday;
40
+ if (constants_1.WEEKDAY_DICTIONARY[weekday_word] !== undefined) {
41
+ weekday = constants_1.WEEKDAY_DICTIONARY[weekday_word];
42
+ }
43
+ else if (weekday_word == "weekend") {
44
+ weekday = modifier == "last" ? types_1.Weekday.SUNDAY : types_1.Weekday.SATURDAY;
45
+ }
46
+ else if (weekday_word == "weekday") {
47
+ const refWeekday = context.reference.getDateWithAdjustedTimezone().getDay();
48
+ if (refWeekday == types_1.Weekday.SUNDAY || refWeekday == types_1.Weekday.SATURDAY) {
49
+ weekday = modifier == "last" ? types_1.Weekday.FRIDAY : types_1.Weekday.MONDAY;
50
+ }
51
+ else {
52
+ weekday = refWeekday - 1;
53
+ weekday = modifier == "last" ? weekday - 1 : weekday + 1;
54
+ weekday = (weekday % 5) + 1;
55
+ }
56
+ }
57
+ else {
58
+ return null;
59
+ }
39
60
  return weekdays_1.createParsingComponentsAtWeekday(context.reference, weekday, modifier);
40
61
  }
41
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ENWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENWeekdayParser.ts"],"names":[],"mappings":";;AAEA,4CAAkD;AAClD,oDAAyD;AACzD,2GAAgH;AAChH,mEAAwF;AAExF,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,cAAc;IACd,gCAAgC;IAChC,IAAI,yBAAe,CAAC,8BAAkB,CAAC,GAAG;IAC1C,0BAA0B;IAC1B,wCAAwC;IACxC,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAqB,eAAgB,SAAQ,uEAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,8BAAkB,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAClD,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;QAED,OAAO,2CAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ;AAzBD,kCAyBC"}
1
+ {"version":3,"file":"ENWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENWeekdayParser.ts"],"names":[],"mappings":";;AAEA,4CAAkD;AAClD,oDAAyD;AACzD,2GAAgH;AAChH,mEAAwF;AACxF,0CAAyC;AAEzC,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,cAAc;IACd,gCAAgC;IAChC,IAAI,yBAAe,CAAC,8BAAkB,CAAC,mBAAmB;IAC1D,0BAA0B;IAC1B,wCAAwC;IACxC,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAqB,eAAgB,SAAQ,uEAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAClD,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QACxD,IAAI,OAAO,CAAC;QACZ,IAAI,8BAAkB,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;YAChD,OAAO,GAAG,8BAAkB,CAAC,YAAY,CAAC,CAAC;SAC9C;aAAM,IAAI,YAAY,IAAI,SAAS,EAAE;YAGlC,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,eAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAO,CAAC,QAAQ,CAAC;SACpE;aAAM,IAAI,YAAY,IAAI,SAAS,EAAE;YAKlC,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,CAAC;YAC5E,IAAI,UAAU,IAAI,eAAO,CAAC,MAAM,IAAI,UAAU,IAAI,eAAO,CAAC,QAAQ,EAAE;gBAChE,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,eAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAO,CAAC,MAAM,CAAC;aAClE;iBAAM;gBACH,OAAO,GAAG,UAAU,GAAG,CAAC,CAAC;gBACzB,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;gBACzD,OAAO,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;aAC/B;SACJ;aAAM;YACH,OAAO,IAAI,CAAC;SACf;QAED,OAAO,2CAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ;AAhDD,kCAgDC"}
@@ -0,0 +1,6 @@
1
+ import { Filter } from "../../../common/abstractRefiners";
2
+ import { ParsingResult } from "../../../results";
3
+ export default class ENUnlikelyFormatFilter extends Filter {
4
+ constructor();
5
+ isValid(context: any, result: ParsingResult): boolean;
6
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const abstractRefiners_1 = require("../../../common/abstractRefiners");
4
+ class ENUnlikelyFormatFilter extends abstractRefiners_1.Filter {
5
+ constructor() {
6
+ super();
7
+ }
8
+ isValid(context, result) {
9
+ const text = result.text.trim();
10
+ if (text === context.text.trim()) {
11
+ return true;
12
+ }
13
+ if (text.toLowerCase() === "may") {
14
+ const textBefore = context.text.substring(0, result.index).trim();
15
+ if (!textBefore.match(/\b(in)$/i)) {
16
+ context.debug(() => {
17
+ console.log(`Removing unlikely result: ${result}`);
18
+ });
19
+ return false;
20
+ }
21
+ }
22
+ if (text.toLowerCase().endsWith("the second")) {
23
+ const textAfter = context.text.substring(result.index + result.text.length).trim();
24
+ if (textAfter.length > 0) {
25
+ context.debug(() => {
26
+ console.log(`Removing unlikely result: ${result}`);
27
+ });
28
+ }
29
+ return false;
30
+ }
31
+ return true;
32
+ }
33
+ }
34
+ exports.default = ENUnlikelyFormatFilter;
35
+ //# sourceMappingURL=ENUnlikelyFormatFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ENUnlikelyFormatFilter.js","sourceRoot":"","sources":["../../../../../src/locales/en/refiners/ENUnlikelyFormatFilter.ts"],"names":[],"mappings":";;AAAA,uEAA0D;AAG1D,MAAqB,sBAAuB,SAAQ,yBAAM;IACtD;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,CAAC,OAAO,EAAE,MAAqB;QAClC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAIhC,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;YAC9B,OAAO,IAAI,CAAC;SACf;QAID,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;YAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YAClE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;gBAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;gBAEH,OAAO,KAAK,CAAC;aAChB;SACJ;QAGD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACnF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;aACN;YACD,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAxCD,yCAwCC"}
@@ -48,6 +48,8 @@ export declare class ParsingResult implements ParsedResult {
48
48
  constructor(reference: ReferenceWithTimezone, index: number, text: string, start?: ParsingComponents, end?: ParsingComponents);
49
49
  clone(): ParsingResult;
50
50
  date(): Date;
51
+ addTag(tag: string): ParsingResult;
52
+ addTags(tags: string[] | Set<string>): ParsingResult;
51
53
  tags(): Set<string>;
52
54
  toString(): string;
53
55
  }
@@ -163,7 +163,9 @@ class ParsingComponents {
163
163
  date = date.add(fragments[key], key);
164
164
  }
165
165
  const components = new ParsingComponents(reference);
166
+ components.addTag("result/relativeDate");
166
167
  if (fragments["hour"] || fragments["minute"] || fragments["second"]) {
168
+ components.addTag("result/relativeDateAndTime");
167
169
  dayjs_2.assignSimilarTime(components, date);
168
170
  dayjs_2.assignSimilarDate(components, date);
169
171
  if (reference.timezoneOffset !== null) {
@@ -225,6 +227,20 @@ class ParsingResult {
225
227
  date() {
226
228
  return this.start.date();
227
229
  }
230
+ addTag(tag) {
231
+ this.start.addTag(tag);
232
+ if (this.end) {
233
+ this.end.addTag(tag);
234
+ }
235
+ return this;
236
+ }
237
+ addTags(tags) {
238
+ this.start.addTags(tags);
239
+ if (this.end) {
240
+ this.end.addTags(tags);
241
+ }
242
+ return this;
243
+ }
228
244
  tags() {
229
245
  const combinedTags = new Set(this.start.tags());
230
246
  if (this.end) {
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/results.ts"],"names":[],"mappings":"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"}
@@ -65,7 +65,7 @@ export default class SlashDateFormatParser {
65
65
  const year = findYearClosestToRef(context.refDate, day, month);
66
66
  result.start.imply("year", year);
67
67
  }
68
- return result;
68
+ return result.addTag("parser/SlashDateFormatParser");
69
69
  }
70
70
  }
71
71
  //# sourceMappingURL=SlashDateFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlashDateFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/SlashDateFormatParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SlashDateFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/SlashDateFormatParser.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ import ENMergeRelativeAfterDateRefiner from "./refiners/ENMergeRelativeAfterDate
20
20
  import ENMergeRelativeFollowByDateRefiner from "./refiners/ENMergeRelativeFollowByDateRefiner.js";
21
21
  import OverlapRemovalRefiner from "../../common/refiners/OverlapRemovalRefiner.js";
22
22
  import ENExtractYearSuffixRefiner from "./refiners/ENExtractYearSuffixRefiner.js";
23
+ import ENUnlikelyFormatFilter from "./refiners/ENUnlikelyFormatFilter.js";
23
24
  export default class ENDefaultConfiguration {
24
25
  createCasualConfiguration(littleEndian = false) {
25
26
  const option = this.createConfiguration(false, littleEndian);
@@ -28,6 +29,7 @@ export default class ENDefaultConfiguration {
28
29
  option.parsers.push(new ENMonthNameParser());
29
30
  option.parsers.push(new ENRelativeDateFormatParser());
30
31
  option.parsers.push(new ENTimeUnitCasualRelativeFormatParser());
32
+ option.refiners.push(new ENUnlikelyFormatFilter());
31
33
  return option;
32
34
  }
33
35
  createConfiguration(strictMode = true, littleEndian = false) {
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ const PATTERN = new RegExp(`((?:in)\\s*)?` +
7
7
  `(${matchAnyPattern(MONTH_DICTIONARY)})` +
8
8
  `\\s*` +
9
9
  `(?:` +
10
- `[,-]?\\s*(${YEAR_PATTERN})?` +
10
+ `(?:,|-|of)?\\s*(${YEAR_PATTERN})?` +
11
11
  ")?" +
12
12
  "(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)", "i");
13
13
  const PREFIX_GROUP = 1;
@@ -1 +1 @@
1
- {"version":3,"file":"ENMonthNameParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENMonthNameParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,eAAe;IACX,IAAI,eAAe,CAAC,gBAAgB,CAAC,GAAG;IACxC,MAAM;IACN,KAAK;IACL,aAAa,YAAY,IAAI;IAC7B,IAAI;IACJ,kCAAkC,EACtC,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,UAAU,GAAG,CAAC,CAAC;AASrB,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,sCAAsC;IACjF,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAGxD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE;YAChE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CACtC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAChD,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAChC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACnB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ"}
1
+ {"version":3,"file":"ENMonthNameParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENMonthNameParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,eAAe;IACX,IAAI,eAAe,CAAC,gBAAgB,CAAC,GAAG;IACxC,MAAM;IACN,KAAK;IACL,mBAAmB,YAAY,IAAI;IACnC,IAAI;IACJ,kCAAkC,EACtC,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,UAAU,GAAG,CAAC,CAAC;AASrB,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,sCAAsC;IACjF,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC;QAGxD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE;YAChE,OAAO,IAAI,CAAC;SACf;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CACtC,KAAK,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAChD,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAChC,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAEhD,MAAM,KAAK,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEpC,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE;YACnB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACrC;aAAM;YACH,MAAM,IAAI,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;YAC7D,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SACpC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import { ParsingContext } from "../../../chrono.js";
2
- import { ParsingComponents } from "../../../results.js";
2
+ import { ParsingComponents, ParsingResult } from "../../../results.js";
3
3
  import { AbstractTimeExpressionParser } from "../../../common/parsers/AbstractTimeExpressionParser.js";
4
4
  export default class ENTimeExpressionParser extends AbstractTimeExpressionParser {
5
5
  constructor(strictMode: any);
@@ -7,4 +7,5 @@ export default class ENTimeExpressionParser extends AbstractTimeExpressionParser
7
7
  primaryPrefix(): string;
8
8
  primarySuffix(): string;
9
9
  extractPrimaryTimeComponents(context: ParsingContext, match: RegExpMatchArray): null | ParsingComponents;
10
+ extractFollowingTimeComponents(context: ParsingContext, match: RegExpMatchArray, result: ParsingResult): ParsingComponents | null;
10
11
  }
@@ -44,5 +44,12 @@ export default class ENTimeExpressionParser extends AbstractTimeExpressionParser
44
44
  }
45
45
  return components.addTag("parser/ENTimeExpressionParser");
46
46
  }
47
+ extractFollowingTimeComponents(context, match, result) {
48
+ const followingComponents = super.extractFollowingTimeComponents(context, match, result);
49
+ if (followingComponents) {
50
+ followingComponents.addTag("parser/ENTimeExpressionParser");
51
+ }
52
+ return followingComponents;
53
+ }
47
54
  }
48
55
  //# sourceMappingURL=ENTimeExpressionParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ENTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENTimeExpressionParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AAEpG,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,4BAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,uDAAuD,CAAC;IACnE,CAAC;IAED,aAAa;QACT,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,aAAa;QACT,OAAO,sFAAsF,CAAC;IAClG,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,UAAU,CAAC;SACrB;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAI,GAAG,CAAC,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YAChC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;aAC1D;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9B,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACX,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACJ;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC9D,CAAC;CACJ"}
1
+ {"version":3,"file":"ENTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENTimeExpressionParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AAEpG,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,4BAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,uDAAuD,CAAC;IACnE,CAAC;IAED,aAAa;QACT,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,aAAa;QACT,OAAO,sFAAsF,CAAC;IAClG,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,UAAU,CAAC;SACrB;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAI,GAAG,CAAC,EAAE;gBACjB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;aAC9C;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE;YAChC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE;gBACxB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;aAC1D;SACJ;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;YAC9B,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,GAAG,EAAE,EAAE;gBACX,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;aACrD;SACJ;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC9D,CAAC;IAED,8BAA8B,CAC1B,OAAuB,EACvB,KAAuB,EACvB,MAAqB;QAErB,MAAM,mBAAmB,GAAG,KAAK,CAAC,8BAA8B,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzF,IAAI,mBAAmB,EAAE;YACrB,mBAAmB,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;SAC/D;QACD,OAAO,mBAAmB,CAAC;IAC/B,CAAC;CACJ"}
@@ -3,5 +3,5 @@ import { ParsingComponents } from "../../../results.js";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
4
4
  export default class ENWeekdayParser extends AbstractParserWithWordBoundaryChecking {
5
5
  innerPattern(): RegExp;
6
- innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
6
+ innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents | null;
7
7
  }
@@ -2,10 +2,11 @@ import { WEEKDAY_DICTIONARY } from "../constants.js";
2
2
  import { matchAnyPattern } from "../../../utils/pattern.js";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
4
4
  import { createParsingComponentsAtWeekday } from "../../../common/calculation/weekdays.js";
5
+ import { Weekday } from "../../../types.js";
5
6
  const PATTERN = new RegExp("(?:(?:\\,|\\(|\\()\\s*)?" +
6
7
  "(?:on\\s*?)?" +
7
8
  "(?:(this|last|past|next)\\s*)?" +
8
- `(${matchAnyPattern(WEEKDAY_DICTIONARY)})` +
9
+ `(${matchAnyPattern(WEEKDAY_DICTIONARY)}|weekend|weekday)` +
9
10
  "(?:\\s*(?:\\,|\\)|\\)))?" +
10
11
  "(?:\\s*(this|last|past|next)\\s*week)?" +
11
12
  "(?=\\W|$)", "i");
@@ -17,8 +18,6 @@ export default class ENWeekdayParser extends AbstractParserWithWordBoundaryCheck
17
18
  return PATTERN;
18
19
  }
19
20
  innerExtract(context, match) {
20
- const dayOfWeek = match[WEEKDAY_GROUP].toLowerCase();
21
- const weekday = WEEKDAY_DICTIONARY[dayOfWeek];
22
21
  const prefix = match[PREFIX_GROUP];
23
22
  const postfix = match[POSTFIX_GROUP];
24
23
  let modifierWord = prefix || postfix;
@@ -34,6 +33,28 @@ export default class ENWeekdayParser extends AbstractParserWithWordBoundaryCheck
34
33
  else if (modifierWord == "this") {
35
34
  modifier = "this";
36
35
  }
36
+ const weekday_word = match[WEEKDAY_GROUP].toLowerCase();
37
+ let weekday;
38
+ if (WEEKDAY_DICTIONARY[weekday_word] !== undefined) {
39
+ weekday = WEEKDAY_DICTIONARY[weekday_word];
40
+ }
41
+ else if (weekday_word == "weekend") {
42
+ weekday = modifier == "last" ? Weekday.SUNDAY : Weekday.SATURDAY;
43
+ }
44
+ else if (weekday_word == "weekday") {
45
+ const refWeekday = context.reference.getDateWithAdjustedTimezone().getDay();
46
+ if (refWeekday == Weekday.SUNDAY || refWeekday == Weekday.SATURDAY) {
47
+ weekday = modifier == "last" ? Weekday.FRIDAY : Weekday.MONDAY;
48
+ }
49
+ else {
50
+ weekday = refWeekday - 1;
51
+ weekday = modifier == "last" ? weekday - 1 : weekday + 1;
52
+ weekday = (weekday % 5) + 1;
53
+ }
54
+ }
55
+ else {
56
+ return null;
57
+ }
37
58
  return createParsingComponentsAtWeekday(context.reference, weekday, modifier);
38
59
  }
39
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ENWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENWeekdayParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAChH,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AAExF,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,cAAc;IACd,gCAAgC;IAChC,IAAI,eAAe,CAAC,kBAAkB,CAAC,GAAG;IAC1C,0BAA0B;IAC1B,wCAAwC;IACxC,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,sCAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAClD,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;QAED,OAAO,gCAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ"}
1
+ {"version":3,"file":"ENWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENWeekdayParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAChH,OAAO,EAAE,gCAAgC,EAAE,MAAM,sCAAsC,CAAC;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,cAAc;IACd,gCAAgC;IAChC,IAAI,eAAe,CAAC,kBAAkB,CAAC,mBAAmB;IAC1D,0BAA0B;IAC1B,wCAAwC;IACxC,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,sCAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,MAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAClD,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;aAAM,IAAI,YAAY,IAAI,MAAM,EAAE;YAC/B,QAAQ,GAAG,MAAM,CAAC;SACrB;QAED,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QACxD,IAAI,OAAO,CAAC;QACZ,IAAI,kBAAkB,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE;YAChD,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;SAC9C;aAAM,IAAI,YAAY,IAAI,SAAS,EAAE;YAGlC,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;SACpE;aAAM,IAAI,YAAY,IAAI,SAAS,EAAE;YAKlC,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC,2BAA2B,EAAE,CAAC,MAAM,EAAE,CAAC;YAC5E,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU,IAAI,OAAO,CAAC,QAAQ,EAAE;gBAChE,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;aAClE;iBAAM;gBACH,OAAO,GAAG,UAAU,GAAG,CAAC,CAAC;gBACzB,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;gBACzD,OAAO,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;aAC/B;SACJ;aAAM;YACH,OAAO,IAAI,CAAC;SACf;QAED,OAAO,gCAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ"}
@@ -0,0 +1,6 @@
1
+ import { Filter } from "../../../common/abstractRefiners.js";
2
+ import { ParsingResult } from "../../../results.js";
3
+ export default class ENUnlikelyFormatFilter extends Filter {
4
+ constructor();
5
+ isValid(context: any, result: ParsingResult): boolean;
6
+ }
@@ -0,0 +1,32 @@
1
+ import { Filter } from "../../../common/abstractRefiners.js";
2
+ export default class ENUnlikelyFormatFilter extends Filter {
3
+ constructor() {
4
+ super();
5
+ }
6
+ isValid(context, result) {
7
+ const text = result.text.trim();
8
+ if (text === context.text.trim()) {
9
+ return true;
10
+ }
11
+ if (text.toLowerCase() === "may") {
12
+ const textBefore = context.text.substring(0, result.index).trim();
13
+ if (!textBefore.match(/\b(in)$/i)) {
14
+ context.debug(() => {
15
+ console.log(`Removing unlikely result: ${result}`);
16
+ });
17
+ return false;
18
+ }
19
+ }
20
+ if (text.toLowerCase().endsWith("the second")) {
21
+ const textAfter = context.text.substring(result.index + result.text.length).trim();
22
+ if (textAfter.length > 0) {
23
+ context.debug(() => {
24
+ console.log(`Removing unlikely result: ${result}`);
25
+ });
26
+ }
27
+ return false;
28
+ }
29
+ return true;
30
+ }
31
+ }
32
+ //# sourceMappingURL=ENUnlikelyFormatFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ENUnlikelyFormatFilter.js","sourceRoot":"","sources":["../../../../../src/locales/en/refiners/ENUnlikelyFormatFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAG1D,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,MAAM;IACtD;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,CAAC,OAAO,EAAE,MAAqB;QAClC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAIhC,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;YAC9B,OAAO,IAAI,CAAC;SACf;QAID,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE;YAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;YAClE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;gBAC/B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;gBAEH,OAAO,KAAK,CAAC;aAChB;SACJ;QAGD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YAC3C,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACnF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;aACN;YACD,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -48,6 +48,8 @@ export declare class ParsingResult implements ParsedResult {
48
48
  constructor(reference: ReferenceWithTimezone, index: number, text: string, start?: ParsingComponents, end?: ParsingComponents);
49
49
  clone(): ParsingResult;
50
50
  date(): Date;
51
+ addTag(tag: string): ParsingResult;
52
+ addTags(tags: string[] | Set<string>): ParsingResult;
51
53
  tags(): Set<string>;
52
54
  toString(): string;
53
55
  }
@@ -154,7 +154,9 @@ export class ParsingComponents {
154
154
  date = date.add(fragments[key], key);
155
155
  }
156
156
  const components = new ParsingComponents(reference);
157
+ components.addTag("result/relativeDate");
157
158
  if (fragments["hour"] || fragments["minute"] || fragments["second"]) {
159
+ components.addTag("result/relativeDateAndTime");
158
160
  assignSimilarTime(components, date);
159
161
  assignSimilarDate(components, date);
160
162
  if (reference.timezoneOffset !== null) {
@@ -215,6 +217,20 @@ export class ParsingResult {
215
217
  date() {
216
218
  return this.start.date();
217
219
  }
220
+ addTag(tag) {
221
+ this.start.addTag(tag);
222
+ if (this.end) {
223
+ this.end.addTag(tag);
224
+ }
225
+ return this;
226
+ }
227
+ addTags(tags) {
228
+ this.start.addTags(tags);
229
+ if (this.end) {
230
+ this.end.addTags(tags);
231
+ }
232
+ return this;
233
+ }
218
234
  tags() {
219
235
  const combinedTags = new Set(this.start.tags());
220
236
  if (this.end) {
@@ -1 +1 @@
1
- {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/results.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"results.js","sourceRoot":"","sources":["../../src/results.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -15,7 +15,7 @@
15
15
  "preset": "ts-jest"
16
16
  },
17
17
  "license": "MIT",
18
- "version": "2.7.7",
18
+ "version": "2.7.8",
19
19
  "directories": {
20
20
  "source": "./src",
21
21
  "test": "./test"
@@ -98,6 +98,6 @@ export default class SlashDateFormatParser implements Parser {
98
98
  result.start.imply("year", year);
99
99
  }
100
100
 
101
- return result;
101
+ return result.addTag("parser/SlashDateFormatParser");
102
102
  }
103
103
  }
@@ -24,6 +24,7 @@ import ENMergeRelativeAfterDateRefiner from "./refiners/ENMergeRelativeAfterDate
24
24
  import ENMergeRelativeFollowByDateRefiner from "./refiners/ENMergeRelativeFollowByDateRefiner";
25
25
  import OverlapRemovalRefiner from "../../common/refiners/OverlapRemovalRefiner";
26
26
  import ENExtractYearSuffixRefiner from "./refiners/ENExtractYearSuffixRefiner";
27
+ import ENUnlikelyFormatFilter from "./refiners/ENUnlikelyFormatFilter";
27
28
 
28
29
  export default class ENDefaultConfiguration {
29
30
  /**
@@ -37,6 +38,7 @@ export default class ENDefaultConfiguration {
37
38
  option.parsers.push(new ENMonthNameParser());
38
39
  option.parsers.push(new ENRelativeDateFormatParser());
39
40
  option.parsers.push(new ENTimeUnitCasualRelativeFormatParser());
41
+ option.refiners.push(new ENUnlikelyFormatFilter());
40
42
  return option;
41
43
  }
42
44
 
@@ -10,7 +10,7 @@ const PATTERN = new RegExp(
10
10
  `(${matchAnyPattern(MONTH_DICTIONARY)})` +
11
11
  `\\s*` +
12
12
  `(?:` +
13
- `[,-]?\\s*(${YEAR_PATTERN})?` +
13
+ `(?:,|-|of)?\\s*(${YEAR_PATTERN})?` +
14
14
  ")?" +
15
15
  "(?=[^\\s\\w]|\\s+[^0-9]|\\s+$|$)",
16
16
  "i"
@@ -1,5 +1,5 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
- import { ParsingComponents } from "../../../results";
2
+ import { ParsingComponents, ParsingResult } from "../../../results";
3
3
  import { Meridiem } from "../../../types";
4
4
  import { AbstractTimeExpressionParser } from "../../../common/parsers/AbstractTimeExpressionParser";
5
5
 
@@ -54,4 +54,16 @@ export default class ENTimeExpressionParser extends AbstractTimeExpressionParser
54
54
 
55
55
  return components.addTag("parser/ENTimeExpressionParser");
56
56
  }
57
+
58
+ extractFollowingTimeComponents(
59
+ context: ParsingContext,
60
+ match: RegExpMatchArray,
61
+ result: ParsingResult
62
+ ): ParsingComponents | null {
63
+ const followingComponents = super.extractFollowingTimeComponents(context, match, result);
64
+ if (followingComponents) {
65
+ followingComponents.addTag("parser/ENTimeExpressionParser");
66
+ }
67
+ return followingComponents;
68
+ }
57
69
  }
@@ -4,12 +4,13 @@ import { WEEKDAY_DICTIONARY } from "../constants";
4
4
  import { matchAnyPattern } from "../../../utils/pattern";
5
5
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
6
6
  import { createParsingComponentsAtWeekday } from "../../../common/calculation/weekdays";
7
+ import { Weekday } from "../../../types";
7
8
 
8
9
  const PATTERN = new RegExp(
9
10
  "(?:(?:\\,|\\(|\\()\\s*)?" +
10
11
  "(?:on\\s*?)?" +
11
12
  "(?:(this|last|past|next)\\s*)?" +
12
- `(${matchAnyPattern(WEEKDAY_DICTIONARY)})` +
13
+ `(${matchAnyPattern(WEEKDAY_DICTIONARY)}|weekend|weekday)` +
13
14
  "(?:\\s*(?:\\,|\\)|\\)))?" +
14
15
  "(?:\\s*(this|last|past|next)\\s*week)?" +
15
16
  "(?=\\W|$)",
@@ -25,9 +26,7 @@ export default class ENWeekdayParser extends AbstractParserWithWordBoundaryCheck
25
26
  return PATTERN;
26
27
  }
27
28
 
28
- innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents {
29
- const dayOfWeek = match[WEEKDAY_GROUP].toLowerCase();
30
- const weekday = WEEKDAY_DICTIONARY[dayOfWeek];
29
+ innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents | null {
31
30
  const prefix = match[PREFIX_GROUP];
32
31
  const postfix = match[POSTFIX_GROUP];
33
32
  let modifierWord = prefix || postfix;
@@ -43,6 +42,31 @@ export default class ENWeekdayParser extends AbstractParserWithWordBoundaryCheck
43
42
  modifier = "this";
44
43
  }
45
44
 
45
+ const weekday_word = match[WEEKDAY_GROUP].toLowerCase();
46
+ let weekday;
47
+ if (WEEKDAY_DICTIONARY[weekday_word] !== undefined) {
48
+ weekday = WEEKDAY_DICTIONARY[weekday_word];
49
+ } else if (weekday_word == "weekend") {
50
+ // This depends on what days are weekend setting, but typically:
51
+ // 'This/next weekend' means the coming Saturday, 'last weekend' means last Sunday.
52
+ weekday = modifier == "last" ? Weekday.SUNDAY : Weekday.SATURDAY;
53
+ } else if (weekday_word == "weekday") {
54
+ // In English, the "weekday" means any day of the week except weekend.
55
+ // This also depends on what days are weekend setting, but typically:
56
+ // - On weekend ref, this means the coming Monday or last Friday.
57
+ // - On weekday ref, this means the next/last working day.
58
+ const refWeekday = context.reference.getDateWithAdjustedTimezone().getDay();
59
+ if (refWeekday == Weekday.SUNDAY || refWeekday == Weekday.SATURDAY) {
60
+ weekday = modifier == "last" ? Weekday.FRIDAY : Weekday.MONDAY;
61
+ } else {
62
+ weekday = refWeekday - 1;
63
+ weekday = modifier == "last" ? weekday - 1 : weekday + 1;
64
+ weekday = (weekday % 5) + 1;
65
+ }
66
+ } else {
67
+ return null;
68
+ }
69
+
46
70
  return createParsingComponentsAtWeekday(context.reference, weekday, modifier);
47
71
  }
48
72
  }
@@ -0,0 +1,44 @@
1
+ import { Filter } from "../../../common/abstractRefiners";
2
+ import { ParsingResult } from "../../../results";
3
+
4
+ export default class ENUnlikelyFormatFilter extends Filter {
5
+ constructor() {
6
+ super();
7
+ }
8
+
9
+ isValid(context, result: ParsingResult): boolean {
10
+ const text = result.text.trim();
11
+
12
+ // If the result is consists of the whole text (e.g. "2024", "May", etc),
13
+ // then it is unlikely to be a date.
14
+ if (text === context.text.trim()) {
15
+ return true;
16
+ }
17
+
18
+ // In English, the word "may" is a month name, but it is also a modal verb.
19
+ // Check if the text before "may" follows some allowed patterns.
20
+ if (text.toLowerCase() === "may") {
21
+ const textBefore = context.text.substring(0, result.index).trim();
22
+ if (!textBefore.match(/\b(in)$/i)) {
23
+ context.debug(() => {
24
+ console.log(`Removing unlikely result: ${result}`);
25
+ });
26
+
27
+ return false;
28
+ }
29
+ }
30
+
31
+ // In English, "the second" could refer to the ordinal number or timeunit.
32
+ if (text.toLowerCase().endsWith("the second")) {
33
+ const textAfter = context.text.substring(result.index + result.text.length).trim();
34
+ if (textAfter.length > 0) {
35
+ context.debug(() => {
36
+ console.log(`Removing unlikely result: ${result}`);
37
+ });
38
+ }
39
+ return false;
40
+ }
41
+
42
+ return true;
43
+ }
44
+ }
package/src/results.ts CHANGED
@@ -216,7 +216,9 @@ export class ParsingComponents implements ParsedComponents {
216
216
  }
217
217
 
218
218
  const components = new ParsingComponents(reference);
219
+ components.addTag("result/relativeDate");
219
220
  if (fragments["hour"] || fragments["minute"] || fragments["second"]) {
221
+ components.addTag("result/relativeDateAndTime");
220
222
  assignSimilarTime(components, date);
221
223
  assignSimilarDate(components, date);
222
224
  if (reference.timezoneOffset !== null) {
@@ -293,6 +295,22 @@ export class ParsingResult implements ParsedResult {
293
295
  return this.start.date();
294
296
  }
295
297
 
298
+ addTag(tag: string): ParsingResult {
299
+ this.start.addTag(tag);
300
+ if (this.end) {
301
+ this.end.addTag(tag);
302
+ }
303
+ return this;
304
+ }
305
+
306
+ addTags(tags: string[] | Set<string>): ParsingResult {
307
+ this.start.addTags(tags);
308
+ if (this.end) {
309
+ this.end.addTags(tags);
310
+ }
311
+ return this;
312
+ }
313
+
296
314
  tags(): Set<string> {
297
315
  const combinedTags: Set<string> = new Set(this.start.tags());
298
316
  if (this.end) {
@@ -412,6 +412,10 @@ test("Test - Random negative text", () => {
412
412
 
413
413
  testUnexpectedResult(chrono, "do I have the money");
414
414
 
415
+ testUnexpectedResult(chrono, "I may by here. May the force be with you. Theresa may become PM soon.");
416
+
417
+ testUnexpectedResult(chrono, "XXX is set to be released in the second half of 2025");
418
+
415
419
  testUnexpectedResult(chrono.casual, "do I have the money");
416
420
 
417
421
  testUnexpectedResult(chrono.en.GB, "do I have the money");
@@ -1,5 +1,5 @@
1
1
  import * as chrono from "../../src";
2
- import { testSingleCase } from "../test_util";
2
+ import { testSingleCase, testUnexpectedResult } from "../test_util";
3
3
 
4
4
  test("Test - Month-Year expression", function () {
5
5
  testSingleCase(chrono, "September 2012", (result) => {
@@ -69,6 +69,14 @@ test("Test - Month-Year expression", function () {
69
69
  expect(result.start).toBeDate(new Date(2012, 9 - 1, 1, 12));
70
70
  });
71
71
 
72
+ testSingleCase(chrono, "in June of 2022", (result) => {
73
+ expect(result.text).toContain("June of 2022");
74
+
75
+ expect(result.start).not.toBeNull();
76
+ expect(result.start.get("year")).toBe(2022);
77
+ expect(result.start.get("month")).toBe(6);
78
+ });
79
+
72
80
  testSingleCase(chrono, "Statement of comprehensive income for the year ended Dec. 2021", (result) => {
73
81
  expect(result.text).toBe("Dec. 2021");
74
82
 
@@ -272,3 +280,16 @@ test("Test - Month should not have timezone", () => {
272
280
  }
273
281
  );
274
282
  });
283
+
284
+ test("Test - Month only in different context", () => {
285
+ testSingleCase(chrono.casual, "May", (result) => {
286
+ expect(result.text).toContain("May");
287
+ });
288
+
289
+ testSingleCase(chrono.casual, "in May", (result) => {
290
+ expect(result.text).toContain("May");
291
+ });
292
+
293
+ testUnexpectedResult(chrono.casual, "The mountain may not move");
294
+ testUnexpectedResult(chrono.casual, "May not be correct");
295
+ });
@@ -17,6 +17,7 @@ test("Test - Single Expression (MM/dd/yyyy)", function () {
17
17
 
18
18
  expect(result.index).toBe(0);
19
19
  expect(result.text).toBe("8/10/2012");
20
+ expect(result.tags()).toContain("parser/SlashDateFormatParser");
20
21
 
21
22
  expect(result.start.isCertain("day")).toBe(true);
22
23
  expect(result.start.isCertain("month")).toBe(true);
@@ -161,11 +162,13 @@ test("Test - Range Expression", function () {
161
162
  testSingleCase(chrono.en, "8/10/2012 - 8/15/2012", new Date(2012, 7, 10), (result) => {
162
163
  expect(result.index).toBe(0);
163
164
  expect(result.text).toBe("8/10/2012 - 8/15/2012");
165
+ expect(result.tags()).toContain("parser/SlashDateFormatParser");
164
166
 
165
167
  expect(result.start).not.toBeNull();
166
168
  expect(result.start.get("year")).toBe(2012);
167
169
  expect(result.start.get("month")).toBe(8);
168
170
  expect(result.start.get("day")).toBe(10);
171
+ expect(result.start.tags()).toContain("parser/SlashDateFormatParser");
169
172
 
170
173
  expect(result.start).toBeDate(new Date(2012, 8 - 1, 10, 12));
171
174
 
@@ -173,6 +176,7 @@ test("Test - Range Expression", function () {
173
176
  expect(result.end.get("year")).toBe(2012);
174
177
  expect(result.end.get("month")).toBe(8);
175
178
  expect(result.end.get("day")).toBe(15);
179
+ expect(result.end.tags()).toContain("parser/SlashDateFormatParser");
176
180
 
177
181
  expect(result.end).toBeDate(new Date(2012, 8 - 1, 15, 12));
178
182
  });
@@ -21,6 +21,9 @@ test("Test - Time expression", function () {
21
21
  expect(result.start.get("minute")).toBe(32);
22
22
  expect(result.start.get("second")).toBe(13);
23
23
  expect(result.start.get("meridiem")).toBe(Meridiem.PM);
24
+
25
+ expect(result.tags()).toContain("parser/ENTimeExpressionParser");
26
+ expect(result.start.tags()).toContain("parser/ENTimeExpressionParser");
24
27
  });
25
28
  });
26
29
 
@@ -35,6 +38,9 @@ test("Test - Time expression after date", function () {
35
38
  expect(result.start.get("hour")).toBe(14);
36
39
  expect(result.start.get("minute")).toBe(15);
37
40
  expect(result.start.get("meridiem")).toBe(Meridiem.PM);
41
+
42
+ expect(result.tags()).toContain("parser/ENTimeExpressionParser");
43
+ expect(result.start.tags()).toContain("parser/ENTimeExpressionParser");
38
44
  });
39
45
 
40
46
  testSingleCase(chrono, "05/31/2024.14:15", new Date(2016, 10 - 1, 1, 8), (result, text) => {
@@ -115,16 +121,19 @@ test("Test - Time expression before date", () => {
115
121
  test("Test - Time range expression", function () {
116
122
  testSingleCase(chrono, "10:00:00 - 21:45:00", new Date(2016, 10 - 1, 1, 8), (result, text) => {
117
123
  expect(result.text).toBe(text);
124
+ expect(result.tags()).toContain("parser/ENTimeExpressionParser");
118
125
 
119
126
  expect(result.start.get("hour")).toBe(10);
120
127
  expect(result.start.get("minute")).toBe(0);
121
128
  expect(result.start.get("second")).toBe(0);
122
129
  expect(result.start.get("meridiem")).toBe(Meridiem.AM);
130
+ expect(result.start.tags()).toContain("parser/ENTimeExpressionParser");
123
131
 
124
132
  expect(result.end.get("hour")).toBe(21);
125
133
  expect(result.end.get("minute")).toBe(45);
126
134
  expect(result.end.get("second")).toBe(0);
127
135
  expect(result.end.get("meridiem")).toBe(Meridiem.PM);
136
+ expect(result.end.tags()).toContain("parser/ENTimeExpressionParser");
128
137
  });
129
138
 
130
139
  testSingleCase(chrono, "10:00:00 until 21:45:00", new Date(2016, 10 - 1, 1, 11), (result, text) => {
@@ -11,6 +11,7 @@ test("Test - Single Expression", function () {
11
11
 
12
12
  expect(result.index).toBe(0);
13
13
  expect(result.text).toBe("5 days ago");
14
+ expect(result.tags()).toContain("result/relativeDate");
14
15
 
15
16
  expect(result.start).toBeDate(new Date(2012, 8 - 1, 5));
16
17
  });
@@ -30,6 +31,9 @@ test("Test - Single Expression", function () {
30
31
  testSingleCase(chrono, "15 minute ago", new Date(2012, 7, 10, 12, 14), (result) => {
31
32
  expect(result.index).toBe(0);
32
33
  expect(result.text).toBe("15 minute ago");
34
+ expect(result.tags()).toContain("result/relativeDate");
35
+ expect(result.tags()).toContain("result/relativeDateAndTime");
36
+
33
37
  expect(result.start.get("hour")).toBe(11);
34
38
  expect(result.start.get("minute")).toBe(59);
35
39
  expect(result.start.get("meridiem")).toBe(Meridiem.AM);
@@ -5,6 +5,8 @@ import ENTimeUnitCasualRelativeFormatParser from "../../src/locales/en/parsers/E
5
5
  test("Test - Positive time units", () => {
6
6
  testSingleCase(chrono, "next 2 weeks", new Date(2016, 10 - 1, 1, 12), (result, text) => {
7
7
  expect(result.text).toBe(text);
8
+ expect(result.tags()).toContain("result/relativeDate");
9
+
8
10
  expect(result.start.get("year")).toBe(2016);
9
11
  expect(result.start.get("month")).toBe(10);
10
12
  expect(result.start.get("day")).toBe(15);
@@ -44,6 +46,9 @@ test("Test - Positive time units", () => {
44
46
 
45
47
  testSingleCase(chrono, "after an hour", new Date(2016, 10 - 1, 1, 15), (result, text) => {
46
48
  expect(result.text).toBe(text);
49
+ expect(result.tags()).toContain("result/relativeDate");
50
+ expect(result.tags()).toContain("result/relativeDateAndTime");
51
+
47
52
  expect(result.start.get("year")).toBe(2016);
48
53
  expect(result.start.get("month")).toBe(10);
49
54
  expect(result.start.get("day")).toBe(1);
@@ -11,6 +11,7 @@ test("Test - Later Expression", function () {
11
11
 
12
12
  expect(result.index).toBe(0);
13
13
  expect(result.text).toBe("2 days later");
14
+ expect(result.tags()).toContain("result/relativeDate");
14
15
 
15
16
  expect(result.start.isCertain("day")).toBe(true);
16
17
  expect(result.start.isCertain("month")).toBe(true);
@@ -6,6 +6,7 @@ test("Test - The normal within expression", () => {
6
6
  testSingleCase(chrono, "we have to make something in 5 days.", new Date(2012, 7, 10), (result) => {
7
7
  expect(result.index).toBe(26);
8
8
  expect(result.text).toBe("in 5 days");
9
+ expect(result.tags()).toContain("result/relativeDate");
9
10
 
10
11
  expect(result.start).not.toBeNull();
11
12
  expect(result.start.get("year")).toBe(2012);
@@ -412,4 +413,5 @@ test("Test - Forward date option", () => {
412
413
  test("Test - Negative cases", () => {
413
414
  testUnexpectedResult(chrono, "in am");
414
415
  testUnexpectedResult(chrono, "in them");
416
+ testUnexpectedResult(chrono, "the second half");
415
417
  });
@@ -219,6 +219,49 @@ test("Test - Weekday casual `Next` guessing", function () {
219
219
  }
220
220
  });
221
221
 
222
+ test("Test - Casual 'weekend' and 'weekday'", () => {
223
+ {
224
+ const refDateOnFriday = new Date(2024, 10 - 1, 18, 12, 0);
225
+ testSingleCase(chrono.casual, "last weekend", refDateOnFriday, (result, text) => {
226
+ expect(result.text).toBe(text);
227
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 13, 12)); // Sunday
228
+ });
229
+ testSingleCase(chrono.casual, "this weekend", refDateOnFriday, (result, text) => {
230
+ expect(result.text).toBe(text);
231
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 19, 12)); // Saturday
232
+ });
233
+ testSingleCase(chrono.casual, "next weekend", refDateOnFriday, (result, text) => {
234
+ expect(result.text).toBe(text);
235
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 26, 12)); // Saturday
236
+ });
237
+ }
238
+ });
239
+
240
+ test("Test - Casual 'weekday' mentioning", () => {
241
+ {
242
+ const refDateOnFriday = new Date(2024, 10 - 1, 18, 12, 0);
243
+ testSingleCase(chrono.casual, "last weekday", refDateOnFriday, (result, text) => {
244
+ expect(result.text).toBe(text);
245
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 17, 12)); // Thursday
246
+ });
247
+ testSingleCase(chrono.casual, "next weekday", refDateOnFriday, (result, text) => {
248
+ expect(result.text).toBe(text);
249
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 21, 12)); // Monday
250
+ });
251
+ }
252
+ {
253
+ const refDateOnSaturday = new Date(2024, 10 - 1, 19, 12, 0);
254
+ testSingleCase(chrono.casual, "last weekday", refDateOnSaturday, (result, text) => {
255
+ expect(result.text).toBe(text);
256
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 18, 12)); // Friday
257
+ });
258
+ testSingleCase(chrono.casual, "next weekday", refDateOnSaturday, (result, text) => {
259
+ expect(result.text).toBe(text);
260
+ expect(result.start).toBeDate(new Date(2024, 10 - 1, 21, 12)); // Monday
261
+ });
262
+ }
263
+ });
264
+
222
265
  test("Test - Weekday With Casual Time", function () {
223
266
  testSingleCase(chrono.casual, "Lets meet on Tuesday morning", new Date(2015, 3, 18), (result) => {
224
267
  expect(result.index).toBe(10);