match.cjs 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144
  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: /^(q|w)/i,
  9. abbreviated: /^(q\.?\s?k\.?|b\.?\s?c\.?\s?e\.?|w\.?\s?k\.?)/i,
  10. wide: /^(qabel kristu|before common era|wara kristu|common era)/i,
  11. };
  12. const parseEraPatterns = {
  13. any: [/^(q|b)/i, /^(w|c)/i],
  14. };
  15. const matchQuarterPatterns = {
  16. narrow: /^[1234]/i,
  17. abbreviated: /^k[1234]/i,
  18. wide: /^[1234](\.)? kwart/i,
  19. };
  20. const parseQuarterPatterns = {
  21. any: [/1/i, /2/i, /3/i, /4/i],
  22. };
  23. const matchMonthPatterns = {
  24. narrow: /^[jfmaglsond]/i,
  25. abbreviated: /^(jan|fra|mar|apr|mej|ġun|lul|aww|set|ott|nov|diċ)/i,
  26. wide: /^(jannar|frar|marzu|april|mejju|ġunju|lulju|awwissu|settembru|ottubru|novembru|diċembru)/i,
  27. };
  28. const parseMonthPatterns = {
  29. narrow: [
  30. /^j/i,
  31. /^f/i,
  32. /^m/i,
  33. /^a/i,
  34. /^m/i,
  35. /^ġ/i,
  36. /^l/i,
  37. /^a/i,
  38. /^s/i,
  39. /^o/i,
  40. /^n/i,
  41. /^d/i,
  42. ],
  43. any: [
  44. /^ja/i,
  45. /^f/i,
  46. /^mar/i,
  47. /^ap/i,
  48. /^mej/i,
  49. /^ġ/i,
  50. /^l/i,
  51. /^aw/i,
  52. /^s/i,
  53. /^o/i,
  54. /^n/i,
  55. /^d/i,
  56. ],
  57. };
  58. const matchDayPatterns = {
  59. narrow: /^[ħteġs]/i,
  60. short: /^(ħa|tn|tl|er|ħa|ġi|si)/i,
  61. abbreviated: /^(ħad|tne|tli|erb|ħam|ġim|sib)/i,
  62. wide: /^(il-ħadd|it-tnejn|it-tlieta|l-erbgħa|il-ħamis|il-ġimgħa|is-sibt)/i,
  63. };
  64. const parseDayPatterns = {
  65. narrow: [/^ħ/i, /^t/i, /^t/i, /^e/i, /^ħ/i, /^ġ/i, /^s/i],
  66. any: [
  67. /^(il-)?ħad/i,
  68. /^(it-)?tn/i,
  69. /^(it-)?tl/i,
  70. /^(l-)?er/i,
  71. /^(il-)?ham/i,
  72. /^(il-)?ġi/i,
  73. /^(is-)?si/i,
  74. ],
  75. };
  76. const matchDayPeriodPatterns = {
  77. narrow:
  78. /^(a|p|f'nofsillejl|f'nofsinhar|(ta') (għodwa|wara nofsinhar|filgħaxija|lejl))/i,
  79. any: /^([ap]\.?\s?m\.?|f'nofsillejl|f'nofsinhar|(ta') (għodwa|wara nofsinhar|filgħaxija|lejl))/i,
  80. };
  81. const parseDayPeriodPatterns = {
  82. any: {
  83. am: /^a/i,
  84. pm: /^p/i,
  85. midnight: /^f'nofsillejl/i,
  86. noon: /^f'nofsinhar/i,
  87. morning: /għodwa/i,
  88. afternoon: /wara(\s.*)nofsinhar/i,
  89. evening: /filgħaxija/i,
  90. night: /lejl/i,
  91. },
  92. };
  93. const match = (exports.match = {
  94. ordinalNumber: (0, _index2.buildMatchPatternFn)({
  95. matchPattern: matchOrdinalNumberPattern,
  96. parsePattern: parseOrdinalNumberPattern,
  97. valueCallback: (value) => parseInt(value, 10),
  98. }),
  99. era: (0, _index.buildMatchFn)({
  100. matchPatterns: matchEraPatterns,
  101. defaultMatchWidth: "wide",
  102. parsePatterns: parseEraPatterns,
  103. defaultParseWidth: "any",
  104. }),
  105. quarter: (0, _index.buildMatchFn)({
  106. matchPatterns: matchQuarterPatterns,
  107. defaultMatchWidth: "wide",
  108. parsePatterns: parseQuarterPatterns,
  109. defaultParseWidth: "any",
  110. valueCallback: (index) => index + 1,
  111. }),
  112. month: (0, _index.buildMatchFn)({
  113. matchPatterns: matchMonthPatterns,
  114. defaultMatchWidth: "wide",
  115. parsePatterns: parseMonthPatterns,
  116. defaultParseWidth: "any",
  117. }),
  118. day: (0, _index.buildMatchFn)({
  119. matchPatterns: matchDayPatterns,
  120. defaultMatchWidth: "wide",
  121. parsePatterns: parseDayPatterns,
  122. defaultParseWidth: "any",
  123. }),
  124. dayPeriod: (0, _index.buildMatchFn)({
  125. matchPatterns: matchDayPeriodPatterns,
  126. defaultMatchWidth: "any",
  127. parsePatterns: parseDayPeriodPatterns,
  128. defaultParseWidth: "any",
  129. }),
  130. });