match.cjs 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  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: /^(p\.m\.ē|m\.ē)/i,
  9. abbreviated: /^(p\. m\. ē\.|m\. ē\.)/i,
  10. wide: /^(pirms mūsu ēras|mūsu ērā)/i,
  11. };
  12. const parseEraPatterns = {
  13. any: [/^p/i, /^m/i],
  14. };
  15. const matchQuarterPatterns = {
  16. narrow: /^[1234]/i,
  17. abbreviated: /^[1234](\. cet\.)/i,
  18. wide: /^(pirma(is|jā)|otra(is|jā)|treša(is|jā)|ceturta(is|jā)) ceturksn(is|ī)/i,
  19. };
  20. const parseQuarterPatterns = {
  21. narrow: [/^1/i, /^2/i, /^3/i, /^4/i],
  22. abbreviated: [/^1/i, /^2/i, /^3/i, /^4/i],
  23. wide: [/^p/i, /^o/i, /^t/i, /^c/i],
  24. };
  25. const matchMonthPatterns = {
  26. narrow: /^[jfmasond]/i,
  27. abbreviated:
  28. /^(janv\.|febr\.|marts|apr\.|maijs|jūn\.|jūl\.|aug\.|sept\.|okt\.|nov\.|dec\.)/i,
  29. wide: /^(janvār(is|ī)|februār(is|ī)|mart[sā]|aprīl(is|ī)|maij[sā]|jūnij[sā]|jūlij[sā]|august[sā]|septembr(is|ī)|oktobr(is|ī)|novembr(is|ī)|decembr(is|ī))/i,
  30. };
  31. const parseMonthPatterns = {
  32. narrow: [
  33. /^j/i,
  34. /^f/i,
  35. /^m/i,
  36. /^a/i,
  37. /^m/i,
  38. /^j/i,
  39. /^j/i,
  40. /^a/i,
  41. /^s/i,
  42. /^o/i,
  43. /^n/i,
  44. /^d/i,
  45. ],
  46. any: [
  47. /^ja/i,
  48. /^f/i,
  49. /^mar/i,
  50. /^ap/i,
  51. /^mai/i,
  52. /^jūn/i,
  53. /^jūl/i,
  54. /^au/i,
  55. /^s/i,
  56. /^o/i,
  57. /^n/i,
  58. /^d/i,
  59. ],
  60. };
  61. const matchDayPatterns = {
  62. narrow: /^[spotc]/i,
  63. short: /^(sv|pi|o|t|c|pk|s)/i,
  64. abbreviated: /^(svētd\.|pirmd\.|otrd.\|trešd\.|ceturtd\.|piektd\.|sestd\.)/i,
  65. wide: /^(svētdien(a|ā)|pirmdien(a|ā)|otrdien(a|ā)|trešdien(a|ā)|ceturtdien(a|ā)|piektdien(a|ā)|sestdien(a|ā))/i,
  66. };
  67. const parseDayPatterns = {
  68. narrow: [/^s/i, /^p/i, /^o/i, /^t/i, /^c/i, /^p/i, /^s/i],
  69. any: [/^sv/i, /^pi/i, /^o/i, /^t/i, /^c/i, /^p/i, /^se/i],
  70. };
  71. const matchDayPeriodPatterns = {
  72. narrow: /^(am|pm|pusn\.|pusd\.|rīt(s|ā)|dien(a|ā)|vakar(s|ā)|nakt(s|ī))/,
  73. abbreviated: /^(am|pm|pusn\.|pusd\.|rīt(s|ā)|pēcpusd\.|vakar(s|ā)|nakt(s|ī))/,
  74. wide: /^(am|pm|pusnakt(s|ī)|pusdienlaik(s|ā)|rīt(s|ā)|pēcpusdien(a|ā)|vakar(s|ā)|nakt(s|ī))/i,
  75. };
  76. const parseDayPeriodPatterns = {
  77. any: {
  78. am: /^am/i,
  79. pm: /^pm/i,
  80. midnight: /^pusn/i,
  81. noon: /^pusd/i,
  82. morning: /^r/i,
  83. afternoon: /^(d|pēc)/i,
  84. evening: /^v/i,
  85. night: /^n/i,
  86. },
  87. };
  88. const match = (exports.match = {
  89. ordinalNumber: (0, _index2.buildMatchPatternFn)({
  90. matchPattern: matchOrdinalNumberPattern,
  91. parsePattern: parseOrdinalNumberPattern,
  92. valueCallback: (value) => parseInt(value, 10),
  93. }),
  94. era: (0, _index.buildMatchFn)({
  95. matchPatterns: matchEraPatterns,
  96. defaultMatchWidth: "wide",
  97. parsePatterns: parseEraPatterns,
  98. defaultParseWidth: "any",
  99. }),
  100. quarter: (0, _index.buildMatchFn)({
  101. matchPatterns: matchQuarterPatterns,
  102. defaultMatchWidth: "wide",
  103. parsePatterns: parseQuarterPatterns,
  104. defaultParseWidth: "wide",
  105. valueCallback: (index) => index + 1,
  106. }),
  107. month: (0, _index.buildMatchFn)({
  108. matchPatterns: matchMonthPatterns,
  109. defaultMatchWidth: "wide",
  110. parsePatterns: parseMonthPatterns,
  111. defaultParseWidth: "any",
  112. }),
  113. day: (0, _index.buildMatchFn)({
  114. matchPatterns: matchDayPatterns,
  115. defaultMatchWidth: "wide",
  116. parsePatterns: parseDayPatterns,
  117. defaultParseWidth: "any",
  118. }),
  119. dayPeriod: (0, _index.buildMatchFn)({
  120. matchPatterns: matchDayPeriodPatterns,
  121. defaultMatchWidth: "wide",
  122. parsePatterns: parseDayPeriodPatterns,
  123. defaultParseWidth: "any",
  124. }),
  125. });