1 |
|
2 |
|
3 |
|
4 |
|
5 | import moment from '../moment';
|
6 |
|
7 | var months = {
|
8 | format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split(
|
9 | '_'
|
10 | ),
|
11 | standalone:
|
12 | 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split(
|
13 | '_'
|
14 | ),
|
15 | },
|
16 | monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'),
|
17 | monthsParse = [
|
18 | /^led/i,
|
19 | /^úno/i,
|
20 | /^bře/i,
|
21 | /^dub/i,
|
22 | /^kvě/i,
|
23 | /^(čvn|červen$|června)/i,
|
24 | /^(čvc|červenec|července)/i,
|
25 | /^srp/i,
|
26 | /^zář/i,
|
27 | /^říj/i,
|
28 | /^lis/i,
|
29 | /^pro/i,
|
30 | ],
|
31 |
|
32 |
|
33 | monthsRegex =
|
34 | /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i;
|
35 |
|
36 | function plural(n) {
|
37 | return n > 1 && n < 5 && ~~(n / 10) !== 1;
|
38 | }
|
39 | function translate(number, withoutSuffix, key, isFuture) {
|
40 | var result = number + ' ';
|
41 | switch (key) {
|
42 | case 's':
|
43 | return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami';
|
44 | case 'ss':
|
45 | if (withoutSuffix || isFuture) {
|
46 | return result + (plural(number) ? 'sekundy' : 'sekund');
|
47 | } else {
|
48 | return result + 'sekundami';
|
49 | }
|
50 | case 'm':
|
51 | return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou';
|
52 | case 'mm':
|
53 | if (withoutSuffix || isFuture) {
|
54 | return result + (plural(number) ? 'minuty' : 'minut');
|
55 | } else {
|
56 | return result + 'minutami';
|
57 | }
|
58 | case 'h':
|
59 | return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou';
|
60 | case 'hh':
|
61 | if (withoutSuffix || isFuture) {
|
62 | return result + (plural(number) ? 'hodiny' : 'hodin');
|
63 | } else {
|
64 | return result + 'hodinami';
|
65 | }
|
66 | case 'd':
|
67 | return withoutSuffix || isFuture ? 'den' : 'dnem';
|
68 | case 'dd':
|
69 | if (withoutSuffix || isFuture) {
|
70 | return result + (plural(number) ? 'dny' : 'dní');
|
71 | } else {
|
72 | return result + 'dny';
|
73 | }
|
74 | case 'M':
|
75 | return withoutSuffix || isFuture ? 'měsíc' : 'měsícem';
|
76 | case 'MM':
|
77 | if (withoutSuffix || isFuture) {
|
78 | return result + (plural(number) ? 'měsíce' : 'měsíců');
|
79 | } else {
|
80 | return result + 'měsíci';
|
81 | }
|
82 | case 'y':
|
83 | return withoutSuffix || isFuture ? 'rok' : 'rokem';
|
84 | case 'yy':
|
85 | if (withoutSuffix || isFuture) {
|
86 | return result + (plural(number) ? 'roky' : 'let');
|
87 | } else {
|
88 | return result + 'lety';
|
89 | }
|
90 | }
|
91 | }
|
92 |
|
93 | export default moment.defineLocale('cs', {
|
94 | months: months,
|
95 | monthsShort: monthsShort,
|
96 | monthsRegex: monthsRegex,
|
97 | monthsShortRegex: monthsRegex,
|
98 |
|
99 |
|
100 | monthsStrictRegex:
|
101 | /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,
|
102 | monthsShortStrictRegex:
|
103 | /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,
|
104 | monthsParse: monthsParse,
|
105 | longMonthsParse: monthsParse,
|
106 | shortMonthsParse: monthsParse,
|
107 | weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),
|
108 | weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'),
|
109 | weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'),
|
110 | longDateFormat: {
|
111 | LT: 'H:mm',
|
112 | LTS: 'H:mm:ss',
|
113 | L: 'DD.MM.YYYY',
|
114 | LL: 'D. MMMM YYYY',
|
115 | LLL: 'D. MMMM YYYY H:mm',
|
116 | LLLL: 'dddd D. MMMM YYYY H:mm',
|
117 | l: 'D. M. YYYY',
|
118 | },
|
119 | calendar: {
|
120 | sameDay: '[dnes v] LT',
|
121 | nextDay: '[zítra v] LT',
|
122 | nextWeek: function () {
|
123 | switch (this.day()) {
|
124 | case 0:
|
125 | return '[v neděli v] LT';
|
126 | case 1:
|
127 | case 2:
|
128 | return '[v] dddd [v] LT';
|
129 | case 3:
|
130 | return '[ve středu v] LT';
|
131 | case 4:
|
132 | return '[ve čtvrtek v] LT';
|
133 | case 5:
|
134 | return '[v pátek v] LT';
|
135 | case 6:
|
136 | return '[v sobotu v] LT';
|
137 | }
|
138 | },
|
139 | lastDay: '[včera v] LT',
|
140 | lastWeek: function () {
|
141 | switch (this.day()) {
|
142 | case 0:
|
143 | return '[minulou neděli v] LT';
|
144 | case 1:
|
145 | case 2:
|
146 | return '[minulé] dddd [v] LT';
|
147 | case 3:
|
148 | return '[minulou středu v] LT';
|
149 | case 4:
|
150 | case 5:
|
151 | return '[minulý] dddd [v] LT';
|
152 | case 6:
|
153 | return '[minulou sobotu v] LT';
|
154 | }
|
155 | },
|
156 | sameElse: 'L',
|
157 | },
|
158 | relativeTime: {
|
159 | future: 'za %s',
|
160 | past: 'před %s',
|
161 | s: translate,
|
162 | ss: translate,
|
163 | m: translate,
|
164 | mm: translate,
|
165 | h: translate,
|
166 | hh: translate,
|
167 | d: translate,
|
168 | dd: translate,
|
169 | M: translate,
|
170 | MM: translate,
|
171 | y: translate,
|
172 | yy: translate,
|
173 | },
|
174 | dayOfMonthOrdinalParse: /\d{1,2}\./,
|
175 | ordinal: '%d.',
|
176 | week: {
|
177 | dow: 1,
|
178 | doy: 4,
|
179 | },
|
180 | });
|