index.js 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.default = void 0;
  6. var _index = _interopRequireDefault(require("../../../_lib/buildMatchPatternFn/index.js"));
  7. var _index2 = _interopRequireDefault(require("../../../_lib/buildMatchFn/index.js"));
  8. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
  9. var matchOrdinalNumberPattern = /^\d+/i;
  10. var parseOrdinalNumberPattern = /\d+/i;
  11. var matchEraPatterns = {
  12. narrow: /^([bB]|[aA]|คศ)/i,
  13. abbreviated: /^([bB]\.?\s?[cC]\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?|ค\.?ศ\.?)/i,
  14. wide: /^(ก่อนคริสตกาล|คริสต์ศักราช|คริสตกาล)/i
  15. };
  16. var parseEraPatterns = {
  17. any: [/^[bB]/i, /^(^[aA]|ค\.?ศ\.?|คริสตกาล|คริสต์ศักราช|)/i]
  18. };
  19. var matchQuarterPatterns = {
  20. narrow: /^[1234]/i,
  21. abbreviated: /^q[1234]/i,
  22. wide: /^ไตรมาส(ที่)? ?[1234]/i
  23. };
  24. var parseQuarterPatterns = {
  25. any: [/(1|แรก|หนึ่ง)/i, /(2|สอง)/i, /(3|สาม)/i, /(4|สี่)/i]
  26. };
  27. var matchMonthPatterns = {
  28. narrow: /^(ม\.?ค\.?|ก\.?พ\.?|มี\.?ค\.?|เม\.?ย\.?|พ\.?ค\.?|มิ\.?ย\.?|ก\.?ค\.?|ส\.?ค\.?|ก\.?ย\.?|ต\.?ค\.?|พ\.?ย\.?|ธ\.?ค\.?)/i,
  29. abbreviated: /^(ม\.?ค\.?|ก\.?พ\.?|มี\.?ค\.?|เม\.?ย\.?|พ\.?ค\.?|มิ\.?ย\.?|ก\.?ค\.?|ส\.?ค\.?|ก\.?ย\.?|ต\.?ค\.?|พ\.?ย\.?|ธ\.?ค\.?')/i,
  30. wide: /^(มกราคม|กุมภาพันธ์|มีนาคม|เมษายน|พฤษภาคม|มิถุนายน|กรกฎาคม|สิงหาคม|กันยายน|ตุลาคม|พฤศจิกายน|ธันวาคม)/i
  31. };
  32. var parseMonthPatterns = {
  33. wide: [/^มก/i, /^กุม/i, /^มี/i, /^เม/i, /^พฤษ/i, /^มิ/i, /^กรก/i, /^ส/i, /^กัน/i, /^ต/i, /^พฤศ/i, /^ธ/i],
  34. any: [/^ม\.?ค\.?/i, /^ก\.?พ\.?/i, /^มี\.?ค\.?/i, /^เม\.?ย\.?/i, /^พ\.?ค\.?/i, /^มิ\.?ย\.?/i, /^ก\.?ค\.?/i, /^ส\.?ค\.?/i, /^ก\.?ย\.?/i, /^ต\.?ค\.?/i, /^พ\.?ย\.?/i, /^ธ\.?ค\.?/i]
  35. };
  36. var matchDayPatterns = {
  37. narrow: /^(อา\.?|จ\.?|อ\.?|พฤ\.?|พ\.?|ศ\.?|ส\.?)/i,
  38. short: /^(อา\.?|จ\.?|อ\.?|พฤ\.?|พ\.?|ศ\.?|ส\.?)/i,
  39. abbreviated: /^(อา\.?|จ\.?|อ\.?|พฤ\.?|พ\.?|ศ\.?|ส\.?)/i,
  40. wide: /^(อาทิตย์|จันทร์|อังคาร|พุธ|พฤหัสบดี|ศุกร์|เสาร์)/i
  41. };
  42. var parseDayPatterns = {
  43. wide: [/^อา/i, /^จั/i, /^อั/i, /^พุธ/i, /^พฤ/i, /^ศ/i, /^เส/i],
  44. any: [/^อา/i, /^จ/i, /^อ/i, /^พ(?!ฤ)/i, /^พฤ/i, /^ศ/i, /^ส/i]
  45. };
  46. var matchDayPeriodPatterns = {
  47. any: /^(ก่อนเที่ยง|หลังเที่ยง|เที่ยงคืน|เที่ยง|(ตอน.*?)?.*(เที่ยง|เช้า|บ่าย|เย็น|กลางคืน))/i
  48. };
  49. var parseDayPeriodPatterns = {
  50. any: {
  51. am: /^ก่อนเที่ยง/i,
  52. pm: /^หลังเที่ยง/i,
  53. midnight: /^เที่ยงคืน/i,
  54. noon: /^เที่ยง/i,
  55. morning: /เช้า/i,
  56. afternoon: /บ่าย/i,
  57. evening: /เย็น/i,
  58. night: /กลางคืน/i
  59. }
  60. };
  61. var match = {
  62. ordinalNumber: (0, _index.default)({
  63. matchPattern: matchOrdinalNumberPattern,
  64. parsePattern: parseOrdinalNumberPattern,
  65. valueCallback: function (value) {
  66. return parseInt(value, 10);
  67. }
  68. }),
  69. era: (0, _index2.default)({
  70. matchPatterns: matchEraPatterns,
  71. defaultMatchWidth: 'wide',
  72. parsePatterns: parseEraPatterns,
  73. defaultParseWidth: 'any'
  74. }),
  75. quarter: (0, _index2.default)({
  76. matchPatterns: matchQuarterPatterns,
  77. defaultMatchWidth: 'wide',
  78. parsePatterns: parseQuarterPatterns,
  79. defaultParseWidth: 'any',
  80. valueCallback: function (index) {
  81. return index + 1;
  82. }
  83. }),
  84. month: (0, _index2.default)({
  85. matchPatterns: matchMonthPatterns,
  86. defaultMatchWidth: 'wide',
  87. parsePatterns: parseMonthPatterns,
  88. defaultParseWidth: 'any'
  89. }),
  90. day: (0, _index2.default)({
  91. matchPatterns: matchDayPatterns,
  92. defaultMatchWidth: 'wide',
  93. parsePatterns: parseDayPatterns,
  94. defaultParseWidth: 'any'
  95. }),
  96. dayPeriod: (0, _index2.default)({
  97. matchPatterns: matchDayPeriodPatterns,
  98. defaultMatchWidth: 'any',
  99. parsePatterns: parseDayPeriodPatterns,
  100. defaultParseWidth: 'any'
  101. })
  102. };
  103. var _default = match;
  104. exports.default = _default;
  105. module.exports = exports.default;