diff options
Diffstat (limited to 'node_modules/date-fns/locale/ru/_lib/formatDistance/index.js')
| -rw-r--r-- | node_modules/date-fns/locale/ru/_lib/formatDistance/index.js | 235 |
1 files changed, 235 insertions, 0 deletions
diff --git a/node_modules/date-fns/locale/ru/_lib/formatDistance/index.js b/node_modules/date-fns/locale/ru/_lib/formatDistance/index.js new file mode 100644 index 0000000..d0deb11 --- /dev/null +++ b/node_modules/date-fns/locale/ru/_lib/formatDistance/index.js @@ -0,0 +1,235 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = void 0; +function declension(scheme, count) { + // scheme for count=1 exists + if (scheme.one !== undefined && count === 1) { + return scheme.one; + } + var rem10 = count % 10; + var rem100 = count % 100; + + // 1, 21, 31, ... + if (rem10 === 1 && rem100 !== 11) { + return scheme.singularNominative.replace('{{count}}', String(count)); + + // 2, 3, 4, 22, 23, 24, 32 ... + } else if (rem10 >= 2 && rem10 <= 4 && (rem100 < 10 || rem100 > 20)) { + return scheme.singularGenitive.replace('{{count}}', String(count)); + + // 5, 6, 7, 8, 9, 10, 11, ... + } else { + return scheme.pluralGenitive.replace('{{count}}', String(count)); + } +} +function buildLocalizeTokenFn(scheme) { + return function (count, options) { + if (options !== null && options !== void 0 && options.addSuffix) { + if (options.comparison && options.comparison > 0) { + if (scheme.future) { + return declension(scheme.future, count); + } else { + return 'через ' + declension(scheme.regular, count); + } + } else { + if (scheme.past) { + return declension(scheme.past, count); + } else { + return declension(scheme.regular, count) + ' назад'; + } + } + } else { + return declension(scheme.regular, count); + } + }; +} +var formatDistanceLocale = { + lessThanXSeconds: buildLocalizeTokenFn({ + regular: { + one: 'меньше секунды', + singularNominative: 'меньше {{count}} секунды', + singularGenitive: 'меньше {{count}} секунд', + pluralGenitive: 'меньше {{count}} секунд' + }, + future: { + one: 'меньше, чем через секунду', + singularNominative: 'меньше, чем через {{count}} секунду', + singularGenitive: 'меньше, чем через {{count}} секунды', + pluralGenitive: 'меньше, чем через {{count}} секунд' + } + }), + xSeconds: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} секунда', + singularGenitive: '{{count}} секунды', + pluralGenitive: '{{count}} секунд' + }, + past: { + singularNominative: '{{count}} секунду назад', + singularGenitive: '{{count}} секунды назад', + pluralGenitive: '{{count}} секунд назад' + }, + future: { + singularNominative: 'через {{count}} секунду', + singularGenitive: 'через {{count}} секунды', + pluralGenitive: 'через {{count}} секунд' + } + }), + halfAMinute: function halfAMinute(_count, options) { + if (options !== null && options !== void 0 && options.addSuffix) { + if (options.comparison && options.comparison > 0) { + return 'через полминуты'; + } else { + return 'полминуты назад'; + } + } + return 'полминуты'; + }, + lessThanXMinutes: buildLocalizeTokenFn({ + regular: { + one: 'меньше минуты', + singularNominative: 'меньше {{count}} минуты', + singularGenitive: 'меньше {{count}} минут', + pluralGenitive: 'меньше {{count}} минут' + }, + future: { + one: 'меньше, чем через минуту', + singularNominative: 'меньше, чем через {{count}} минуту', + singularGenitive: 'меньше, чем через {{count}} минуты', + pluralGenitive: 'меньше, чем через {{count}} минут' + } + }), + xMinutes: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} минута', + singularGenitive: '{{count}} минуты', + pluralGenitive: '{{count}} минут' + }, + past: { + singularNominative: '{{count}} минуту назад', + singularGenitive: '{{count}} минуты назад', + pluralGenitive: '{{count}} минут назад' + }, + future: { + singularNominative: 'через {{count}} минуту', + singularGenitive: 'через {{count}} минуты', + pluralGenitive: 'через {{count}} минут' + } + }), + aboutXHours: buildLocalizeTokenFn({ + regular: { + singularNominative: 'около {{count}} часа', + singularGenitive: 'около {{count}} часов', + pluralGenitive: 'около {{count}} часов' + }, + future: { + singularNominative: 'приблизительно через {{count}} час', + singularGenitive: 'приблизительно через {{count}} часа', + pluralGenitive: 'приблизительно через {{count}} часов' + } + }), + xHours: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} час', + singularGenitive: '{{count}} часа', + pluralGenitive: '{{count}} часов' + } + }), + xDays: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} день', + singularGenitive: '{{count}} дня', + pluralGenitive: '{{count}} дней' + } + }), + aboutXWeeks: buildLocalizeTokenFn({ + regular: { + singularNominative: 'около {{count}} недели', + singularGenitive: 'около {{count}} недель', + pluralGenitive: 'около {{count}} недель' + }, + future: { + singularNominative: 'приблизительно через {{count}} неделю', + singularGenitive: 'приблизительно через {{count}} недели', + pluralGenitive: 'приблизительно через {{count}} недель' + } + }), + xWeeks: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} неделя', + singularGenitive: '{{count}} недели', + pluralGenitive: '{{count}} недель' + } + }), + aboutXMonths: buildLocalizeTokenFn({ + regular: { + singularNominative: 'около {{count}} месяца', + singularGenitive: 'около {{count}} месяцев', + pluralGenitive: 'около {{count}} месяцев' + }, + future: { + singularNominative: 'приблизительно через {{count}} месяц', + singularGenitive: 'приблизительно через {{count}} месяца', + pluralGenitive: 'приблизительно через {{count}} месяцев' + } + }), + xMonths: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} месяц', + singularGenitive: '{{count}} месяца', + pluralGenitive: '{{count}} месяцев' + } + }), + aboutXYears: buildLocalizeTokenFn({ + regular: { + singularNominative: 'около {{count}} года', + singularGenitive: 'около {{count}} лет', + pluralGenitive: 'около {{count}} лет' + }, + future: { + singularNominative: 'приблизительно через {{count}} год', + singularGenitive: 'приблизительно через {{count}} года', + pluralGenitive: 'приблизительно через {{count}} лет' + } + }), + xYears: buildLocalizeTokenFn({ + regular: { + singularNominative: '{{count}} год', + singularGenitive: '{{count}} года', + pluralGenitive: '{{count}} лет' + } + }), + overXYears: buildLocalizeTokenFn({ + regular: { + singularNominative: 'больше {{count}} года', + singularGenitive: 'больше {{count}} лет', + pluralGenitive: 'больше {{count}} лет' + }, + future: { + singularNominative: 'больше, чем через {{count}} год', + singularGenitive: 'больше, чем через {{count}} года', + pluralGenitive: 'больше, чем через {{count}} лет' + } + }), + almostXYears: buildLocalizeTokenFn({ + regular: { + singularNominative: 'почти {{count}} год', + singularGenitive: 'почти {{count}} года', + pluralGenitive: 'почти {{count}} лет' + }, + future: { + singularNominative: 'почти через {{count}} год', + singularGenitive: 'почти через {{count}} года', + pluralGenitive: 'почти через {{count}} лет' + } + }) +}; +var formatDistance = function formatDistance(token, count, options) { + return formatDistanceLocale[token](count, options); +}; +var _default = formatDistance; +exports.default = _default; +module.exports = exports.default;
\ No newline at end of file |
