1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
| //! moment.js locale configuration
| //! locale : Serbian Cyrillic [sr-cyrl]
| //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
| //! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic
|
| import moment from '../moment';
|
| var translator = {
| words: {
| //Different grammatical cases
| ss: ['секунда', 'секунде', 'секунди'],
| m: ['један минут', 'једне минуте'],
| mm: ['минут', 'минуте', 'минута'],
| h: ['један сат', 'једног сата'],
| hh: ['сат', 'сата', 'сати'],
| dd: ['дан', 'дана', 'дана'],
| MM: ['месец', 'месеца', 'месеци'],
| yy: ['година', 'године', 'година'],
| },
| correctGrammaticalCase: function (number, wordKey) {
| return number === 1
| ? wordKey[0]
| : number >= 2 && number <= 4
| ? wordKey[1]
| : wordKey[2];
| },
| translate: function (number, withoutSuffix, key) {
| var wordKey = translator.words[key];
| if (key.length === 1) {
| return withoutSuffix ? wordKey[0] : wordKey[1];
| } else {
| return (
| number +
| ' ' +
| translator.correctGrammaticalCase(number, wordKey)
| );
| }
| },
| };
|
| export default moment.defineLocale('sr-cyrl', {
| months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(
| '_'
| ),
| monthsShort: 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split(
| '_'
| ),
| monthsParseExact: true,
| weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),
| weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),
| weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),
| weekdaysParseExact: true,
| longDateFormat: {
| LT: 'H:mm',
| LTS: 'H:mm:ss',
| L: 'D. M. YYYY.',
| LL: 'D. MMMM YYYY.',
| LLL: 'D. MMMM YYYY. H:mm',
| LLLL: 'dddd, D. MMMM YYYY. H:mm',
| },
| calendar: {
| sameDay: '[данас у] LT',
| nextDay: '[сутра у] LT',
| nextWeek: function () {
| switch (this.day()) {
| case 0:
| return '[у] [недељу] [у] LT';
| case 3:
| return '[у] [среду] [у] LT';
| case 6:
| return '[у] [суботу] [у] LT';
| case 1:
| case 2:
| case 4:
| case 5:
| return '[у] dddd [у] LT';
| }
| },
| lastDay: '[јуче у] LT',
| lastWeek: function () {
| var lastWeekDays = [
| '[прошле] [недеље] [у] LT',
| '[прошлог] [понедељка] [у] LT',
| '[прошлог] [уторка] [у] LT',
| '[прошле] [среде] [у] LT',
| '[прошлог] [четвртка] [у] LT',
| '[прошлог] [петка] [у] LT',
| '[прошле] [суботе] [у] LT',
| ];
| return lastWeekDays[this.day()];
| },
| sameElse: 'L',
| },
| relativeTime: {
| future: 'за %s',
| past: 'пре %s',
| s: 'неколико секунди',
| ss: translator.translate,
| m: translator.translate,
| mm: translator.translate,
| h: translator.translate,
| hh: translator.translate,
| d: 'дан',
| dd: translator.translate,
| M: 'месец',
| MM: translator.translate,
| y: 'годину',
| yy: translator.translate,
| },
| dayOfMonthOrdinalParse: /\d{1,2}\./,
| ordinal: '%d.',
| week: {
| dow: 1, // Monday is the first day of the week.
| doy: 7, // The week that contains Jan 1st is the first week of the year.
| },
| });
|
|