diff options
Diffstat (limited to 'date-fns/src/locale/ht/_lib')
-rw-r--r-- | date-fns/src/locale/ht/_lib/formatDistance/index.js | 101 | ||||
-rw-r--r-- | date-fns/src/locale/ht/_lib/formatLong/index.js | 41 | ||||
-rw-r--r-- | date-fns/src/locale/ht/_lib/formatRelative/index.js | 12 | ||||
-rw-r--r-- | date-fns/src/locale/ht/_lib/formatters/index.js | 19 | ||||
-rw-r--r-- | date-fns/src/locale/ht/_lib/localize/index.js | 147 | ||||
-rw-r--r-- | date-fns/src/locale/ht/_lib/match/index.js | 137 |
6 files changed, 457 insertions, 0 deletions
diff --git a/date-fns/src/locale/ht/_lib/formatDistance/index.js b/date-fns/src/locale/ht/_lib/formatDistance/index.js new file mode 100644 index 0000000..47fd416 --- /dev/null +++ b/date-fns/src/locale/ht/_lib/formatDistance/index.js @@ -0,0 +1,101 @@ +var formatDistanceLocale = { + lessThanXSeconds: { + one: 'mwens pase yon segond', + other: 'mwens pase {{count}} segond', + }, + + xSeconds: { + one: '1 segond', + other: '{{count}} segond', + }, + + halfAMinute: '30 segond', + + lessThanXMinutes: { + one: 'mwens pase yon minit', + other: 'mwens pase {{count}} minit', + }, + + xMinutes: { + one: '1 minit', + other: '{{count}} minit', + }, + + aboutXHours: { + one: 'anviwon inè', + other: 'anviwon {{count}} è', + }, + + xHours: { + one: '1 lè', + other: '{{count}} lè', + }, + + xDays: { + one: '1 jou', + other: '{{count}} jou', + }, + + aboutXWeeks: { + one: 'anviwon 1 semèn', + other: 'anviwon {{count}} semèn', + }, + + xWeeks: { + one: '1 semèn', + other: '{{count}} semèn', + }, + + aboutXMonths: { + one: 'anviwon 1 mwa', + other: 'anviwon {{count}} mwa', + }, + + xMonths: { + one: '1 mwa', + other: '{{count}} mwa', + }, + + aboutXYears: { + one: 'anviwon 1 an', + other: 'anviwon {{count}} an', + }, + + xYears: { + one: '1 an', + other: '{{count}} an', + }, + + overXYears: { + one: 'plis pase 1 an', + other: 'plis pase {{count}} an', + }, + + almostXYears: { + one: 'prèske 1 an', + other: 'prèske {{count}} an', + }, +} + +export default function formatDistance(token, count, options) { + options = options || {} + + var result + if (typeof formatDistanceLocale[token] === 'string') { + result = formatDistanceLocale[token] + } else if (count === 1) { + result = formatDistanceLocale[token].one + } else { + result = formatDistanceLocale[token].other.replace('{{count}}', count) + } + + if (options.addSuffix) { + if (options.comparison > 0) { + return 'nan ' + result + } else { + return 'sa fè ' + result + } + } + + return result +} diff --git a/date-fns/src/locale/ht/_lib/formatLong/index.js b/date-fns/src/locale/ht/_lib/formatLong/index.js new file mode 100644 index 0000000..94972ec --- /dev/null +++ b/date-fns/src/locale/ht/_lib/formatLong/index.js @@ -0,0 +1,41 @@ +import buildFormatLongFn from '../../../_lib/buildFormatLongFn/index' + +var dateFormats = { + full: 'EEEE d MMMM y', + long: 'd MMMM y', + medium: 'd MMM y', + short: 'dd/MM/y', +} + +var timeFormats = { + full: 'HH:mm:ss zzzz', + long: 'HH:mm:ss z', + medium: 'HH:mm:ss', + short: 'HH:mm', +} + +var dateTimeFormats = { + full: "{{date}} 'nan lè' {{time}}", + long: "{{date}} 'nan lè' {{time}}", + medium: '{{date}}, {{time}}', + short: '{{date}}, {{time}}', +} + +var formatLong = { + date: buildFormatLongFn({ + formats: dateFormats, + defaultWidth: 'full', + }), + + time: buildFormatLongFn({ + formats: timeFormats, + defaultWidth: 'full', + }), + + dateTime: buildFormatLongFn({ + formats: dateTimeFormats, + defaultWidth: 'full', + }), +} + +export default formatLong diff --git a/date-fns/src/locale/ht/_lib/formatRelative/index.js b/date-fns/src/locale/ht/_lib/formatRelative/index.js new file mode 100644 index 0000000..5de726c --- /dev/null +++ b/date-fns/src/locale/ht/_lib/formatRelative/index.js @@ -0,0 +1,12 @@ +var formatRelativeLocale = { + lastWeek: "eeee 'pase nan lè' p", + yesterday: "'yè nan lè' p", + today: "'jodi a' p", + tomorrow: "'demen nan lè' p'", + nextWeek: "eeee 'pwochen nan lè' p", + other: 'P', +} + +export default function formatRelative(token, _date, _baseDate, _options) { + return formatRelativeLocale[token] +} diff --git a/date-fns/src/locale/ht/_lib/formatters/index.js b/date-fns/src/locale/ht/_lib/formatters/index.js new file mode 100644 index 0000000..dfb0661 --- /dev/null +++ b/date-fns/src/locale/ht/_lib/formatters/index.js @@ -0,0 +1,19 @@ +var formatters = {} + +// Special case for day of month ordinals in long date format context: +// 1er mars, 2 mars, 3 mars, … +// See https://github.com/date-fns/date-fns/issues/437 +var monthsTokens = ['MMM', 'MMMM'] +monthsTokens.forEach(function (monthToken) { + formatters['Do ' + monthToken] = function (date, options) { + var commonFormatters = options.formatters + var dayOfMonthToken = date.getUTCDate() === 1 ? 'Do' : 'D' + var dayOfMonthFormatter = commonFormatters[dayOfMonthToken] + var monthFormatter = commonFormatters[monthToken] + return ( + dayOfMonthFormatter(date, options) + ' ' + monthFormatter(date, options) + ) + } +}) + +export default formatters diff --git a/date-fns/src/locale/ht/_lib/localize/index.js b/date-fns/src/locale/ht/_lib/localize/index.js new file mode 100644 index 0000000..a809fc6 --- /dev/null +++ b/date-fns/src/locale/ht/_lib/localize/index.js @@ -0,0 +1,147 @@ +import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index' + +var eraValues = { + narrow: ['av. J.-K', 'ap. J.-K'], + abbreviated: ['av. J.-K', 'ap. J.-K'], + wide: ['anvan Jezi Kris', 'apre Jezi Kris'], +} + +var quarterValues = { + narrow: ['T1', 'T2', 'T3', 'T4'], + abbreviated: ['1ye trim.', '2yèm trim.', '3yèm trim.', '4yèm trim.'], + wide: ['1ye trimès', '2yèm trimès', '3yèm trimès', '4yèm trimès'], +} + +var monthValues = { + narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'O', 'S', 'O', 'N', 'D'], + abbreviated: [ + 'janv.', + 'fevr.', + 'mas', + 'avr.', + 'me', + 'jen', + 'jiyè', + 'out', + 'sept.', + 'okt.', + 'nov.', + 'des.', + ], + wide: [ + 'janvye', + 'fevrye', + 'mas', + 'avril', + 'me', + 'jen', + 'jiyè', + 'out', + 'septanm', + 'oktòb', + 'novanm', + 'desanm', + ], +} + +var dayValues = { + narrow: ['D', 'L', 'M', 'M', 'J', 'V', 'S'], + short: ['di', 'le', 'ma', 'mè', 'je', 'va', 'sa'], + abbreviated: ['dim.', 'len.', 'mad.', 'mèk.', 'jed.', 'van.', 'sam.'], + wide: ['dimanch', 'lendi', 'madi', 'mèkredi', 'jedi', 'vandredi', 'samdi'], +} + +var dayPeriodValues = { + narrow: { + am: 'AM', + pm: 'PM', + midnight: 'minwit', + noon: 'midi', + morning: 'mat.', + afternoon: 'ap.m.', + evening: 'swa', + night: 'mat.', + }, + abbreviated: { + am: 'AM', + pm: 'PM', + midnight: 'minwit', + noon: 'midi', + morning: 'maten', + afternoon: 'aprèmidi', + evening: 'swa', + night: 'maten', + }, + wide: { + am: 'AM', + pm: 'PM', + midnight: 'minwit', + noon: 'midi', + morning: 'nan maten', + afternoon: 'nan aprèmidi', + evening: 'nan aswè', + night: 'nan maten', + }, +} + +function ordinalNumber(dirtyNumber, dirtyOptions) { + var number = Number(dirtyNumber) + + var options = dirtyOptions || {} + var unit = String(options.unit) + var suffix + + if (number === 0) { + return number + } + + if (unit === 'year' || unit === 'hour' || unit === 'week') { + if (number === 1) { + suffix = 'ye' + } else { + suffix = 'yèm' + } + } else { + if (number === 1) { + suffix = 'ye' + } else { + suffix = 'yèm' + } + } + + return number + suffix +} + +var localize = { + ordinalNumber: ordinalNumber, + + era: buildLocalizeFn({ + values: eraValues, + defaultWidth: 'wide', + }), + + quarter: buildLocalizeFn({ + values: quarterValues, + defaultWidth: 'wide', + argumentCallback: function (quarter) { + return Number(quarter) - 1 + }, + }), + + month: buildLocalizeFn({ + values: monthValues, + defaultWidth: 'wide', + }), + + day: buildLocalizeFn({ + values: dayValues, + defaultWidth: 'wide', + }), + + dayPeriod: buildLocalizeFn({ + values: dayPeriodValues, + defaultWidth: 'wide', + }), +} + +export default localize diff --git a/date-fns/src/locale/ht/_lib/match/index.js b/date-fns/src/locale/ht/_lib/match/index.js new file mode 100644 index 0000000..2248991 --- /dev/null +++ b/date-fns/src/locale/ht/_lib/match/index.js @@ -0,0 +1,137 @@ +import buildMatchPatternFn from '../../../_lib/buildMatchPatternFn/index' +import buildMatchFn from '../../../_lib/buildMatchFn/index' + +var matchOrdinalNumberPattern = /^(\d+)(ye|yèm)?/i +var parseOrdinalNumberPattern = /\d+/i + +var matchEraPatterns = { + narrow: /^(av\.J\.K|ap\.J\.K|ap\.J\.-K)/i, + abbreviated: /^(av\.J\.-K|av\.J-K|apr\.J\.-K|apr\.J-K|ap\.J-K)/i, + wide: /^(avan Jezi Kris|apre Jezi Kris)/i, +} +var parseEraPatterns = { + any: [/^av/i, /^ap/i], +} + +var matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^t[1234]/i, + wide: /^[1234](ye|yèm)? trimès/i, +} +var parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i], +} + +var matchMonthPatterns = { + narrow: /^[jfmasond]/i, + abbreviated: /^(janv|fevr|mas|avr|me|jen|jiyè|out|sept|okt|nov|des)\.?/i, + wide: /^(janvye|fevrye|mas|avril|me|jen|jiyè|out|septanm|oktòb|novanm|desanm)/i, +} +var parseMonthPatterns = { + narrow: [ + /^j/i, + /^f/i, + /^m/i, + /^a/i, + /^m/i, + /^j/i, + /^j/i, + /^o/i, + /^s/i, + /^o/i, + /^n/i, + /^d/i, + ], + any: [ + /^ja/i, + /^f/i, + /^ma/i, + /^av/i, + /^me/i, + /^je/i, + /^ji/i, + /^ou/i, + /^s/i, + /^ok/i, + /^n/i, + /^d/i, + ], +} + +var matchDayPatterns = { + narrow: /^[lmjvsd]/i, + short: /^(di|le|ma|me|je|va|sa)/i, + abbreviated: /^(dim|len|mad|mèk|jed|van|sam)\.?/i, + wide: /^(dimanch|lendi|madi|mèkredi|jedi|vandredi|samdi)/i, +} +var parseDayPatterns = { + narrow: [/^d/i, /^l/i, /^m/i, /^m/i, /^j/i, /^v/i, /^s/i], + any: [/^di/i, /^le/i, /^ma/i, /^mè/i, /^je/i, /^va/i, /^sa/i], +} + +var matchDayPeriodPatterns = { + narrow: /^(a|p|minwit|midi|mat\.?|ap\.?m\.?|swa)/i, + any: /^([ap]\.?\s?m\.?|nan maten|nan aprèmidi|nan aswè)/i, +} +var parseDayPeriodPatterns = { + any: { + am: /^a/i, + pm: /^p/i, + midnight: /^min/i, + noon: /^mid/i, + morning: /mat/i, + afternoon: /ap/i, + evening: /sw/i, + night: /nwit/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 |