chrono-node 2.7.6 → 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 (119) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/common/parsers/ISOFormatParser.d.ts +1 -12
  3. package/dist/cjs/common/parsers/ISOFormatParser.js +30 -28
  4. package/dist/cjs/common/parsers/ISOFormatParser.js.map +1 -1
  5. package/dist/cjs/common/parsers/SlashDateFormatParser.js +14 -7
  6. package/dist/cjs/common/parsers/SlashDateFormatParser.js.map +1 -1
  7. package/dist/cjs/common/refiners/ForwardDateRefiner.js +8 -5
  8. package/dist/cjs/common/refiners/ForwardDateRefiner.js.map +1 -1
  9. package/dist/cjs/locales/en/configuration.js +6 -2
  10. package/dist/cjs/locales/en/configuration.js.map +1 -1
  11. package/dist/cjs/locales/en/constants.d.ts +1 -1
  12. package/dist/cjs/locales/en/constants.js +6 -0
  13. package/dist/cjs/locales/en/constants.js.map +1 -1
  14. package/dist/cjs/locales/en/parsers/ENMonthNameParser.js +1 -1
  15. package/dist/cjs/locales/en/parsers/ENMonthNameParser.js.map +1 -1
  16. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.d.ts +2 -1
  17. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.js +7 -0
  18. package/dist/cjs/locales/en/parsers/ENTimeExpressionParser.js.map +1 -1
  19. package/dist/cjs/locales/en/parsers/ENTimeUnitAgoFormatParser.js +3 -0
  20. package/dist/cjs/locales/en/parsers/ENTimeUnitAgoFormatParser.js.map +1 -1
  21. package/dist/cjs/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +3 -0
  22. package/dist/cjs/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js.map +1 -1
  23. package/dist/cjs/locales/en/parsers/ENTimeUnitLaterFormatParser.js +5 -2
  24. package/dist/cjs/locales/en/parsers/ENTimeUnitLaterFormatParser.js.map +1 -1
  25. package/dist/cjs/locales/en/parsers/ENTimeUnitWithinFormatParser.js +3 -0
  26. package/dist/cjs/locales/en/parsers/ENTimeUnitWithinFormatParser.js.map +1 -1
  27. package/dist/cjs/locales/en/parsers/ENWeekdayParser.d.ts +1 -1
  28. package/dist/cjs/locales/en/parsers/ENWeekdayParser.js +24 -3
  29. package/dist/cjs/locales/en/parsers/ENWeekdayParser.js.map +1 -1
  30. package/dist/cjs/locales/en/parsers/{ENCasualYearMonthDayParser.d.ts → ENYearMonthDayParser.d.ts} +3 -1
  31. package/dist/cjs/locales/en/parsers/{ENCasualYearMonthDayParser.js → ENYearMonthDayParser.js} +20 -8
  32. package/dist/cjs/locales/en/parsers/ENYearMonthDayParser.js.map +1 -0
  33. package/dist/cjs/locales/en/refiners/ENExtractYearSuffixRefiner.d.ts +5 -0
  34. package/dist/cjs/locales/en/refiners/ENExtractYearSuffixRefiner.js +31 -0
  35. package/dist/cjs/locales/en/refiners/ENExtractYearSuffixRefiner.js.map +1 -0
  36. package/dist/cjs/locales/en/refiners/ENMergeDateTimeRefiner.js +1 -1
  37. package/dist/cjs/locales/en/refiners/ENMergeDateTimeRefiner.js.map +1 -1
  38. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.d.ts +6 -0
  39. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.js +35 -0
  40. package/dist/cjs/locales/en/refiners/ENUnlikelyFormatFilter.js.map +1 -0
  41. package/dist/cjs/results.d.ts +2 -0
  42. package/dist/cjs/results.js +23 -4
  43. package/dist/cjs/results.js.map +1 -1
  44. package/dist/esm/common/parsers/ISOFormatParser.d.ts +1 -12
  45. package/dist/esm/common/parsers/ISOFormatParser.js +30 -28
  46. package/dist/esm/common/parsers/ISOFormatParser.js.map +1 -1
  47. package/dist/esm/common/parsers/SlashDateFormatParser.js +14 -7
  48. package/dist/esm/common/parsers/SlashDateFormatParser.js.map +1 -1
  49. package/dist/esm/common/refiners/ForwardDateRefiner.js +8 -5
  50. package/dist/esm/common/refiners/ForwardDateRefiner.js.map +1 -1
  51. package/dist/esm/locales/en/configuration.js +6 -2
  52. package/dist/esm/locales/en/configuration.js.map +1 -1
  53. package/dist/esm/locales/en/constants.d.ts +1 -1
  54. package/dist/esm/locales/en/constants.js +6 -0
  55. package/dist/esm/locales/en/constants.js.map +1 -1
  56. package/dist/esm/locales/en/parsers/ENMonthNameParser.js +1 -1
  57. package/dist/esm/locales/en/parsers/ENMonthNameParser.js.map +1 -1
  58. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.d.ts +2 -1
  59. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.js +7 -0
  60. package/dist/esm/locales/en/parsers/ENTimeExpressionParser.js.map +1 -1
  61. package/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js +3 -0
  62. package/dist/esm/locales/en/parsers/ENTimeUnitAgoFormatParser.js.map +1 -1
  63. package/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js +3 -0
  64. package/dist/esm/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.js.map +1 -1
  65. package/dist/esm/locales/en/parsers/ENTimeUnitLaterFormatParser.js +5 -2
  66. package/dist/esm/locales/en/parsers/ENTimeUnitLaterFormatParser.js.map +1 -1
  67. package/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js +3 -0
  68. package/dist/esm/locales/en/parsers/ENTimeUnitWithinFormatParser.js.map +1 -1
  69. package/dist/esm/locales/en/parsers/ENWeekdayParser.d.ts +1 -1
  70. package/dist/esm/locales/en/parsers/ENWeekdayParser.js +24 -3
  71. package/dist/esm/locales/en/parsers/ENWeekdayParser.js.map +1 -1
  72. package/dist/esm/locales/en/parsers/{ENCasualYearMonthDayParser.d.ts → ENYearMonthDayParser.d.ts} +3 -1
  73. package/dist/esm/locales/en/parsers/{ENCasualYearMonthDayParser.js → ENYearMonthDayParser.js} +19 -7
  74. package/dist/esm/locales/en/parsers/ENYearMonthDayParser.js.map +1 -0
  75. package/dist/esm/locales/en/refiners/ENExtractYearSuffixRefiner.d.ts +5 -0
  76. package/dist/esm/locales/en/refiners/ENExtractYearSuffixRefiner.js +28 -0
  77. package/dist/esm/locales/en/refiners/ENExtractYearSuffixRefiner.js.map +1 -0
  78. package/dist/esm/locales/en/refiners/ENMergeDateTimeRefiner.js +1 -1
  79. package/dist/esm/locales/en/refiners/ENMergeDateTimeRefiner.js.map +1 -1
  80. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.d.ts +6 -0
  81. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js +32 -0
  82. package/dist/esm/locales/en/refiners/ENUnlikelyFormatFilter.js.map +1 -0
  83. package/dist/esm/results.d.ts +2 -0
  84. package/dist/esm/results.js +23 -4
  85. package/dist/esm/results.js.map +1 -1
  86. package/package.json +1 -1
  87. package/src/common/parsers/ISOFormatParser.ts +30 -32
  88. package/src/common/parsers/SlashDateFormatParser.ts +14 -11
  89. package/src/common/refiners/ForwardDateRefiner.ts +8 -5
  90. package/src/locales/en/configuration.ts +10 -2
  91. package/src/locales/en/constants.ts +7 -1
  92. package/src/locales/en/parsers/ENMonthNameParser.ts +1 -1
  93. package/src/locales/en/parsers/ENTimeExpressionParser.ts +13 -1
  94. package/src/locales/en/parsers/ENTimeUnitAgoFormatParser.ts +3 -1
  95. package/src/locales/en/parsers/ENTimeUnitCasualRelativeFormatParser.ts +4 -2
  96. package/src/locales/en/parsers/ENTimeUnitLaterFormatParser.ts +5 -2
  97. package/src/locales/en/parsers/ENTimeUnitWithinFormatParser.ts +4 -2
  98. package/src/locales/en/parsers/ENWeekdayParser.ts +28 -4
  99. package/src/locales/en/parsers/{ENCasualYearMonthDayParser.ts → ENYearMonthDayParser.ts} +18 -7
  100. package/src/locales/en/refiners/ENExtractYearSuffixRefiner.ts +34 -0
  101. package/src/locales/en/refiners/ENMergeDateTimeRefiner.ts +1 -1
  102. package/src/locales/en/refiners/ENUnlikelyFormatFilter.ts +44 -0
  103. package/src/results.ts +26 -5
  104. package/test/en/en_casual.test.ts +4 -0
  105. package/test/en/en_inter_std.test.ts +30 -28
  106. package/test/en/en_merging_relative_dates.test.ts +3 -4
  107. package/test/en/en_month.test.ts +22 -1
  108. package/test/en/en_slash.test.ts +51 -42
  109. package/test/en/en_time_exp.test.ts +67 -0
  110. package/test/en/en_time_units_ago.test.ts +38 -0
  111. package/test/en/en_time_units_casual_relative.test.ts +8 -0
  112. package/test/en/en_time_units_later.test.ts +5 -0
  113. package/test/en/en_time_units_within.test.ts +7 -0
  114. package/test/en/en_weekday.test.ts +43 -0
  115. package/test/en/en_year.test.ts +26 -1
  116. package/test/en/{en_casual_year_month_day.test.ts → en_year_month_day.test.ts} +25 -4
  117. package/test/system.test.ts +2 -0
  118. package/dist/cjs/locales/en/parsers/ENCasualYearMonthDayParser.js.map +0 -1
  119. package/dist/esm/locales/en/parsers/ENCasualYearMonthDayParser.js.map +0 -1
@@ -3,27 +3,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const constants_1 = require("../constants");
4
4
  const pattern_1 = require("../../../utils/pattern");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
- const PATTERN = new RegExp(`([0-9]{4})[\\.\\/\\s]` +
7
- `(?:(${pattern_1.matchAnyPattern(constants_1.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]` +
6
+ const PATTERN = new RegExp(`([0-9]{4})[-\\.\\/\\s]` +
7
+ `(?:(${pattern_1.matchAnyPattern(constants_1.MONTH_DICTIONARY)})|([0-9]{1,2}))[-\\.\\/\\s]` +
8
8
  `([0-9]{1,2})` +
9
9
  "(?=\\W|$)", "i");
10
10
  const YEAR_NUMBER_GROUP = 1;
11
11
  const MONTH_NAME_GROUP = 2;
12
12
  const MONTH_NUMBER_GROUP = 3;
13
13
  const DATE_NUMBER_GROUP = 4;
14
- class ENCasualYearMonthDayParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
14
+ class ENYearMonthDayParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
15
+ constructor(strictMonthDateOrder) {
16
+ super();
17
+ this.strictMonthDateOrder = strictMonthDateOrder;
18
+ }
15
19
  innerPattern() {
16
20
  return PATTERN;
17
21
  }
18
22
  innerExtract(context, match) {
19
- const month = match[MONTH_NUMBER_GROUP]
23
+ const year = parseInt(match[YEAR_NUMBER_GROUP]);
24
+ let day = parseInt(match[DATE_NUMBER_GROUP]);
25
+ let month = match[MONTH_NUMBER_GROUP]
20
26
  ? parseInt(match[MONTH_NUMBER_GROUP])
21
27
  : constants_1.MONTH_DICTIONARY[match[MONTH_NAME_GROUP].toLowerCase()];
22
28
  if (month < 1 || month > 12) {
29
+ if (this.strictMonthDateOrder) {
30
+ return null;
31
+ }
32
+ if (day >= 1 && day <= 12) {
33
+ [month, day] = [day, month];
34
+ }
35
+ }
36
+ if (day < 1 || day > 31) {
23
37
  return null;
24
38
  }
25
- const year = parseInt(match[YEAR_NUMBER_GROUP]);
26
- const day = parseInt(match[DATE_NUMBER_GROUP]);
27
39
  return {
28
40
  day: day,
29
41
  month: month,
@@ -31,5 +43,5 @@ class ENCasualYearMonthDayParser extends AbstractParserWithWordBoundary_1.Abstra
31
43
  };
32
44
  }
33
45
  }
34
- exports.default = ENCasualYearMonthDayParser;
35
- //# sourceMappingURL=ENCasualYearMonthDayParser.js.map
46
+ exports.default = ENYearMonthDayParser;
47
+ //# sourceMappingURL=ENYearMonthDayParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ENYearMonthDayParser.js","sourceRoot":"","sources":["../../../../../src/locales/en/parsers/ENYearMonthDayParser.ts"],"names":[],"mappings":";;AACA,4CAAgD;AAChD,oDAAyD;AACzD,2GAAgH;AAShH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,wBAAwB;IACpB,OAAO,yBAAe,CAAC,4BAAgB,CAAC,6BAA6B;IACrE,cAAc;IACd,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B,MAAqB,oBAAqB,SAAQ,uEAAsC;IACpF,YAAoB,oBAA6B;QAC7C,KAAK,EAAE,CAAC;QADQ,yBAAoB,GAApB,oBAAoB,CAAS;IAEjD,CAAC;IAED,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAChD,IAAI,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC7C,IAAI,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC;YACjC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACrC,CAAC,CAAC,4BAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAE9D,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE;YACzB,IAAI,IAAI,CAAC,oBAAoB,EAAE;gBAC3B,OAAO,IAAI,CAAC;aACf;YACD,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,EAAE;gBACvB,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;aAC/B;SACJ;QACD,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE;YACrB,OAAO,IAAI,CAAC;SACf;QAED,OAAO;YACH,GAAG,EAAE,GAAG;YACR,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,IAAI;SACb,CAAC;IACN,CAAC;CACJ;AAlCD,uCAkCC"}
@@ -0,0 +1,5 @@
1
+ import { ParsingContext, Refiner } from "../../../chrono";
2
+ import { ParsingResult } from "../../../results";
3
+ export default class ENExtractYearSuffixRefiner implements Refiner {
4
+ refine(context: ParsingContext, results: ParsingResult[]): ParsingResult[];
5
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("../constants");
4
+ const YEAR_SUFFIX_PATTERN = new RegExp(`^\\s*(${constants_1.YEAR_PATTERN})`, "i");
5
+ const YEAR_GROUP = 1;
6
+ class ENExtractYearSuffixRefiner {
7
+ refine(context, results) {
8
+ results.forEach(function (result) {
9
+ if (!result.start.isDateWithUnknownYear()) {
10
+ return;
11
+ }
12
+ const suffix = context.text.substring(result.index + result.text.length);
13
+ const match = YEAR_SUFFIX_PATTERN.exec(suffix);
14
+ if (!match) {
15
+ return;
16
+ }
17
+ context.debug(() => {
18
+ console.log(`Extracting year: '${match[0]}' into : ${result}`);
19
+ });
20
+ const year = constants_1.parseYear(match[YEAR_GROUP]);
21
+ if (result.end != null) {
22
+ result.end.assign("year", year);
23
+ }
24
+ result.start.assign("year", year);
25
+ result.text += match[0];
26
+ });
27
+ return results;
28
+ }
29
+ }
30
+ exports.default = ENExtractYearSuffixRefiner;
31
+ //# sourceMappingURL=ENExtractYearSuffixRefiner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ENExtractYearSuffixRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/en/refiners/ENExtractYearSuffixRefiner.ts"],"names":[],"mappings":";;AAEA,4CAAuD;AAEvD,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAC,SAAS,wBAAY,GAAG,EAAE,GAAG,CAAC,CAAC;AACtE,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAqB,0BAA0B;IAC3C,MAAM,CAAC,OAAuB,EAAE,OAAwB;QACpD,OAAO,CAAC,OAAO,CAAC,UAAU,MAAM;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE;gBACvC,OAAO;aACV;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzE,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,EAAE;gBACR,OAAO;aACV;YAED,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,CAAC,CAAC,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,qBAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE;gBACpB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;aACnC;YACD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAClC,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AA3BD,6CA2BC"}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const AbstractMergeDateTimeRefiner_1 = __importDefault(require("../../../common/refiners/AbstractMergeDateTimeRefiner"));
7
7
  class ENMergeDateTimeRefiner extends AbstractMergeDateTimeRefiner_1.default {
8
8
  patternBetween() {
9
- return new RegExp("^\\s*(T|at|after|before|on|of|,|-|\\.|:)?\\s*$");
9
+ return new RegExp("^\\s*(T|at|after|before|on|of|,|-|\\.|∙|:)?\\s*$");
10
10
  }
11
11
  }
12
12
  exports.default = ENMergeDateTimeRefiner;
@@ -1 +1 @@
1
- {"version":3,"file":"ENMergeDateTimeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/en/refiners/ENMergeDateTimeRefiner.ts"],"names":[],"mappings":";;;;;AAAA,yHAAiG;AAQjG,MAAqB,sBAAuB,SAAQ,sCAA4B;IAC5E,cAAc;QACV,OAAO,IAAI,MAAM,CAAC,gDAAgD,CAAC,CAAC;IACxE,CAAC;CACJ;AAJD,yCAIC"}
1
+ {"version":3,"file":"ENMergeDateTimeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/en/refiners/ENMergeDateTimeRefiner.ts"],"names":[],"mappings":";;;;;AAAA,yHAAiG;AAQjG,MAAqB,sBAAuB,SAAQ,sCAA4B;IAC5E,cAAc;QACV,OAAO,IAAI,MAAM,CAAC,kDAAkD,CAAC,CAAC;IAC1E,CAAC;CACJ;AAJD,yCAIC"}
@@ -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
  }
@@ -102,7 +102,7 @@ class ParsingComponents {
102
102
  return !this.isCertain("hour") && !this.isCertain("minute") && !this.isCertain("second");
103
103
  }
104
104
  isOnlyTime() {
105
- return !this.isCertain("weekday") && !this.isCertain("day") && !this.isCertain("month");
105
+ return (!this.isCertain("weekday") && !this.isCertain("day") && !this.isCertain("month") && !this.isCertain("year"));
106
106
  }
107
107
  isOnlyWeekdayComponent() {
108
108
  return this.isCertain("weekday") && !this.isCertain("day") && !this.isCertain("month");
@@ -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) {
@@ -180,10 +182,13 @@ class ParsingComponents {
180
182
  components.assign("month", date.month() + 1);
181
183
  components.assign("year", date.year());
182
184
  }
185
+ else if (fragments["week"]) {
186
+ components.assign("day", date.date());
187
+ components.assign("month", date.month() + 1);
188
+ components.assign("year", date.year());
189
+ components.imply("weekday", date.day());
190
+ }
183
191
  else {
184
- if (fragments["week"]) {
185
- components.imply("weekday", date.day());
186
- }
187
192
  components.imply("day", date.date());
188
193
  if (fragments["month"]) {
189
194
  components.assign("month", date.month() + 1);
@@ -222,6 +227,20 @@ class ParsingResult {
222
227
  date() {
223
228
  return this.start.date();
224
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
+ }
225
244
  tags() {
226
245
  const combinedTags = new Set(this.start.tags());
227
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":";;;;;;AAEA,+EAAuD;AACvD,kDAAyC;AACzC,yCAAuF;AACvF,yCAA8C;AAC9C,eAAK,CAAC,MAAM,CAAC,uBAAa,CAAC,CAAC;AAE5B,MAAa,qBAAqB;IAI9B,YAAY,KAA+B;;QACvC,KAAK,GAAG,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,KAAK,YAAY,IAAI,EAAE;YACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACxB;aAAM;YACH,IAAI,CAAC,OAAO,GAAG,MAAA,KAAK,CAAC,OAAO,mCAAI,IAAI,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,cAAc,GAAG,2BAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACxE;IACL,CAAC;IAMD,2BAA2B;QACvB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;IAC3G,CAAC;IAOD,iCAAiC,CAAC,IAAW,EAAE,sBAA+B;;QAC1E,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE;YAG7B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;SACrB;QAED,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxD,MAAM,oBAAoB,GAAG,MAAA,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,IAAI,CAAC,cAAc,mCAAI,qBAAqB,CAAC;QACpG,OAAO,qBAAqB,GAAG,oBAAoB,CAAC;IACxD,CAAC;CACJ;AAtCD,sDAsCC;AAED,MAAa,iBAAiB;IAM1B,YAAY,SAAgC,EAAE,eAA+C;QAFrF,UAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAG9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,eAAe,EAAE;YACjB,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE;gBAC/B,IAAI,CAAC,WAAW,CAAC,GAAgB,CAAC,GAAG,eAAe,CAAC,GAAgB,CAAC,CAAC;aAC1E;SACJ;QAED,MAAM,QAAQ,GAAG,eAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,SAAoB;QACpB,IAAI,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE;YAC/B,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;SACtC;QAED,IAAI,SAAS,IAAI,IAAI,CAAC,aAAa,EAAE;YACjC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;SACxC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,SAAS,CAAC,SAAoB;QAC1B,OAAO,SAAS,IAAI,IAAI,CAAC,WAAW,CAAC;IACzC,CAAC;IAED,oBAAoB;QAChB,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAqB,CAAC;IAC7D,CAAC;IAED,KAAK,CAAC,SAAoB,EAAE,KAAa;QACrC,IAAI,SAAS,IAAI,IAAI,CAAC,WAAW,EAAE;YAC/B,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QACtC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,SAAoB,EAAE,KAAa;QACtC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;QACpC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,SAAoB;QACvB,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAED,KAAK;QACD,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,SAAS,CAAC,WAAW,GAAG,EAAE,CAAC;QAC3B,SAAS,CAAC,aAAa,GAAG,EAAE,CAAC;QAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE;YAChC,SAAS,CAAC,WAAW,CAAC,GAAgB,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAgB,CAAC,CAAC;SAChF;QAED,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE;YAClC,SAAS,CAAC,aAAa,CAAC,GAAgB,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,GAAgB,CAAC,CAAC;SACpF;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,UAAU;QACN,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC7F,CAAC;IAED,UAAU;QACN,OAAO,CACH,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAC9G,CAAC;IACN,CAAC;IAED,sBAAsB;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC3F,CAAC;IAED,qBAAqB;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IAED,WAAW;QACP,MAAM,IAAI,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAElD,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1D,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAC5D,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC;QAClF,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QAExF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,QAAQ;QACJ,OAAO;oBACK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;2BACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC;6BAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC;yBACtC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;IACvD,CAAC;IAED,KAAK;QACD,OAAO,eAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI;QACA,MAAM,IAAI,GAAG,IAAI,CAAC,6BAA6B,EAAE,CAAC;QAClD,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,iCAAiC,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC9G,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,kBAAkB,GAAG,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,CAAC,GAAW;QACd,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,IAA4B;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACpB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;SACvB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI;QACA,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAEO,6BAA6B;QACjC,MAAM,IAAI,GAAG,IAAI,IAAI,CACjB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAChB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,EACrB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EACf,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAChB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAClB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAClB,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAC1B,CAAC;QAEF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,2BAA2B,CAC9B,SAAgC,EAChC,SAAwC;QAExC,IAAI,IAAI,GAAG,eAAK,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,SAAS,EAAE;YACzB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAgB,CAAC,EAAE,GAAgB,CAAC,CAAC;SAClE;QAED,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACpD,UAAU,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACzC,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE;YACjE,UAAU,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC;YAChD,yBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACpC,yBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACpC,IAAI,SAAS,CAAC,cAAc,KAAK,IAAI,EAAE;gBACnC,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;aAC/E;SACJ;aAAM;YACH,wBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACnC,IAAI,SAAS,CAAC,cAAc,KAAK,IAAI,EAAE;gBACnC,UAAU,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;aAC9E;YAED,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;gBAChB,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7C,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;aAC1C;iBAAM,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;gBAC1B,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC7C,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACvC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;aAC3C;iBAAM;gBACH,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrC,IAAI,SAAS,CAAC,OAAO,CAAC,EAAE;oBACpB,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC7C,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;iBAC1C;qBAAM;oBACH,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;oBAC5C,IAAI,SAAS,CAAC,MAAM,CAAC,EAAE;wBACnB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;qBAC1C;yBAAM;wBACH,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;qBACzC;iBACJ;aACJ;SACJ;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AAnND,8CAmNC;AAED,MAAa,aAAa;IAUtB,YACI,SAAgC,EAChC,KAAa,EACb,IAAY,EACZ,KAAyB,EACzB,GAAuB;QAEvB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,IAAI,IAAI,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAED,KAAK;QACD,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACxE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACtD,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,IAAI;QACA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,GAAW;QACd,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,IAAI,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CAAC,IAA4B;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC1B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI;QACA,MAAM,YAAY,GAAgB,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7D,IAAI,IAAI,CAAC,GAAG,EAAE;YACV,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE;gBAC/B,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACzB;SACJ;QACD,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,QAAQ;QACJ,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,OAAO,0BAA0B,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC7G,CAAC;CACJ;AAlED,sCAkEC"}
@@ -2,16 +2,5 @@ import { ParsingContext } from "../../chrono.js";
2
2
  import { AbstractParserWithWordBoundaryChecking } from "./AbstractParserWithWordBoundary.js";
3
3
  export default class ISOFormatParser extends AbstractParserWithWordBoundaryChecking {
4
4
  innerPattern(): RegExp;
5
- innerExtract(context: ParsingContext, match: RegExpMatchArray): {
6
- day?: number;
7
- hour?: number;
8
- minute?: number;
9
- month?: number;
10
- second?: number;
11
- weekday?: number;
12
- year?: number;
13
- millisecond?: number;
14
- meridiem?: number;
15
- timezoneOffset?: number;
16
- };
5
+ innerExtract(context: ParsingContext, match: RegExpMatchArray): import("../../index.js").ParsingComponents;
17
6
  }
@@ -5,7 +5,7 @@ const PATTERN = new RegExp("([0-9]{4})\\-([0-9]{1,2})\\-([0-9]{1,2})" +
5
5
  "(?:" +
6
6
  ":([0-9]{1,2})(?:\\.(\\d{1,4}))?" +
7
7
  ")?" +
8
- "(?:" +
8
+ "(" +
9
9
  "Z|([+-]\\d{2}):?(\\d{2})?" +
10
10
  ")?" +
11
11
  ")?" +
@@ -17,46 +17,48 @@ const HOUR_NUMBER_GROUP = 4;
17
17
  const MINUTE_NUMBER_GROUP = 5;
18
18
  const SECOND_NUMBER_GROUP = 6;
19
19
  const MILLISECOND_NUMBER_GROUP = 7;
20
- const TZD_HOUR_OFFSET_GROUP = 8;
21
- const TZD_MINUTE_OFFSET_GROUP = 9;
20
+ const TZD_GROUP = 8;
21
+ const TZD_HOUR_OFFSET_GROUP = 9;
22
+ const TZD_MINUTE_OFFSET_GROUP = 10;
22
23
  export default class ISOFormatParser extends AbstractParserWithWordBoundaryChecking {
23
24
  innerPattern() {
24
25
  return PATTERN;
25
26
  }
26
27
  innerExtract(context, match) {
27
- const components = {};
28
- components["year"] = parseInt(match[YEAR_NUMBER_GROUP]);
29
- components["month"] = parseInt(match[MONTH_NUMBER_GROUP]);
30
- components["day"] = parseInt(match[DATE_NUMBER_GROUP]);
28
+ const components = context.createParsingComponents({
29
+ "year": parseInt(match[YEAR_NUMBER_GROUP]),
30
+ "month": parseInt(match[MONTH_NUMBER_GROUP]),
31
+ "day": parseInt(match[DATE_NUMBER_GROUP]),
32
+ });
31
33
  if (match[HOUR_NUMBER_GROUP] != null) {
32
- components["hour"] = parseInt(match[HOUR_NUMBER_GROUP]);
33
- components["minute"] = parseInt(match[MINUTE_NUMBER_GROUP]);
34
+ components.assign("hour", parseInt(match[HOUR_NUMBER_GROUP]));
35
+ components.assign("minute", parseInt(match[MINUTE_NUMBER_GROUP]));
34
36
  if (match[SECOND_NUMBER_GROUP] != null) {
35
- components["second"] = parseInt(match[SECOND_NUMBER_GROUP]);
37
+ components.assign("second", parseInt(match[SECOND_NUMBER_GROUP]));
36
38
  }
37
39
  if (match[MILLISECOND_NUMBER_GROUP] != null) {
38
- components["millisecond"] = parseInt(match[MILLISECOND_NUMBER_GROUP]);
39
- }
40
- if (match[TZD_HOUR_OFFSET_GROUP] == null) {
41
- components["timezoneOffset"] = 0;
40
+ components.assign("millisecond", parseInt(match[MILLISECOND_NUMBER_GROUP]));
42
41
  }
43
- else {
44
- const hourOffset = parseInt(match[TZD_HOUR_OFFSET_GROUP]);
45
- let minuteOffset = 0;
46
- if (match[TZD_MINUTE_OFFSET_GROUP] != null) {
47
- minuteOffset = parseInt(match[TZD_MINUTE_OFFSET_GROUP]);
48
- }
49
- let offset = hourOffset * 60;
50
- if (offset < 0) {
51
- offset -= minuteOffset;
52
- }
53
- else {
54
- offset += minuteOffset;
42
+ if (match[TZD_GROUP] != null) {
43
+ let offset = 0;
44
+ if (match[TZD_HOUR_OFFSET_GROUP]) {
45
+ const hourOffset = parseInt(match[TZD_HOUR_OFFSET_GROUP]);
46
+ let minuteOffset = 0;
47
+ if (match[TZD_MINUTE_OFFSET_GROUP] != null) {
48
+ minuteOffset = parseInt(match[TZD_MINUTE_OFFSET_GROUP]);
49
+ }
50
+ offset = hourOffset * 60;
51
+ if (offset < 0) {
52
+ offset -= minuteOffset;
53
+ }
54
+ else {
55
+ offset += minuteOffset;
56
+ }
55
57
  }
56
- components["timezoneOffset"] = offset;
58
+ components.assign("timezoneOffset", offset);
57
59
  }
58
60
  }
59
- return components;
61
+ return components.addTag("parser/ISOFormatParser");
60
62
  }
61
63
  }
62
64
  //# sourceMappingURL=ISOFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ISOFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/ISOFormatParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sCAAsC,EAAE,MAAM,kCAAkC,CAAC;AAW1F,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0CAA0C;IAC1C,MAAM;IACF,2BAA2B;IAC3B,KAAK;IACD,iCAAiC;IACrC,IAAI;IACJ,KAAK;IACD,2BAA2B;IAC/B,IAAI;IACR,IAAI;IACJ,WAAW,EACX,GAAG,CACN,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,sCAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,UAAU,GAA0C,EAAE,CAAC;QAC7D,UAAU,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACxD,UAAU,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC1D,UAAU,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAEvD,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,IAAI,EAAE;YAClC,UAAU,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;YACxD,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;YAE5D,IAAI,KAAK,CAAC,mBAAmB,CAAC,IAAI,IAAI,EAAE;gBACpC,UAAU,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;aAC/D;YAED,IAAI,KAAK,CAAC,wBAAwB,CAAC,IAAI,IAAI,EAAE;gBACzC,UAAU,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;aACzE;YAED,IAAI,KAAK,CAAC,qBAAqB,CAAC,IAAI,IAAI,EAAE;gBACtC,UAAU,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;aACpC;iBAAM;gBACH,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAE1D,IAAI,YAAY,GAAG,CAAC,CAAC;gBACrB,IAAI,KAAK,CAAC,uBAAuB,CAAC,IAAI,IAAI,EAAE;oBACxC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;iBAC3D;gBAED,IAAI,MAAM,GAAG,UAAU,GAAG,EAAE,CAAC;gBAC7B,IAAI,MAAM,GAAG,CAAC,EAAE;oBACZ,MAAM,IAAI,YAAY,CAAC;iBAC1B;qBAAM;oBACH,MAAM,IAAI,YAAY,CAAC;iBAC1B;gBAED,UAAU,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAAC;aACzC;SACJ;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ"}
1
+ {"version":3,"file":"ISOFormatParser.js","sourceRoot":"","sources":["../../../../src/common/parsers/ISOFormatParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sCAAsC,EAAE,MAAM,kCAAkC,CAAC;AAW1F,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0CAA0C;IAC1C,MAAM;IACF,2BAA2B;IAC3B,KAAK;IACD,iCAAiC;IACrC,IAAI;IACJ,GAAG;IACC,2BAA2B;IAC/B,IAAI;IACR,IAAI;IACJ,WAAW,EACX,GAAG,CACN,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,SAAS,GAAG,CAAC,CAAC;AACpB,MAAM,qBAAqB,GAAG,CAAC,CAAC;AAChC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAEnC,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,sCAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,UAAU,GAAG,OAAO,CAAC,uBAAuB,CAAC;YAC/C,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YAC1C,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC5C,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;SAC5C,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,iBAAiB,CAAC,IAAI,IAAI,EAAE;YAClC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAC9D,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;YAElE,IAAI,KAAK,CAAC,mBAAmB,CAAC,IAAI,IAAI,EAAE;gBACpC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;aACrE;YAED,IAAI,KAAK,CAAC,wBAAwB,CAAC,IAAI,IAAI,EAAE;gBACzC,UAAU,CAAC,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;aAC/E;YACD,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE;gBAE1B,IAAI,MAAM,GAAG,CAAC,CAAC;gBACf,IAAI,KAAK,CAAC,qBAAqB,CAAC,EAAE;oBAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;oBAC1D,IAAI,YAAY,GAAG,CAAC,CAAC;oBACrB,IAAI,KAAK,CAAC,uBAAuB,CAAC,IAAI,IAAI,EAAE;wBACxC,YAAY,GAAG,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;qBAC3D;oBACD,MAAM,GAAG,UAAU,GAAG,EAAE,CAAC;oBACzB,IAAI,MAAM,GAAG,CAAC,EAAE;wBACZ,MAAM,IAAI,YAAY,CAAC;qBAC1B;yBAAM;wBACH,MAAM,IAAI,YAAY,CAAC;qBAC1B;iBACJ;gBACD,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;aAC/C;SACJ;QACD,OAAO,UAAU,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;IACvD,CAAC;CACJ"}
@@ -17,18 +17,25 @@ export default class SlashDateFormatParser {
17
17
  return PATTERN;
18
18
  }
19
19
  extract(context, match) {
20
- if (match[OPENING_GROUP].length == 0 && match.index > 0 && match.index < context.text.length) {
21
- const previousChar = context.text[match.index - 1];
22
- if (previousChar >= "0" && previousChar <= "9") {
20
+ const index = match.index + match[OPENING_GROUP].length;
21
+ const indexEnd = match.index + match[0].length - match[ENDING_GROUP].length;
22
+ if (index > 0) {
23
+ const textBefore = context.text.substring(0, index);
24
+ if (textBefore.match("\\d/?$")) {
23
25
  return;
24
26
  }
25
27
  }
26
- const index = match.index + match[OPENING_GROUP].length;
27
- const text = match[0].substr(match[OPENING_GROUP].length, match[0].length - match[OPENING_GROUP].length - match[ENDING_GROUP].length);
28
+ if (indexEnd < context.text.length) {
29
+ const textAfter = context.text.substring(indexEnd);
30
+ if (textAfter.match("^/?\\d")) {
31
+ return;
32
+ }
33
+ }
34
+ const text = context.text.substring(index, indexEnd);
28
35
  if (text.match(/^\d\.\d$/) || text.match(/^\d\.\d{1,2}\.\d{1,2}\s*$/)) {
29
36
  return;
30
37
  }
31
- if (!match[YEAR_GROUP] && match[0].indexOf("/") < 0) {
38
+ if (!match[YEAR_GROUP] && text.indexOf("/") < 0) {
32
39
  return;
33
40
  }
34
41
  const result = context.createParsingResult(index, text);
@@ -58,7 +65,7 @@ export default class SlashDateFormatParser {
58
65
  const year = findYearClosestToRef(context.refDate, day, month);
59
66
  result.start.imply("year", year);
60
67
  }
61
- return result;
68
+ return result.addTag("parser/SlashDateFormatParser");
62
69
  }
63
70
  }
64
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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"}
@@ -5,7 +5,7 @@ export default class ForwardDateRefiner {
5
5
  if (!context.option.forwardDate) {
6
6
  return results;
7
7
  }
8
- results.forEach(function (result) {
8
+ results.forEach((result) => {
9
9
  let refMoment = dayjs(context.refDate);
10
10
  if (result.start.isOnlyTime() && refMoment.isAfter(result.start.dayjs())) {
11
11
  refMoment = refMoment.add(1, "day");
@@ -17,6 +17,9 @@ export default class ForwardDateRefiner {
17
17
  implySimilarDate(result.end, refMoment);
18
18
  }
19
19
  }
20
+ context.debug(() => {
21
+ console.log(`${this.constructor.name} adjusted ${result} time result (${result.start})`);
22
+ });
20
23
  }
21
24
  if (result.start.isOnlyWeekdayComponent() && refMoment.isAfter(result.start.dayjs())) {
22
25
  if (refMoment.day() >= result.start.get("weekday")) {
@@ -29,7 +32,7 @@ export default class ForwardDateRefiner {
29
32
  result.start.imply("month", refMoment.month() + 1);
30
33
  result.start.imply("year", refMoment.year());
31
34
  context.debug(() => {
32
- console.log(`Forward weekly adjusted for ${result} (${result.start})`);
35
+ console.log(`${this.constructor.name} adjusted ${result} weekday (${result.start})`);
33
36
  });
34
37
  if (result.end && result.end.isOnlyWeekdayComponent()) {
35
38
  if (refMoment.day() > result.end.get("weekday")) {
@@ -42,7 +45,7 @@ export default class ForwardDateRefiner {
42
45
  result.end.imply("month", refMoment.month() + 1);
43
46
  result.end.imply("year", refMoment.year());
44
47
  context.debug(() => {
45
- console.log(`Forward weekly adjusted for ${result} (${result.end})`);
48
+ console.log(`${this.constructor.name} adjusted ${result} weekday (${result.end})`);
46
49
  });
47
50
  }
48
51
  }
@@ -50,12 +53,12 @@ export default class ForwardDateRefiner {
50
53
  for (let i = 0; i < 3 && refMoment.isAfter(result.start.dayjs()); i++) {
51
54
  result.start.imply("year", result.start.get("year") + 1);
52
55
  context.debug(() => {
53
- console.log(`Forward yearly adjusted for ${result} (${result.start})`);
56
+ console.log(`${this.constructor.name} adjusted ${result} year (${result.start})`);
54
57
  });
55
58
  if (result.end && !result.end.isCertain("year")) {
56
59
  result.end.imply("year", result.end.get("year") + 1);
57
60
  context.debug(() => {
58
- console.log(`Forward yearly adjusted for ${result} (${result.end})`);
61
+ console.log(`${this.constructor.name} adjusted ${result} month (${result.start})`);
59
62
  });
60
63
  }
61
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ForwardDateRefiner.js","sourceRoot":"","sources":["../../../../src/common/refiners/ForwardDateRefiner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ForwardDateRefiner.js","sourceRoot":"","sources":["../../../../src/common/refiners/ForwardDateRefiner.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import ENTimeUnitWithinFormatParser from "./parsers/ENTimeUnitWithinFormatParser
2
2
  import ENMonthNameLittleEndianParser from "./parsers/ENMonthNameLittleEndianParser.js";
3
3
  import ENMonthNameMiddleEndianParser from "./parsers/ENMonthNameMiddleEndianParser.js";
4
4
  import ENMonthNameParser from "./parsers/ENMonthNameParser.js";
5
- import ENCasualYearMonthDayParser from "./parsers/ENCasualYearMonthDayParser.js";
5
+ import ENYearMonthDayParser from "./parsers/ENYearMonthDayParser.js";
6
6
  import ENSlashMonthFormatParser from "./parsers/ENSlashMonthFormatParser.js";
7
7
  import ENTimeExpressionParser from "./parsers/ENTimeExpressionParser.js";
8
8
  import ENTimeUnitAgoFormatParser from "./parsers/ENTimeUnitAgoFormatParser.js";
@@ -19,6 +19,8 @@ import ENTimeUnitCasualRelativeFormatParser from "./parsers/ENTimeUnitCasualRela
19
19
  import ENMergeRelativeAfterDateRefiner from "./refiners/ENMergeRelativeAfterDateRefiner.js";
20
20
  import ENMergeRelativeFollowByDateRefiner from "./refiners/ENMergeRelativeFollowByDateRefiner.js";
21
21
  import OverlapRemovalRefiner from "../../common/refiners/OverlapRemovalRefiner.js";
22
+ import ENExtractYearSuffixRefiner from "./refiners/ENExtractYearSuffixRefiner.js";
23
+ import ENUnlikelyFormatFilter from "./refiners/ENUnlikelyFormatFilter.js";
22
24
  export default class ENDefaultConfiguration {
23
25
  createCasualConfiguration(littleEndian = false) {
24
26
  const option = this.createConfiguration(false, littleEndian);
@@ -27,6 +29,7 @@ export default class ENDefaultConfiguration {
27
29
  option.parsers.push(new ENMonthNameParser());
28
30
  option.parsers.push(new ENRelativeDateFormatParser());
29
31
  option.parsers.push(new ENTimeUnitCasualRelativeFormatParser());
32
+ option.refiners.push(new ENUnlikelyFormatFilter());
30
33
  return option;
31
34
  }
32
35
  createConfiguration(strictMode = true, littleEndian = false) {
@@ -37,7 +40,6 @@ export default class ENDefaultConfiguration {
37
40
  new ENMonthNameLittleEndianParser(),
38
41
  new ENMonthNameMiddleEndianParser(littleEndian),
39
42
  new ENWeekdayParser(),
40
- new ENCasualYearMonthDayParser(),
41
43
  new ENSlashMonthFormatParser(),
42
44
  new ENTimeExpressionParser(strictMode),
43
45
  new ENTimeUnitAgoFormatParser(strictMode),
@@ -45,10 +47,12 @@ export default class ENDefaultConfiguration {
45
47
  ],
46
48
  refiners: [new ENMergeDateTimeRefiner()],
47
49
  }, strictMode);
50
+ options.parsers.unshift(new ENYearMonthDayParser(strictMode));
48
51
  options.refiners.unshift(new ENMergeRelativeFollowByDateRefiner());
49
52
  options.refiners.unshift(new ENMergeRelativeAfterDateRefiner());
50
53
  options.refiners.unshift(new OverlapRemovalRefiner());
51
54
  options.refiners.push(new ENMergeDateTimeRefiner());
55
+ options.refiners.push(new ENExtractYearSuffixRefiner());
52
56
  options.refiners.push(new ENMergeDateRangeRefiner());
53
57
  return options;
54
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":"AAEA,OAAO,4BAA4B,MAAM,wCAAwC,CAAC;AAClF,OAAO,6BAA6B,MAAM,yCAAyC,CAAC;AACpF,OAAO,6BAA6B,MAAM,yCAAyC,CAAC;AACpF,OAAO,iBAAiB,MAAM,6BAA6B,CAAC;AAC5D,OAAO,0BAA0B,MAAM,sCAAsC,CAAC;AAC9E,OAAO,wBAAwB,MAAM,oCAAoC,CAAC;AAC1E,OAAO,sBAAsB,MAAM,kCAAkC,CAAC;AACtE,OAAO,yBAAyB,MAAM,qCAAqC,CAAC;AAC5E,OAAO,2BAA2B,MAAM,uCAAuC,CAAC;AAChF,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,sBAAsB,MAAM,mCAAmC,CAAC;AAEvE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,kBAAkB,MAAM,8BAA8B,CAAC;AAC9D,OAAO,kBAAkB,MAAM,8BAA8B,CAAC;AAC9D,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,0BAA0B,MAAM,sCAAsC,CAAC;AAE9E,OAAO,qBAAqB,MAAM,4CAA4C,CAAC;AAC/E,OAAO,oCAAoC,MAAM,gDAAgD,CAAC;AAClG,OAAO,+BAA+B,MAAM,4CAA4C,CAAC;AACzF,OAAO,kCAAkC,MAAM,+CAA+C,CAAC;AAC/F,OAAO,qBAAqB,MAAM,6CAA6C,CAAC;AAEhF,MAAM,CAAC,OAAO,OAAO,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,kBAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC,CAAC;QAC9C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAC7C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,0BAA0B,EAAE,CAAC,CAAC;QACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,oCAAoC,EAAE,CAAC,CAAC;QAChE,OAAO,MAAM,CAAC;IAClB,CAAC;IAQD,mBAAmB,CAAC,UAAU,GAAG,IAAI,EAAE,YAAY,GAAG,KAAK;QACvD,MAAM,OAAO,GAAG,0BAA0B,CACtC;YACI,OAAO,EAAE;gBACL,IAAI,qBAAqB,CAAC,YAAY,CAAC;gBACvC,IAAI,4BAA4B,CAAC,UAAU,CAAC;gBAC5C,IAAI,6BAA6B,EAAE;gBACnC,IAAI,6BAA6B,CAA6B,YAAY,CAAC;gBAC3E,IAAI,eAAe,EAAE;gBACrB,IAAI,0BAA0B,EAAE;gBAChC,IAAI,wBAAwB,EAAE;gBAC9B,IAAI,sBAAsB,CAAC,UAAU,CAAC;gBACtC,IAAI,yBAAyB,CAAC,UAAU,CAAC;gBACzC,IAAI,2BAA2B,CAAC,UAAU,CAAC;aAC9C;YACD,QAAQ,EAAE,CAAC,IAAI,sBAAsB,EAAE,CAAC;SAC3C,EACD,UAAU,CACb,CAAC;QAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,kCAAkC,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,+BAA+B,EAAE,CAAC,CAAC;QAChE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,qBAAqB,EAAE,CAAC,CAAC;QAGtD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,sBAAsB,EAAE,CAAC,CAAC;QAEpD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,uBAAuB,EAAE,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ"}
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../../src/locales/en/configuration.ts"],"names":[],"mappings":"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"}
@@ -30,4 +30,4 @@ export declare const YEAR_PATTERN = "(?:[1-9][0-9]{0,3}\\s{0,2}(?:BE|AD|BC|BCE|C
30
30
  export declare function parseYear(match: string): number;
31
31
  export declare const TIME_UNITS_PATTERN: string;
32
32
  export declare const TIME_UNITS_NO_ABBR_PATTERN: string;
33
- export declare function parseTimeUnits(timeunitText: any): TimeUnits;
33
+ export declare function parseTimeUnits(timeunitText: any): null | TimeUnits;
@@ -242,9 +242,15 @@ export function parseTimeUnits(timeunitText) {
242
242
  remainingText = remainingText.substring(match[0].length).trim();
243
243
  match = SINGLE_TIME_UNIT_REGEX.exec(remainingText);
244
244
  }
245
+ if (Object.keys(fragments).length == 0) {
246
+ return null;
247
+ }
245
248
  return fragments;
246
249
  }
247
250
  function collectDateTimeFragment(fragments, match) {
251
+ if (match[0].match(/^[a-zA-Z]+$/)) {
252
+ return;
253
+ }
248
254
  const num = parseNumberPattern(match[1]);
249
255
  const unit = TIME_UNIT_DICTIONARY[match[2].toLowerCase()];
250
256
  fragments[unit] = num;