|  |  | "use strict";
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | Object.defineProperty(exports, "__esModule", {
 | 
						
						
						
							|  |  |   value: true
 | 
						
						
						
							|  |  | });
 | 
						
						
						
							|  |  | exports.default = void 0;
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | var _index = _interopRequireDefault(require("../../../_lib/buildMatchFn/index.js"));
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | var _index2 = _interopRequireDefault(require("../../../_lib/buildMatchPatternFn/index.js"));
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
 | 
						
						
						
							|  |  | 
 | 
						
						
						
							|  |  | var matchOrdinalNumberPattern = /^(\d+)(-?[врмт][аи]|-?т?(ен|на)|-?(ев|ева))?/i;
 | 
						
						
						
							|  |  | var parseOrdinalNumberPattern = /\d+/i;
 | 
						
						
						
							|  |  | var matchEraPatterns = {
 | 
						
						
						
							|  |  |   narrow: /^((пр)?н\.?\s?е\.?)/i,
 | 
						
						
						
							|  |  |   abbreviated: /^((пр)?н\.?\s?е\.?)/i,
 | 
						
						
						
							|  |  |   wide: /^(преди новата ера|новата ера|нова ера)/i
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var parseEraPatterns = {
 | 
						
						
						
							|  |  |   any: [/^п/i, /^н/i]
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var matchQuarterPatterns = {
 | 
						
						
						
							|  |  |   narrow: /^[1234]/i,
 | 
						
						
						
							|  |  |   abbreviated: /^[1234](-?[врт]?o?)? тримес.?/i,
 | 
						
						
						
							|  |  |   wide: /^[1234](-?[врт]?о?)? тримесечие/i
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var parseQuarterPatterns = {
 | 
						
						
						
							|  |  |   any: [/1/i, /2/i, /3/i, /4/i]
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var matchDayPatterns = {
 | 
						
						
						
							|  |  |   narrow: /^[нпвсч]/i,
 | 
						
						
						
							|  |  |   short: /^(нд|пн|вт|ср|чт|пт|сб)/i,
 | 
						
						
						
							|  |  |   abbreviated: /^(нед|пон|вто|сря|чет|пет|съб)/i,
 | 
						
						
						
							|  |  |   wide: /^(неделя|понеделник|вторник|сряда|четвъртък|петък|събота)/i
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var parseDayPatterns = {
 | 
						
						
						
							|  |  |   narrow: [/^н/i, /^п/i, /^в/i, /^с/i, /^ч/i, /^п/i, /^с/i],
 | 
						
						
						
							|  |  |   any: [/^н[ед]/i, /^п[он]/i, /^вт/i, /^ср/i, /^ч[ет]/i, /^п[ет]/i, /^с[ъб]/i]
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var matchMonthPatterns = {
 | 
						
						
						
							|  |  |   abbreviated: /^(яну|фев|мар|апр|май|юни|юли|авг|сеп|окт|ное|дек)/i,
 | 
						
						
						
							|  |  |   wide: /^(януари|февруари|март|април|май|юни|юли|август|септември|октомври|ноември|декември)/i
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var parseMonthPatterns = {
 | 
						
						
						
							|  |  |   any: [/^я/i, /^ф/i, /^мар/i, /^ап/i, /^май/i, /^юн/i, /^юл/i, /^ав/i, /^се/i, /^окт/i, /^но/i, /^де/i]
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var matchDayPeriodPatterns = {
 | 
						
						
						
							|  |  |   any: /^(преди о|след о|в по|на о|през|веч|сут|следо)/i
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var parseDayPeriodPatterns = {
 | 
						
						
						
							|  |  |   any: {
 | 
						
						
						
							|  |  |     am: /^преди о/i,
 | 
						
						
						
							|  |  |     pm: /^след о/i,
 | 
						
						
						
							|  |  |     midnight: /^в пол/i,
 | 
						
						
						
							|  |  |     noon: /^на об/i,
 | 
						
						
						
							|  |  |     morning: /^сут/i,
 | 
						
						
						
							|  |  |     afternoon: /^следо/i,
 | 
						
						
						
							|  |  |     evening: /^веч/i,
 | 
						
						
						
							|  |  |     night: /^през н/i
 | 
						
						
						
							|  |  |   }
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var match = {
 | 
						
						
						
							|  |  |   ordinalNumber: (0, _index2.default)({
 | 
						
						
						
							|  |  |     matchPattern: matchOrdinalNumberPattern,
 | 
						
						
						
							|  |  |     parsePattern: parseOrdinalNumberPattern,
 | 
						
						
						
							|  |  |     valueCallback: function (value) {
 | 
						
						
						
							|  |  |       return parseInt(value, 10);
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  |   }),
 | 
						
						
						
							|  |  |   era: (0, _index.default)({
 | 
						
						
						
							|  |  |     matchPatterns: matchEraPatterns,
 | 
						
						
						
							|  |  |     defaultMatchWidth: 'wide',
 | 
						
						
						
							|  |  |     parsePatterns: parseEraPatterns,
 | 
						
						
						
							|  |  |     defaultParseWidth: 'any'
 | 
						
						
						
							|  |  |   }),
 | 
						
						
						
							|  |  |   quarter: (0, _index.default)({
 | 
						
						
						
							|  |  |     matchPatterns: matchQuarterPatterns,
 | 
						
						
						
							|  |  |     defaultMatchWidth: 'wide',
 | 
						
						
						
							|  |  |     parsePatterns: parseQuarterPatterns,
 | 
						
						
						
							|  |  |     defaultParseWidth: 'any',
 | 
						
						
						
							|  |  |     valueCallback: function (index) {
 | 
						
						
						
							|  |  |       return index + 1;
 | 
						
						
						
							|  |  |     }
 | 
						
						
						
							|  |  |   }),
 | 
						
						
						
							|  |  |   month: (0, _index.default)({
 | 
						
						
						
							|  |  |     matchPatterns: matchMonthPatterns,
 | 
						
						
						
							|  |  |     defaultMatchWidth: 'wide',
 | 
						
						
						
							|  |  |     parsePatterns: parseMonthPatterns,
 | 
						
						
						
							|  |  |     defaultParseWidth: 'any'
 | 
						
						
						
							|  |  |   }),
 | 
						
						
						
							|  |  |   day: (0, _index.default)({
 | 
						
						
						
							|  |  |     matchPatterns: matchDayPatterns,
 | 
						
						
						
							|  |  |     defaultMatchWidth: 'wide',
 | 
						
						
						
							|  |  |     parsePatterns: parseDayPatterns,
 | 
						
						
						
							|  |  |     defaultParseWidth: 'any'
 | 
						
						
						
							|  |  |   }),
 | 
						
						
						
							|  |  |   dayPeriod: (0, _index.default)({
 | 
						
						
						
							|  |  |     matchPatterns: matchDayPeriodPatterns,
 | 
						
						
						
							|  |  |     defaultMatchWidth: 'any',
 | 
						
						
						
							|  |  |     parsePatterns: parseDayPeriodPatterns,
 | 
						
						
						
							|  |  |     defaultParseWidth: 'any'
 | 
						
						
						
							|  |  |   })
 | 
						
						
						
							|  |  | };
 | 
						
						
						
							|  |  | var _default = match;
 | 
						
						
						
							|  |  | exports.default = _default;
 | 
						
						
						
							|  |  | module.exports = exports.default; |