"use strict"; exports.match = void 0; var _index = require("../../_lib/buildMatchFn.js"); var _index2 = require("../../_lib/buildMatchPatternFn.js"); const matchOrdinalNumberPattern = /^(第\s*)?\d+(日|時|分|秒)?/i; const parseOrdinalNumberPattern = /\d+/i; const matchEraPatterns = { narrow: /^(前)/i, abbreviated: /^(前)/i, wide: /^(公元前|公元)/i, }; const parseEraPatterns = { any: [/^(前)/i, /^(公元)/i], }; const matchQuarterPatterns = { narrow: /^[1234]/i, abbreviated: /^第[一二三四]刻/i, wide: /^第[一二三四]刻鐘/i, }; const parseQuarterPatterns = { any: [/(1|一)/i, /(2|二)/i, /(3|三)/i, /(4|四)/i], }; const matchMonthPatterns = { narrow: /^(一|二|三|四|五|六|七|八|九|十[二一])/i, abbreviated: /^(一|二|三|四|五|六|七|八|九|十[二一]|\d|1[12])月/i, wide: /^(一|二|三|四|五|六|七|八|九|十[二一])月/i, }; const parseMonthPatterns = { narrow: [ /^一/i, /^二/i, /^三/i, /^四/i, /^五/i, /^六/i, /^七/i, /^八/i, /^九/i, /^十(?!(一|二))/i, /^十一/i, /^十二/i, ], any: [ /^一|1/i, /^二|2/i, /^三|3/i, /^四|4/i, /^五|5/i, /^六|6/i, /^七|7/i, /^八|8/i, /^九|9/i, /^十(?!(一|二))|10/i, /^十一|11/i, /^十二|12/i, ], }; const matchDayPatterns = { narrow: /^[一二三四五六日]/i, short: /^[一二三四五六日]/i, abbreviated: /^週[一二三四五六日]/i, wide: /^星期[一二三四五六日]/i, }; const parseDayPatterns = { any: [/日/i, /一/i, /二/i, /三/i, /四/i, /五/i, /六/i], }; const matchDayPeriodPatterns = { any: /^(上午?|下午?|午夜|[中正]午|早上?|下午|晚上?|凌晨)/i, }; const parseDayPeriodPatterns = { any: { am: /^上午?/i, pm: /^下午?/i, midnight: /^午夜/i, noon: /^[中正]午/i, morning: /^早上/i, afternoon: /^下午/i, evening: /^晚上?/i, night: /^凌晨/i, }, }; const match = (exports.match = { ordinalNumber: (0, _index2.buildMatchPatternFn)({ matchPattern: matchOrdinalNumberPattern, parsePattern: parseOrdinalNumberPattern, valueCallback: (value) => parseInt(value, 10), }), era: (0, _index.buildMatchFn)({ matchPatterns: matchEraPatterns, defaultMatchWidth: "wide", parsePatterns: parseEraPatterns, defaultParseWidth: "any", }), quarter: (0, _index.buildMatchFn)({ matchPatterns: matchQuarterPatterns, defaultMatchWidth: "wide", parsePatterns: parseQuarterPatterns, defaultParseWidth: "any", valueCallback: (index) => index + 1, }), month: (0, _index.buildMatchFn)({ matchPatterns: matchMonthPatterns, defaultMatchWidth: "wide", parsePatterns: parseMonthPatterns, defaultParseWidth: "any", }), day: (0, _index.buildMatchFn)({ matchPatterns: matchDayPatterns, defaultMatchWidth: "wide", parsePatterns: parseDayPatterns, defaultParseWidth: "any", }), dayPeriod: (0, _index.buildMatchFn)({ matchPatterns: matchDayPeriodPatterns, defaultMatchWidth: "any", parsePatterns: parseDayPeriodPatterns, defaultParseWidth: "any", }), });