match.cjs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. "use strict";
  2. exports.match = void 0;
  3. var _index = require("../../_lib/buildMatchFn.cjs");
  4. var _index2 = require("../../_lib/buildMatchPatternFn.cjs");
  5. const matchOrdinalNumberPattern = /^(\d+)(º|ª)?/i;
  6. const parseOrdinalNumberPattern = /\d+/i;
  7. const matchEraPatterns = {
  8. narrow: /^(ac|dc|a|d)/i,
  9. abbreviated: /^(a\.?\s?c\.?|a\.?\s?e\.?\s?c\.?|d\.?\s?c\.?|e\.?\s?c\.?)/i,
  10. wide: /^(antes de cristo|antes da era comum|depois de cristo|era comum)/i,
  11. };
  12. const parseEraPatterns = {
  13. any: [/^ac/i, /^dc/i],
  14. wide: [
  15. /^(antes de cristo|antes da era comum)/i,
  16. /^(depois de cristo|era comum)/i,
  17. ],
  18. };
  19. const matchQuarterPatterns = {
  20. narrow: /^[1234]/i,
  21. abbreviated: /^T[1234]/i,
  22. wide: /^[1234](º|ª)? trimestre/i,
  23. };
  24. const parseQuarterPatterns = {
  25. any: [/1/i, /2/i, /3/i, /4/i],
  26. };
  27. const matchMonthPatterns = {
  28. narrow: /^[jfmasond]/i,
  29. abbreviated: /^(jan|fev|mar|abr|mai|jun|jul|ago|set|out|nov|dez)/i,
  30. wide: /^(janeiro|fevereiro|março|abril|maio|junho|julho|agosto|setembro|outubro|novembro|dezembro)/i,
  31. };
  32. const parseMonthPatterns = {
  33. narrow: [
  34. /^j/i,
  35. /^f/i,
  36. /^m/i,
  37. /^a/i,
  38. /^m/i,
  39. /^j/i,
  40. /^j/i,
  41. /^a/i,
  42. /^s/i,
  43. /^o/i,
  44. /^n/i,
  45. /^d/i,
  46. ],
  47. any: [
  48. /^ja/i,
  49. /^f/i,
  50. /^mar/i,
  51. /^ab/i,
  52. /^mai/i,
  53. /^jun/i,
  54. /^jul/i,
  55. /^ag/i,
  56. /^s/i,
  57. /^o/i,
  58. /^n/i,
  59. /^d/i,
  60. ],
  61. };
  62. const matchDayPatterns = {
  63. narrow: /^[dstq]/i,
  64. short: /^(dom|seg|ter|qua|qui|sex|s[áa]b)/i,
  65. abbreviated: /^(dom|seg|ter|qua|qui|sex|s[áa]b)/i,
  66. wide: /^(domingo|segunda-?\s?feira|terça-?\s?feira|quarta-?\s?feira|quinta-?\s?feira|sexta-?\s?feira|s[áa]bado)/i,
  67. };
  68. const parseDayPatterns = {
  69. narrow: [/^d/i, /^s/i, /^t/i, /^q/i, /^q/i, /^s/i, /^s/i],
  70. any: [/^d/i, /^seg/i, /^t/i, /^qua/i, /^qui/i, /^sex/i, /^s[áa]/i],
  71. };
  72. const matchDayPeriodPatterns = {
  73. narrow:
  74. /^(a|p|meia-?\s?noite|meio-?\s?dia|(da) (manh[ãa]|tarde|noite|madrugada))/i,
  75. any: /^([ap]\.?\s?m\.?|meia-?\s?noite|meio-?\s?dia|(da) (manh[ãa]|tarde|noite|madrugada))/i,
  76. };
  77. const parseDayPeriodPatterns = {
  78. any: {
  79. am: /^a/i,
  80. pm: /^p/i,
  81. midnight: /^meia/i,
  82. noon: /^meio/i,
  83. morning: /manh[ãa]/i,
  84. afternoon: /tarde/i,
  85. evening: /noite/i,
  86. night: /madrugada/i,
  87. },
  88. };
  89. const match = (exports.match = {
  90. ordinalNumber: (0, _index2.buildMatchPatternFn)({
  91. matchPattern: matchOrdinalNumberPattern,
  92. parsePattern: parseOrdinalNumberPattern,
  93. valueCallback: (value) => parseInt(value, 10),
  94. }),
  95. era: (0, _index.buildMatchFn)({
  96. matchPatterns: matchEraPatterns,
  97. defaultMatchWidth: "wide",
  98. parsePatterns: parseEraPatterns,
  99. defaultParseWidth: "any",
  100. }),
  101. quarter: (0, _index.buildMatchFn)({
  102. matchPatterns: matchQuarterPatterns,
  103. defaultMatchWidth: "wide",
  104. parsePatterns: parseQuarterPatterns,
  105. defaultParseWidth: "any",
  106. valueCallback: (index) => index + 1,
  107. }),
  108. month: (0, _index.buildMatchFn)({
  109. matchPatterns: matchMonthPatterns,
  110. defaultMatchWidth: "wide",
  111. parsePatterns: parseMonthPatterns,
  112. defaultParseWidth: "any",
  113. }),
  114. day: (0, _index.buildMatchFn)({
  115. matchPatterns: matchDayPatterns,
  116. defaultMatchWidth: "wide",
  117. parsePatterns: parseDayPatterns,
  118. defaultParseWidth: "any",
  119. }),
  120. dayPeriod: (0, _index.buildMatchFn)({
  121. matchPatterns: matchDayPeriodPatterns,
  122. defaultMatchWidth: "any",
  123. parsePatterns: parseDayPeriodPatterns,
  124. defaultParseWidth: "any",
  125. }),
  126. });