diff options
Diffstat (limited to 'date-fns/src/locale/nb/_lib/match/index.js')
-rw-r--r-- | date-fns/src/locale/nb/_lib/match/index.js | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/date-fns/src/locale/nb/_lib/match/index.js b/date-fns/src/locale/nb/_lib/match/index.js new file mode 100644 index 0000000..d0c00da --- /dev/null +++ b/date-fns/src/locale/nb/_lib/match/index.js @@ -0,0 +1,136 @@ +import buildMatchPatternFn from '../../../_lib/buildMatchPatternFn/index' +import buildMatchFn from '../../../_lib/buildMatchFn/index' + +var matchOrdinalNumberPattern = /^(\d+)\.?/i +var parseOrdinalNumberPattern = /\d+/i + +var matchEraPatterns = { + narrow: /^(f\.? ?Kr\.?|fvt\.?|e\.? ?Kr\.?|evt\.?)/i, + abbreviated: /^(f\.? ?Kr\.?|fvt\.?|e\.? ?Kr\.?|evt\.?)/i, + wide: /^(før Kristus|før vår tid|etter Kristus|vår tid)/i +} +var parseEraPatterns = { + any: [/^f/i, /^e/i] +} + +var matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^q[1234]/i, + wide: /^[1234](\.)? kvartal/i +} +var parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i] +} + +var matchMonthPatterns = { + narrow: /^[jfmasond]/i, + abbreviated: /^(jan|feb|mars?|apr|mai|juni?|juli?|aug|sep|okt|nov|des)\.?/i, + wide: /^(januar|februar|mars|april|mai|juni|juli|august|september|oktober|november|desember)/i +} +var parseMonthPatterns = { + narrow: [ + /^j/i, + /^f/i, + /^m/i, + /^a/i, + /^m/i, + /^j/i, + /^j/i, + /^a/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i + ], + any: [ + /^ja/i, + /^f/i, + /^mar/i, + /^ap/i, + /^mai/i, + /^jun/i, + /^jul/i, + /^aug/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i + ] +} + +var matchDayPatterns = { + narrow: /^[smtofl]/i, + short: /^(sø|ma|ti|on|to|fr|lø)/i, + abbreviated: /^(søn|man|tir|ons|tor|fre|lør)/i, + wide: /^(søndag|mandag|tirsdag|onsdag|torsdag|fredag|lørdag)/i +} +var parseDayPatterns = { + any: [/^s/i, /^m/i, /^ti/i, /^o/i, /^to/i, /^f/i, /^l/i] +} + +var matchDayPeriodPatterns = { + narrow: /^(midnatt|middag|(på) (morgenen|ettermiddagen|kvelden|natten)|[ap])/i, + any: /^([ap]\.?\s?m\.?|midnatt|middag|(på) (morgenen|ettermiddagen|kvelden|natten))/i +} +var parseDayPeriodPatterns = { + any: { + am: /^a(\.?\s?m\.?)?$/i, + pm: /^p(\.?\s?m\.?)?$/i, + midnight: /^midn/i, + noon: /^midd/i, + morning: /morgen/i, + afternoon: /ettermiddag/i, + evening: /kveld/i, + night: /natt/i + } +} + +var match = { + ordinalNumber: buildMatchPatternFn({ + matchPattern: matchOrdinalNumberPattern, + parsePattern: parseOrdinalNumberPattern, + valueCallback: function(value) { + return parseInt(value, 10) + } + }), + + era: buildMatchFn({ + matchPatterns: matchEraPatterns, + defaultMatchWidth: 'wide', + parsePatterns: parseEraPatterns, + defaultParseWidth: 'any' + }), + + quarter: buildMatchFn({ + matchPatterns: matchQuarterPatterns, + defaultMatchWidth: 'wide', + parsePatterns: parseQuarterPatterns, + defaultParseWidth: 'any', + valueCallback: function(index) { + return index + 1 + } + }), + + month: buildMatchFn({ + matchPatterns: matchMonthPatterns, + defaultMatchWidth: 'wide', + parsePatterns: parseMonthPatterns, + defaultParseWidth: 'any' + }), + + day: buildMatchFn({ + matchPatterns: matchDayPatterns, + defaultMatchWidth: 'wide', + parsePatterns: parseDayPatterns, + defaultParseWidth: 'any' + }), + + dayPeriod: buildMatchFn({ + matchPatterns: matchDayPeriodPatterns, + defaultMatchWidth: 'any', + parsePatterns: parseDayPeriodPatterns, + defaultParseWidth: 'any' + }) +} + +export default match |