diff options
Diffstat (limited to 'date-fns/src/locale/fr/_lib/match/index.js')
-rw-r--r-- | date-fns/src/locale/fr/_lib/match/index.js | 137 |
1 files changed, 137 insertions, 0 deletions
diff --git a/date-fns/src/locale/fr/_lib/match/index.js b/date-fns/src/locale/fr/_lib/match/index.js new file mode 100644 index 0000000..e5c36f8 --- /dev/null +++ b/date-fns/src/locale/fr/_lib/match/index.js @@ -0,0 +1,137 @@ +import buildMatchPatternFn from '../../../_lib/buildMatchPatternFn/index' +import buildMatchFn from '../../../_lib/buildMatchFn/index' + +var matchOrdinalNumberPattern = /^(\d+)(ième|ère|ème|er|e)?/i +var parseOrdinalNumberPattern = /\d+/i + +var matchEraPatterns = { + narrow: /^(av\.J\.C|ap\.J\.C|ap\.J\.-C)/i, + abbreviated: /^(av\.J\.-C|av\.J-C|apr\.J\.-C|apr\.J-C|ap\.J-C)/i, + wide: /^(avant Jésus-Christ|après Jésus-Christ)/i +} +var parseEraPatterns = { + any: [/^av/i, /^ap/i] +} + +var matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^t[1234]/i, + wide: /^[1234](er|ème|e)? trimestre/i +} +var parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i] +} + +var matchMonthPatterns = { + narrow: /^[jfmasond]/i, + abbreviated: /^(janv|févr|mars|avr|mai|juin|juill|juil|août|sept|oct|nov|déc)\.?/i, + wide: /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/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, + /^av/i, + /^ma/i, + /^juin/i, + /^juil/i, + /^ao/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i + ] +} + +var matchDayPatterns = { + narrow: /^[lmjvsd]/i, + short: /^(di|lu|ma|me|je|ve|sa)/i, + abbreviated: /^(dim|lun|mar|mer|jeu|ven|sam)\.?/i, + wide: /^(dimanche|lundi|mardi|mercredi|jeudi|vendredi|samedi)/i +} +var parseDayPatterns = { + narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i], + any: [/^di/i, /^lu/i, /^ma/i, /^me/i, /^je/i, /^ve/i, /^sa/i] +} + +var matchDayPeriodPatterns = { + narrow: /^(a|p|minuit|midi|mat\.?|ap\.?m\.?|soir|nuit)/i, + any: /^([ap]\.?\s?m\.?|du matin|de l'après[-\s]midi|du soir|de la nuit)/i +} +var parseDayPeriodPatterns = { + any: { + am: /^a/i, + pm: /^p/i, + midnight: /^min/i, + noon: /^mid/i, + morning: /mat/i, + afternoon: /ap/i, + evening: /soir/i, + night: /nuit/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 |