be.js (5158B)
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});