From 28f6bbeedccf5621b197ec682977deee447795f3 Mon Sep 17 00:00:00 2001 From: Nick Shvelidze Date: Tue, 23 Jul 2019 16:26:19 +0400 Subject: [PATCH] Update Georgian locale (ka) for v2 (#1261) --- outdatedLocales.json | 1 - src/locale/index.js | 1 + src/locale/ka/_lib/formatLong/index.js | 45 ++- src/locale/ka/_lib/formatRelative/index.js | 10 +- src/locale/ka/_lib/localize/index.js | 192 +++++++++---- src/locale/ka/_lib/match/index.js | 141 +++++++--- src/locale/ka/index.js | 37 ++- src/locale/ka/snapshot.md | 304 +++++++++++++++++++++ 8 files changed, 604 insertions(+), 127 deletions(-) create mode 100644 src/locale/ka/snapshot.md diff --git a/outdatedLocales.json b/outdatedLocales.json index 80979090c1..262155c0b5 100644 --- a/outdatedLocales.json +++ b/outdatedLocales.json @@ -5,7 +5,6 @@ "fil", "fr-CH", "hr", - "ka", "mk", "ms", "nl-BE", diff --git a/src/locale/index.js b/src/locale/index.js index 191c082958..93ffc98b1b 100644 --- a/src/locale/index.js +++ b/src/locale/index.js @@ -26,6 +26,7 @@ export { default as id } from './id/index.js' export { default as is } from './is/index.js' export { default as it } from './it/index.js' export { default as ja } from './ja/index.js' +export { default as ka } from './ka/index.js' export { default as ko } from './ko/index.js' export { default as lt } from './lt/index.js' export { default as lv } from './lv/index.js' diff --git a/src/locale/ka/_lib/formatLong/index.js b/src/locale/ka/_lib/formatLong/index.js index bcefeeed1f..30dfc9ab2e 100644 --- a/src/locale/ka/_lib/formatLong/index.js +++ b/src/locale/ka/_lib/formatLong/index.js @@ -1,12 +1,41 @@ import buildFormatLongFn from '../../../_lib/buildFormatLongFn/index.js' -var formatLong = buildFormatLongFn({ - LT: 'HH:mm', - LTS: 'HH:mm:ss', - L: 'DD/MM/YYYY', - LL: 'D MMMM YYYY', - LLL: 'D MMMM YYYY HH:mm', - LLLL: 'dddd, D MMMM YYYY HH:mm' -}) +var dateFormats = { + full: 'EEEE, do MMMM, y', + long: 'do, MMMM, y', + medium: 'd, MMM, y', + short: 'dd/MM/yyyy' +} + +var timeFormats = { + full: 'h:mm:ss a zzzz', + long: 'h:mm:ss a z', + medium: 'h:mm:ss a', + short: 'h:mm a' +} + +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' + }) +} export default formatLong diff --git a/src/locale/ka/_lib/formatRelative/index.js b/src/locale/ka/_lib/formatRelative/index.js index e97c64a1b2..e4f0ef049f 100644 --- a/src/locale/ka/_lib/formatRelative/index.js +++ b/src/locale/ka/_lib/formatRelative/index.js @@ -1,9 +1,9 @@ var formatRelativeLocale = { - lastWeek: '[წინა] dddd LT[-ზე]', - yesterday: '[გუშინ] LT[-ზე]', - today: '[დღეს] LT[-ზე]', - tomorrow: '[ხვალ] LT[-ზე]', - nextWeek: '[შემდეგი] dddd LT[-ზე]', + lastWeek: "'წინა' eeee LT'-ზე'", + yesterday: "'გუშინ' LT'-ზე'", + today: "'დღეს' LT'-ზე'", + tomorrow: "'ხვალ' LT'-ზე'", + nextWeek: "'შემდეგი' eeee LT'-ზე'", other: 'L' } diff --git a/src/locale/ka/_lib/localize/index.js b/src/locale/ka/_lib/localize/index.js index 0f8065c224..0ba1716ac3 100644 --- a/src/locale/ka/_lib/localize/index.js +++ b/src/locale/ka/_lib/localize/index.js @@ -1,26 +1,37 @@ -import buildLocalizeArrayFn from '../../../_lib/buildLocalizeArrayFn/index.js' import buildLocalizeFn from '../../../_lib/buildLocalizeFn/index.js' +var eraValues = { + narrow: ['ჩ.წ-მდე', 'ჩ.წ'], + abbreviated: ['ჩვ.წ-მდე', 'ჩვ.წ'], + wide: ['ჩვენს წელთაღრიცხვამდე', 'ჩვენი წელთაღრიცხვით'] +} + +var quarterValues = { + narrow: ['1', '2', '3', '4'], + abbreviated: ['1-ლი კვ', '2-ე კვ', '3-ე კვ', '4-ე კვ'], + wide: ['1-ლი კვარტალი', '2-ე კვარტალი', '3-ე კვარტალი', '4-ე კვარტალი'] +} + // Note: in English, the names of days of the week and months are capitalized. // If you are making a new locale based on this one, check if the same is true for the language you're working on. // Generally, formatted dates should look like they are in the middle of a sentence, // e.g. in Spanish language the weekdays and months should be in the lowercase. -var weekdayValues = { - narrow: ['კვ', 'ორ', 'სა', 'ოთ', 'ხუ', 'პა', 'შა'], - short: ['კვი', 'ორშ', 'სამ', 'ოთხ', 'ხუთ', 'პარ', 'შაბ'], - long: [ - 'კვირა', - 'ორშაბათი', - 'სამშაბათი', - 'ოთხშაბათი', - 'ხუთშაბათი', - 'პარასკევი', - 'შაბათი' - ] -} - var monthValues = { - short: [ + narrow: [ + 'ია', + 'თე', + 'მა', + 'აპ', + 'მს', + 'ვნ', + 'ვლ', + 'აგ', + 'სე', + 'ოქ', + 'ნო', + 'დე' + ], + abbreviated: [ 'იან', 'თებ', 'მარ', @@ -34,7 +45,7 @@ var monthValues = { 'ნოე', 'დეკ' ], - long: [ + wide: [ 'იანვარი', 'თებერვალი', 'მარტი', @@ -50,35 +61,84 @@ var monthValues = { ] } -// `timeOfDay` is used to designate which part of the day it is, when used with 12-hour clock. -// Use the system which is used the most commonly in the locale. -// For example, if the country doesn't use a.m./p.m., you can use `night`/`morning`/`afternoon`/`evening`: -// -// var timeOfDayValues = { -// any: ['in the night', 'in the morning', 'in the afternoon', 'in the evening'] -// } -// -// And later: -// -// var localize = { -// // The callback takes the hours as the argument and returns the array index -// timeOfDay: buildLocalizeFn(timeOfDayValues, 'any', function (hours) { -// if (hours >= 17) { -// return 3 -// } else if (hours >= 12) { -// return 2 -// } else if (hours >= 4) { -// return 1 -// } else { -// return 0 -// } -// }), -// timesOfDay: buildLocalizeArrayFn(timeOfDayValues, 'any') -// } -var timeOfDayValues = { - uppercase: ['AM', 'PM'], - lowercase: ['am', 'pm'], - long: ['a.m.', 'p.m.'] +var dayValues = { + narrow: ['კვ', 'ორ', 'სა', 'ოთ', 'ხუ', 'პა', 'შა'], + short: ['კვი', 'ორშ', 'სამ', 'ოთხ', 'ხუთ', 'პარ', 'შაბ'], + abbreviated: ['კვი', 'ორშ', 'სამ', 'ოთხ', 'ხუთ', 'პარ', 'შაბ'], + wide: [ + 'კვირა', + 'ორშაბათი', + 'სამშაბათი', + 'ოთხშაბათი', + 'ხუთშაბათი', + 'პარასკევი', + 'შაბათი' + ] +} + +var dayPeriodValues = { + narrow: { + am: 'a', + pm: 'p', + midnight: 'შუაღამე', + noon: 'შუადღე', + morning: 'დილა', + afternoon: 'საღამო', + evening: 'საღამო', + night: 'ღამე' + }, + abbreviated: { + am: 'AM', + pm: 'PM', + midnight: 'შუაღამე', + noon: 'შუადღე', + morning: 'დილა', + afternoon: 'საღამო', + evening: 'საღამო', + night: 'ღამე' + }, + wide: { + am: 'a.m.', + pm: 'p.m.', + midnight: 'შუაღამე', + noon: 'შუადღე', + morning: 'დილა', + afternoon: 'საღამო', + evening: 'საღამო', + night: 'ღამე' + } +} +var formattingDayPeriodValues = { + narrow: { + am: 'a', + pm: 'p', + midnight: 'შუაღამით', + noon: 'შუადღისას', + morning: 'დილით', + afternoon: 'ნაშუადღევს', + evening: 'საღამოს', + night: 'ღამით' + }, + abbreviated: { + am: 'AM', + pm: 'PM', + midnight: 'შუაღამით', + noon: 'შუადღისას', + morning: 'დილით', + afternoon: 'ნაშუადღევს', + evening: 'საღამოს', + night: 'ღამით' + }, + wide: { + am: 'a.m.', + pm: 'p.m.', + midnight: 'შუაღამით', + noon: 'შუადღისას', + morning: 'დილით', + afternoon: 'ნაშუადღევს', + evening: 'საღამოს', + night: 'ღამით' + } } function ordinalNumber(dirtyNumber, _dirtyOptions) { @@ -91,8 +151,8 @@ function ordinalNumber(dirtyNumber, _dirtyOptions) { // var options = dirtyOptions || {} // var unit = String(options.unit) // - // where `unit` can be 'month', 'quarter', 'week', 'isoWeek', 'dayOfYear', - // 'dayOfMonth' or 'dayOfWeek' + // where `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear', + // 'day', 'hour', 'minute', 'second' if (number === 1) { return number + '-ლი' @@ -103,14 +163,36 @@ function ordinalNumber(dirtyNumber, _dirtyOptions) { var localize = { ordinalNumber: ordinalNumber, - weekday: buildLocalizeFn(weekdayValues, 'long'), - weekdays: buildLocalizeArrayFn(weekdayValues, 'long'), - month: buildLocalizeFn(monthValues, 'long'), - months: buildLocalizeArrayFn(monthValues, 'long'), - timeOfDay: buildLocalizeFn(timeOfDayValues, 'long', function(hours) { - return hours / 12 >= 1 ? 1 : 0 + + era: buildLocalizeFn({ + values: eraValues, + defaultWidth: 'wide' + }), + + quarter: buildLocalizeFn({ + values: quarterValues, + defaultWidth: 'wide', + argumentCallback: function(quarter) { + return Number(quarter) - 1 + } }), - timesOfDay: buildLocalizeArrayFn(timeOfDayValues, 'long') + + month: buildLocalizeFn({ + values: monthValues, + defaultWidth: 'wide' + }), + + day: buildLocalizeFn({ + values: dayValues, + defaultWidth: 'wide' + }), + + dayPeriod: buildLocalizeFn({ + values: dayPeriodValues, + defaultWidth: 'wide', + formattingValues: formattingDayPeriodValues, + defaultFormattingWidth: 'wide' + }) } export default localize diff --git a/src/locale/ka/_lib/match/index.js b/src/locale/ka/_lib/match/index.js index 273e828d64..e9e9faef89 100644 --- a/src/locale/ka/_lib/match/index.js +++ b/src/locale/ka/_lib/match/index.js @@ -1,58 +1,121 @@ -import buildMatchFn from '../../../_lib/buildMatchFn/index.js' -import buildParseFn from '../../../_lib/buildParseFn/index.js' import buildMatchPatternFn from '../../../_lib/buildMatchPatternFn/index.js' -import parseDecimal from '../../../_lib/parseDecimal/index.js' +import buildMatchFn from '../../../_lib/buildMatchFn/index.js' -var matchOrdinalNumbersPattern = /^(\d+)(-ლი|-ე)?/i +var matchOrdinalNumberPattern = /^(\d+)(-ლი|-ე)?/i +var parseOrdinalNumberPattern = /\d+/i -var matchWeekdaysPatterns = { - narrow: /^(კვ|ორ|სა|ოთ|ხუ|პა|შა)/i, - short: /^(კვი|ორშ|სამ|ოთხ|ხუთ|პარ|შაბ)/i, - long: /^(კვირა|ორშაბათი|სამშაბათი|ოთხშაბათი|ხუთშაბათი|პარასკევი|შაბათი)/i +var matchEraPatterns = { + narrow: /^(ჩვ?\.წ)/i, + abbreviated: /^(ჩვ?\.წ)/i, + wide: /^(ჩვენს წელთაღრიცხვამდე|ქრისტეშობამდე|ჩვენი წელთაღრიცხვით|ქრისტეშობიდან)/i } - -var parseWeekdayPatterns = { - any: [/^კ/i, /^ორ/i, /^ს/i, /^ოთ/i, /^ხ/i, /^პ/i, /^შ/i] +var parseEraPatterns = { + any: [ + /^(ჩვენს წელთაღრიცხვამდე|ქრისტეშობამდე)/i, + /^(ჩვენი წელთაღრიცხვით|ქრისტეშობიდან)/i + ] } -var matchMonthsPatterns = { - short: /^(იან|თებ|მარ|აპრ|მაი|ივნ|ივლ|აგვ|სექ|ოქტ|ნოე|დეკ)/i, - long: /^(იანვარი|თებერვალი|მარტი|აპრილი|მაისი|ივნისი|ივლისი|აგვისტო|სექტემბერი|ოქტომბერი|ნოემბერი|დეკემბერი)/i +var matchQuarterPatterns = { + narrow: /^[1234]/i, + abbreviated: /^[1234]-(ლი|ე)? კვ/i, + wide: /^[1234]-(ლი|ე)? კვარტალი/i +} +var parseQuarterPatterns = { + any: [/1/i, /2/i, /3/i, /4/i] } +var matchMonthPatterns = { + any: /^(ია|თე|მა|აპ|მს|ვნ|ვლ|აგ|სე|ოქ|ნო|დე)/i +} var parseMonthPatterns = { - any: [/^ია/i, /^თ/i, /^მარ/i, /^აპ/i, /^მაი/i, /^ივნ/i, /^ივლ/i, /^აგ/i, /^ს/i, /^ო/i, /^ნ/i, /^დ/i] + any: [ + /^ია/i, + /^თ/i, + /^მარ/i, + /^აპ/i, + /^მაი/i, + /^ი?ვნ/i, + /^ი?ვლ/i, + /^აგ/i, + /^ს/i, + /^ო/i, + /^ნ/i, + /^დ/i + ] } -// `timeOfDay` is used to designate which part of the day it is, when used with 12-hour clock. -// Use the system which is used the most commonly in the locale. -// For example, if the country doesn't use a.m./p.m., you can use `night`/`morning`/`afternoon`/`evening`: -// -// var matchTimesOfDayPatterns = { -// long: /^((in the)? (night|morning|afternoon|evening?))/i -// } -// -// var parseTimeOfDayPatterns = { -// any: [/(night|morning)/i, /(afternoon|evening)/i] -// } -var matchTimesOfDayPatterns = { - short: /^(am|pm)/i, - long: /^([ap]\.?\s?m\.?)/i +var matchDayPatterns = { + narrow: /^(კვ|ორ|სა|ოთ|ხუ|პა|შა)/i, + short: /^(კვი|ორშ|სამ|ოთხ|ხუთ|პარ|შაბ)/i, + long: /^(კვირა|ორშაბათი|სამშაბათი|ოთხშაბათი|ხუთშაბათი|პარასკევი|შაბათი)/i +} +var parseDayPatterns = { + any: [/^კვ/i, /^ორ/i, /^სა/i, /^ოთ/i, /^ხუ/i, /^პა/i, /^შა/i] } -var parseTimeOfDayPatterns = { - any: [/^a/i, /^p/i] +var matchDayPeriodPatterns = { + any: /^([ap]\.?\s?m\.?|შუაღ|დილ)/i +} +var parseDayPeriodPatterns = { + any: { + am: /^a/i, + pm: /^p/i, + midnight: /^შუაღ/i, + noon: /^შუადღ/i, + morning: /^დილ/i, + afternoon: /ნაშუადღევს/i, + evening: /საღამო/i, + night: /ღამ/i + } } var match = { - ordinalNumbers: buildMatchPatternFn(matchOrdinalNumbersPattern), - ordinalNumber: parseDecimal, - weekdays: buildMatchFn(matchWeekdaysPatterns, 'long'), - weekday: buildParseFn(parseWeekdayPatterns, 'any'), - months: buildMatchFn(matchMonthsPatterns, 'long'), - month: buildParseFn(parseMonthPatterns, 'any'), - timesOfDay: buildMatchFn(matchTimesOfDayPatterns, 'long'), - timeOfDay: buildParseFn(parseTimeOfDayPatterns, 'any') + 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 diff --git a/src/locale/ka/index.js b/src/locale/ka/index.js index daeda29516..6b1fc8f234 100644 --- a/src/locale/ka/index.js +++ b/src/locale/ka/index.js @@ -1,8 +1,8 @@ -// import formatDistance from './_lib/formatDistance/index.js' -// import formatLong from './_lib/formatLong/index.js' -// import formatRelative from './_lib/formatRelative/index.js' -// import localize from './_lib/localize/index.js' -// import match from './_lib/match/index.js' +import formatDistance from './_lib/formatDistance/index.js' +import formatLong from './_lib/formatLong/index.js' +import formatRelative from './_lib/formatRelative/index.js' +import localize from './_lib/localize/index.js' +import match from './_lib/match/index.js' /** * @type {Locale} @@ -11,19 +11,18 @@ * @language Georgian * @iso-639-2 geo * @author Lado Lomidze [@Landish]{@link https://github.com/Landish} + * @author Nick Shvelidze [@shvelo]{@link https://github.com/shvelo} */ -// var locale = { -// formatDistance: formatDistance, -// formatLong: formatLong, -// formatRelative: formatRelative, -// localize: localize, -// match: match, -// options: { -// weekStartsOn: 1 /* Monday */, -// firstWeekContainsDate: 1 -// } -// } +var locale = { + formatDistance: formatDistance, + formatLong: formatLong, + formatRelative: formatRelative, + localize: localize, + match: match, + options: { + weekStartsOn: 1 /* Monday */, + firstWeekContainsDate: 1 + } +} -// export default locale - -throw new Error('ka locale is currently unavailable. Please check the progress of converting this locale to v2.0.0 in this issue on Github: TBA') +export default locale diff --git a/src/locale/ka/snapshot.md b/src/locale/ka/snapshot.md new file mode 100644 index 0000000000..730ea5bfff --- /dev/null +++ b/src/locale/ka/snapshot.md @@ -0,0 +1,304 @@ +# Georgian (ka) locale + +## `format` and `parse` + +| Title | Token string | Date | `format` result | `parse` result | +| ------------------------------- | ------------ | ------------------------ | -------------------------------------------------------- | ------------------------ | +| Calendar year | yo | 1987-02-11T12:13:14.015Z | 1987-ე | 1987-01-01T00:00:00.000Z | +| | | 0005-01-01T12:13:14.015Z | 5-ე | 0005-01-01T00:00:00.000Z | +| Local week-numbering year | Yo | 1987-02-11T12:13:14.015Z | 1987-ე | 1986-12-29T00:00:00.000Z | +| | | 0005-01-01T12:13:14.015Z | 5-ე | 0004-12-27T00:00:00.000Z | +| Quarter (formatting) | Qo | 2019-01-01T12:13:14.015Z | 1-ლი | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე | 2019-04-01T00:00:00.000Z | +| | QQQ | 2019-01-01T12:13:14.015Z | 1-ლი კვ | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე კვ | 2019-04-01T00:00:00.000Z | +| | QQQQ | 2019-01-01T12:13:14.015Z | 1-ლი კვარტალი | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე კვარტალი | 2019-04-01T00:00:00.000Z | +| | QQQQQ | 2019-01-01T12:13:14.015Z | 1 | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2 | 2019-04-01T00:00:00.000Z | +| Quarter (stand-alone) | qo | 2019-01-01T12:13:14.015Z | 1-ლი | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე | 2019-04-01T00:00:00.000Z | +| | qqq | 2019-01-01T12:13:14.015Z | 1-ლი კვ | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე კვ | 2019-04-01T00:00:00.000Z | +| | qqqq | 2019-01-01T12:13:14.015Z | 1-ლი კვარტალი | 2019-01-01T00:00:00.000Z | +| | | 2019-04-01T12:13:14.015Z | 2-ე კვარტალი | 2019-04-01T00:00:00.000Z | +| Month (formatting) | Mo | 2019-02-11T12:13:14.015Z | 2-ე | 2019-02-01T00:00:00.000Z | +| | | 2019-07-10T12:13:14.015Z | 7-ე | 2019-07-01T00:00:00.000Z | +| | MMM | 2019-02-11T12:13:14.015Z | თებ | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ივლ | Invalid Date | +| | MMMM | 2019-02-11T12:13:14.015Z | თებერვალი | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ივლისი | Invalid Date | +| | MMMMM | 2019-02-11T12:13:14.015Z | თე | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ვლ | Invalid Date | +| Month (stand-alone) | Lo | 2019-02-11T12:13:14.015Z | 2-ე | 2019-02-01T00:00:00.000Z | +| | | 2019-07-10T12:13:14.015Z | 7-ე | 2019-07-01T00:00:00.000Z | +| | LLL | 2019-02-11T12:13:14.015Z | თებ | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ივლ | Invalid Date | +| | LLLL | 2019-02-11T12:13:14.015Z | თებერვალი | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ივლისი | Invalid Date | +| | LLLLL | 2019-02-11T12:13:14.015Z | თე | Invalid Date | +| | | 2019-07-10T12:13:14.015Z | ვლ | Invalid Date | +| Local week of year | wo | 2019-01-01T12:13:14.015Z | 1-ლი | 2018-12-31T00:00:00.000Z | +| | | 2019-12-01T12:13:14.015Z | 48-ე | 2019-11-25T00:00:00.000Z | +| ISO week of year | Io | 2019-01-01T12:13:14.015Z | 1-ლი | 2018-12-31T00:00:00.000Z | +| | | 2019-12-01T12:13:14.015Z | 48-ე | 2019-11-25T00:00:00.000Z | +| Day of month | do | 2019-02-11T12:13:14.015Z | 11-ე | 2019-02-11T00:00:00.000Z | +| | | 2019-02-28T12:13:14.015Z | 28-ე | 2019-02-28T00:00:00.000Z | +| Day of year | Do | 2019-02-11T12:13:14.015Z | 42-ე | 2019-02-11T00:00:00.000Z | +| | | 2019-12-31T12:13:14.015Z | 365-ე | 2019-12-31T00:00:00.000Z | +| Day of week (formatting) | E | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | EE | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | EEE | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | EEEE | 2019-02-11T12:13:14.015Z | ორშაბათი | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარასკევი | Invalid Date | +| | EEEEE | 2019-02-11T12:13:14.015Z | ორ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პა | 2019-02-15T00:00:00.000Z | +| | EEEEEE | 2019-02-11T12:13:14.015Z | ორშ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პარ | 2019-02-15T00:00:00.000Z | +| ISO day of week (formatting) | io | 2019-02-11T12:13:14.015Z | 1-ლი | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | 5-ე | 2019-02-15T00:00:00.000Z | +| | iii | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | iiii | 2019-02-11T12:13:14.015Z | ორშაბათი | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარასკევი | Invalid Date | +| | iiiii | 2019-02-11T12:13:14.015Z | ორ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პა | 2019-02-15T00:00:00.000Z | +| | iiiiii | 2019-02-11T12:13:14.015Z | ორშ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პარ | 2019-02-15T00:00:00.000Z | +| Local day of week (formatting) | eo | 2019-02-11T12:13:14.015Z | 1-ლი | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | 5-ე | 2019-02-15T00:00:00.000Z | +| | eee | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | eeee | 2019-02-11T12:13:14.015Z | ორშაბათი | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარასკევი | Invalid Date | +| | eeeee | 2019-02-11T12:13:14.015Z | ორ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პა | 2019-02-15T00:00:00.000Z | +| | eeeeee | 2019-02-11T12:13:14.015Z | ორშ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პარ | 2019-02-15T00:00:00.000Z | +| Local day of week (stand-alone) | co | 2019-02-11T12:13:14.015Z | 1-ლი | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | 5-ე | 2019-02-15T00:00:00.000Z | +| | ccc | 2019-02-11T12:13:14.015Z | ორშ | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარ | Invalid Date | +| | cccc | 2019-02-11T12:13:14.015Z | ორშაბათი | Invalid Date | +| | | 2019-02-15T12:13:14.015Z | პარასკევი | Invalid Date | +| | ccccc | 2019-02-11T12:13:14.015Z | ორ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პა | 2019-02-15T00:00:00.000Z | +| | cccccc | 2019-02-11T12:13:14.015Z | ორშ | 2019-02-11T00:00:00.000Z | +| | | 2019-02-15T12:13:14.015Z | პარ | 2019-02-15T00:00:00.000Z | +| AM, PM | a | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | aa | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | aaa | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | aaaa | 2019-02-11T11:13:14.015Z | a.m. | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | p.m. | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | p.m. | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | a.m. | 2019-02-11T00:00:00.000Z | +| | aaaaa | 2019-02-11T11:13:14.015Z | a | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | p | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | p | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | a | Invalid Date | +| AM, PM, noon, midnight | b | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | bb | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | bbb | 2019-02-11T11:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | PM | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | AM | 2019-02-11T00:00:00.000Z | +| | bbbb | 2019-02-11T11:13:14.015Z | a.m. | 2019-02-11T00:00:00.000Z | +| | | 2019-02-11T14:13:14.015Z | p.m. | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T19:13:14.015Z | p.m. | 2019-02-11T12:00:00.000Z | +| | | 2019-02-11T02:13:14.015Z | a.m. | 2019-02-11T00:00:00.000Z | +| | bbbbb | 2019-02-11T11:13:14.015Z | a | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | p | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | p | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | a | Invalid Date | +| Flexible day period | B | 2019-02-11T11:13:14.015Z | დილით | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | ნაშუადღევს | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | საღამოს | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | ღამით | Invalid Date | +| | BB | 2019-02-11T11:13:14.015Z | დილით | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | ნაშუადღევს | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | საღამოს | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | ღამით | Invalid Date | +| | BBB | 2019-02-11T11:13:14.015Z | დილით | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | ნაშუადღევს | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | საღამოს | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | ღამით | Invalid Date | +| | BBBB | 2019-02-11T11:13:14.015Z | დილით | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | ნაშუადღევს | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | საღამოს | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | ღამით | Invalid Date | +| | BBBBB | 2019-02-11T11:13:14.015Z | დილით | Invalid Date | +| | | 2019-02-11T14:13:14.015Z | ნაშუადღევს | Invalid Date | +| | | 2019-02-11T19:13:14.015Z | საღამოს | Invalid Date | +| | | 2019-02-11T02:13:14.015Z | ღამით | Invalid Date | +| Hour [1-12] | ho | 2019-02-11T11:13:14.015Z | 11-ე | 2019-02-11T11:00:00.000Z | +| | | 2019-02-11T23:13:14.015Z | 11-ე | 2019-02-11T23:00:00.000Z | +| Hour [0-23] | Ho | 2019-02-11T11:13:14.015Z | 11-ე | 2019-02-11T11:00:00.000Z | +| | | 2019-02-11T23:13:14.015Z | 23-ე | 2019-02-11T23:00:00.000Z | +| Hour [0-11] | Ko | 2019-02-11T11:13:14.015Z | 11-ე | 2019-02-11T11:00:00.000Z | +| | | 2019-02-11T23:13:14.015Z | 11-ე | 2019-02-11T23:00:00.000Z | +| Hour [1-24] | ko | 2019-02-11T11:13:14.015Z | 11-ე | 2019-02-11T11:00:00.000Z | +| | | 2019-02-11T23:13:14.015Z | 23-ე | 2019-02-11T23:00:00.000Z | +| Minute | mo | 2019-01-01T12:01:14.015Z | 1-ლი | 2019-01-01T12:01:00.000Z | +| | | 2019-04-01T12:55:14.015Z | 55-ე | 2019-04-01T12:55:00.000Z | +| Second | so | 2019-01-01T12:13:01.015Z | 1-ლი | 2019-01-01T12:13:01.000Z | +| | | 2019-04-01T12:13:55.015Z | 55-ე | 2019-04-01T12:13:55.000Z | +| Long localized date | P | 1987-02-11T12:13:14.015Z | 11/02/1987 | 1987-02-11T00:00:00.000Z | +| | | 1453-05-29T23:59:59.999Z | 29/05/1453 | 1453-05-29T00:00:00.000Z | +| | PP | 1987-02-11T12:13:14.015Z | 11, თებ, 1987 | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | 29, მაი, 1453 | Invalid Date | +| | PPP | 1987-02-11T12:13:14.015Z | 11-ე, თებერვალი, 1987 | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | 29-ე, მაისი, 1453 | Invalid Date | +| | PPPP | 1987-02-11T12:13:14.015Z | ოთხშაბათი, 11-ე თებერვალი, 1987 | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | კვირა, 29-ე მაისი, 1453 | Invalid Date | +| Long localized time | p | 1987-02-11T12:13:14.015Z | 12:13 PM | 1987-02-11T12:13:00.000Z | +| | | 1453-05-29T23:59:59.999Z | 11:59 PM | 1453-05-29T23:59:00.000Z | +| | pp | 1987-02-11T12:13:14.015Z | 12:13:14 PM | 1987-02-11T12:13:14.000Z | +| | | 1453-05-29T23:59:59.999Z | 11:59:59 PM | 1453-05-29T23:59:59.000Z | +| | ppp | 1987-02-11T12:13:14.015Z | 12:13:14 PM GMT+0 | Errored | +| | | 1453-05-29T23:59:59.999Z | 11:59:59 PM GMT+0 | Errored | +| | pppp | 1987-02-11T12:13:14.015Z | 12:13:14 PM GMT+00:00 | Errored | +| | | 1453-05-29T23:59:59.999Z | 11:59:59 PM GMT+00:00 | Errored | +| Combination of date and time | Pp | 1987-02-11T12:13:14.015Z | 11/02/1987, 12:13 PM | 1987-02-11T12:13:00.000Z | +| | | 1453-05-29T23:59:59.999Z | 29/05/1453, 11:59 PM | 1453-05-29T23:59:00.000Z | +| | PPpp | 1987-02-11T12:13:14.015Z | 11, თებ, 1987, 12:13:14 PM | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | 29, მაი, 1453, 11:59:59 PM | Invalid Date | +| | PPPppp | 1987-02-11T12:13:14.015Z | 11-ე, თებერვალი, 1987 12:13:14 PM GMT+0-ზე | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | 29-ე, მაისი, 1453 11:59:59 PM GMT+0-ზე | Invalid Date | +| | PPPPpppp | 1987-02-11T12:13:14.015Z | ოთხშაბათი, 11-ე თებერვალი, 1987 12:13:14 PM GMT+00:00-ზე | Invalid Date | +| | | 1453-05-29T23:59:59.999Z | კვირა, 29-ე მაისი, 1453 11:59:59 PM GMT+00:00-ზე | Invalid Date | + +## `formatDistance` + +If now is January 1st, 2000, 00:00. + +| Date | Result | `includeSeconds: true` | `addSuffix: true` | +| ------------------------ | ------------------ | ---------------------- | ------------------------ | +| 2006-01-01T00:00:00.000Z | დაახლოებით 6 წელი | დაახლოებით 6 წელი | დაახლოებით 6 წელში | +| 2005-01-01T00:00:00.000Z | დაახლოებით 5 წელი | დაახლოებით 5 წელი | დაახლოებით 5 წელში | +| 2004-01-01T00:00:00.000Z | დაახლოებით 4 წელი | დაახლოებით 4 წელი | დაახლოებით 4 წელში | +| 2003-01-01T00:00:00.000Z | დაახლოებით 3 წელი | დაახლოებით 3 წელი | დაახლოებით 3 წელში | +| 2002-01-01T00:00:00.000Z | დაახლოებით 2 წელი | დაახლოებით 2 წელი | დაახლოებით 2 წელში | +| 2001-06-01T00:00:00.000Z | 1 წელზე მეტი | 1 წელზე მეტი | 1 წელზე მეტი ხნის შემდეგ | +| 2001-02-01T00:00:00.000Z | დაახლოებით 1 წელი | დაახლოებით 1 წელი | დაახლოებით 1 წელში | +| 2001-01-01T00:00:00.000Z | დაახლოებით 1 წელი | დაახლოებით 1 წელი | დაახლოებით 1 წელში | +| 2000-06-01T00:00:00.000Z | 5 თვე | 5 თვე | 5 თვეში | +| 2000-03-01T00:00:00.000Z | 2 თვე | 2 თვე | 2 თვეში | +| 2000-02-01T00:00:00.000Z | დაახლოებით 1 თვე | დაახლოებით 1 თვე | დაახლოებით 1 თვეში | +| 2000-01-15T00:00:00.000Z | 14 დღე | 14 დღე | 14 დღეში | +| 2000-01-02T00:00:00.000Z | 1 დღე | 1 დღე | 1 დღეში | +| 2000-01-01T06:00:00.000Z | დაახლოებით 6 საათი | დაახლოებით 6 საათი | დაახლოებით 6 საათში | +| 2000-01-01T01:00:00.000Z | დაახლოებით 1 საათი | დაახლოებით 1 საათი | დაახლოებით 1 საათში | +| 2000-01-01T00:45:00.000Z | დაახლოებით 1 საათი | დაახლოებით 1 საათი | დაახლოებით 1 საათში | +| 2000-01-01T00:30:00.000Z | 30 წუთი | 30 წუთი | 30 წუთში | +| 2000-01-01T00:15:00.000Z | 15 წუთი | 15 წუთი | 15 წუთში | +| 2000-01-01T00:01:00.000Z | 1 წუთი | 1 წუთი | 1 წუთში | +| 2000-01-01T00:00:25.000Z | 1 წუთზე ნაკლები | ნახევარი წუთი | 1 წუთზე ნაკლებში | +| 2000-01-01T00:00:15.000Z | 1 წუთზე ნაკლები | 20 წამზე ნაკლები | 1 წუთზე ნაკლებში | +| 2000-01-01T00:00:05.000Z | 1 წუთზე ნაკლები | 10 წამზე ნაკლები | 1 წუთზე ნაკლებში | +| 2000-01-01T00:00:00.000Z | 1 წუთზე ნაკლები | 5 წამზე ნაკლები | 1 წუთზე ნაკლები ხნის წინ | +| 1999-12-31T23:59:55.000Z | 1 წუთზე ნაკლები | 10 წამზე ნაკლები | 1 წუთზე ნაკლები ხნის წინ | +| 1999-12-31T23:59:45.000Z | 1 წუთზე ნაკლები | 20 წამზე ნაკლები | 1 წუთზე ნაკლები ხნის წინ | +| 1999-12-31T23:59:35.000Z | 1 წუთზე ნაკლები | ნახევარი წუთი | 1 წუთზე ნაკლები ხნის წინ | +| 1999-12-31T23:59:00.000Z | 1 წუთი | 1 წუთი | 1 წუთის წინ | +| 1999-12-31T23:45:00.000Z | 15 წუთი | 15 წუთი | 15 წუთის წინ | +| 1999-12-31T23:30:00.000Z | 30 წუთი | 30 წუთი | 30 წუთის წინ | +| 1999-12-31T23:15:00.000Z | დაახლოებით 1 საათი | დაახლოებით 1 საათი | დაახლოებით 1 საათის წინ | +| 1999-12-31T23:00:00.000Z | დაახლოებით 1 საათი | დაახლოებით 1 საათი | დაახლოებით 1 საათის წინ | +| 1999-12-31T18:00:00.000Z | დაახლოებით 6 საათი | დაახლოებით 6 საათი | დაახლოებით 6 საათის წინ | +| 1999-12-30T00:00:00.000Z | 2 დღე | 2 დღე | 2 დღის წინ | +| 1999-12-15T00:00:00.000Z | 17 დღე | 17 დღე | 17 დღის წინ | +| 1999-12-01T00:00:00.000Z | დაახლოებით 1 თვე | დაახლოებით 1 თვე | დაახლოებით 1 თვის წინ | +| 1999-11-01T00:00:00.000Z | 2 თვე | 2 თვე | 2 თვის წინ | +| 1999-06-01T00:00:00.000Z | 7 თვე | 7 თვე | 7 თვის წინ | +| 1999-01-01T00:00:00.000Z | დაახლოებით 1 წელი | დაახლოებით 1 წელი | დაახლოებით 1 წლის წინ | +| 1998-12-01T00:00:00.000Z | დაახლოებით 1 წელი | დაახლოებით 1 წელი | დაახლოებით 1 წლის წინ | +| 1998-06-01T00:00:00.000Z | 1 წელზე მეტი | 1 წელზე მეტი | 1 წელზე მეტი ხნის წინ | +| 1998-01-01T00:00:00.000Z | დაახლოებით 2 წელი | დაახლოებით 2 წელი | დაახლოებით 2 წლის წინ | +| 1997-01-01T00:00:00.000Z | დაახლოებით 3 წელი | დაახლოებით 3 წელი | დაახლოებით 3 წლის წინ | +| 1996-01-01T00:00:00.000Z | დაახლოებით 4 წელი | დაახლოებით 4 წელი | დაახლოებით 4 წლის წინ | +| 1995-01-01T00:00:00.000Z | დაახლოებით 5 წელი | დაახლოებით 5 წელი | დაახლოებით 5 წლის წინ | +| 1994-01-01T00:00:00.000Z | დაახლოებით 6 წელი | დაახლოებით 6 წელი | დაახლოებით 6 წლის წინ | + +## `formatDistanceStrict` + +If now is January 1st, 2000, 00:00. + +| Date | Result | `addSuffix: true` | With forced unit (i.e. `hour`) | +| ------------------------ | ------- | ----------------- | ------------------------------ | +| 2006-01-01T00:00:00.000Z | 6 წელი | 6 წელში | 52608 საათი | +| 2005-01-01T00:00:00.000Z | 5 წელი | 5 წელში | 43848 საათი | +| 2004-01-01T00:00:00.000Z | 4 წელი | 4 წელში | 35064 საათი | +| 2003-01-01T00:00:00.000Z | 3 წელი | 3 წელში | 26304 საათი | +| 2002-01-01T00:00:00.000Z | 2 წელი | 2 წელში | 17544 საათი | +| 2001-06-01T00:00:00.000Z | 1 წელი | 1 წელში | 12408 საათი | +| 2001-02-01T00:00:00.000Z | 1 წელი | 1 წელში | 9528 საათი | +| 2001-01-01T00:00:00.000Z | 1 წელი | 1 წელში | 8784 საათი | +| 2000-06-01T00:00:00.000Z | 5 თვე | 5 თვეში | 3648 საათი | +| 2000-03-01T00:00:00.000Z | 2 თვე | 2 თვეში | 1440 საათი | +| 2000-02-01T00:00:00.000Z | 1 თვე | 1 თვეში | 744 საათი | +| 2000-01-15T00:00:00.000Z | 14 დღე | 14 დღეში | 336 საათი | +| 2000-01-02T00:00:00.000Z | 1 დღე | 1 დღეში | 24 საათი | +| 2000-01-01T06:00:00.000Z | 6 საათი | 6 საათში | 6 საათი | +| 2000-01-01T01:00:00.000Z | 1 საათი | 1 საათში | 1 საათი | +| 2000-01-01T00:45:00.000Z | 45 წუთი | 45 წუთში | 1 საათი | +| 2000-01-01T00:30:00.000Z | 30 წუთი | 30 წუთში | 1 საათი | +| 2000-01-01T00:15:00.000Z | 15 წუთი | 15 წუთში | 0 საათი | +| 2000-01-01T00:01:00.000Z | 1 წუთი | 1 წუთში | 0 საათი | +| 2000-01-01T00:00:25.000Z | 25 წამი | 25 წამში | 0 საათი | +| 2000-01-01T00:00:15.000Z | 15 წამი | 15 წამში | 0 საათი | +| 2000-01-01T00:00:05.000Z | 5 წამი | 5 წამში | 0 საათი | +| 2000-01-01T00:00:00.000Z | 0 წამი | 0 წამის წინ | 0 საათი | +| 1999-12-31T23:59:55.000Z | 5 წამი | 5 წამის წინ | 0 საათი | +| 1999-12-31T23:59:45.000Z | 15 წამი | 15 წამის წინ | 0 საათი | +| 1999-12-31T23:59:35.000Z | 25 წამი | 25 წამის წინ | 0 საათი | +| 1999-12-31T23:59:00.000Z | 1 წუთი | 1 წუთის წინ | 0 საათი | +| 1999-12-31T23:45:00.000Z | 15 წუთი | 15 წუთის წინ | 0 საათი | +| 1999-12-31T23:30:00.000Z | 30 წუთი | 30 წუთის წინ | 1 საათი | +| 1999-12-31T23:15:00.000Z | 45 წუთი | 45 წუთის წინ | 1 საათი | +| 1999-12-31T23:00:00.000Z | 1 საათი | 1 საათის წინ | 1 საათი | +| 1999-12-31T18:00:00.000Z | 6 საათი | 6 საათის წინ | 6 საათი | +| 1999-12-30T00:00:00.000Z | 2 დღე | 2 დღის წინ | 48 საათი | +| 1999-12-15T00:00:00.000Z | 17 დღე | 17 დღის წინ | 408 საათი | +| 1999-12-01T00:00:00.000Z | 1 თვე | 1 თვის წინ | 744 საათი | +| 1999-11-01T00:00:00.000Z | 2 თვე | 2 თვის წინ | 1464 საათი | +| 1999-06-01T00:00:00.000Z | 7 თვე | 7 თვის წინ | 5136 საათი | +| 1999-01-01T00:00:00.000Z | 1 წელი | 1 წლის წინ | 8760 საათი | +| 1998-12-01T00:00:00.000Z | 1 წელი | 1 წლის წინ | 9504 საათი | +| 1998-06-01T00:00:00.000Z | 2 წელი | 2 წლის წინ | 13896 საათი | +| 1998-01-01T00:00:00.000Z | 2 წელი | 2 წლის წინ | 17520 საათი | +| 1997-01-01T00:00:00.000Z | 3 წელი | 3 წლის წინ | 26280 საათი | +| 1996-01-01T00:00:00.000Z | 4 წელი | 4 წლის წინ | 35064 საათი | +| 1995-01-01T00:00:00.000Z | 5 წელი | 5 წლის წინ | 43824 საათი | +| 1994-01-01T00:00:00.000Z | 6 წელი | 6 წლის წინ | 52584 საათი | + +## `formatRelative` + +If now is January 1st, 2000, 00:00. + +| Date | Result | +| ------------------------ | ---------------------------------- | +| 2000-01-10T00:00:00.000Z | 1 | +| 2000-01-05T00:00:00.000Z | შემდეგი ოთხშაბათი 1947030400000-ზე | +| 2000-01-02T00:00:00.000Z | ხვალ 1946771200000-ზე | +| 2000-01-01T00:00:00.000Z | დღეს 1946684800000-ზე | +| 1999-12-31T00:00:00.000Z | გუშინ 12946598400000-ზე | +| 1999-12-27T00:00:00.000Z | წინა ორშაბათი 12946252800000-ზე | +| 1999-12-21T00:00:00.000Z | 12 |