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.
Files changed (178) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/locales/en/constants.d.ts +1 -1
  3. package/dist/cjs/locales/en/constants.js +1 -1
  4. package/dist/cjs/locales/en/constants.js.map +1 -1
  5. package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
  6. package/dist/cjs/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
  7. package/dist/cjs/locales/fr/constants.js +13 -0
  8. package/dist/cjs/locales/fr/constants.js.map +1 -1
  9. package/dist/cjs/locales/it/configuration.d.ts +5 -0
  10. package/dist/cjs/locales/it/configuration.js +66 -0
  11. package/dist/cjs/locales/it/configuration.js.map +1 -0
  12. package/dist/cjs/locales/it/constants.d.ts +8 -4
  13. package/dist/cjs/locales/it/constants.js +216 -90
  14. package/dist/cjs/locales/it/constants.js.map +1 -1
  15. package/dist/cjs/locales/it/index.d.ts +9 -7
  16. package/dist/cjs/locales/it/index.js +13 -51
  17. package/dist/cjs/locales/it/index.js.map +1 -1
  18. package/dist/cjs/locales/it/parsers/ITCasualDateParser.js +19 -10
  19. package/dist/cjs/locales/it/parsers/ITCasualDateParser.js.map +1 -1
  20. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
  21. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js +70 -37
  22. package/dist/cjs/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
  23. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
  24. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js +6 -6
  25. package/dist/cjs/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
  26. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
  27. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -6
  28. package/dist/cjs/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
  29. package/dist/cjs/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
  30. package/dist/cjs/locales/it/parsers/ITMonthNameParser.js +5 -4
  31. package/dist/cjs/locales/it/parsers/ITMonthNameParser.js.map +1 -1
  32. package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
  33. package/dist/cjs/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
  34. package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
  35. package/dist/cjs/locales/it/parsers/ITSlashMonthFormatParser.js +2 -2
  36. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
  37. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js +37 -29
  38. package/dist/cjs/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
  39. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
  40. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
  41. package/dist/cjs/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
  42. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
  43. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +17 -9
  44. package/dist/cjs/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
  45. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
  46. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
  47. package/dist/cjs/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
  48. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
  49. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js +21 -6
  50. package/dist/cjs/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
  51. package/dist/cjs/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
  52. package/dist/cjs/locales/it/parsers/ITWeekdayParser.js +21 -12
  53. package/dist/cjs/locales/it/parsers/ITWeekdayParser.js.map +1 -1
  54. package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
  55. package/dist/cjs/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -8
  56. package/dist/cjs/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
  57. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
  58. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js +34 -0
  59. package/dist/cjs/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
  60. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
  61. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js +3 -3
  62. package/dist/cjs/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
  63. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
  64. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js +3 -3
  65. package/dist/cjs/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
  66. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
  67. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +30 -0
  68. package/dist/cjs/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
  69. package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
  70. package/dist/cjs/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +8 -8
  71. package/dist/cjs/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
  72. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
  73. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js +26 -0
  74. package/dist/cjs/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
  75. package/dist/esm/locales/en/constants.d.ts +1 -1
  76. package/dist/esm/locales/en/constants.js +1 -1
  77. package/dist/esm/locales/en/constants.js.map +1 -1
  78. package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js +1 -1
  79. package/dist/esm/locales/en/parsers/ENMonthNameMiddleEndianParser.js.map +1 -1
  80. package/dist/esm/locales/fr/constants.js +13 -0
  81. package/dist/esm/locales/fr/constants.js.map +1 -1
  82. package/dist/esm/locales/it/configuration.d.ts +5 -0
  83. package/dist/esm/locales/it/configuration.js +60 -0
  84. package/dist/esm/locales/it/configuration.js.map +1 -0
  85. package/dist/esm/locales/it/constants.d.ts +8 -4
  86. package/dist/esm/locales/it/constants.js +256 -117
  87. package/dist/esm/locales/it/constants.js.map +1 -1
  88. package/dist/esm/locales/it/index.d.ts +9 -7
  89. package/dist/esm/locales/it/index.js +8 -48
  90. package/dist/esm/locales/it/index.js.map +1 -1
  91. package/dist/esm/locales/it/parsers/ITCasualDateParser.js +19 -10
  92. package/dist/esm/locales/it/parsers/ITCasualDateParser.js.map +1 -1
  93. package/dist/esm/locales/it/parsers/ITCasualTimeParser.d.ts +1 -1
  94. package/dist/esm/locales/it/parsers/ITCasualTimeParser.js +37 -37
  95. package/dist/esm/locales/it/parsers/ITCasualTimeParser.js.map +1 -1
  96. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.d.ts +1 -1
  97. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js +5 -5
  98. package/dist/esm/locales/it/parsers/ITMonthNameLittleEndianParser.js.map +1 -1
  99. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.d.ts +4 -2
  100. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js +17 -5
  101. package/dist/esm/locales/it/parsers/ITMonthNameMiddleEndianParser.js.map +1 -1
  102. package/dist/esm/locales/it/parsers/ITMonthNameParser.d.ts +2 -2
  103. package/dist/esm/locales/it/parsers/ITMonthNameParser.js +4 -3
  104. package/dist/esm/locales/it/parsers/ITMonthNameParser.js.map +1 -1
  105. package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js +21 -7
  106. package/dist/esm/locales/it/parsers/ITRelativeDateFormatParser.js.map +1 -1
  107. package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.d.ts +1 -1
  108. package/dist/esm/locales/it/parsers/ITSlashMonthFormatParser.js +1 -1
  109. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.d.ts +3 -2
  110. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js +35 -27
  111. package/dist/esm/locales/it/parsers/ITTimeExpressionParser.js.map +1 -1
  112. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.d.ts +1 -1
  113. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js +9 -7
  114. package/dist/esm/locales/it/parsers/ITTimeUnitAgoFormatParser.js.map +1 -1
  115. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.d.ts +3 -1
  116. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js +18 -9
  117. package/dist/esm/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.js.map +1 -1
  118. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.d.ts +1 -1
  119. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js +9 -6
  120. package/dist/esm/locales/it/parsers/ITTimeUnitLaterFormatParser.js.map +1 -1
  121. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.d.ts +3 -1
  122. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js +22 -6
  123. package/dist/esm/locales/it/parsers/ITTimeUnitWithinFormatParser.js.map +1 -1
  124. package/dist/esm/locales/it/parsers/ITWeekdayParser.d.ts +1 -1
  125. package/dist/esm/locales/it/parsers/ITWeekdayParser.js +21 -12
  126. package/dist/esm/locales/it/parsers/ITWeekdayParser.js.map +1 -1
  127. package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.d.ts → ITYearMonthDayParser.d.ts} +3 -1
  128. package/dist/esm/locales/it/parsers/{ITCasualYearMonthDayParser.js → ITYearMonthDayParser.js} +20 -7
  129. package/dist/esm/locales/it/parsers/ITYearMonthDayParser.js.map +1 -0
  130. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.d.ts +5 -0
  131. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js +31 -0
  132. package/dist/esm/locales/it/refiners/ITExtractYearSuffixRefiner.js.map +1 -0
  133. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.d.ts +1 -1
  134. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js +2 -2
  135. package/dist/esm/locales/it/refiners/ITMergeDateRangeRefiner.js.map +1 -1
  136. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.d.ts +1 -1
  137. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js +2 -2
  138. package/dist/esm/locales/it/refiners/ITMergeDateTimeRefiner.js.map +1 -1
  139. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.d.ts +6 -0
  140. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js +27 -0
  141. package/dist/esm/locales/it/refiners/ITMergeRelativeAfterDateRefiner.js.map +1 -0
  142. package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.d.ts → ITMergeRelativeFollowByDateRefiner.d.ts} +1 -1
  143. package/dist/esm/locales/it/refiners/{ITMergeRelativeDateRefiner.js → ITMergeRelativeFollowByDateRefiner.js} +7 -7
  144. package/dist/esm/locales/it/refiners/ITMergeRelativeFollowByDateRefiner.js.map +1 -0
  145. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.d.ts +6 -0
  146. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js +23 -0
  147. package/dist/esm/locales/it/refiners/ITUnlikelyFormatFilter.js.map +1 -0
  148. package/package.json +1 -1
  149. package/src/locales/en/constants.ts +1 -1
  150. package/src/locales/en/parsers/ENMonthNameMiddleEndianParser.ts +1 -1
  151. package/src/locales/fr/constants.ts +13 -0
  152. package/src/locales/it/configuration.ts +85 -0
  153. package/src/locales/it/constants.ts +273 -123
  154. package/src/locales/it/index.ts +14 -73
  155. package/src/locales/it/parsers/ITCasualDateParser.ts +20 -12
  156. package/src/locales/it/parsers/ITCasualTimeParser.ts +39 -44
  157. package/src/locales/it/parsers/ITMonthNameLittleEndianParser.ts +6 -6
  158. package/src/locales/it/parsers/ITMonthNameMiddleEndianParser.ts +34 -17
  159. package/src/locales/it/parsers/ITMonthNameParser.ts +9 -8
  160. package/src/locales/it/parsers/ITRelativeDateFormatParser.ts +33 -12
  161. package/src/locales/it/parsers/ITSlashMonthFormatParser.ts +1 -1
  162. package/src/locales/it/parsers/ITTimeExpressionParser.ts +42 -28
  163. package/src/locales/it/parsers/ITTimeUnitAgoFormatParser.ts +9 -8
  164. package/src/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.ts +21 -11
  165. package/src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts +12 -6
  166. package/src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts +28 -8
  167. package/src/locales/it/parsers/ITWeekdayParser.ts +23 -13
  168. package/src/locales/it/parsers/{ITCasualYearMonthDayParser.ts → ITYearMonthDayParser.ts} +19 -8
  169. package/src/locales/it/refiners/ITExtractYearSuffixRefiner.ts +34 -0
  170. package/src/locales/it/refiners/ITMergeDateRangeRefiner.ts +5 -9
  171. package/src/locales/it/refiners/ITMergeDateTimeRefiner.ts +5 -5
  172. package/src/locales/it/refiners/ITMergeRelativeAfterDateRefiner.ts +46 -0
  173. package/src/locales/it/refiners/{ITMergeRelativeDateRefiner.ts → ITMergeRelativeFollowByDateRefiner.ts} +10 -10
  174. package/src/locales/it/refiners/ITUnlikelyFormatFilter.ts +31 -0
  175. package/dist/cjs/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
  176. package/dist/cjs/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
  177. package/dist/esm/locales/it/parsers/ITCasualYearMonthDayParser.js.map +0 -1
  178. package/dist/esm/locales/it/refiners/ITMergeRelativeDateRefiner.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ITRelativeDateFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITRelativeDateFormatParser.ts"],"names":[],"mappings":";;AAAA,4CAAoD;AAEpD,8CAAqD;AACrD,2GAAgH;AAChH,oDAAyD;AAEzD,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,8FAA8F,IAAA,yBAAe,EACzG,gCAAoB,CACvB,WAAW,GAAG,WAAW,EAC1B,GAAG,CACN,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAqB,0BAA2B,SAAQ,uEAAsC;IAC1F,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1D,MAAM,QAAQ,GAAG,gCAAoB,CAAC,QAAQ,CAAC,CAAC;QAEhD,IAAI,QAAQ,IAAI,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACxD,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YACxB,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,QAAQ,IAAI,OAAO,IAAI,QAAQ,IAAI,YAAY,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACrD,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAGzD,IAAI,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YAC7C,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACxC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/C,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACjD,CAAC;aAGI,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAChB,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACxC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC9C,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QACpD,CAAC;aAGI,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACjB,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACxC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;YAC/C,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AApDD,6CAoDC"}
1
+ {"version":3,"file":"ITRelativeDateFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITRelativeDateFormatParser.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
- export default class ENSlashMonthFormatParser extends AbstractParserWithWordBoundaryChecking {
4
+ export default class ITSlashMonthFormatParser extends AbstractParserWithWordBoundaryChecking {
5
5
  innerPattern(): RegExp;
6
6
  innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
7
7
  }
@@ -4,7 +4,7 @@ const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/Abstra
4
4
  const PATTERN = new RegExp("([0-9]|0[1-9]|1[012])/([0-9]{4})" + "", "i");
5
5
  const MONTH_GROUP = 1;
6
6
  const YEAR_GROUP = 2;
7
- class ENSlashMonthFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
7
+ class ITSlashMonthFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
8
8
  innerPattern() {
9
9
  return PATTERN;
10
10
  }
@@ -14,5 +14,5 @@ class ENSlashMonthFormatParser extends AbstractParserWithWordBoundary_1.Abstract
14
14
  return context.createParsingComponents().imply("day", 1).assign("month", month).assign("year", year);
15
15
  }
16
16
  }
17
- exports.default = ENSlashMonthFormatParser;
17
+ exports.default = ITSlashMonthFormatParser;
18
18
  //# sourceMappingURL=ITSlashMonthFormatParser.js.map
@@ -1,10 +1,11 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
- import { ParsingComponents } from "../../../results";
2
+ import { ParsingComponents, ParsingResult } from "../../../results";
3
3
  import { AbstractTimeExpressionParser } from "../../../common/parsers/AbstractTimeExpressionParser";
4
- export default class ENTimeExpressionParser extends AbstractTimeExpressionParser {
4
+ export default class ITTimeExpressionParser extends AbstractTimeExpressionParser {
5
5
  constructor(strictMode: any);
6
6
  followingPhase(): string;
7
7
  primaryPrefix(): string;
8
8
  primarySuffix(): string;
9
9
  extractPrimaryTimeComponents(context: ParsingContext, match: RegExpMatchArray): null | ParsingComponents;
10
+ extractFollowingTimeComponents(context: ParsingContext, match: RegExpMatchArray, result: ParsingResult): ParsingComponents | null;
10
11
  }
@@ -1,50 +1,58 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const index_1 = require("../../../index");
3
+ const types_1 = require("../../../types");
4
4
  const AbstractTimeExpressionParser_1 = require("../../../common/parsers/AbstractTimeExpressionParser");
5
- class ENTimeExpressionParser extends AbstractTimeExpressionParser_1.AbstractTimeExpressionParser {
5
+ class ITTimeExpressionParser extends AbstractTimeExpressionParser_1.AbstractTimeExpressionParser {
6
6
  constructor(strictMode) {
7
7
  super(strictMode);
8
8
  }
9
9
  followingPhase() {
10
- return "\\s*(?:\\-|\\–|\\~|\\〜|to|\\?)\\s*";
10
+ return "\\s*(?:\\-|\\–|\\~|\\〜|a|fino\\s*a|alle?|\\?)\\s*";
11
11
  }
12
12
  primaryPrefix() {
13
- return "(?:(?:alle|dalle)\\s*)??";
13
+ return "(?:(?:alle?|dalle?)\\s*)??";
14
14
  }
15
15
  primarySuffix() {
16
- return "(?:\\s*(?:in punto|o\\W*in punto|(?:di|del|della|in|al|alla|alle)\\s*(?:mattina|pomeriggio|sera)))?(?!/)(?=\\W|$)";
16
+ return "(?:\\s*(?:di\\s*(?:sera|notte|mattina|pomeriggio)))?(?!/)(?=\\W|$)";
17
17
  }
18
18
  extractPrimaryTimeComponents(context, match) {
19
19
  const components = super.extractPrimaryTimeComponents(context, match);
20
- if (components) {
21
- if (match[0].endsWith("sera")) {
22
- const hour = components.get("hour");
23
- if (hour >= 6 && hour < 12) {
24
- components.assign("hour", components.get("hour") + 12);
25
- components.assign("meridiem", index_1.Meridiem.PM);
26
- }
27
- else if (hour < 6) {
28
- components.assign("meridiem", index_1.Meridiem.AM);
29
- }
20
+ if (!components) {
21
+ return components;
22
+ }
23
+ if (match[0].match(/di\s*(?:sera|notte)/i)) {
24
+ const hour = components.get("hour");
25
+ if (hour >= 6 && hour < 12) {
26
+ components.assign("hour", components.get("hour") + 12);
27
+ components.assign("meridiem", types_1.Meridiem.PM);
28
+ }
29
+ else if (hour < 6) {
30
+ components.assign("meridiem", types_1.Meridiem.AM);
30
31
  }
31
- if (match[0].endsWith("pomeriggio")) {
32
- components.assign("meridiem", index_1.Meridiem.PM);
33
- const hour = components.get("hour");
34
- if (hour >= 0 && hour <= 6) {
35
- components.assign("hour", components.get("hour") + 12);
36
- }
32
+ }
33
+ if (match[0].match(/di\s*pomeriggio/i)) {
34
+ components.assign("meridiem", types_1.Meridiem.PM);
35
+ const hour = components.get("hour");
36
+ if (hour >= 0 && hour <= 6) {
37
+ components.assign("hour", components.get("hour") + 12);
37
38
  }
38
- if (match[0].endsWith("mattina")) {
39
- components.assign("meridiem", index_1.Meridiem.AM);
40
- const hour = components.get("hour");
41
- if (hour < 12) {
42
- components.assign("hour", components.get("hour"));
43
- }
39
+ }
40
+ if (match[0].match(/di\s*mattina/i)) {
41
+ components.assign("meridiem", types_1.Meridiem.AM);
42
+ const hour = components.get("hour");
43
+ if (hour < 12) {
44
+ components.assign("hour", components.get("hour"));
44
45
  }
45
46
  }
46
- return components;
47
+ return components.addTag("parser/ITTimeExpressionParser");
48
+ }
49
+ extractFollowingTimeComponents(context, match, result) {
50
+ const followingComponents = super.extractFollowingTimeComponents(context, match, result);
51
+ if (followingComponents) {
52
+ followingComponents.addTag("parser/ITTimeExpressionParser");
53
+ }
54
+ return followingComponents;
47
55
  }
48
56
  }
49
- exports.default = ENTimeExpressionParser;
57
+ exports.default = ITTimeExpressionParser;
50
58
  //# sourceMappingURL=ITTimeExpressionParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeExpressionParser.ts"],"names":[],"mappings":";;AAEA,0CAA0C;AAC1C,uGAAoG;AAEpG,MAAqB,sBAAuB,SAAQ,2DAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,oCAAoC,CAAC;IAChD,CAAC;IAED,aAAa;QACT,OAAO,0BAA0B,CAAC;IACtC,CAAC;IAED,aAAa;QACT,OAAO,mHAAmH,CAAC;IAC/H,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,UAAU,EAAE,CAAC;YACb,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;oBACzB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;oBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;gBAC/C,CAAC;qBAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;oBAClB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;YAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAClC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;oBACzB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC3D,CAAC;YACL,CAAC;YAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC/B,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;gBAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACpC,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;oBACZ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtD,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;CACJ;AAjDD,yCAiDC"}
1
+ {"version":3,"file":"ITTimeExpressionParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeExpressionParser.ts"],"names":[],"mappings":";;AAEA,0CAA0C;AAC1C,uGAAoG;AAEpG,MAAqB,sBAAuB,SAAQ,2DAA4B;IAC5E,YAAY,UAAU;QAClB,KAAK,CAAC,UAAU,CAAC,CAAC;IACtB,CAAC;IAED,cAAc;QACV,OAAO,mDAAmD,CAAC;IAC/D,CAAC;IAED,aAAa;QACT,OAAO,4BAA4B,CAAC;IACxC,CAAC;IAED,aAAa;QACT,OAAO,oEAAoE,CAAC;IAChF,CAAC;IAED,4BAA4B,CAAC,OAAuB,EAAE,KAAuB;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,4BAA4B,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtE,IAAI,CAAC,UAAU,EAAE,CAAC;YACd,OAAO,UAAU,CAAC;QACtB,CAAC;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;gBACzB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBACvD,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC/C,CAAC;iBAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;gBAClB,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC/C,CAAC;QACL,CAAC;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACrC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACzB,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3D,CAAC;QACL,CAAC;QAED,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YAClC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,gBAAQ,CAAC,EAAE,CAAC,CAAC;YAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACpC,IAAI,IAAI,GAAG,EAAE,EAAE,CAAC;gBACZ,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YACtD,CAAC;QACL,CAAC;QAED,OAAO,UAAU,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC9D,CAAC;IAED,8BAA8B,CAC1B,OAAuB,EACvB,KAAuB,EACvB,MAAqB;QAErB,MAAM,mBAAmB,GAAG,KAAK,CAAC,8BAA8B,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzF,IAAI,mBAAmB,EAAE,CAAC;YACtB,mBAAmB,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,mBAAmB,CAAC;IAC/B,CAAC;CACJ;AA/DD,yCA+DC"}
@@ -1,7 +1,7 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
- export default class ENTimeUnitAgoFormatParser extends AbstractParserWithWordBoundaryChecking {
4
+ export default class ITTimeUnitAgoFormatParser extends AbstractParserWithWordBoundaryChecking {
5
5
  private strictMode;
6
6
  constructor(strictMode: boolean);
7
7
  innerPattern(): RegExp;
@@ -4,9 +4,9 @@ const constants_1 = require("../constants");
4
4
  const results_1 = require("../../../results");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
6
  const duration_1 = require("../../../calculation/duration");
7
- const PATTERN = new RegExp(`(${constants_1.TIME_UNITS_PATTERN})\\s{0,5}(?:fa|prima|precedente)(?=(?:\\W|$))`, "i");
8
- const STRICT_PATTERN = new RegExp(`(${constants_1.TIME_UNITS_PATTERN})\\s{0,5}fa(?=(?:\\W|$))`, "i");
9
- class ENTimeUnitAgoFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
7
+ const PATTERN = new RegExp(`(${constants_1.TIME_UNITS_PATTERN})\\s{0,5}(?:fa|prima)(?=\\W|$)`, "i");
8
+ const STRICT_PATTERN = new RegExp(`(${constants_1.TIME_UNITS_NO_ABBR_PATTERN})\\s{0,5}(?:fa|prima)(?=\\W|$)`, "i");
9
+ class ITTimeUnitAgoFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
10
10
  constructor(strictMode) {
11
11
  super();
12
12
  this.strictMode = strictMode;
@@ -15,10 +15,12 @@ class ENTimeUnitAgoFormatParser extends AbstractParserWithWordBoundary_1.Abstrac
15
15
  return this.strictMode ? STRICT_PATTERN : PATTERN;
16
16
  }
17
17
  innerExtract(context, match) {
18
- const timeUnits = (0, constants_1.parseDuration)(match[1]);
19
- const outputTimeUnits = (0, duration_1.reverseDuration)(timeUnits);
20
- return results_1.ParsingComponents.createRelativeFromReference(context.reference, outputTimeUnits);
18
+ const duration = (0, constants_1.parseDuration)(match[1]);
19
+ if (!duration) {
20
+ return null;
21
+ }
22
+ return results_1.ParsingComponents.createRelativeFromReference(context.reference, (0, duration_1.reverseDuration)(duration));
21
23
  }
22
24
  }
23
- exports.default = ENTimeUnitAgoFormatParser;
25
+ exports.default = ITTimeUnitAgoFormatParser;
24
26
  //# sourceMappingURL=ITTimeUnitAgoFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITTimeUnitAgoFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitAgoFormatParser.ts"],"names":[],"mappings":";;AACA,4CAAiE;AACjE,8CAAqD;AACrD,2GAAgH;AAChH,4DAAgE;AAEhE,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,8BAAkB,+CAA+C,EAAE,GAAG,CAAC,CAAC;AACvG,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,IAAI,8BAAkB,0BAA0B,EAAE,GAAG,CAAC,CAAC;AAEzF,MAAqB,yBAA0B,SAAQ,uEAAsC;IACzF,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,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,eAAe,GAAG,IAAA,0BAAe,EAAC,SAAS,CAAC,CAAC;QAEnD,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAC7F,CAAC;CACJ;AAfD,4CAeC"}
1
+ {"version":3,"file":"ITTimeUnitAgoFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitAgoFormatParser.ts"],"names":[],"mappings":";;AACA,4CAA6F;AAC7F,8CAAqD;AACrD,2GAAgH;AAChH,4DAAgE;AAEhE,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,8BAAkB,gCAAgC,EAAE,GAAG,CAAC,CAAC;AACxF,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,IAAI,sCAA0B,gCAAgC,EAAE,GAAG,CAAC,CAAC;AAEvG,MAAqB,yBAA0B,SAAQ,uEAAsC;IACzF,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,QAAQ,GAAG,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,IAAA,0BAAe,EAAC,QAAQ,CAAC,CAAC,CAAC;IACvG,CAAC;CACJ;AAhBD,4CAgBC"}
@@ -1,7 +1,9 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
- export default class ENTimeUnitCasualRelativeFormatParser extends AbstractParserWithWordBoundaryChecking {
4
+ export default class ITTimeUnitCasualRelativeFormatParser extends AbstractParserWithWordBoundaryChecking {
5
+ private allowAbbreviations;
6
+ constructor(allowAbbreviations?: boolean);
5
7
  innerPattern(): RegExp;
6
8
  innerExtract(context: ParsingContext, match: RegExpMatchArray): ParsingComponents;
7
9
  }
@@ -4,23 +4,31 @@ const constants_1 = require("../constants");
4
4
  const results_1 = require("../../../results");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
6
  const duration_1 = require("../../../calculation/duration");
7
- const PATTERN = new RegExp(`(questo|ultimo|passato|prossimo|dopo|questa|ultima|passata|prossima|\\+|-)\\s*(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
8
- class ENTimeUnitCasualRelativeFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
7
+ const PATTERN = new RegExp(`(?:il\\s*|la\\s*|l'\\s*)?(questo|questa|quest'|scorso|scorsa|prossimo|prossima|dopo|\\+|-)\\s*(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
8
+ const PATTERN_NO_ABBR = new RegExp(`(?:il\\s*|la\\s*|l'\\s*)?(questo|questa|quest'|scorso|scorsa|prossimo|prossima|dopo|\\+|-)\\s*(${constants_1.TIME_UNITS_NO_ABBR_PATTERN})(?=\\W|$)`, "i");
9
+ class ITTimeUnitCasualRelativeFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
10
+ constructor(allowAbbreviations = true) {
11
+ super();
12
+ this.allowAbbreviations = allowAbbreviations;
13
+ }
9
14
  innerPattern() {
10
- return PATTERN;
15
+ return this.allowAbbreviations ? PATTERN : PATTERN_NO_ABBR;
11
16
  }
12
17
  innerExtract(context, match) {
13
18
  const prefix = match[1].toLowerCase();
14
- let timeUnits = (0, constants_1.parseDuration)(match[2]);
19
+ let duration = (0, constants_1.parseDuration)(match[2]);
20
+ if (!duration) {
21
+ return null;
22
+ }
15
23
  switch (prefix) {
16
- case "last":
17
- case "past":
24
+ case "scorso":
25
+ case "scorsa":
18
26
  case "-":
19
- timeUnits = (0, duration_1.reverseDuration)(timeUnits);
27
+ duration = (0, duration_1.reverseDuration)(duration);
20
28
  break;
21
29
  }
22
- return results_1.ParsingComponents.createRelativeFromReference(context.reference, timeUnits);
30
+ return results_1.ParsingComponents.createRelativeFromReference(context.reference, duration);
23
31
  }
24
32
  }
25
- exports.default = ENTimeUnitCasualRelativeFormatParser;
33
+ exports.default = ITTimeUnitCasualRelativeFormatParser;
26
34
  //# sourceMappingURL=ITTimeUnitCasualRelativeFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITTimeUnitCasualRelativeFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.ts"],"names":[],"mappings":";;AAAA,4CAAiE;AAEjE,8CAAqD;AACrD,2GAAgH;AAChH,4DAAgE;AAEhE,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,kFAAkF,8BAAkB,YAAY,EAChH,GAAG,CACN,CAAC;AAEF,MAAqB,oCAAqC,SAAQ,uEAAsC;IACpG,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,SAAS,GAAG,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC;YACZ,KAAK,GAAG;gBACJ,SAAS,GAAG,IAAA,0BAAe,EAAC,SAAS,CAAC,CAAC;gBACvC,MAAM;QACd,CAAC;QAED,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ;AAlBD,uDAkBC"}
1
+ {"version":3,"file":"ITTimeUnitCasualRelativeFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitCasualRelativeFormatParser.ts"],"names":[],"mappings":";;AAAA,4CAA6F;AAE7F,8CAAqD;AACrD,2GAAgH;AAChH,4DAAgE;AAEhE,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,kGAAkG,8BAAkB,YAAY,EAChI,GAAG,CACN,CAAC;AACF,MAAM,eAAe,GAAG,IAAI,MAAM,CAC9B,kGAAkG,sCAA0B,YAAY,EACxI,GAAG,CACN,CAAC;AAEF,MAAqB,oCAAqC,SAAQ,uEAAsC;IACpG,YAAoB,qBAA8B,IAAI;QAClD,KAAK,EAAE,CAAC;QADQ,uBAAkB,GAAlB,kBAAkB,CAAgB;IAEtD,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;IAC/D,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACtC,IAAI,QAAQ,GAAG,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,QAAQ,MAAM,EAAE,CAAC;YACb,KAAK,QAAQ,CAAC;YACd,KAAK,QAAQ,CAAC;YACd,KAAK,GAAG;gBACJ,QAAQ,GAAG,IAAA,0BAAe,EAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM;QACd,CAAC;QACD,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtF,CAAC;CACJ;AAxBD,uDAwBC"}
@@ -1,7 +1,7 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
- export default class ENTimeUnitLaterFormatParser extends AbstractParserWithWordBoundaryChecking {
4
+ export default class ITTimeUnitLaterFormatParser extends AbstractParserWithWordBoundaryChecking {
5
5
  private strictMode;
6
6
  constructor(strictMode: boolean);
7
7
  innerPattern(): RegExp;
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const constants_1 = require("../constants");
4
4
  const results_1 = require("../../../results");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
- const PATTERN = new RegExp(`(${constants_1.TIME_UNITS_PATTERN})\\s{0,5}(?:dopo|più tardi|da adesso|avanti|oltre|a seguire)` + "(?=(?:\\W|$))", "i");
7
- const STRICT_PATTERN = new RegExp("" + "(" + constants_1.TIME_UNITS_PATTERN + ")" + "(dopo|più tardi)" + "(?=(?:\\W|$))", "i");
6
+ const PATTERN = new RegExp(`(${constants_1.TIME_UNITS_PATTERN})\\s{0,5}(?:dopo|più\\s*tardi|da\\s*adesso|da\\s*ora)` + "(?=(?:\\W|$))", "i");
7
+ const STRICT_PATTERN = new RegExp(`(${constants_1.TIME_UNITS_NO_ABBR_PATTERN})\\s{0,5}(dopo|più\\s*tardi|da\\s*adesso|da\\s*ora)(?=\\W|$)`, "i");
8
8
  const GROUP_NUM_TIMEUNITS = 1;
9
- class ENTimeUnitLaterFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
9
+ class ITTimeUnitLaterFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
10
10
  constructor(strictMode) {
11
11
  super();
12
12
  this.strictMode = strictMode;
@@ -15,9 +15,12 @@ class ENTimeUnitLaterFormatParser extends AbstractParserWithWordBoundary_1.Abstr
15
15
  return this.strictMode ? STRICT_PATTERN : PATTERN;
16
16
  }
17
17
  innerExtract(context, match) {
18
- const fragments = (0, constants_1.parseDuration)(match[GROUP_NUM_TIMEUNITS]);
19
- return results_1.ParsingComponents.createRelativeFromReference(context.reference, fragments);
18
+ const timeUnits = (0, constants_1.parseDuration)(match[GROUP_NUM_TIMEUNITS]);
19
+ if (!timeUnits) {
20
+ return null;
21
+ }
22
+ return results_1.ParsingComponents.createRelativeFromReference(context.reference, timeUnits);
20
23
  }
21
24
  }
22
- exports.default = ENTimeUnitLaterFormatParser;
25
+ exports.default = ITTimeUnitLaterFormatParser;
23
26
  //# sourceMappingURL=ITTimeUnitLaterFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITTimeUnitLaterFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts"],"names":[],"mappings":";;AACA,4CAAiE;AACjE,8CAAqD;AACrD,2GAAgH;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,IAAI,8BAAkB,8DAA8D,GAAG,eAAe,EACtG,GAAG,CACN,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC,EAAE,GAAG,GAAG,GAAG,8BAAkB,GAAG,GAAG,GAAG,kBAAkB,GAAG,eAAe,EAAE,GAAG,CAAC,CAAC;AACnH,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAqB,2BAA4B,SAAQ,uEAAsC;IAC3F,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,IAAA,yBAAa,EAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC5D,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ;AAbD,8CAaC"}
1
+ {"version":3,"file":"ITTimeUnitLaterFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitLaterFormatParser.ts"],"names":[],"mappings":";;AACA,4CAA6F;AAC7F,8CAAqD;AACrD,2GAAgH;AAEhH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,IAAI,8BAAkB,uDAAuD,GAAG,eAAe,EAC/F,GAAG,CACN,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,MAAM,CAC7B,IAAI,sCAA0B,8DAA8D,EAC5F,GAAG,CACN,CAAC;AACF,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAqB,2BAA4B,SAAQ,uEAAsC;IAC3F,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,IAAA,yBAAa,EAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ;AAhBD,8CAgBC"}
@@ -1,7 +1,9 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
4
- export default class ENTimeUnitWithinFormatParser extends AbstractParserWithWordBoundaryChecking {
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
  }
@@ -3,17 +3,32 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const constants_1 = require("../constants");
4
4
  const results_1 = require("../../../results");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
- const PATTERN_WITH_PREFIX = new RegExp(`(?:within|in|for)\\s*` +
7
- `(?:(?:più o meno|intorno|approssimativamente|verso|verso le)\\s*(?:~\\s*)?)?(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
8
- const PATTERN_WITHOUT_PREFIX = new RegExp(`(?:(?:più o meno|intorno|approssimativamente|verso|verso le)\\s*(?:~\\s*)?)?(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
9
- class ENTimeUnitWithinFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
6
+ const PATTERN_WITH_OPTIONAL_PREFIX = new RegExp(`(?:(?:entro|tra|fra|in|per)\\s*)?` +
7
+ `(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
8
+ const PATTERN_WITH_PREFIX = new RegExp(`(?:entro|tra|fra|in|per)\\s*` + `(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${constants_1.TIME_UNITS_PATTERN})(?=\\W|$)`, "i");
9
+ const PATTERN_WITH_PREFIX_STRICT = new RegExp(`(?:entro|tra|fra|in|per)\\s*` +
10
+ `(?:(?:circa|approssimativamente)\\s*(?:~\\s*)?)?(${constants_1.TIME_UNITS_NO_ABBR_PATTERN})(?=\\W|$)`, "i");
11
+ class ITTimeUnitWithinFormatParser extends AbstractParserWithWordBoundary_1.AbstractParserWithWordBoundaryChecking {
12
+ constructor(strictMode) {
13
+ super();
14
+ this.strictMode = strictMode;
15
+ }
10
16
  innerPattern(context) {
11
- return context.option.forwardDate ? PATTERN_WITHOUT_PREFIX : PATTERN_WITH_PREFIX;
17
+ if (this.strictMode) {
18
+ return PATTERN_WITH_PREFIX_STRICT;
19
+ }
20
+ return context.option.forwardDate ? PATTERN_WITH_OPTIONAL_PREFIX : PATTERN_WITH_PREFIX;
12
21
  }
13
22
  innerExtract(context, match) {
23
+ if (match[0].match(/^per\s*(il|la|l')\s*\w+/)) {
24
+ return null;
25
+ }
14
26
  const timeUnits = (0, constants_1.parseDuration)(match[1]);
27
+ if (!timeUnits) {
28
+ return null;
29
+ }
15
30
  return results_1.ParsingComponents.createRelativeFromReference(context.reference, timeUnits);
16
31
  }
17
32
  }
18
- exports.default = ENTimeUnitWithinFormatParser;
33
+ exports.default = ITTimeUnitWithinFormatParser;
19
34
  //# sourceMappingURL=ITTimeUnitWithinFormatParser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ITTimeUnitWithinFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts"],"names":[],"mappings":";;AAAA,4CAAiE;AAEjE,8CAAqD;AACrD,2GAAgH;AAEhH,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAClC,uBAAuB;IACnB,gFAAgF,8BAAkB,YAAY,EAClH,GAAG,CACN,CAAC;AAEF,MAAM,sBAAsB,GAAG,IAAI,MAAM,CACrC,gFAAgF,8BAAkB,YAAY,EAC9G,GAAG,CACN,CAAC;AAEF,MAAqB,4BAA6B,SAAQ,uEAAsC;IAC5F,YAAY,CAAC,OAAuB;QAChC,OAAO,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,mBAAmB,CAAC;IACrF,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ;AATD,+CASC"}
1
+ {"version":3,"file":"ITTimeUnitWithinFormatParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITTimeUnitWithinFormatParser.ts"],"names":[],"mappings":";;AAAA,4CAA6F;AAE7F,8CAAqD;AACrD,2GAAgH;AAEhH,MAAM,4BAA4B,GAAG,IAAI,MAAM,CAC3C,mCAAmC;IAC/B,oDAAoD,8BAAkB,YAAY,EACtF,GAAG,CACN,CAAC;AAEF,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAClC,8BAA8B,GAAG,oDAAoD,8BAAkB,YAAY,EACnH,GAAG,CACN,CAAC;AAEF,MAAM,0BAA0B,GAAG,IAAI,MAAM,CACzC,8BAA8B;IAC1B,oDAAoD,sCAA0B,YAAY,EAC9F,GAAG,CACN,CAAC;AAEF,MAAqB,4BAA6B,SAAQ,uEAAsC;IAC5F,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,IAAA,yBAAa,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,2BAAiB,CAAC,2BAA2B,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;CACJ;AAvBD,+CAuBC"}
@@ -3,5 +3,5 @@ import { ParsingComponents } from "../../../results";
3
3
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
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
  }
@@ -4,12 +4,12 @@ const constants_1 = require("../constants");
4
4
  const pattern_1 = require("../../../utils/pattern");
5
5
  const AbstractParserWithWordBoundary_1 = require("../../../common/parsers/AbstractParserWithWordBoundary");
6
6
  const weekdays_1 = require("../../../calculation/weekdays");
7
+ const types_1 = require("../../../types");
7
8
  const PATTERN = new RegExp("(?:(?:\\,|\\(|\\()\\s*)?" +
8
- "(?:il\\s*?)?" +
9
- "(?:(questa|l'ultima|scorsa|prossima)\\s*)?" +
10
- `(${(0, pattern_1.matchAnyPattern)(constants_1.WEEKDAY_DICTIONARY)})` +
9
+ "(?:(questo|questa|quest'|scorso|scorsa|prossimo|prossima)\\s*)?" +
10
+ `(${(0, pattern_1.matchAnyPattern)(constants_1.WEEKDAY_DICTIONARY)}|weekend|fine\\s*settimana)` +
11
11
  "(?:\\s*(?:\\,|\\)|\\)))?" +
12
- "(?:\\s*(questa|l'ultima|scorsa|prossima)\\s*settimana)?" +
12
+ "(?:\\s*(scorso|scorsa|prossimo|prossima)(?:\\s*settimana)?)?" +
13
13
  "(?=\\W|$)", "i");
14
14
  const PREFIX_GROUP = 1;
15
15
  const WEEKDAY_GROUP = 2;
@@ -19,22 +19,31 @@ class ITWeekdayParser extends AbstractParserWithWordBoundary_1.AbstractParserWit
19
19
  return PATTERN;
20
20
  }
21
21
  innerExtract(context, match) {
22
- const dayOfWeek = match[WEEKDAY_GROUP].toLowerCase();
23
- const weekday = constants_1.WEEKDAY_DICTIONARY[dayOfWeek];
24
22
  const prefix = match[PREFIX_GROUP];
25
23
  const postfix = match[POSTFIX_GROUP];
26
24
  let modifierWord = prefix || postfix;
27
25
  modifierWord = modifierWord || "";
28
26
  modifierWord = modifierWord.toLowerCase();
29
27
  let modifier = null;
30
- if (modifierWord == "ultima" || modifierWord == "scorsa") {
31
- modifier = "ultima";
28
+ if (modifierWord == "scorso" || modifierWord == "scorsa") {
29
+ modifier = "last";
32
30
  }
33
- else if (modifierWord == "prossima") {
34
- modifier = "prossima";
31
+ else if (modifierWord == "prossimo" || modifierWord == "prossima") {
32
+ modifier = "next";
35
33
  }
36
- else if (modifierWord == "questa") {
37
- modifier = "questa";
34
+ else if (modifierWord == "questo" || modifierWord == "questa" || modifierWord == "quest'") {
35
+ modifier = "this";
36
+ }
37
+ const weekday_word = match[WEEKDAY_GROUP].toLowerCase();
38
+ let weekday;
39
+ if (constants_1.WEEKDAY_DICTIONARY[weekday_word] !== undefined) {
40
+ weekday = constants_1.WEEKDAY_DICTIONARY[weekday_word];
41
+ }
42
+ else if (weekday_word == "weekend" || weekday_word.match(/fine\s*settimana/)) {
43
+ weekday = modifier == "last" ? types_1.Weekday.SUNDAY : types_1.Weekday.SATURDAY;
44
+ }
45
+ else {
46
+ return null;
38
47
  }
39
48
  return (0, weekdays_1.createParsingComponentsAtWeekday)(context.reference, weekday, modifier);
40
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ITWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITWeekdayParser.ts"],"names":[],"mappings":";;AAEA,4CAAkD;AAClD,oDAAyD;AACzD,2GAAgH;AAChH,4DAAiF;AAEjF,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,cAAc;IACd,4CAA4C;IAC5C,IAAI,IAAA,yBAAe,EAAC,8BAAkB,CAAC,GAAG;IAC1C,0BAA0B;IAC1B,yDAAyD;IACzD,WAAW,EACf,GAAG,CACN,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,CAAC;AACvB,MAAM,aAAa,GAAG,CAAC,CAAC;AACxB,MAAM,aAAa,GAAG,CAAC,CAAC;AAExB,MAAqB,eAAgB,SAAQ,uEAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,8BAAkB,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,QAAQ,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YACvD,QAAQ,GAAG,QAAQ,CAAC;QACxB,CAAC;aAAM,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;YACpC,QAAQ,GAAG,UAAU,CAAC;QAC1B,CAAC;aAAM,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YAClC,QAAQ,GAAG,QAAQ,CAAC;QACxB,CAAC;QACD,OAAO,IAAA,2CAAgC,EAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ;AAxBD,kCAwBC"}
1
+ {"version":3,"file":"ITWeekdayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITWeekdayParser.ts"],"names":[],"mappings":";;AAEA,4CAAkD;AAClD,oDAAyD;AACzD,2GAAgH;AAChH,4DAAiF;AACjF,0CAAyC;AAEzC,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,0BAA0B;IACtB,iEAAiE;IACjE,IAAI,IAAA,yBAAe,EAAC,8BAAkB,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,MAAqB,eAAgB,SAAQ,uEAAsC;IAC/E,YAAY;QACR,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,YAAY,CAAC,OAAuB,EAAE,KAAuB;QACzD,MAAM,MAAM,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACrC,IAAI,YAAY,GAAG,MAAM,IAAI,OAAO,CAAC;QACrC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;QAClC,YAAY,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QAE1C,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,IAAI,YAAY,IAAI,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,8BAAkB,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC;YACjD,OAAO,GAAG,8BAAkB,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,eAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAO,CAAC,QAAQ,CAAC;QACrE,CAAC;aAAM,CAAC;YACJ,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAA,2CAAgC,EAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAClF,CAAC;CACJ;AAlCD,kCAkCC"}
@@ -1,6 +1,8 @@
1
1
  import { ParsingContext } from "../../../chrono";
2
2
  import { AbstractParserWithWordBoundaryChecking } from "../../../common/parsers/AbstractParserWithWordBoundary";
3
- export default class ENCasualYearMonthDayParser extends AbstractParserWithWordBoundaryChecking {
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;
@@ -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
- `(?:(${(0, pattern_1.matchAnyPattern)(constants_1.MONTH_DICTIONARY)})|([0-9]{1,2}))[\\.\\/\\s]` +
6
+ const PATTERN = new RegExp(`([0-9]{4})[-\\.\\/\\s]` +
7
+ `(?:(${(0, 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 ITYearMonthDayParser 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=ITCasualYearMonthDayParser.js.map
46
+ exports.default = ITYearMonthDayParser;
47
+ //# sourceMappingURL=ITYearMonthDayParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITYearMonthDayParser.js","sourceRoot":"","sources":["../../../../../src/locales/it/parsers/ITYearMonthDayParser.ts"],"names":[],"mappings":";;AACA,4CAAgD;AAChD,oDAAyD;AACzD,2GAAgH;AAShH,MAAM,OAAO,GAAG,IAAI,MAAM,CACtB,wBAAwB;IACpB,OAAO,IAAA,yBAAe,EAAC,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,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;AAlCD,uCAkCC"}
@@ -0,0 +1,5 @@
1
+ import { ParsingContext, Refiner } from "../../../chrono";
2
+ import { ParsingResult } from "../../../results";
3
+ export default class ITExtractYearSuffixRefiner implements Refiner {
4
+ refine(context: ParsingContext, results: ParsingResult[]): ParsingResult[];
5
+ }
@@ -0,0 +1,34 @@
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 ITExtractYearSuffixRefiner {
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
+ if (match[0].trim().length <= 3) {
18
+ return;
19
+ }
20
+ context.debug(() => {
21
+ console.log(`Extracting year: '${match[0]}' into : ${result}`);
22
+ });
23
+ const year = (0, constants_1.parseYear)(match[YEAR_GROUP]);
24
+ if (result.end != null) {
25
+ result.end.assign("year", year);
26
+ }
27
+ result.start.assign("year", year);
28
+ result.text += match[0];
29
+ });
30
+ return results;
31
+ }
32
+ }
33
+ exports.default = ITExtractYearSuffixRefiner;
34
+ //# sourceMappingURL=ITExtractYearSuffixRefiner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ITExtractYearSuffixRefiner.js","sourceRoot":"","sources":["../../../../../src/locales/it/refiners/ITExtractYearSuffixRefiner.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,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,IAAA,qBAAS,EAAC,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;AA3BD,6CA2BC"}
@@ -1,4 +1,4 @@
1
1
  import AbstractMergeDateRangeRefiner from "../../../common/refiners/AbstractMergeDateRangeRefiner";
2
- export default class ENMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner {
2
+ export default class ITMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner {
3
3
  patternBetween(): RegExp;
4
4
  }
@@ -4,10 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const AbstractMergeDateRangeRefiner_1 = __importDefault(require("../../../common/refiners/AbstractMergeDateRangeRefiner"));
7
- class ENMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner_1.default {
7
+ class ITMergeDateRangeRefiner extends AbstractMergeDateRangeRefiner_1.default {
8
8
  patternBetween() {
9
- return /^\s*(to|-)\s*$/i;
9
+ return /^\s*(a|al|-|–|fino\s*a|fino\s*al)\s*$/i;
10
10
  }
11
11
  }
12
- exports.default = ENMergeDateRangeRefiner;
12
+ exports.default = ITMergeDateRangeRefiner;
13
13
  //# sourceMappingURL=ITMergeDateRangeRefiner.js.map