momentjs-rails 2.29.4 → 2.29.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/news.md +3 -0
- data/vendor/assets/javascripts/moment/af.js +77 -66
- data/vendor/assets/javascripts/moment/ar-dz.js +156 -145
- data/vendor/assets/javascripts/moment/ar-kw.js +59 -48
- data/vendor/assets/javascripts/moment/ar-ly.js +175 -164
- data/vendor/assets/javascripts/moment/ar-ma.js +59 -48
- data/vendor/assets/javascripts/moment/ar-sa.js +108 -97
- data/vendor/assets/javascripts/moment/ar-tn.js +59 -48
- data/vendor/assets/javascripts/moment/ar.js +191 -180
- data/vendor/assets/javascripts/moment/az.js +105 -94
- data/vendor/assets/javascripts/moment/be.js +137 -126
- data/vendor/assets/javascripts/moment/bg.js +91 -80
- data/vendor/assets/javascripts/moment/bm.js +57 -47
- data/vendor/assets/javascripts/moment/bn-bd.js +130 -119
- data/vendor/assets/javascripts/moment/bn.js +122 -111
- data/vendor/assets/javascripts/moment/bo.js +125 -114
- data/vendor/assets/javascripts/moment/br.js +165 -154
- data/vendor/assets/javascripts/moment/bs.js +149 -138
- data/vendor/assets/javascripts/moment/ca.js +99 -88
- data/vendor/assets/javascripts/moment/cs.js +179 -168
- data/vendor/assets/javascripts/moment/cv.js +66 -55
- data/vendor/assets/javascripts/moment/cy.js +100 -89
- data/vendor/assets/javascripts/moment/da.js +59 -48
- data/vendor/assets/javascripts/moment/de-at.js +79 -68
- data/vendor/assets/javascripts/moment/de-ch.js +78 -69
- data/vendor/assets/javascripts/moment/de.js +79 -68
- data/vendor/assets/javascripts/moment/dv.js +95 -84
- data/vendor/assets/javascripts/moment/el.js +107 -96
- data/vendor/assets/javascripts/moment/en-au.js +74 -63
- data/vendor/assets/javascripts/moment/en-ca.js +70 -59
- data/vendor/assets/javascripts/moment/en-gb.js +74 -63
- data/vendor/assets/javascripts/moment/en-ie.js +74 -63
- data/vendor/assets/javascripts/moment/en-il.js +70 -59
- data/vendor/assets/javascripts/moment/en-in.js +74 -63
- data/vendor/assets/javascripts/moment/en-nz.js +74 -63
- data/vendor/assets/javascripts/moment/en-sg.js +74 -63
- data/vendor/assets/javascripts/moment/eo.js +71 -60
- data/vendor/assets/javascripts/moment/es-do.js +108 -97
- data/vendor/assets/javascripts/moment/es-mx.js +109 -98
- data/vendor/assets/javascripts/moment/es-us.js +108 -97
- data/vendor/assets/javascripts/moment/es.js +109 -98
- data/vendor/assets/javascripts/moment/et.js +79 -68
- data/vendor/assets/javascripts/moment/eu.js +69 -58
- data/vendor/assets/javascripts/moment/fa.js +116 -105
- data/vendor/assets/javascripts/moment/fi.js +126 -115
- data/vendor/assets/javascripts/moment/fil.js +63 -52
- data/vendor/assets/javascripts/moment/fo.js +60 -49
- data/vendor/assets/javascripts/moment/fr-ca.js +73 -62
- data/vendor/assets/javascripts/moment/fr-ch.js +77 -66
- data/vendor/assets/javascripts/moment/fr.js +109 -98
- data/vendor/assets/javascripts/moment/fy.js +80 -69
- data/vendor/assets/javascripts/moment/ga.js +100 -89
- data/vendor/assets/javascripts/moment/gd.js +100 -89
- data/vendor/assets/javascripts/moment/gl.js +75 -64
- data/vendor/assets/javascripts/moment/gom-deva.js +129 -118
- data/vendor/assets/javascripts/moment/gom-latn.js +127 -116
- data/vendor/assets/javascripts/moment/gu.js +125 -114
- data/vendor/assets/javascripts/moment/he.js +93 -82
- data/vendor/assets/javascripts/moment/hi.js +165 -154
- data/vendor/assets/javascripts/moment/hr.js +154 -143
- data/vendor/assets/javascripts/moment/hu.js +117 -106
- data/vendor/assets/javascripts/moment/hy-am.js +96 -85
- data/vendor/assets/javascripts/moment/id.js +81 -70
- data/vendor/assets/javascripts/moment/is.js +136 -125
- data/vendor/assets/javascripts/moment/it-ch.js +68 -57
- data/vendor/assets/javascripts/moment/it.js +106 -95
- data/vendor/assets/javascripts/moment/ja.js +146 -135
- data/vendor/assets/javascripts/moment/jv.js +81 -70
- data/vendor/assets/javascripts/moment/ka.js +91 -80
- data/vendor/assets/javascripts/moment/kk.js +87 -76
- data/vendor/assets/javascripts/moment/km.js +106 -95
- data/vendor/assets/javascripts/moment/kn.js +127 -116
- data/vendor/assets/javascripts/moment/ko.js +80 -69
- data/vendor/assets/javascripts/moment/ku.js +123 -112
- data/vendor/assets/javascripts/moment/ky.js +89 -78
- data/vendor/assets/javascripts/moment/lb.js +132 -121
- data/vendor/assets/javascripts/moment/lo.js +70 -59
- data/vendor/assets/javascripts/moment/lt.js +123 -112
- data/vendor/assets/javascripts/moment/lv.js +95 -84
- data/vendor/assets/javascripts/moment/me.js +119 -108
- data/vendor/assets/javascripts/moment/mi.js +64 -53
- data/vendor/assets/javascripts/moment/mk.js +90 -78
- data/vendor/assets/javascripts/moment/ml.js +86 -75
- data/vendor/assets/javascripts/moment/mn.js +101 -90
- data/vendor/assets/javascripts/moment/mr.js +202 -191
- data/vendor/assets/javascripts/moment/ms-my.js +81 -70
- data/vendor/assets/javascripts/moment/ms.js +81 -70
- data/vendor/assets/javascripts/moment/mt.js +60 -49
- data/vendor/assets/javascripts/moment/my.js +93 -82
- data/vendor/assets/javascripts/moment/nb.js +64 -53
- data/vendor/assets/javascripts/moment/ne.js +124 -113
- data/vendor/assets/javascripts/moment/nl-be.js +103 -92
- data/vendor/assets/javascripts/moment/nl.js +105 -94
- data/vendor/assets/javascripts/moment/nn.js +64 -53
- data/vendor/assets/javascripts/moment/oc-lnc.js +87 -76
- data/vendor/assets/javascripts/moment/pa-in.js +125 -114
- data/vendor/assets/javascripts/moment/pl.js +138 -127
- data/vendor/assets/javascripts/moment/pt-br.js +61 -50
- data/vendor/assets/javascripts/moment/pt.js +66 -55
- data/vendor/assets/javascripts/moment/ro.js +76 -65
- data/vendor/assets/javascripts/moment/ru.js +198 -187
- data/vendor/assets/javascripts/moment/sd.js +86 -75
- data/vendor/assets/javascripts/moment/se.js +61 -50
- data/vendor/assets/javascripts/moment/si.js +73 -62
- data/vendor/assets/javascripts/moment/sk.js +146 -135
- data/vendor/assets/javascripts/moment/sl.js +170 -159
- data/vendor/assets/javascripts/moment/sq.js +69 -58
- data/vendor/assets/javascripts/moment/sr-cyrl.js +126 -115
- data/vendor/assets/javascripts/moment/sr.js +128 -117
- data/vendor/assets/javascripts/moment/ss.js +87 -76
- data/vendor/assets/javascripts/moment/sv.js +74 -63
- data/vendor/assets/javascripts/moment/sw.js +59 -48
- data/vendor/assets/javascripts/moment/ta.js +132 -121
- data/vendor/assets/javascripts/moment/te.js +92 -81
- data/vendor/assets/javascripts/moment/tet.js +72 -61
- data/vendor/assets/javascripts/moment/tg.js +120 -109
- data/vendor/assets/javascripts/moment/th.js +69 -58
- data/vendor/assets/javascripts/moment/tk.js +96 -85
- data/vendor/assets/javascripts/moment/tl-ph.js +63 -52
- data/vendor/assets/javascripts/moment/tlh.js +120 -109
- data/vendor/assets/javascripts/moment/tr.js +110 -99
- data/vendor/assets/javascripts/moment/tzl.js +93 -82
- data/vendor/assets/javascripts/moment/tzm-latn.js +58 -47
- data/vendor/assets/javascripts/moment/tzm.js +58 -47
- data/vendor/assets/javascripts/moment/ug-cn.js +114 -103
- data/vendor/assets/javascripts/moment/uk.js +163 -152
- data/vendor/assets/javascripts/moment/ur.js +86 -75
- data/vendor/assets/javascripts/moment/uz-latn.js +58 -47
- data/vendor/assets/javascripts/moment/uz.js +57 -46
- data/vendor/assets/javascripts/moment/vi.js +83 -72
- data/vendor/assets/javascripts/moment/x-pseudo.js +77 -66
- data/vendor/assets/javascripts/moment/yo.js +59 -48
- data/vendor/assets/javascripts/moment/zh-cn.js +118 -107
- data/vendor/assets/javascripts/moment/zh-hk.js +104 -93
- data/vendor/assets/javascripts/moment/zh-mo.js +104 -93
- data/vendor/assets/javascripts/moment/zh-tw.js +104 -93
- data/vendor/assets/javascripts/moment.js +5018 -5010
- metadata +2 -2
|
@@ -3,125 +3,136 @@
|
|
|
3
3
|
//! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
|
|
4
4
|
//! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
;(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined'
|
|
8
|
+
&& typeof require === 'function' ? factory(require('../moment')) :
|
|
9
|
+
typeof define === 'function' && define.amd ? define(['../moment'], factory) :
|
|
10
|
+
factory(global.moment)
|
|
11
|
+
}(this, (function (moment) { 'use strict';
|
|
7
12
|
|
|
8
|
-
|
|
9
|
-
words: {
|
|
10
|
-
//Different grammatical cases
|
|
11
|
-
ss: ['секунда', 'секунде', 'секунди'],
|
|
12
|
-
m: ['један минут', 'једног минута'],
|
|
13
|
-
mm: ['минут', 'минута', 'минута'],
|
|
14
|
-
h: ['један сат', 'једног сата'],
|
|
15
|
-
hh: ['сат', 'сата', 'сати'],
|
|
16
|
-
d: ['један дан', 'једног дана'],
|
|
17
|
-
dd: ['дан', 'дана', 'дана'],
|
|
18
|
-
M: ['један месец', 'једног месеца'],
|
|
19
|
-
MM: ['месец', 'месеца', 'месеци'],
|
|
20
|
-
y: ['једну годину', 'једне године'],
|
|
21
|
-
yy: ['годину', 'године', 'година'],
|
|
22
|
-
},
|
|
23
|
-
correctGrammaticalCase: function (number, wordKey) {
|
|
24
|
-
if (
|
|
25
|
-
number % 10 >= 1 &&
|
|
26
|
-
number % 10 <= 4 &&
|
|
27
|
-
(number % 100 < 10 || number % 100 >= 20)
|
|
28
|
-
) {
|
|
29
|
-
return number % 10 === 1 ? wordKey[0] : wordKey[1];
|
|
30
|
-
}
|
|
31
|
-
return wordKey[2];
|
|
32
|
-
},
|
|
33
|
-
translate: function (number, withoutSuffix, key, isFuture) {
|
|
34
|
-
var wordKey = translator.words[key],
|
|
35
|
-
word;
|
|
13
|
+
//! moment.js locale configuration
|
|
36
14
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
15
|
+
var translator = {
|
|
16
|
+
words: {
|
|
17
|
+
//Different grammatical cases
|
|
18
|
+
ss: ['секунда', 'секунде', 'секунди'],
|
|
19
|
+
m: ['један минут', 'једног минута'],
|
|
20
|
+
mm: ['минут', 'минута', 'минута'],
|
|
21
|
+
h: ['један сат', 'једног сата'],
|
|
22
|
+
hh: ['сат', 'сата', 'сати'],
|
|
23
|
+
d: ['један дан', 'једног дана'],
|
|
24
|
+
dd: ['дан', 'дана', 'дана'],
|
|
25
|
+
M: ['један месец', 'једног месеца'],
|
|
26
|
+
MM: ['месец', 'месеца', 'месеци'],
|
|
27
|
+
y: ['једну годину', 'једне године'],
|
|
28
|
+
yy: ['годину', 'године', 'година'],
|
|
29
|
+
},
|
|
30
|
+
correctGrammaticalCase: function (number, wordKey) {
|
|
31
|
+
if (
|
|
32
|
+
number % 10 >= 1 &&
|
|
33
|
+
number % 10 <= 4 &&
|
|
34
|
+
(number % 100 < 10 || number % 100 >= 20)
|
|
35
|
+
) {
|
|
36
|
+
return number % 10 === 1 ? wordKey[0] : wordKey[1];
|
|
37
|
+
}
|
|
38
|
+
return wordKey[2];
|
|
39
|
+
},
|
|
40
|
+
translate: function (number, withoutSuffix, key, isFuture) {
|
|
41
|
+
var wordKey = translator.words[key],
|
|
42
|
+
word;
|
|
48
43
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
44
|
+
if (key.length === 1) {
|
|
45
|
+
// Nominativ
|
|
46
|
+
if (key === 'y' && withoutSuffix) return 'једна година';
|
|
47
|
+
return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];
|
|
48
|
+
}
|
|
52
49
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
monthsShort:
|
|
58
|
-
'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),
|
|
59
|
-
monthsParseExact: true,
|
|
60
|
-
weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),
|
|
61
|
-
weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),
|
|
62
|
-
weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),
|
|
63
|
-
weekdaysParseExact: true,
|
|
64
|
-
longDateFormat: {
|
|
65
|
-
LT: 'H:mm',
|
|
66
|
-
LTS: 'H:mm:ss',
|
|
67
|
-
L: 'D. M. YYYY.',
|
|
68
|
-
LL: 'D. MMMM YYYY.',
|
|
69
|
-
LLL: 'D. MMMM YYYY. H:mm',
|
|
70
|
-
LLLL: 'dddd, D. MMMM YYYY. H:mm',
|
|
71
|
-
},
|
|
72
|
-
calendar: {
|
|
73
|
-
sameDay: '[данас у] LT',
|
|
74
|
-
nextDay: '[сутра у] LT',
|
|
75
|
-
nextWeek: function () {
|
|
76
|
-
switch (this.day()) {
|
|
77
|
-
case 0:
|
|
78
|
-
return '[у] [недељу] [у] LT';
|
|
79
|
-
case 3:
|
|
80
|
-
return '[у] [среду] [у] LT';
|
|
81
|
-
case 6:
|
|
82
|
-
return '[у] [суботу] [у] LT';
|
|
83
|
-
case 1:
|
|
84
|
-
case 2:
|
|
85
|
-
case 4:
|
|
86
|
-
case 5:
|
|
87
|
-
return '[у] dddd [у] LT';
|
|
50
|
+
word = translator.correctGrammaticalCase(number, wordKey);
|
|
51
|
+
// Nominativ
|
|
52
|
+
if (key === 'yy' && withoutSuffix && word === 'годину') {
|
|
53
|
+
return number + ' година';
|
|
88
54
|
}
|
|
55
|
+
|
|
56
|
+
return number + ' ' + word;
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
var srCyrl = moment.defineLocale('sr-cyrl', {
|
|
61
|
+
months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split(
|
|
62
|
+
'_'
|
|
63
|
+
),
|
|
64
|
+
monthsShort:
|
|
65
|
+
'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'),
|
|
66
|
+
monthsParseExact: true,
|
|
67
|
+
weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'),
|
|
68
|
+
weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'),
|
|
69
|
+
weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'),
|
|
70
|
+
weekdaysParseExact: true,
|
|
71
|
+
longDateFormat: {
|
|
72
|
+
LT: 'H:mm',
|
|
73
|
+
LTS: 'H:mm:ss',
|
|
74
|
+
L: 'D. M. YYYY.',
|
|
75
|
+
LL: 'D. MMMM YYYY.',
|
|
76
|
+
LLL: 'D. MMMM YYYY. H:mm',
|
|
77
|
+
LLLL: 'dddd, D. MMMM YYYY. H:mm',
|
|
78
|
+
},
|
|
79
|
+
calendar: {
|
|
80
|
+
sameDay: '[данас у] LT',
|
|
81
|
+
nextDay: '[сутра у] LT',
|
|
82
|
+
nextWeek: function () {
|
|
83
|
+
switch (this.day()) {
|
|
84
|
+
case 0:
|
|
85
|
+
return '[у] [недељу] [у] LT';
|
|
86
|
+
case 3:
|
|
87
|
+
return '[у] [среду] [у] LT';
|
|
88
|
+
case 6:
|
|
89
|
+
return '[у] [суботу] [у] LT';
|
|
90
|
+
case 1:
|
|
91
|
+
case 2:
|
|
92
|
+
case 4:
|
|
93
|
+
case 5:
|
|
94
|
+
return '[у] dddd [у] LT';
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
lastDay: '[јуче у] LT',
|
|
98
|
+
lastWeek: function () {
|
|
99
|
+
var lastWeekDays = [
|
|
100
|
+
'[прошле] [недеље] [у] LT',
|
|
101
|
+
'[прошлог] [понедељка] [у] LT',
|
|
102
|
+
'[прошлог] [уторка] [у] LT',
|
|
103
|
+
'[прошле] [среде] [у] LT',
|
|
104
|
+
'[прошлог] [четвртка] [у] LT',
|
|
105
|
+
'[прошлог] [петка] [у] LT',
|
|
106
|
+
'[прошле] [суботе] [у] LT',
|
|
107
|
+
];
|
|
108
|
+
return lastWeekDays[this.day()];
|
|
109
|
+
},
|
|
110
|
+
sameElse: 'L',
|
|
89
111
|
},
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
112
|
+
relativeTime: {
|
|
113
|
+
future: 'за %s',
|
|
114
|
+
past: 'пре %s',
|
|
115
|
+
s: 'неколико секунди',
|
|
116
|
+
ss: translator.translate,
|
|
117
|
+
m: translator.translate,
|
|
118
|
+
mm: translator.translate,
|
|
119
|
+
h: translator.translate,
|
|
120
|
+
hh: translator.translate,
|
|
121
|
+
d: translator.translate,
|
|
122
|
+
dd: translator.translate,
|
|
123
|
+
M: translator.translate,
|
|
124
|
+
MM: translator.translate,
|
|
125
|
+
y: translator.translate,
|
|
126
|
+
yy: translator.translate,
|
|
102
127
|
},
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
d: translator.translate,
|
|
115
|
-
dd: translator.translate,
|
|
116
|
-
M: translator.translate,
|
|
117
|
-
MM: translator.translate,
|
|
118
|
-
y: translator.translate,
|
|
119
|
-
yy: translator.translate,
|
|
120
|
-
},
|
|
121
|
-
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
|
122
|
-
ordinal: '%d.',
|
|
123
|
-
week: {
|
|
124
|
-
dow: 1, // Monday is the first day of the week.
|
|
125
|
-
doy: 7, // The week that contains Jan 1st is the first week of the year.
|
|
126
|
-
},
|
|
127
|
-
});
|
|
128
|
+
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
|
129
|
+
ordinal: '%d.',
|
|
130
|
+
week: {
|
|
131
|
+
dow: 1, // Monday is the first day of the week.
|
|
132
|
+
doy: 7, // The week that contains Jan 1st is the first week of the year.
|
|
133
|
+
},
|
|
134
|
+
});
|
|
135
|
+
|
|
136
|
+
return srCyrl;
|
|
137
|
+
|
|
138
|
+
})));
|
|
@@ -3,127 +3,138 @@
|
|
|
3
3
|
//! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
|
|
4
4
|
//! author : Stefan Crnjaković <stefan@hotmail.rs> : https://github.com/crnjakovic
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
;(function (global, factory) {
|
|
7
|
+
typeof exports === 'object' && typeof module !== 'undefined'
|
|
8
|
+
&& typeof require === 'function' ? factory(require('../moment')) :
|
|
9
|
+
typeof define === 'function' && define.amd ? define(['../moment'], factory) :
|
|
10
|
+
factory(global.moment)
|
|
11
|
+
}(this, (function (moment) { 'use strict';
|
|
7
12
|
|
|
8
|
-
|
|
9
|
-
words: {
|
|
10
|
-
//Different grammatical cases
|
|
11
|
-
ss: ['sekunda', 'sekunde', 'sekundi'],
|
|
12
|
-
m: ['jedan minut', 'jednog minuta'],
|
|
13
|
-
mm: ['minut', 'minuta', 'minuta'],
|
|
14
|
-
h: ['jedan sat', 'jednog sata'],
|
|
15
|
-
hh: ['sat', 'sata', 'sati'],
|
|
16
|
-
d: ['jedan dan', 'jednog dana'],
|
|
17
|
-
dd: ['dan', 'dana', 'dana'],
|
|
18
|
-
M: ['jedan mesec', 'jednog meseca'],
|
|
19
|
-
MM: ['mesec', 'meseca', 'meseci'],
|
|
20
|
-
y: ['jednu godinu', 'jedne godine'],
|
|
21
|
-
yy: ['godinu', 'godine', 'godina'],
|
|
22
|
-
},
|
|
23
|
-
correctGrammaticalCase: function (number, wordKey) {
|
|
24
|
-
if (
|
|
25
|
-
number % 10 >= 1 &&
|
|
26
|
-
number % 10 <= 4 &&
|
|
27
|
-
(number % 100 < 10 || number % 100 >= 20)
|
|
28
|
-
) {
|
|
29
|
-
return number % 10 === 1 ? wordKey[0] : wordKey[1];
|
|
30
|
-
}
|
|
31
|
-
return wordKey[2];
|
|
32
|
-
},
|
|
33
|
-
translate: function (number, withoutSuffix, key, isFuture) {
|
|
34
|
-
var wordKey = translator.words[key],
|
|
35
|
-
word;
|
|
13
|
+
//! moment.js locale configuration
|
|
36
14
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
15
|
+
var translator = {
|
|
16
|
+
words: {
|
|
17
|
+
//Different grammatical cases
|
|
18
|
+
ss: ['sekunda', 'sekunde', 'sekundi'],
|
|
19
|
+
m: ['jedan minut', 'jednog minuta'],
|
|
20
|
+
mm: ['minut', 'minuta', 'minuta'],
|
|
21
|
+
h: ['jedan sat', 'jednog sata'],
|
|
22
|
+
hh: ['sat', 'sata', 'sati'],
|
|
23
|
+
d: ['jedan dan', 'jednog dana'],
|
|
24
|
+
dd: ['dan', 'dana', 'dana'],
|
|
25
|
+
M: ['jedan mesec', 'jednog meseca'],
|
|
26
|
+
MM: ['mesec', 'meseca', 'meseci'],
|
|
27
|
+
y: ['jednu godinu', 'jedne godine'],
|
|
28
|
+
yy: ['godinu', 'godine', 'godina'],
|
|
29
|
+
},
|
|
30
|
+
correctGrammaticalCase: function (number, wordKey) {
|
|
31
|
+
if (
|
|
32
|
+
number % 10 >= 1 &&
|
|
33
|
+
number % 10 <= 4 &&
|
|
34
|
+
(number % 100 < 10 || number % 100 >= 20)
|
|
35
|
+
) {
|
|
36
|
+
return number % 10 === 1 ? wordKey[0] : wordKey[1];
|
|
37
|
+
}
|
|
38
|
+
return wordKey[2];
|
|
39
|
+
},
|
|
40
|
+
translate: function (number, withoutSuffix, key, isFuture) {
|
|
41
|
+
var wordKey = translator.words[key],
|
|
42
|
+
word;
|
|
48
43
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
44
|
+
if (key.length === 1) {
|
|
45
|
+
// Nominativ
|
|
46
|
+
if (key === 'y' && withoutSuffix) return 'jedna godina';
|
|
47
|
+
return isFuture || withoutSuffix ? wordKey[0] : wordKey[1];
|
|
48
|
+
}
|
|
52
49
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
monthsShort:
|
|
58
|
-
'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),
|
|
59
|
-
monthsParseExact: true,
|
|
60
|
-
weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(
|
|
61
|
-
'_'
|
|
62
|
-
),
|
|
63
|
-
weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),
|
|
64
|
-
weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
|
|
65
|
-
weekdaysParseExact: true,
|
|
66
|
-
longDateFormat: {
|
|
67
|
-
LT: 'H:mm',
|
|
68
|
-
LTS: 'H:mm:ss',
|
|
69
|
-
L: 'D. M. YYYY.',
|
|
70
|
-
LL: 'D. MMMM YYYY.',
|
|
71
|
-
LLL: 'D. MMMM YYYY. H:mm',
|
|
72
|
-
LLLL: 'dddd, D. MMMM YYYY. H:mm',
|
|
73
|
-
},
|
|
74
|
-
calendar: {
|
|
75
|
-
sameDay: '[danas u] LT',
|
|
76
|
-
nextDay: '[sutra u] LT',
|
|
77
|
-
nextWeek: function () {
|
|
78
|
-
switch (this.day()) {
|
|
79
|
-
case 0:
|
|
80
|
-
return '[u] [nedelju] [u] LT';
|
|
81
|
-
case 3:
|
|
82
|
-
return '[u] [sredu] [u] LT';
|
|
83
|
-
case 6:
|
|
84
|
-
return '[u] [subotu] [u] LT';
|
|
85
|
-
case 1:
|
|
86
|
-
case 2:
|
|
87
|
-
case 4:
|
|
88
|
-
case 5:
|
|
89
|
-
return '[u] dddd [u] LT';
|
|
50
|
+
word = translator.correctGrammaticalCase(number, wordKey);
|
|
51
|
+
// Nominativ
|
|
52
|
+
if (key === 'yy' && withoutSuffix && word === 'godinu') {
|
|
53
|
+
return number + ' godina';
|
|
90
54
|
}
|
|
55
|
+
|
|
56
|
+
return number + ' ' + word;
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
var sr = moment.defineLocale('sr', {
|
|
61
|
+
months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split(
|
|
62
|
+
'_'
|
|
63
|
+
),
|
|
64
|
+
monthsShort:
|
|
65
|
+
'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'),
|
|
66
|
+
monthsParseExact: true,
|
|
67
|
+
weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split(
|
|
68
|
+
'_'
|
|
69
|
+
),
|
|
70
|
+
weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'),
|
|
71
|
+
weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'),
|
|
72
|
+
weekdaysParseExact: true,
|
|
73
|
+
longDateFormat: {
|
|
74
|
+
LT: 'H:mm',
|
|
75
|
+
LTS: 'H:mm:ss',
|
|
76
|
+
L: 'D. M. YYYY.',
|
|
77
|
+
LL: 'D. MMMM YYYY.',
|
|
78
|
+
LLL: 'D. MMMM YYYY. H:mm',
|
|
79
|
+
LLLL: 'dddd, D. MMMM YYYY. H:mm',
|
|
80
|
+
},
|
|
81
|
+
calendar: {
|
|
82
|
+
sameDay: '[danas u] LT',
|
|
83
|
+
nextDay: '[sutra u] LT',
|
|
84
|
+
nextWeek: function () {
|
|
85
|
+
switch (this.day()) {
|
|
86
|
+
case 0:
|
|
87
|
+
return '[u] [nedelju] [u] LT';
|
|
88
|
+
case 3:
|
|
89
|
+
return '[u] [sredu] [u] LT';
|
|
90
|
+
case 6:
|
|
91
|
+
return '[u] [subotu] [u] LT';
|
|
92
|
+
case 1:
|
|
93
|
+
case 2:
|
|
94
|
+
case 4:
|
|
95
|
+
case 5:
|
|
96
|
+
return '[u] dddd [u] LT';
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
lastDay: '[juče u] LT',
|
|
100
|
+
lastWeek: function () {
|
|
101
|
+
var lastWeekDays = [
|
|
102
|
+
'[prošle] [nedelje] [u] LT',
|
|
103
|
+
'[prošlog] [ponedeljka] [u] LT',
|
|
104
|
+
'[prošlog] [utorka] [u] LT',
|
|
105
|
+
'[prošle] [srede] [u] LT',
|
|
106
|
+
'[prošlog] [četvrtka] [u] LT',
|
|
107
|
+
'[prošlog] [petka] [u] LT',
|
|
108
|
+
'[prošle] [subote] [u] LT',
|
|
109
|
+
];
|
|
110
|
+
return lastWeekDays[this.day()];
|
|
111
|
+
},
|
|
112
|
+
sameElse: 'L',
|
|
91
113
|
},
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
114
|
+
relativeTime: {
|
|
115
|
+
future: 'za %s',
|
|
116
|
+
past: 'pre %s',
|
|
117
|
+
s: 'nekoliko sekundi',
|
|
118
|
+
ss: translator.translate,
|
|
119
|
+
m: translator.translate,
|
|
120
|
+
mm: translator.translate,
|
|
121
|
+
h: translator.translate,
|
|
122
|
+
hh: translator.translate,
|
|
123
|
+
d: translator.translate,
|
|
124
|
+
dd: translator.translate,
|
|
125
|
+
M: translator.translate,
|
|
126
|
+
MM: translator.translate,
|
|
127
|
+
y: translator.translate,
|
|
128
|
+
yy: translator.translate,
|
|
104
129
|
},
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
d: translator.translate,
|
|
117
|
-
dd: translator.translate,
|
|
118
|
-
M: translator.translate,
|
|
119
|
-
MM: translator.translate,
|
|
120
|
-
y: translator.translate,
|
|
121
|
-
yy: translator.translate,
|
|
122
|
-
},
|
|
123
|
-
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
|
124
|
-
ordinal: '%d.',
|
|
125
|
-
week: {
|
|
126
|
-
dow: 1, // Monday is the first day of the week.
|
|
127
|
-
doy: 7, // The week that contains Jan 7th is the first week of the year.
|
|
128
|
-
},
|
|
129
|
-
});
|
|
130
|
+
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
|
131
|
+
ordinal: '%d.',
|
|
132
|
+
week: {
|
|
133
|
+
dow: 1, // Monday is the first day of the week.
|
|
134
|
+
doy: 7, // The week that contains Jan 7th is the first week of the year.
|
|
135
|
+
},
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
return sr;
|
|
139
|
+
|
|
140
|
+
})));
|