chrono-node 2.10.0 → 2.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/cjs/locales/en/constants.d.ts +1 -1
- package/dist/cjs/locales/en/constants.js +1 -1
- package/dist/cjs/locales/en/constants.js.map +1 -1
- package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
- package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
- package/dist/cjs/locales/fr/constants.js +13 -0
- package/dist/cjs/locales/fr/constants.js.map +1 -1
- package/dist/cjs/locales/it/configuration.d.ts +5 -0
- package/dist/cjs/locales/it/configuration.js +66 -0
- package/dist/cjs/locales/it/configuration.js.map +1 -0
- package/dist/cjs/locales/it/constants.d.ts +8 -4
- package/dist/cjs/locales/it/constants.js +216 -90
- package/dist/cjs/locales/it/constants.js.map +1 -1
- package/dist/cjs/locales/it/index.d.ts +9 -7
- package/dist/cjs/locales/it/index.js +13 -51
- package/dist/cjs/locales/it/index.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITCasualDateParser.js +19 -10
- package/dist/cjs/locales/it/parsers/ITCasualDateParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js +70 -37
- package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js +6 -6
- package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
- package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -6
- package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
- package/dist/cjs/locales/it/parsers/ITMonthNameParser.js +5 -4
- package/dist/cjs/locales/it/parsers/ITMonthNameParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
- package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.js +2 -2
- package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
- package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js +37 -29
- package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
- package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +17 -9
- package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
- package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
- package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js +21 -6
- package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
- package/dist/cjs/locales/it/parsers/ITWeekdayParser.js +21 -12
- package/dist/cjs/locales/it/parsers/ITWeekdayParser.js.map +1 -1
- package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
- package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -8
- package/dist/cjs/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
- package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
- package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js +34 -0
- package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
- package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js +3 -3
- package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js +3 -3
- package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
- package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
- package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +30 -0
- package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
- package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
- package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +8 -8
- package/dist/cjs/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
- package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
- package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js +26 -0
- package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
- package/dist/esm/locales/en/constants.d.ts +1 -1
- package/dist/esm/locales/en/constants.js +1 -1
- package/dist/esm/locales/en/constants.js.map +1 -1
- package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
- package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
- package/dist/esm/locales/fr/constants.js +13 -0
- package/dist/esm/locales/fr/constants.js.map +1 -1
- package/dist/esm/locales/it/configuration.d.ts +5 -0
- package/dist/esm/locales/it/configuration.js +60 -0
- package/dist/esm/locales/it/configuration.js.map +1 -0
- package/dist/esm/locales/it/constants.d.ts +8 -4
- package/dist/esm/locales/it/constants.js +256 -117
- package/dist/esm/locales/it/constants.js.map +1 -1
- package/dist/esm/locales/it/index.d.ts +9 -7
- package/dist/esm/locales/it/index.js +8 -48
- package/dist/esm/locales/it/index.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITCasualDateParser.js +19 -10
- package/dist/esm/locales/it/parsers/ITCasualDateParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITCasualTimeParser.js +37 -37
- package/dist/esm/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js +5 -5
- package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
- package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -5
- package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
- package/dist/esm/locales/it/parsers/ITMonthNameParser.js +4 -3
- package/dist/esm/locales/it/parsers/ITMonthNameParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
- package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.js +1 -1
- package/dist/esm/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
- package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js +35 -27
- package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
- package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +18 -9
- package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
- package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
- package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js +22 -6
- package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
- package/dist/esm/locales/it/parsers/ITWeekdayParser.js +21 -12
- package/dist/esm/locales/it/parsers/ITWeekdayParser.js.map +1 -1
- package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
- package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -7
- package/dist/esm/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
- package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
- package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js +31 -0
- package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
- package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
- package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js +2 -2
- package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
- package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
- package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js +2 -2
- package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
- package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
- package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +27 -0
- package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
- package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
- package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +7 -7
- package/dist/esm/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
- package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
- package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js +23 -0
- package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
- package/package.json +1 -1
- package/src/locales/en/constants.ts +1 -1
- package/src/locales/en/parsers/ENMonthNameMiddleEndianParser.ts +1 -1
- package/src/locales/fr/constants.ts +13 -0
- package/src/locales/it/configuration.ts +85 -0
- package/src/locales/it/constants.ts +273 -123
- package/src/locales/it/index.ts +14 -73
- package/src/locales/it/parsers/ITCasualDateParser.ts +20 -12
- package/src/locales/it/parsers/ITCasualTimeParser.ts +39 -44
- package/src/locales/it/parsers/ITMonthNameLittleEndianParser.ts +6 -6
- package/src/locales/it/parsers/ITMonthNameMiddleEndianParser.ts +34 -17
- package/src/locales/it/parsers/ITMonthNameParser.ts +9 -8
- package/src/locales/it/parsers/ITRelativeDateFormatParser.ts +33 -12
- package/src/locales/it/parsers/ITSlashMonthFormatParser.ts +1 -1
- package/src/locales/it/parsers/ITTimeExpressionParser.ts +42 -28
- package/src/locales/it/parsers/ITTimeUnitAgoFormatParser.ts +9 -8
- package/src/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.ts +21 -11
- package/src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts +12 -6
- package/src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts +28 -8
- package/src/locales/it/parsers/ITWeekdayParser.ts +23 -13
- package/src/locales/it/parsers/{ITCasualYearMonthDayParser.ts → ITYearMonthDayParser.ts} +19 -8
- package/src/locales/it/refiners/ITExtractYearSuffixRefiner.ts +34 -0
- package/src/locales/it/refiners/ITMergeDateRangeRefiner.ts +5 -9
- package/src/locales/it/refiners/ITMergeDateTimeRefiner.ts +5 -5
- package/src/locales/it/refiners/ITMergeRelativeAfterDateRefiner.ts +46 -0
- package/src/locales/it/refiners/{ITMergeRelativeDateRefiner.ts → ITMergeRelativeFollowByDateRefiner.ts} +10 -10
- package/src/locales/it/refiners/ITUnlikelyFormatFilter.ts +31 -0
- package/dist/cjs/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
- package/dist/cjs/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
- package/dist/esm/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
- package/dist/esm/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { parseDuration, TIME_UNITS_PATTERN } from "../constants.js";
|
|
1
|
+
import { parseDuration, TIME_UNITS_NO_ABBR_PATTERN, TIME_UNITS_PATTERN } from "../constants.js";
|
|
2
2
|
import { ParsingComponents } from "../../../results.js";
|
|
3
3
|
import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
|
|
4
|
-
const PATTERN = new RegExp(`(${TIME_UNITS_PATTERN})\\s{0,5}(?:dopo|
|
|
5
|
-
const STRICT_PATTERN = new RegExp(
|
|
4
|
+
const PATTERN = new RegExp(`(${TIME_UNITS_PATTERN})\\s{0,5}(?:dopo|più\\s*tardi|da\\s*adesso|da\\s*ora)` + "(?=(?:\\W|$))", "i");
|
|
5
|
+
const STRICT_PATTERN = new RegExp(`(${TIME_UNITS_NO_ABBR_PATTERN})\\s{0,5}(dopo|più\\s*tardi|da\\s*adesso|da\\s*ora)(?=\\W|$)`, "i");
|
|
6
6
|
const GROUP_NUM_TIMEUNITS = 1;
|
|
7
|
-
export default class
|
|
7
|
+
export default class ITTimeUnitLaterFormatParser extends AbstractParserWithWordBoundaryChecking {
|
|
8
8
|
strictMode;
|
|
9
9
|
constructor(strictMode) {
|
|
10
10
|
super();
|
|
@@ -14,8 +14,11 @@ export default class ENTimeUnitLaterFormatParser extends AbstractParserWithWordB
|
|
|
14
14
|
return this.strictMode ? STRICT_PATTERN : PATTERN;
|
|
15
15
|
}
|
|
16
16
|
innerExtract(context, match) {
|
|
17
|
-
const
|
|
18
|
-
|
|
17
|
+
const timeUnits = parseDuration(match[GROUP_NUM_TIMEUNITS]);
|
|
18
|
+
if (!timeUnits) {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
return ParsingComponents.createRelativeFromReference(context.reference, timeUnits);
|
|
19
22
|
}
|
|
20
23
|
}
|
|
21
24
|
//# sourceMappingURL=ITTimeUnitLaterFormatParser.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ITTimeUnitLaterFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ITTimeUnitLaterFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAC7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,IAAI,kBAAkB,uDAAuD,GAAG,eAAe,EAC/F,GAAG,CACN,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,MAAM,CAC7B,IAAI,0BAA0B,8DAA8D,EAC5F,GAAG,CACN,CAAC;AACF,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,sCAAsC;IACvE;IAApB,YAAoB,UAAmB;QACnC,KAAK,EAAE,CAAC;QADQ,eAAU,GAAV,UAAU,CAAS;IAEvC,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;IACtD,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,iBAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { ParsingContext } from "../../../chrono.js";
|
|
2
2
|
import { ParsingComponents } from "../../../results.js";
|
|
3
3
|
import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
|
|
4
|
-
export default class
|
|
4
|
+
export default class ITTimeUnitWithinFormatParser extends AbstractParserWithWordBoundaryChecking {
|
|
5
|
+
private strictMode;
|
|
6
|
+
constructor(strictMode: boolean);
|
|
5
7
|
innerPattern(context: ParsingContext): RegExp;
|
|
6
8
|
innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
|
|
7
9
|
}
|
|
@@ -1,15 +1,31 @@
|
|
|
1
|
-
import { TIME_UNITS_PATTERN, parseDuration } from "../constants.js";
|
|
1
|
+
import { TIME_UNITS_PATTERN, parseDuration, TIME_UNITS_NO_ABBR_PATTERN } from "../constants.js";
|
|
2
2
|
import { ParsingComponents } from "../../../results.js";
|
|
3
3
|
import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
|
|
4
|
-
const
|
|
5
|
-
`(?:(?:
|
|
6
|
-
const
|
|
7
|
-
|
|
4
|
+
const PATTERN_WITH_OPTIONAL_PREFIX = new RegExp(`(?:(?:entro|tra|fra|in|per)\\s*)?` +
|
|
5
|
+
`(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
|
|
6
|
+
const PATTERN_WITH_PREFIX = new RegExp(`(?:entro|tra|fra|in|per)\\s*` + `(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
|
|
7
|
+
const PATTERN_WITH_PREFIX_STRICT = new RegExp(`(?:entro|tra|fra|in|per)\\s*` +
|
|
8
|
+
`(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${TIME_UNITS_NO_ABBR_PATTERN})(?=\\W|$)`, "i");
|
|
9
|
+
export default class ITTimeUnitWithinFormatParser extends AbstractParserWithWordBoundaryChecking {
|
|
10
|
+
strictMode;
|
|
11
|
+
constructor(strictMode) {
|
|
12
|
+
super();
|
|
13
|
+
this.strictMode = strictMode;
|
|
14
|
+
}
|
|
8
15
|
innerPattern(context) {
|
|
9
|
-
|
|
16
|
+
if (this.strictMode) {
|
|
17
|
+
return PATTERN_WITH_PREFIX_STRICT;
|
|
18
|
+
}
|
|
19
|
+
return context.option.forwardDate ? PATTERN_WITH_OPTIONAL_PREFIX : PATTERN_WITH_PREFIX;
|
|
10
20
|
}
|
|
11
21
|
innerExtract(context, match) {
|
|
22
|
+
if (match[0].match(/^per\s*(il|la|l')\s*\w+/)) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
12
25
|
const timeUnits = parseDuration(match[1]);
|
|
26
|
+
if (!timeUnits) {
|
|
27
|
+
return null;
|
|
28
|
+
}
|
|
13
29
|
return ParsingComponents.createRelativeFromReference(context.reference, timeUnits);
|
|
14
30
|
}
|
|
15
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ITTimeUnitWithinFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ITTimeUnitWithinFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAE7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAEhH,MAAM,4BAA4B,GAAG,IAAI,MAAM,CAC3C,mCAAmC;IAC/B,oDAAoD,kBAAkB,YAAY,EACtF,GAAG,CACN,CAAC;AAEF,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAClC,8BAA8B,GAAG,oDAAoD,kBAAkB,YAAY,EACnH,GAAG,CACN,CAAC;AAEF,MAAM,0BAA0B,GAAG,IAAI,MAAM,CACzC,8BAA8B;IAC1B,oDAAoD,0BAA0B,YAAY,EAC9F,GAAG,CACN,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,4BAA6B,SAAQ,sCAAsC;IACxE;IAApB,YAAoB,UAAmB;QACnC,KAAK,EAAE,CAAC;QADQ,eAAU,GAAV,UAAU,CAAS;IAEvC,CAAC;IAED,YAAY,CAAC,OAAuB;QAChC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,0BAA0B,CAAC;QACtC,CAAC;QACD,OAAO,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,mBAAmB,CAAC;IAC3F,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QAEzD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,SAAS,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,iBAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,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 ITWeekdayParser extends AbstractParserWithWordBoundaryChecking {
|
|
5
5
|
innerPattern(): RegExp;
|
|
6
|
-
innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
|
|
6
|
+
innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents | null;
|
|
7
7
|
}
|
|
@@ -2,12 +2,12 @@ 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 "../../../calculation/weekdays.js";
|
|
5
|
+
import { Weekday } from "../../../types.js";
|
|
5
6
|
const PATTERN = new RegExp("(?:(?:\\,|\\(|\\()\\s*)?" +
|
|
6
|
-
"(?:
|
|
7
|
-
|
|
8
|
-
`(${matchAnyPattern(WEEKDAY_DICTIONARY)})` +
|
|
7
|
+
"(?:(questo|questa|quest'|scorso|scorsa|prossimo|prossima)\\s*)?" +
|
|
8
|
+
`(${matchAnyPattern(WEEKDAY_DICTIONARY)}|weekend|fine\\s*settimana)` +
|
|
9
9
|
"(?:\\s*(?:\\,|\\)|\\)))?" +
|
|
10
|
-
"(?:\\s*(
|
|
10
|
+
"(?:\\s*(scorso|scorsa|prossimo|prossima)(?:\\s*settimana)?)?" +
|
|
11
11
|
"(?=\\W|$)", "i");
|
|
12
12
|
const PREFIX_GROUP = 1;
|
|
13
13
|
const WEEKDAY_GROUP = 2;
|
|
@@ -17,22 +17,31 @@ export default class ITWeekdayParser extends AbstractParserWithWordBoundaryCheck
|
|
|
17
17
|
return PATTERN;
|
|
18
18
|
}
|
|
19
19
|
innerExtract(context, match) {
|
|
20
|
-
const dayOfWeek = match[WEEKDAY_GROUP].toLowerCase();
|
|
21
|
-
const weekday = WEEKDAY_DICTIONARY[dayOfWeek];
|
|
22
20
|
const prefix = match[PREFIX_GROUP];
|
|
23
21
|
const postfix = match[POSTFIX_GROUP];
|
|
24
22
|
let modifierWord = prefix || postfix;
|
|
25
23
|
modifierWord = modifierWord || "";
|
|
26
24
|
modifierWord = modifierWord.toLowerCase();
|
|
27
25
|
let modifier = null;
|
|
28
|
-
if (modifierWord == "
|
|
29
|
-
modifier = "
|
|
26
|
+
if (modifierWord == "scorso" || modifierWord == "scorsa") {
|
|
27
|
+
modifier = "last";
|
|
30
28
|
}
|
|
31
|
-
else if (modifierWord == "prossima") {
|
|
32
|
-
modifier = "
|
|
29
|
+
else if (modifierWord == "prossimo" || modifierWord == "prossima") {
|
|
30
|
+
modifier = "next";
|
|
33
31
|
}
|
|
34
|
-
else if (modifierWord == "questa") {
|
|
35
|
-
modifier = "
|
|
32
|
+
else if (modifierWord == "questo" || modifierWord == "questa" || modifierWord == "quest'") {
|
|
33
|
+
modifier = "this";
|
|
34
|
+
}
|
|
35
|
+
const weekday_word = match[WEEKDAY_GROUP].toLowerCase();
|
|
36
|
+
let weekday;
|
|
37
|
+
if (WEEKDAY_DICTIONARY[weekday_word] !== undefined) {
|
|
38
|
+
weekday = WEEKDAY_DICTIONARY[weekday_word];
|
|
39
|
+
}
|
|
40
|
+
else if (weekday_word == "weekend" || weekday_word.match(/fine\s*settimana/)) {
|
|
41
|
+
weekday = modifier == "last" ? Weekday.SUNDAY : Weekday.SATURDAY;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
return null;
|
|
36
45
|
}
|
|
37
46
|
return createParsingComponentsAtWeekday(context.reference, weekday, modifier);
|
|
38
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ITWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITWeekdayParser.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,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"ITWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITWeekdayParser.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,+BAA+B,CAAC;AACjF,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,iEAAiE;IACjE,IAAI,eAAe,CAAC,kBAAkB,CAAC,6BAA6B;IACpE,0BAA0B;IAC1B,8DAA8D;IAC9D,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,QAAQ,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YACvD,QAAQ,GAAG,MAAM,CAAC;QACtB,CAAC;aAAM,IAAI,YAAY,IAAI,UAAU,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;YAClE,QAAQ,GAAG,MAAM,CAAC;QACtB,CAAC;aAAM,IAAI,YAAY,IAAI,QAAQ,IAAI,YAAY,IAAI,QAAQ,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YAC1F,QAAQ,GAAG,MAAM,CAAC;QACtB,CAAC;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,CAAC;YACjD,OAAO,GAAG,kBAAkB,CAAC,YAAY,CAAC,CAAC;QAC/C,CAAC;aAAM,IAAI,YAAY,IAAI,SAAS,IAAI,YAAY,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAE7E,OAAO,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACrE,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,gCAAgC,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ"}
|
package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts}
RENAMED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { ParsingContext } from "../../../chrono.js";
|
|
2
2
|
import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
|
|
3
|
-
export default class
|
|
3
|
+
export default class ITYearMonthDayParser extends AbstractParserWithWordBoundaryChecking {
|
|
4
|
+
private strictMonthDateOrder;
|
|
5
|
+
constructor(strictMonthDateOrder: boolean);
|
|
4
6
|
innerPattern(): RegExp;
|
|
5
7
|
innerExtract(context: ParsingContext, match: RegExpMatchArray): {
|
|
6
8
|
day: number;
|
package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js}
RENAMED
|
@@ -1,27 +1,40 @@
|
|
|
1
1
|
import { MONTH_DICTIONARY } from "../constants.js";
|
|
2
2
|
import { matchAnyPattern } from "../../../utils/pattern.js";
|
|
3
3
|
import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary.js";
|
|
4
|
-
const PATTERN = new RegExp(`([0-9]{4})[
|
|
5
|
-
`(?:(${matchAnyPattern(MONTH_DICTIONARY)})|([0-9]{1,2}))[
|
|
4
|
+
const PATTERN = new RegExp(`([0-9]{4})[-\\.\\/\\s]` +
|
|
5
|
+
`(?:(${matchAnyPattern(MONTH_DICTIONARY)})|([0-9]{1,2}))[-\\.\\/\\s]` +
|
|
6
6
|
`([0-9]{1,2})` +
|
|
7
7
|
"(?=\\W|$)", "i");
|
|
8
8
|
const YEAR_NUMBER_GROUP = 1;
|
|
9
9
|
const MONTH_NAME_GROUP = 2;
|
|
10
10
|
const MONTH_NUMBER_GROUP = 3;
|
|
11
11
|
const DATE_NUMBER_GROUP = 4;
|
|
12
|
-
export default class
|
|
12
|
+
export default class ITYearMonthDayParser extends AbstractParserWithWordBoundaryChecking {
|
|
13
|
+
strictMonthDateOrder;
|
|
14
|
+
constructor(strictMonthDateOrder) {
|
|
15
|
+
super();
|
|
16
|
+
this.strictMonthDateOrder = strictMonthDateOrder;
|
|
17
|
+
}
|
|
13
18
|
innerPattern() {
|
|
14
19
|
return PATTERN;
|
|
15
20
|
}
|
|
16
21
|
innerExtract(context, match) {
|
|
17
|
-
const
|
|
22
|
+
const year = parseInt(match[YEAR_NUMBER_GROUP]);
|
|
23
|
+
let day = parseInt(match[DATE_NUMBER_GROUP]);
|
|
24
|
+
let month = match[MONTH_NUMBER_GROUP]
|
|
18
25
|
? parseInt(match[MONTH_NUMBER_GROUP])
|
|
19
26
|
: MONTH_DICTIONARY[match[MONTH_NAME_GROUP].toLowerCase()];
|
|
20
27
|
if (month < 1 || month > 12) {
|
|
28
|
+
if (this.strictMonthDateOrder) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (day >= 1 && day <= 12) {
|
|
32
|
+
[month, day] = [day, month];
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
if (day < 1 || day > 31) {
|
|
21
36
|
return null;
|
|
22
37
|
}
|
|
23
|
-
const year = parseInt(match[YEAR_NUMBER_GROUP]);
|
|
24
|
-
const day = parseInt(match[DATE_NUMBER_GROUP]);
|
|
25
38
|
return {
|
|
26
39
|
day: day,
|
|
27
40
|
month: month,
|
|
@@ -29,4 +42,4 @@ export default class ENCasualYearMonthDayParser extends AbstractParserWithWordBo
|
|
|
29
42
|
};
|
|
30
43
|
}
|
|
31
44
|
}
|
|
32
|
-
//# sourceMappingURL=
|
|
45
|
+
//# sourceMappingURL=ITYearMonthDayParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ITYearMonthDayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITYearMonthDayParser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,sCAAsC,EAAE,MAAM,wDAAwD,CAAC;AAShH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,wBAAwB;IACpB,OAAO,eAAe,CAAC,gBAAgB,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,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,sCAAsC;IAChE;IAApB,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,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAE9D,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,EAAE,EAAE,CAAC;gBACxB,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAChC,CAAC;QACL,CAAC;QACD,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO;YACH,GAAG,EAAE,GAAG;YACR,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,IAAI;SACb,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { YEAR_PATTERN, parseYear } from "../constants.js";
|
|
2
|
+
const YEAR_SUFFIX_PATTERN = new RegExp(`^\\s*(${YEAR_PATTERN})`, "i");
|
|
3
|
+
const YEAR_GROUP = 1;
|
|
4
|
+
export default class ITExtractYearSuffixRefiner {
|
|
5
|
+
refine(context, results) {
|
|
6
|
+
results.forEach(function (result) {
|
|
7
|
+
if (!result.start.isDateWithUnknownYear()) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const suffix = context.text.substring(result.index + result.text.length);
|
|
11
|
+
const match = YEAR_SUFFIX_PATTERN.exec(suffix);
|
|
12
|
+
if (!match) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
if (match[0].trim().length <= 3) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
context.debug(() => {
|
|
19
|
+
console.log(`Extracting year: '${match[0]}' into : ${result}`);
|
|
20
|
+
});
|
|
21
|
+
const year = parseYear(match[YEAR_GROUP]);
|
|
22
|
+
if (result.end != null) {
|
|
23
|
+
result.end.assign("year", year);
|
|
24
|
+
}
|
|
25
|
+
result.start.assign("year", year);
|
|
26
|
+
result.text += match[0];
|
|
27
|
+
});
|
|
28
|
+
return results;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=ITExtractYearSuffixRefiner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ITExtractYearSuffixRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITExtractYearSuffixRefiner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEvD,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAC,SAAS,YAAY,GAAG,EAAE,GAAG,CAAC,CAAC;AACtE,MAAM,UAAU,GAAG,CAAC,CAAC;AACrB,MAAM,CAAC,OAAO,OAAO,0BAA0B;IAC3C,MAAM,CAAC,OAAuB,EAAE,OAAwB;QACpD,OAAO,CAAC,OAAO,CAAC,UAAU,MAAM;YAC5B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC;gBACxC,OAAO;YACX,CAAC;YACD,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,CAAC;gBACT,OAAO;YACX,CAAC;YAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO;YACX,CAAC;YACD,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;YACH,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAC1C,IAAI,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACpC,CAAC;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;QACH,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import AbstractMergeDateRangeRefiner from "../../../common/refiners/AbstractMergeDateRangeRefiner.js";
|
|
2
|
-
export default class
|
|
2
|
+
export default class ITMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner {
|
|
3
3
|
patternBetween(): RegExp;
|
|
4
4
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import AbstractMergeDateRangeRefiner from "../../../common/refiners/AbstractMergeDateRangeRefiner.js";
|
|
2
|
-
export default class
|
|
2
|
+
export default class ITMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner {
|
|
3
3
|
patternBetween() {
|
|
4
|
-
return /^\s*(
|
|
4
|
+
return /^\s*(a|al|-|–|fino\s*a|fino\s*al)\s*$/i;
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=ITMergeDateRangeRefiner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ITMergeDateRangeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeDateRangeRefiner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ITMergeDateRangeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeDateRangeRefiner.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,MAAM,wDAAwD,CAAC;AAQnG,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,6BAA6B;IAC9E,cAAc;QACV,OAAO,wCAAwC,CAAC;IACpD,CAAC;CACJ"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import AbstractMergeDateTimeRefiner from "../../../common/refiners/AbstractMergeDateTimeRefiner.js";
|
|
2
|
-
export default class
|
|
2
|
+
export default class ITMergeDateTimeRefiner extends AbstractMergeDateTimeRefiner {
|
|
3
3
|
patternBetween(): RegExp;
|
|
4
4
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import AbstractMergeDateTimeRefiner from "../../../common/refiners/AbstractMergeDateTimeRefiner.js";
|
|
2
|
-
export default class
|
|
2
|
+
export default class ITMergeDateTimeRefiner extends AbstractMergeDateTimeRefiner {
|
|
3
3
|
patternBetween() {
|
|
4
|
-
return new RegExp("^\\s*(T|alle
|
|
4
|
+
return new RegExp("^\\s*(T|alle?|dopo\\s*le|prima\\s*delle?|,|-|\\.|∙|:)?\\s*$");
|
|
5
5
|
}
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=ITMergeDateTimeRefiner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ITMergeDateTimeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeDateTimeRefiner.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,MAAM,uDAAuD,CAAC;AAQjG,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,4BAA4B;IAC5E,cAAc;QACV,OAAO,IAAI,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"ITMergeDateTimeRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeDateTimeRefiner.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,MAAM,uDAAuD,CAAC;AAQjG,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,4BAA4B;IAC5E,cAAc;QACV,OAAO,IAAI,MAAM,CAAC,6DAA6D,CAAC,CAAC;IACrF,CAAC;CACJ"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { MergingRefiner } from "../../../common/abstractRefiners.js";
|
|
2
|
+
import { ParsingResult } from "../../../results.js";
|
|
3
|
+
export default class ITMergeRelativeAfterDateRefiner extends MergingRefiner {
|
|
4
|
+
shouldMergeResults(textBetween: string, currentResult: ParsingResult, nextResult: ParsingResult): boolean;
|
|
5
|
+
mergeResults(textBetween: string, currentResult: ParsingResult, nextResult: ParsingResult, context: any): ParsingResult;
|
|
6
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { MergingRefiner } from "../../../common/abstractRefiners.js";
|
|
2
|
+
import { ParsingComponents, ParsingResult, ReferenceWithTimezone } from "../../../results.js";
|
|
3
|
+
import { parseDuration } from "../constants.js";
|
|
4
|
+
import { reverseDuration } from "../../../calculation/duration.js";
|
|
5
|
+
function IsPositiveFollowingReference(result) {
|
|
6
|
+
return result.text.match(/^[+-]/i) != null;
|
|
7
|
+
}
|
|
8
|
+
function IsNegativeFollowingReference(result) {
|
|
9
|
+
return result.text.match(/^-/i) != null;
|
|
10
|
+
}
|
|
11
|
+
export default class ITMergeRelativeAfterDateRefiner extends MergingRefiner {
|
|
12
|
+
shouldMergeResults(textBetween, currentResult, nextResult) {
|
|
13
|
+
if (!textBetween.match(/^\s*$/i)) {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
return IsPositiveFollowingReference(nextResult) || IsNegativeFollowingReference(nextResult);
|
|
17
|
+
}
|
|
18
|
+
mergeResults(textBetween, currentResult, nextResult, context) {
|
|
19
|
+
let timeUnits = parseDuration(nextResult.text);
|
|
20
|
+
if (IsNegativeFollowingReference(nextResult)) {
|
|
21
|
+
timeUnits = reverseDuration(timeUnits);
|
|
22
|
+
}
|
|
23
|
+
const components = ParsingComponents.createRelativeFromReference(ReferenceWithTimezone.fromDate(currentResult.start.date()), timeUnits);
|
|
24
|
+
return new ParsingResult(currentResult.reference, currentResult.index, `${currentResult.text}${textBetween}${nextResult.text}`, components);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=ITMergeRelativeAfterDateRefiner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ITMergeRelativeAfterDateRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeRelativeAfterDateRefiner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,SAAS,4BAA4B,CAAC,MAAqB;IACvD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;AAC/C,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAqB;IACvD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;AAC5C,CAAC;AAOD,MAAM,CAAC,OAAO,OAAO,+BAAgC,SAAQ,cAAc;IACvE,kBAAkB,CAAC,WAAmB,EAAE,aAA4B,EAAE,UAAyB;QAC3F,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,4BAA4B,CAAC,UAAU,CAAC,IAAI,4BAA4B,CAAC,UAAU,CAAC,CAAC;IAChG,CAAC;IAED,YAAY,CAAC,WAAmB,EAAE,aAA4B,EAAE,UAAyB,EAAE,OAAO;QAC9F,IAAI,SAAS,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,4BAA4B,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,2BAA2B,CAC5D,qBAAqB,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAC1D,SAAS,CACZ,CAAC;QAEF,OAAO,IAAI,aAAa,CACpB,aAAa,CAAC,SAAS,EACvB,aAAa,CAAC,KAAK,EACnB,GAAG,aAAa,CAAC,IAAI,GAAG,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,EACvD,UAAU,CACb,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MergingRefiner } from "../../../common/abstractRefiners.js";
|
|
2
2
|
import { ParsingResult } from "../../../results.js";
|
|
3
|
-
export default class
|
|
3
|
+
export default class ITMergeRelativeFollowByDateRefiner extends MergingRefiner {
|
|
4
4
|
patternBetween(): RegExp;
|
|
5
5
|
shouldMergeResults(textBetween: string, currentResult: ParsingResult, nextResult: ParsingResult): boolean;
|
|
6
6
|
mergeResults(textBetween: string, currentResult: ParsingResult, nextResult: ParsingResult): ParsingResult;
|
|
@@ -3,12 +3,12 @@ import { ParsingComponents, ParsingResult, ReferenceWithTimezone } from "../../.
|
|
|
3
3
|
import { parseDuration } from "../constants.js";
|
|
4
4
|
import { reverseDuration } from "../../../calculation/duration.js";
|
|
5
5
|
function hasImpliedEarlierReferenceDate(result) {
|
|
6
|
-
return result.text.match(/\s+(prima|
|
|
6
|
+
return result.text.match(/\s+(prima|da)$/i) != null;
|
|
7
7
|
}
|
|
8
8
|
function hasImpliedLaterReferenceDate(result) {
|
|
9
|
-
return result.text.match(/\s+(dopo|dal
|
|
9
|
+
return result.text.match(/\s+(dopo|dal?)$/i) != null;
|
|
10
10
|
}
|
|
11
|
-
export default class
|
|
11
|
+
export default class ITMergeRelativeFollowByDateRefiner extends MergingRefiner {
|
|
12
12
|
patternBetween() {
|
|
13
13
|
return /^\s*$/i;
|
|
14
14
|
}
|
|
@@ -22,12 +22,12 @@ export default class ENMergeRelativeDateRefiner extends MergingRefiner {
|
|
|
22
22
|
return !!nextResult.start.get("day") && !!nextResult.start.get("month") && !!nextResult.start.get("year");
|
|
23
23
|
}
|
|
24
24
|
mergeResults(textBetween, currentResult, nextResult) {
|
|
25
|
-
let
|
|
25
|
+
let duration = parseDuration(currentResult.text);
|
|
26
26
|
if (hasImpliedEarlierReferenceDate(currentResult)) {
|
|
27
|
-
|
|
27
|
+
duration = reverseDuration(duration);
|
|
28
28
|
}
|
|
29
|
-
const components = ParsingComponents.createRelativeFromReference(ReferenceWithTimezone.fromDate(nextResult.start.date()),
|
|
29
|
+
const components = ParsingComponents.createRelativeFromReference(ReferenceWithTimezone.fromDate(nextResult.start.date()), duration);
|
|
30
30
|
return new ParsingResult(nextResult.reference, currentResult.index, `${currentResult.text}${textBetween}${nextResult.text}`, components);
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
-
//# sourceMappingURL=
|
|
33
|
+
//# sourceMappingURL=ITMergeRelativeFollowByDateRefiner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ITMergeRelativeFollowByDateRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,SAAS,8BAA8B,CAAC,MAAqB;IACzD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC;AACxD,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAqB;IACvD,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC;AACzD,CAAC;AAOD,MAAM,CAAC,OAAO,OAAO,kCAAmC,SAAQ,cAAc;IAC1E,cAAc;QACV,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED,kBAAkB,CAAC,WAAmB,EAAE,aAA4B,EAAE,UAAyB;QAE3F,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAC;QACjB,CAAC;QAID,IAAI,CAAC,8BAA8B,CAAC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,aAAa,CAAC,EAAE,CAAC;YACjG,OAAO,KAAK,CAAC;QACjB,CAAC;QAGD,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9G,CAAC;IAED,YAAY,CAAC,WAAmB,EAAE,aAA4B,EAAE,UAAyB;QACrF,IAAI,QAAQ,GAAG,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,8BAA8B,CAAC,aAAa,CAAC,EAAE,CAAC;YAChD,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,2BAA2B,CAC5D,qBAAqB,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EACvD,QAAQ,CACX,CAAC;QAEF,OAAO,IAAI,aAAa,CACpB,UAAU,CAAC,SAAS,EACpB,aAAa,CAAC,KAAK,EACnB,GAAG,aAAa,CAAC,IAAI,GAAG,WAAW,GAAG,UAAU,CAAC,IAAI,EAAE,EACvD,UAAU,CACb,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Filter } from "../../../common/abstractRefiners.js";
|
|
2
|
+
export default class ITUnlikelyFormatFilter 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().endsWith("il secondo") || text.toLowerCase() === "secondo") {
|
|
12
|
+
const textAfter = context.text.substring(result.index + result.text.length).trim();
|
|
13
|
+
if (textAfter.length > 0) {
|
|
14
|
+
context.debug(() => {
|
|
15
|
+
console.log(`Removing unlikely result: ${result}`);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=ITUnlikelyFormatFilter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ITUnlikelyFormatFilter.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITUnlikelyFormatFilter.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,CAAC;YAC/B,OAAO,IAAI,CAAC;QAChB,CAAC;QAGD,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE,CAAC;YAChF,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,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;oBACf,OAAO,CAAC,GAAG,CAAC,6BAA6B,MAAM,EAAE,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACP,CAAC;YACD,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
|
package/package.json
CHANGED
|
@@ -230,7 +230,7 @@ export function parseOrdinalNumberPattern(match: string): number {
|
|
|
230
230
|
|
|
231
231
|
//-----------------------------
|
|
232
232
|
|
|
233
|
-
export const YEAR_PATTERN = `(?:[1-9][0-9]{0,3}\\s{0,2}(?:BE|AD|BC|BCE|CE)|[1-9][0-9]{3}|[
|
|
233
|
+
export const YEAR_PATTERN = `(?:[1-9][0-9]{0,3}\\s{0,2}(?:BE|AD|BC|BCE|CE)|[1-9][0-9]{3}|[0-9]{2}(?!\\w|:\\d|\\s+(?:am|pm|o\\s*clock|jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)))`;
|
|
234
234
|
export function parseYear(match: string): number {
|
|
235
235
|
if (/BE/i.test(match)) {
|
|
236
236
|
// Buddhist Era
|
|
@@ -60,7 +60,7 @@ export default class ENMonthNameMiddleEndianParser extends AbstractParserWithWor
|
|
|
60
60
|
|
|
61
61
|
// Skip the case where the day looks like a year (ex: January 21)
|
|
62
62
|
if (this.shouldSkipYearLikeDate) {
|
|
63
|
-
if (!match[DATE_TO_GROUP] && !match[YEAR_GROUP] && match[DATE_GROUP].match(
|
|
63
|
+
if (!match[DATE_TO_GROUP] && !match[YEAR_GROUP] && match[DATE_GROUP].match(/^\d{2}$/)) {
|
|
64
64
|
return null;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
@@ -22,12 +22,18 @@ export const MONTH_DICTIONARY: { [word: string]: number } = {
|
|
|
22
22
|
"janvier": 1,
|
|
23
23
|
"jan": 1,
|
|
24
24
|
"jan.": 1,
|
|
25
|
+
"janv": 1,
|
|
26
|
+
"janv.": 1,
|
|
25
27
|
"février": 2,
|
|
26
28
|
"fév": 2,
|
|
27
29
|
"fév.": 2,
|
|
30
|
+
"févr": 2,
|
|
31
|
+
"févr.": 2,
|
|
28
32
|
"fevrier": 2,
|
|
29
33
|
"fev": 2,
|
|
30
34
|
"fev.": 2,
|
|
35
|
+
"fevr": 2,
|
|
36
|
+
"fevr.": 2,
|
|
31
37
|
"mars": 3,
|
|
32
38
|
"mar": 3,
|
|
33
39
|
"mar.": 3,
|
|
@@ -36,13 +42,18 @@ export const MONTH_DICTIONARY: { [word: string]: number } = {
|
|
|
36
42
|
"avr.": 4,
|
|
37
43
|
"mai": 5,
|
|
38
44
|
"juin": 6,
|
|
45
|
+
"juin.": 6,
|
|
39
46
|
"jun": 6,
|
|
47
|
+
"jun.": 6,
|
|
40
48
|
"juillet": 7,
|
|
41
49
|
"juil": 7,
|
|
50
|
+
"juil.": 7,
|
|
42
51
|
"jul": 7,
|
|
43
52
|
"jul.": 7,
|
|
44
53
|
"août": 8,
|
|
54
|
+
"août.": 8,
|
|
45
55
|
"aout": 8,
|
|
56
|
+
"aout.": 8,
|
|
46
57
|
"septembre": 9,
|
|
47
58
|
"sep": 9,
|
|
48
59
|
"sep.": 9,
|
|
@@ -58,6 +69,8 @@ export const MONTH_DICTIONARY: { [word: string]: number } = {
|
|
|
58
69
|
"decembre": 12,
|
|
59
70
|
"dec": 12,
|
|
60
71
|
"dec.": 12,
|
|
72
|
+
"déc": 12,
|
|
73
|
+
"déc.": 12,
|
|
61
74
|
};
|
|
62
75
|
|
|
63
76
|
export const INTEGER_WORD_DICTIONARY: { [word: string]: number } = {
|