UNPKG

5.15 kBJavaScriptView Raw
1//! moment.js locale configuration
2//! locale : Belarusian [be]
3//! author : Dmitry Demidov : https://github.com/demidov91
4//! author: Praleska: http://praleska.pro/
5//! Author : Menelion Elensúle : https://github.com/Oire
6
7import moment from '../moment';
8
9function plural(word, num) {
10 var forms = word.split('_');
11 return num % 10 === 1 && num % 100 !== 11
12 ? forms[0]
13 : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20)
14 ? forms[1]
15 : forms[2];
16}
17function relativeTimeWithPlural(number, withoutSuffix, key) {
18 var format = {
19 ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд',
20 mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',
21 hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',
22 dd: 'дзень_дні_дзён',
23 MM: 'месяц_месяцы_месяцаў',
24 yy: 'год_гады_гадоў',
25 };
26 if (key === 'm') {
27 return withoutSuffix ? 'хвіліна' : 'хвіліну';
28 } else if (key === 'h') {
29 return withoutSuffix ? 'гадзіна' : 'гадзіну';
30 } else {
31 return number + ' ' + plural(format[key], +number);
32 }
33}
34
35export default moment.defineLocale('be', {
36 months: {
37 format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split(
38 '_'
39 ),
40 standalone:
41 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split(
42 '_'
43 ),
44 },
45 monthsShort:
46 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),
47 weekdays: {
48 format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split(
49 '_'
50 ),
51 standalone:
52 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split(
53 '_'
54 ),
55 isFormat: /\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/,
56 },
57 weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
58 weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
59 longDateFormat: {
60 LT: 'HH:mm',
61 LTS: 'HH:mm:ss',
62 L: 'DD.MM.YYYY',
63 LL: 'D MMMM YYYY г.',
64 LLL: 'D MMMM YYYY г., HH:mm',
65 LLLL: 'dddd, D MMMM YYYY г., HH:mm',
66 },
67 calendar: {
68 sameDay: '[Сёння ў] LT',
69 nextDay: '[Заўтра ў] LT',
70 lastDay: '[Учора ў] LT',
71 nextWeek: function () {
72 return '[У] dddd [ў] LT';
73 },
74 lastWeek: function () {
75 switch (this.day()) {
76 case 0:
77 case 3:
78 case 5:
79 case 6:
80 return '[У мінулую] dddd [ў] LT';
81 case 1:
82 case 2:
83 case 4:
84 return '[У мінулы] dddd [ў] LT';
85 }
86 },
87 sameElse: 'L',
88 },
89 relativeTime: {
90 future: 'праз %s',
91 past: '%s таму',
92 s: 'некалькі секунд',
93 m: relativeTimeWithPlural,
94 mm: relativeTimeWithPlural,
95 h: relativeTimeWithPlural,
96 hh: relativeTimeWithPlural,
97 d: 'дзень',
98 dd: relativeTimeWithPlural,
99 M: 'месяц',
100 MM: relativeTimeWithPlural,
101 y: 'год',
102 yy: relativeTimeWithPlural,
103 },
104 meridiemParse: /ночы|раніцы|дня|вечара/,
105 isPM: function (input) {
106 return /^(дня|вечара)$/.test(input);
107 },
108 meridiem: function (hour, minute, isLower) {
109 if (hour < 4) {
110 return 'ночы';
111 } else if (hour < 12) {
112 return 'раніцы';
113 } else if (hour < 17) {
114 return 'дня';
115 } else {
116 return 'вечара';
117 }
118 },
119 dayOfMonthOrdinalParse: /\d{1,2}-(і|ы|га)/,
120 ordinal: function (number, period) {
121 switch (period) {
122 case 'M':
123 case 'd':
124 case 'DDD':
125 case 'w':
126 case 'W':
127 return (number % 10 === 2 || number % 10 === 3) &&
128 number % 100 !== 12 &&
129 number % 100 !== 13
130 ? number + '-і'
131 : number + '-ы';
132 case 'D':
133 return number + '-га';
134 default:
135 return number;
136 }
137 },
138 week: {
139 dow: 1, // Monday is the first day of the week.
140 doy: 7, // The week that contains Jan 7th is the first week of the year.
141 },
142});