UNPKG

@freshworks/crayons

Version:
431 lines (405 loc) 10.5 kB
import { b as buildFormatLongFn, a as buildLocalizeFn, c as buildMatchPatternFn, d as buildMatchFn } from './index-dc611d24.js'; var formatDistanceLocale = { lessThanXSeconds: { one: '1秒未満', other: '{{count}}秒未満', oneWithSuffix: '約1秒', otherWithSuffix: '約{{count}}秒' }, xSeconds: { one: '1秒', other: '{{count}}秒' }, halfAMinute: '30秒', lessThanXMinutes: { one: '1分未満', other: '{{count}}分未満', oneWithSuffix: '約1分', otherWithSuffix: '約{{count}}分' }, xMinutes: { one: '1分', other: '{{count}}分' }, aboutXHours: { one: '約1時間', other: '約{{count}}時間' }, xHours: { one: '1時間', other: '{{count}}時間' }, xDays: { one: '1日', other: '{{count}}日' }, aboutXWeeks: { one: '約1週間', other: '約{{count}}週間' }, xWeeks: { one: '1週間', other: '{{count}}週間' }, aboutXMonths: { one: '約1か月', other: '約{{count}}か月' }, xMonths: { one: '1か月', other: '{{count}}か月' }, aboutXYears: { one: '約1年', other: '約{{count}}年' }, xYears: { one: '1年', other: '{{count}}年' }, overXYears: { one: '1年以上', other: '{{count}}年以上' }, almostXYears: { one: '1年近く', other: '{{count}}年近く' } }; var formatDistance = function formatDistance(token, count, options) { options = options || {}; var result; var tokenValue = formatDistanceLocale[token]; if (typeof tokenValue === 'string') { result = tokenValue; } else if (count === 1) { if (options.addSuffix && tokenValue.oneWithSuffix) { result = tokenValue.oneWithSuffix; } else { result = tokenValue.one; } } else { if (options.addSuffix && tokenValue.otherWithSuffix) { result = tokenValue.otherWithSuffix.replace('{{count}}', String(count)); } else { result = tokenValue.other.replace('{{count}}', String(count)); } } if (options.addSuffix) { if (options.comparison && options.comparison > 0) { return result + '後'; } else { return result + '前'; } } return result; }; var dateFormats = { full: 'y年M月d日EEEE', "long": 'y年M月d日', medium: 'y/MM/dd', "short": 'y/MM/dd' }; var timeFormats = { full: 'H時mm分ss秒 zzzz', "long": 'H:mm:ss z', medium: 'H:mm:ss', "short": 'H:mm' }; var dateTimeFormats = { full: '{{date}} {{time}}', "long": '{{date}} {{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' }) }; var formatRelativeLocale = { lastWeek: '先週のeeeeのp', yesterday: '昨日のp', today: '今日のp', tomorrow: '明日のp', nextWeek: '翌週のeeeeのp', other: 'P' }; var formatRelative = function formatRelative(token, _date, _baseDate, _options) { return formatRelativeLocale[token]; }; var eraValues = { narrow: ['BC', 'AC'], abbreviated: ['紀元前', '西暦'], wide: ['紀元前', '西暦'] }; var quarterValues = { narrow: ['1', '2', '3', '4'], abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'], wide: ['第1四半期', '第2四半期', '第3四半期', '第4四半期'] }; var monthValues = { narrow: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12'], abbreviated: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'], wide: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'] }; var dayValues = { narrow: ['日', '月', '火', '水', '木', '金', '土'], "short": ['日', '月', '火', '水', '木', '金', '土'], abbreviated: ['日', '月', '火', '水', '木', '金', '土'], wide: ['日曜日', '月曜日', '火曜日', '水曜日', '木曜日', '金曜日', '土曜日'] }; var dayPeriodValues = { narrow: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' }, abbreviated: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' }, wide: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' } }; var formattingDayPeriodValues = { narrow: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' }, abbreviated: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' }, wide: { am: '午前', pm: '午後', midnight: '深夜', noon: '正午', morning: '朝', afternoon: '午後', evening: '夜', night: '深夜' } }; var ordinalNumber = function ordinalNumber(dirtyNumber, dirtyOptions) { var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example, // if they are different for different grammatical genders, // use `options.unit`: // // const options = dirtyOptions || {} // const unit = String(options.unit) // // where `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear', // 'day', 'hour', 'minute', 'second' var options = dirtyOptions || {}; var unit = String(options.unit); switch (unit) { case 'year': return "".concat(number, "\u5E74"); case 'quarter': return "\u7B2C".concat(number, "\u56DB\u534A\u671F"); case 'month': return "".concat(number, "\u6708"); case 'week': return "\u7B2C".concat(number, "\u9031"); case 'date': return "".concat(number, "\u65E5"); case 'hour': return "".concat(number, "\u6642"); case 'minute': return "".concat(number, "\u5206"); case 'second': return "".concat(number, "\u79D2"); default: return "".concat(number); } }; var localize = { ordinalNumber: ordinalNumber, era: buildLocalizeFn({ values: eraValues, defaultWidth: 'wide' }), quarter: buildLocalizeFn({ values: quarterValues, defaultWidth: 'wide', argumentCallback: function argumentCallback(quarter) { return Number(quarter) - 1; } }), month: buildLocalizeFn({ values: monthValues, defaultWidth: 'wide' }), day: buildLocalizeFn({ values: dayValues, defaultWidth: 'wide' }), dayPeriod: buildLocalizeFn({ values: dayPeriodValues, defaultWidth: 'wide', formattingValues: formattingDayPeriodValues, defaultFormattingWidth: 'wide' }) }; var matchOrdinalNumberPattern = /^第?\d+(年|四半期|月|週|日|時|分|秒)?/i; var parseOrdinalNumberPattern = /\d+/i; var matchEraPatterns = { narrow: /^(B\.?C\.?|A\.?D\.?)/i, abbreviated: /^(紀元[前後]|西暦)/i, wide: /^(紀元[前後]|西暦)/i }; var parseEraPatterns = { narrow: [/^B/i, /^A/i], any: [/^(紀元前)/i, /^(西暦|紀元後)/i] }; var matchQuarterPatterns = { narrow: /^[1234]/i, abbreviated: /^Q[1234]/i, wide: /^第[1234一二三四1234]四半期/i }; var parseQuarterPatterns = { any: [/(1|一|1)/i, /(2|二|2)/i, /(3|三|3)/i, /(4|四|4)/i] }; var matchMonthPatterns = { narrow: /^([123456789]|1[012])/, abbreviated: /^([123456789]|1[012])月/i, wide: /^([123456789]|1[012])月/i }; var parseMonthPatterns = { any: [/^1\D/, /^2/, /^3/, /^4/, /^5/, /^6/, /^7/, /^8/, /^9/, /^10/, /^11/, /^12/] }; var matchDayPatterns = { narrow: /^[日月火水木金土]/, "short": /^[日月火水木金土]/, abbreviated: /^[日月火水木金土]/, wide: /^[日月火水木金土]曜日/ }; var parseDayPatterns = { any: [/^日/, /^月/, /^火/, /^水/, /^木/, /^金/, /^土/] }; var matchDayPeriodPatterns = { any: /^(AM|PM|午前|午後|正午|深夜|真夜中|夜|朝)/i }; var parseDayPeriodPatterns = { any: { am: /^(A|午前)/i, pm: /^(P|午後)/i, midnight: /^深夜|真夜中/i, noon: /^正午/i, morning: /^朝/i, afternoon: /^午後/i, evening: /^夜/i, night: /^深夜/i } }; var match = { ordinalNumber: buildMatchPatternFn({ matchPattern: matchOrdinalNumberPattern, parsePattern: parseOrdinalNumberPattern, valueCallback: function valueCallback(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 valueCallback(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' }) }; /** * @type {Locale} * @category Locales * @summary Japanese locale. * @language Japanese * @iso-639-2 jpn * @author Thomas Eilmsteiner [@DeMuu]{@link https://github.com/DeMuu} * @author Yamagishi Kazutoshi [@ykzts]{@link https://github.com/ykzts} * @author Luca Ban [@mesqueeb]{@link https://github.com/mesqueeb} * @author Terrence Lam [@skyuplam]{@link https://github.com/skyuplam} * @author Taiki IKeda [@so99ynoodles]{@link https://github.com/so99ynoodles} */ var locale = { code: 'ja', formatDistance: formatDistance, formatLong: formatLong, formatRelative: formatRelative, localize: localize, match: match, options: { weekStartsOn: 0 /* Sunday */ , firstWeekContainsDate: 1 } }; export default locale;