comparison query_builder/moment/min/moment-with-locales.js @ 26:22be4ea663a7

Trying to work out having json request from neo4j display properly in drop down selectize box
author arussell
date Tue, 01 Dec 2015 02:07:13 -0500
parents
children
comparison
equal deleted inserted replaced
25:f82512502b31 26:22be4ea663a7
1 (function (global, factory) {
2 typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
3 typeof define === 'function' && define.amd ? define(factory) :
4 global.moment = factory()
5 }(this, function () { 'use strict';
6
7 var hookCallback;
8
9 function utils_hooks__hooks () {
10 return hookCallback.apply(null, arguments);
11 }
12
13 // This is done to register the method called with moment()
14 // without creating circular dependencies.
15 function setHookCallback (callback) {
16 hookCallback = callback;
17 }
18
19 function isArray(input) {
20 return Object.prototype.toString.call(input) === '[object Array]';
21 }
22
23 function isDate(input) {
24 return input instanceof Date || Object.prototype.toString.call(input) === '[object Date]';
25 }
26
27 function map(arr, fn) {
28 var res = [], i;
29 for (i = 0; i < arr.length; ++i) {
30 res.push(fn(arr[i], i));
31 }
32 return res;
33 }
34
35 function hasOwnProp(a, b) {
36 return Object.prototype.hasOwnProperty.call(a, b);
37 }
38
39 function extend(a, b) {
40 for (var i in b) {
41 if (hasOwnProp(b, i)) {
42 a[i] = b[i];
43 }
44 }
45
46 if (hasOwnProp(b, 'toString')) {
47 a.toString = b.toString;
48 }
49
50 if (hasOwnProp(b, 'valueOf')) {
51 a.valueOf = b.valueOf;
52 }
53
54 return a;
55 }
56
57 function create_utc__createUTC (input, format, locale, strict) {
58 return createLocalOrUTC(input, format, locale, strict, true).utc();
59 }
60
61 function defaultParsingFlags() {
62 // We need to deep clone this object.
63 return {
64 empty : false,
65 unusedTokens : [],
66 unusedInput : [],
67 overflow : -2,
68 charsLeftOver : 0,
69 nullInput : false,
70 invalidMonth : null,
71 invalidFormat : false,
72 userInvalidated : false,
73 iso : false
74 };
75 }
76
77 function getParsingFlags(m) {
78 if (m._pf == null) {
79 m._pf = defaultParsingFlags();
80 }
81 return m._pf;
82 }
83
84 function valid__isValid(m) {
85 if (m._isValid == null) {
86 var flags = getParsingFlags(m);
87 m._isValid = !isNaN(m._d.getTime()) &&
88 flags.overflow < 0 &&
89 !flags.empty &&
90 !flags.invalidMonth &&
91 !flags.invalidWeekday &&
92 !flags.nullInput &&
93 !flags.invalidFormat &&
94 !flags.userInvalidated;
95
96 if (m._strict) {
97 m._isValid = m._isValid &&
98 flags.charsLeftOver === 0 &&
99 flags.unusedTokens.length === 0 &&
100 flags.bigHour === undefined;
101 }
102 }
103 return m._isValid;
104 }
105
106 function valid__createInvalid (flags) {
107 var m = create_utc__createUTC(NaN);
108 if (flags != null) {
109 extend(getParsingFlags(m), flags);
110 }
111 else {
112 getParsingFlags(m).userInvalidated = true;
113 }
114
115 return m;
116 }
117
118 var momentProperties = utils_hooks__hooks.momentProperties = [];
119
120 function copyConfig(to, from) {
121 var i, prop, val;
122
123 if (typeof from._isAMomentObject !== 'undefined') {
124 to._isAMomentObject = from._isAMomentObject;
125 }
126 if (typeof from._i !== 'undefined') {
127 to._i = from._i;
128 }
129 if (typeof from._f !== 'undefined') {
130 to._f = from._f;
131 }
132 if (typeof from._l !== 'undefined') {
133 to._l = from._l;
134 }
135 if (typeof from._strict !== 'undefined') {
136 to._strict = from._strict;
137 }
138 if (typeof from._tzm !== 'undefined') {
139 to._tzm = from._tzm;
140 }
141 if (typeof from._isUTC !== 'undefined') {
142 to._isUTC = from._isUTC;
143 }
144 if (typeof from._offset !== 'undefined') {
145 to._offset = from._offset;
146 }
147 if (typeof from._pf !== 'undefined') {
148 to._pf = getParsingFlags(from);
149 }
150 if (typeof from._locale !== 'undefined') {
151 to._locale = from._locale;
152 }
153
154 if (momentProperties.length > 0) {
155 for (i in momentProperties) {
156 prop = momentProperties[i];
157 val = from[prop];
158 if (typeof val !== 'undefined') {
159 to[prop] = val;
160 }
161 }
162 }
163
164 return to;
165 }
166
167 var updateInProgress = false;
168
169 // Moment prototype object
170 function Moment(config) {
171 copyConfig(this, config);
172 this._d = new Date(config._d != null ? config._d.getTime() : NaN);
173 // Prevent infinite loop in case updateOffset creates new moment
174 // objects.
175 if (updateInProgress === false) {
176 updateInProgress = true;
177 utils_hooks__hooks.updateOffset(this);
178 updateInProgress = false;
179 }
180 }
181
182 function isMoment (obj) {
183 return obj instanceof Moment || (obj != null && obj._isAMomentObject != null);
184 }
185
186 function absFloor (number) {
187 if (number < 0) {
188 return Math.ceil(number);
189 } else {
190 return Math.floor(number);
191 }
192 }
193
194 function toInt(argumentForCoercion) {
195 var coercedNumber = +argumentForCoercion,
196 value = 0;
197
198 if (coercedNumber !== 0 && isFinite(coercedNumber)) {
199 value = absFloor(coercedNumber);
200 }
201
202 return value;
203 }
204
205 function compareArrays(array1, array2, dontConvert) {
206 var len = Math.min(array1.length, array2.length),
207 lengthDiff = Math.abs(array1.length - array2.length),
208 diffs = 0,
209 i;
210 for (i = 0; i < len; i++) {
211 if ((dontConvert && array1[i] !== array2[i]) ||
212 (!dontConvert && toInt(array1[i]) !== toInt(array2[i]))) {
213 diffs++;
214 }
215 }
216 return diffs + lengthDiff;
217 }
218
219 function Locale() {
220 }
221
222 var locales = {};
223 var globalLocale;
224
225 function normalizeLocale(key) {
226 return key ? key.toLowerCase().replace('_', '-') : key;
227 }
228
229 // pick the locale from the array
230 // try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each
231 // substring from most specific to least, but move to the next array item if it's a more specific variant than the current root
232 function chooseLocale(names) {
233 var i = 0, j, next, locale, split;
234
235 while (i < names.length) {
236 split = normalizeLocale(names[i]).split('-');
237 j = split.length;
238 next = normalizeLocale(names[i + 1]);
239 next = next ? next.split('-') : null;
240 while (j > 0) {
241 locale = loadLocale(split.slice(0, j).join('-'));
242 if (locale) {
243 return locale;
244 }
245 if (next && next.length >= j && compareArrays(split, next, true) >= j - 1) {
246 //the next array item is better than a shallower substring of this one
247 break;
248 }
249 j--;
250 }
251 i++;
252 }
253 return null;
254 }
255
256 function loadLocale(name) {
257 var oldLocale = null;
258 // TODO: Find a better way to register and load all the locales in Node
259 if (!locales[name] && typeof module !== 'undefined' &&
260 module && module.exports) {
261 try {
262 oldLocale = globalLocale._abbr;
263 require('./locale/' + name);
264 // because defineLocale currently also sets the global locale, we
265 // want to undo that for lazy loaded locales
266 locale_locales__getSetGlobalLocale(oldLocale);
267 } catch (e) { }
268 }
269 return locales[name];
270 }
271
272 // This function will load locale and then set the global locale. If
273 // no arguments are passed in, it will simply return the current global
274 // locale key.
275 function locale_locales__getSetGlobalLocale (key, values) {
276 var data;
277 if (key) {
278 if (typeof values === 'undefined') {
279 data = locale_locales__getLocale(key);
280 }
281 else {
282 data = defineLocale(key, values);
283 }
284
285 if (data) {
286 // moment.duration._locale = moment._locale = data;
287 globalLocale = data;
288 }
289 }
290
291 return globalLocale._abbr;
292 }
293
294 function defineLocale (name, values) {
295 if (values !== null) {
296 values.abbr = name;
297 locales[name] = locales[name] || new Locale();
298 locales[name].set(values);
299
300 // backwards compat for now: also set the locale
301 locale_locales__getSetGlobalLocale(name);
302
303 return locales[name];
304 } else {
305 // useful for testing
306 delete locales[name];
307 return null;
308 }
309 }
310
311 // returns locale data
312 function locale_locales__getLocale (key) {
313 var locale;
314
315 if (key && key._locale && key._locale._abbr) {
316 key = key._locale._abbr;
317 }
318
319 if (!key) {
320 return globalLocale;
321 }
322
323 if (!isArray(key)) {
324 //short-circuit everything else
325 locale = loadLocale(key);
326 if (locale) {
327 return locale;
328 }
329 key = [key];
330 }
331
332 return chooseLocale(key);
333 }
334
335 var aliases = {};
336
337 function addUnitAlias (unit, shorthand) {
338 var lowerCase = unit.toLowerCase();
339 aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit;
340 }
341
342 function normalizeUnits(units) {
343 return typeof units === 'string' ? aliases[units] || aliases[units.toLowerCase()] : undefined;
344 }
345
346 function normalizeObjectUnits(inputObject) {
347 var normalizedInput = {},
348 normalizedProp,
349 prop;
350
351 for (prop in inputObject) {
352 if (hasOwnProp(inputObject, prop)) {
353 normalizedProp = normalizeUnits(prop);
354 if (normalizedProp) {
355 normalizedInput[normalizedProp] = inputObject[prop];
356 }
357 }
358 }
359
360 return normalizedInput;
361 }
362
363 function makeGetSet (unit, keepTime) {
364 return function (value) {
365 if (value != null) {
366 get_set__set(this, unit, value);
367 utils_hooks__hooks.updateOffset(this, keepTime);
368 return this;
369 } else {
370 return get_set__get(this, unit);
371 }
372 };
373 }
374
375 function get_set__get (mom, unit) {
376 return mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]();
377 }
378
379 function get_set__set (mom, unit, value) {
380 return mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value);
381 }
382
383 // MOMENTS
384
385 function getSet (units, value) {
386 var unit;
387 if (typeof units === 'object') {
388 for (unit in units) {
389 this.set(unit, units[unit]);
390 }
391 } else {
392 units = normalizeUnits(units);
393 if (typeof this[units] === 'function') {
394 return this[units](value);
395 }
396 }
397 return this;
398 }
399
400 function zeroFill(number, targetLength, forceSign) {
401 var absNumber = '' + Math.abs(number),
402 zerosToFill = targetLength - absNumber.length,
403 sign = number >= 0;
404 return (sign ? (forceSign ? '+' : '') : '-') +
405 Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + absNumber;
406 }
407
408 var formattingTokens = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Q|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;
409
410 var localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g;
411
412 var formatFunctions = {};
413
414 var formatTokenFunctions = {};
415
416 // token: 'M'
417 // padded: ['MM', 2]
418 // ordinal: 'Mo'
419 // callback: function () { this.month() + 1 }
420 function addFormatToken (token, padded, ordinal, callback) {
421 var func = callback;
422 if (typeof callback === 'string') {
423 func = function () {
424 return this[callback]();
425 };
426 }
427 if (token) {
428 formatTokenFunctions[token] = func;
429 }
430 if (padded) {
431 formatTokenFunctions[padded[0]] = function () {
432 return zeroFill(func.apply(this, arguments), padded[1], padded[2]);
433 };
434 }
435 if (ordinal) {
436 formatTokenFunctions[ordinal] = function () {
437 return this.localeData().ordinal(func.apply(this, arguments), token);
438 };
439 }
440 }
441
442 function removeFormattingTokens(input) {
443 if (input.match(/\[[\s\S]/)) {
444 return input.replace(/^\[|\]$/g, '');
445 }
446 return input.replace(/\\/g, '');
447 }
448
449 function makeFormatFunction(format) {
450 var array = format.match(formattingTokens), i, length;
451
452 for (i = 0, length = array.length; i < length; i++) {
453 if (formatTokenFunctions[array[i]]) {
454 array[i] = formatTokenFunctions[array[i]];
455 } else {
456 array[i] = removeFormattingTokens(array[i]);
457 }
458 }
459
460 return function (mom) {
461 var output = '';
462 for (i = 0; i < length; i++) {
463 output += array[i] instanceof Function ? array[i].call(mom, format) : array[i];
464 }
465 return output;
466 };
467 }
468
469 // format date using native date object
470 function formatMoment(m, format) {
471 if (!m.isValid()) {
472 return m.localeData().invalidDate();
473 }
474
475 format = expandFormat(format, m.localeData());
476 formatFunctions[format] = formatFunctions[format] || makeFormatFunction(format);
477
478 return formatFunctions[format](m);
479 }
480
481 function expandFormat(format, locale) {
482 var i = 5;
483
484 function replaceLongDateFormatTokens(input) {
485 return locale.longDateFormat(input) || input;
486 }
487
488 localFormattingTokens.lastIndex = 0;
489 while (i >= 0 && localFormattingTokens.test(format)) {
490 format = format.replace(localFormattingTokens, replaceLongDateFormatTokens);
491 localFormattingTokens.lastIndex = 0;
492 i -= 1;
493 }
494
495 return format;
496 }
497
498 var match1 = /\d/; // 0 - 9
499 var match2 = /\d\d/; // 00 - 99
500 var match3 = /\d{3}/; // 000 - 999
501 var match4 = /\d{4}/; // 0000 - 9999
502 var match6 = /[+-]?\d{6}/; // -999999 - 999999
503 var match1to2 = /\d\d?/; // 0 - 99
504 var match1to3 = /\d{1,3}/; // 0 - 999
505 var match1to4 = /\d{1,4}/; // 0 - 9999
506 var match1to6 = /[+-]?\d{1,6}/; // -999999 - 999999
507
508 var matchUnsigned = /\d+/; // 0 - inf
509 var matchSigned = /[+-]?\d+/; // -inf - inf
510
511 var matchOffset = /Z|[+-]\d\d:?\d\d/gi; // +00:00 -00:00 +0000 -0000 or Z
512
513 var matchTimestamp = /[+-]?\d+(\.\d{1,3})?/; // 123456789 123456789.123
514
515 // any word (or two) characters or numbers including two/three word month in arabic.
516 var matchWord = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i;
517
518 var regexes = {};
519
520 function isFunction (sth) {
521 // https://github.com/moment/moment/issues/2325
522 return typeof sth === 'function' &&
523 Object.prototype.toString.call(sth) === '[object Function]';
524 }
525
526
527 function addRegexToken (token, regex, strictRegex) {
528 regexes[token] = isFunction(regex) ? regex : function (isStrict) {
529 return (isStrict && strictRegex) ? strictRegex : regex;
530 };
531 }
532
533 function getParseRegexForToken (token, config) {
534 if (!hasOwnProp(regexes, token)) {
535 return new RegExp(unescapeFormat(token));
536 }
537
538 return regexes[token](config._strict, config._locale);
539 }
540
541 // Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript
542 function unescapeFormat(s) {
543 return s.replace('\\', '').replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (matched, p1, p2, p3, p4) {
544 return p1 || p2 || p3 || p4;
545 }).replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&');
546 }
547
548 var tokens = {};
549
550 function addParseToken (token, callback) {
551 var i, func = callback;
552 if (typeof token === 'string') {
553 token = [token];
554 }
555 if (typeof callback === 'number') {
556 func = function (input, array) {
557 array[callback] = toInt(input);
558 };
559 }
560 for (i = 0; i < token.length; i++) {
561 tokens[token[i]] = func;
562 }
563 }
564
565 function addWeekParseToken (token, callback) {
566 addParseToken(token, function (input, array, config, token) {
567 config._w = config._w || {};
568 callback(input, config._w, config, token);
569 });
570 }
571
572 function addTimeToArrayFromToken(token, input, config) {
573 if (input != null && hasOwnProp(tokens, token)) {
574 tokens[token](input, config._a, config, token);
575 }
576 }
577
578 var YEAR = 0;
579 var MONTH = 1;
580 var DATE = 2;
581 var HOUR = 3;
582 var MINUTE = 4;
583 var SECOND = 5;
584 var MILLISECOND = 6;
585
586 function daysInMonth(year, month) {
587 return new Date(Date.UTC(year, month + 1, 0)).getUTCDate();
588 }
589
590 // FORMATTING
591
592 addFormatToken('M', ['MM', 2], 'Mo', function () {
593 return this.month() + 1;
594 });
595
596 addFormatToken('MMM', 0, 0, function (format) {
597 return this.localeData().monthsShort(this, format);
598 });
599
600 addFormatToken('MMMM', 0, 0, function (format) {
601 return this.localeData().months(this, format);
602 });
603
604 // ALIASES
605
606 addUnitAlias('month', 'M');
607
608 // PARSING
609
610 addRegexToken('M', match1to2);
611 addRegexToken('MM', match1to2, match2);
612 addRegexToken('MMM', matchWord);
613 addRegexToken('MMMM', matchWord);
614
615 addParseToken(['M', 'MM'], function (input, array) {
616 array[MONTH] = toInt(input) - 1;
617 });
618
619 addParseToken(['MMM', 'MMMM'], function (input, array, config, token) {
620 var month = config._locale.monthsParse(input, token, config._strict);
621 // if we didn't find a month name, mark the date as invalid.
622 if (month != null) {
623 array[MONTH] = month;
624 } else {
625 getParsingFlags(config).invalidMonth = input;
626 }
627 });
628
629 // LOCALES
630
631 var defaultLocaleMonths = 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_');
632 function localeMonths (m) {
633 return this._months[m.month()];
634 }
635
636 var defaultLocaleMonthsShort = 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_');
637 function localeMonthsShort (m) {
638 return this._monthsShort[m.month()];
639 }
640
641 function localeMonthsParse (monthName, format, strict) {
642 var i, mom, regex;
643
644 if (!this._monthsParse) {
645 this._monthsParse = [];
646 this._longMonthsParse = [];
647 this._shortMonthsParse = [];
648 }
649
650 for (i = 0; i < 12; i++) {
651 // make the regex if we don't have it already
652 mom = create_utc__createUTC([2000, i]);
653 if (strict && !this._longMonthsParse[i]) {
654 this._longMonthsParse[i] = new RegExp('^' + this.months(mom, '').replace('.', '') + '$', 'i');
655 this._shortMonthsParse[i] = new RegExp('^' + this.monthsShort(mom, '').replace('.', '') + '$', 'i');
656 }
657 if (!strict && !this._monthsParse[i]) {
658 regex = '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, '');
659 this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i');
660 }
661 // test the regex
662 if (strict && format === 'MMMM' && this._longMonthsParse[i].test(monthName)) {
663 return i;
664 } else if (strict && format === 'MMM' && this._shortMonthsParse[i].test(monthName)) {
665 return i;
666 } else if (!strict && this._monthsParse[i].test(monthName)) {
667 return i;
668 }
669 }
670 }
671
672 // MOMENTS
673
674 function setMonth (mom, value) {
675 var dayOfMonth;
676
677 // TODO: Move this out of here!
678 if (typeof value === 'string') {
679 value = mom.localeData().monthsParse(value);
680 // TODO: Another silent failure?
681 if (typeof value !== 'number') {
682 return mom;
683 }
684 }
685
686 dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value));
687 mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth);
688 return mom;
689 }
690
691 function getSetMonth (value) {
692 if (value != null) {
693 setMonth(this, value);
694 utils_hooks__hooks.updateOffset(this, true);
695 return this;
696 } else {
697 return get_set__get(this, 'Month');
698 }
699 }
700
701 function getDaysInMonth () {
702 return daysInMonth(this.year(), this.month());
703 }
704
705 function checkOverflow (m) {
706 var overflow;
707 var a = m._a;
708
709 if (a && getParsingFlags(m).overflow === -2) {
710 overflow =
711 a[MONTH] < 0 || a[MONTH] > 11 ? MONTH :
712 a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) ? DATE :
713 a[HOUR] < 0 || a[HOUR] > 24 || (a[HOUR] === 24 && (a[MINUTE] !== 0 || a[SECOND] !== 0 || a[MILLISECOND] !== 0)) ? HOUR :
714 a[MINUTE] < 0 || a[MINUTE] > 59 ? MINUTE :
715 a[SECOND] < 0 || a[SECOND] > 59 ? SECOND :
716 a[MILLISECOND] < 0 || a[MILLISECOND] > 999 ? MILLISECOND :
717 -1;
718
719 if (getParsingFlags(m)._overflowDayOfYear && (overflow < YEAR || overflow > DATE)) {
720 overflow = DATE;
721 }
722
723 getParsingFlags(m).overflow = overflow;
724 }
725
726 return m;
727 }
728
729 function warn(msg) {
730 if (utils_hooks__hooks.suppressDeprecationWarnings === false && typeof console !== 'undefined' && console.warn) {
731 console.warn('Deprecation warning: ' + msg);
732 }
733 }
734
735 function deprecate(msg, fn) {
736 var firstTime = true;
737
738 return extend(function () {
739 if (firstTime) {
740 warn(msg + '\n' + (new Error()).stack);
741 firstTime = false;
742 }
743 return fn.apply(this, arguments);
744 }, fn);
745 }
746
747 var deprecations = {};
748
749 function deprecateSimple(name, msg) {
750 if (!deprecations[name]) {
751 warn(msg);
752 deprecations[name] = true;
753 }
754 }
755
756 utils_hooks__hooks.suppressDeprecationWarnings = false;
757
758 var from_string__isoRegex = /^\s*(?:[+-]\d{6}|\d{4})-(?:(\d\d-\d\d)|(W\d\d$)|(W\d\d-\d)|(\d\d\d))((T| )(\d\d(:\d\d(:\d\d(\.\d+)?)?)?)?([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/;
759
760 var isoDates = [
761 ['YYYYYY-MM-DD', /[+-]\d{6}-\d{2}-\d{2}/],
762 ['YYYY-MM-DD', /\d{4}-\d{2}-\d{2}/],
763 ['GGGG-[W]WW-E', /\d{4}-W\d{2}-\d/],
764 ['GGGG-[W]WW', /\d{4}-W\d{2}/],
765 ['YYYY-DDD', /\d{4}-\d{3}/]
766 ];
767
768 // iso time formats and regexes
769 var isoTimes = [
770 ['HH:mm:ss.SSSS', /(T| )\d\d:\d\d:\d\d\.\d+/],
771 ['HH:mm:ss', /(T| )\d\d:\d\d:\d\d/],
772 ['HH:mm', /(T| )\d\d:\d\d/],
773 ['HH', /(T| )\d\d/]
774 ];
775
776 var aspNetJsonRegex = /^\/?Date\((\-?\d+)/i;
777
778 // date from iso format
779 function configFromISO(config) {
780 var i, l,
781 string = config._i,
782 match = from_string__isoRegex.exec(string);
783
784 if (match) {
785 getParsingFlags(config).iso = true;
786 for (i = 0, l = isoDates.length; i < l; i++) {
787 if (isoDates[i][1].exec(string)) {
788 config._f = isoDates[i][0];
789 break;
790 }
791 }
792 for (i = 0, l = isoTimes.length; i < l; i++) {
793 if (isoTimes[i][1].exec(string)) {
794 // match[6] should be 'T' or space
795 config._f += (match[6] || ' ') + isoTimes[i][0];
796 break;
797 }
798 }
799 if (string.match(matchOffset)) {
800 config._f += 'Z';
801 }
802 configFromStringAndFormat(config);
803 } else {
804 config._isValid = false;
805 }
806 }
807
808 // date from iso format or fallback
809 function configFromString(config) {
810 var matched = aspNetJsonRegex.exec(config._i);
811
812 if (matched !== null) {
813 config._d = new Date(+matched[1]);
814 return;
815 }
816
817 configFromISO(config);
818 if (config._isValid === false) {
819 delete config._isValid;
820 utils_hooks__hooks.createFromInputFallback(config);
821 }
822 }
823
824 utils_hooks__hooks.createFromInputFallback = deprecate(
825 'moment construction falls back to js Date. This is ' +
826 'discouraged and will be removed in upcoming major ' +
827 'release. Please refer to ' +
828 'https://github.com/moment/moment/issues/1407 for more info.',
829 function (config) {
830 config._d = new Date(config._i + (config._useUTC ? ' UTC' : ''));
831 }
832 );
833
834 function createDate (y, m, d, h, M, s, ms) {
835 //can't just apply() to create a date:
836 //http://stackoverflow.com/questions/181348/instantiating-a-javascript-object-by-calling-prototype-constructor-apply
837 var date = new Date(y, m, d, h, M, s, ms);
838
839 //the date constructor doesn't accept years < 1970
840 if (y < 1970) {
841 date.setFullYear(y);
842 }
843 return date;
844 }
845
846 function createUTCDate (y) {
847 var date = new Date(Date.UTC.apply(null, arguments));
848 if (y < 1970) {
849 date.setUTCFullYear(y);
850 }
851 return date;
852 }
853
854 addFormatToken(0, ['YY', 2], 0, function () {
855 return this.year() % 100;
856 });
857
858 addFormatToken(0, ['YYYY', 4], 0, 'year');
859 addFormatToken(0, ['YYYYY', 5], 0, 'year');
860 addFormatToken(0, ['YYYYYY', 6, true], 0, 'year');
861
862 // ALIASES
863
864 addUnitAlias('year', 'y');
865
866 // PARSING
867
868 addRegexToken('Y', matchSigned);
869 addRegexToken('YY', match1to2, match2);
870 addRegexToken('YYYY', match1to4, match4);
871 addRegexToken('YYYYY', match1to6, match6);
872 addRegexToken('YYYYYY', match1to6, match6);
873
874 addParseToken(['YYYYY', 'YYYYYY'], YEAR);
875 addParseToken('YYYY', function (input, array) {
876 array[YEAR] = input.length === 2 ? utils_hooks__hooks.parseTwoDigitYear(input) : toInt(input);
877 });
878 addParseToken('YY', function (input, array) {
879 array[YEAR] = utils_hooks__hooks.parseTwoDigitYear(input);
880 });
881
882 // HELPERS
883
884 function daysInYear(year) {
885 return isLeapYear(year) ? 366 : 365;
886 }
887
888 function isLeapYear(year) {
889 return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0;
890 }
891
892 // HOOKS
893
894 utils_hooks__hooks.parseTwoDigitYear = function (input) {
895 return toInt(input) + (toInt(input) > 68 ? 1900 : 2000);
896 };
897
898 // MOMENTS
899
900 var getSetYear = makeGetSet('FullYear', false);
901
902 function getIsLeapYear () {
903 return isLeapYear(this.year());
904 }
905
906 addFormatToken('w', ['ww', 2], 'wo', 'week');
907 addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek');
908
909 // ALIASES
910
911 addUnitAlias('week', 'w');
912 addUnitAlias('isoWeek', 'W');
913
914 // PARSING
915
916 addRegexToken('w', match1to2);
917 addRegexToken('ww', match1to2, match2);
918 addRegexToken('W', match1to2);
919 addRegexToken('WW', match1to2, match2);
920
921 addWeekParseToken(['w', 'ww', 'W', 'WW'], function (input, week, config, token) {
922 week[token.substr(0, 1)] = toInt(input);
923 });
924
925 // HELPERS
926
927 // firstDayOfWeek 0 = sun, 6 = sat
928 // the day of the week that starts the week
929 // (usually sunday or monday)
930 // firstDayOfWeekOfYear 0 = sun, 6 = sat
931 // the first week is the week that contains the first
932 // of this day of the week
933 // (eg. ISO weeks use thursday (4))
934 function weekOfYear(mom, firstDayOfWeek, firstDayOfWeekOfYear) {
935 var end = firstDayOfWeekOfYear - firstDayOfWeek,
936 daysToDayOfWeek = firstDayOfWeekOfYear - mom.day(),
937 adjustedMoment;
938
939
940 if (daysToDayOfWeek > end) {
941 daysToDayOfWeek -= 7;
942 }
943
944 if (daysToDayOfWeek < end - 7) {
945 daysToDayOfWeek += 7;
946 }
947
948 adjustedMoment = local__createLocal(mom).add(daysToDayOfWeek, 'd');
949 return {
950 week: Math.ceil(adjustedMoment.dayOfYear() / 7),
951 year: adjustedMoment.year()
952 };
953 }
954
955 // LOCALES
956
957 function localeWeek (mom) {
958 return weekOfYear(mom, this._week.dow, this._week.doy).week;
959 }
960
961 var defaultLocaleWeek = {
962 dow : 0, // Sunday is the first day of the week.
963 doy : 6 // The week that contains Jan 1st is the first week of the year.
964 };
965
966 function localeFirstDayOfWeek () {
967 return this._week.dow;
968 }
969
970 function localeFirstDayOfYear () {
971 return this._week.doy;
972 }
973
974 // MOMENTS
975
976 function getSetWeek (input) {
977 var week = this.localeData().week(this);
978 return input == null ? week : this.add((input - week) * 7, 'd');
979 }
980
981 function getSetISOWeek (input) {
982 var week = weekOfYear(this, 1, 4).week;
983 return input == null ? week : this.add((input - week) * 7, 'd');
984 }
985
986 addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear');
987
988 // ALIASES
989
990 addUnitAlias('dayOfYear', 'DDD');
991
992 // PARSING
993
994 addRegexToken('DDD', match1to3);
995 addRegexToken('DDDD', match3);
996 addParseToken(['DDD', 'DDDD'], function (input, array, config) {
997 config._dayOfYear = toInt(input);
998 });
999
1000 // HELPERS
1001
1002 //http://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday
1003 function dayOfYearFromWeeks(year, week, weekday, firstDayOfWeekOfYear, firstDayOfWeek) {
1004 var week1Jan = 6 + firstDayOfWeek - firstDayOfWeekOfYear, janX = createUTCDate(year, 0, 1 + week1Jan), d = janX.getUTCDay(), dayOfYear;
1005 if (d < firstDayOfWeek) {
1006 d += 7;
1007 }
1008
1009 weekday = weekday != null ? 1 * weekday : firstDayOfWeek;
1010
1011 dayOfYear = 1 + week1Jan + 7 * (week - 1) - d + weekday;
1012
1013 return {
1014 year: dayOfYear > 0 ? year : year - 1,
1015 dayOfYear: dayOfYear > 0 ? dayOfYear : daysInYear(year - 1) + dayOfYear
1016 };
1017 }
1018
1019 // MOMENTS
1020
1021 function getSetDayOfYear (input) {
1022 var dayOfYear = Math.round((this.clone().startOf('day') - this.clone().startOf('year')) / 864e5) + 1;
1023 return input == null ? dayOfYear : this.add((input - dayOfYear), 'd');
1024 }
1025
1026 // Pick the first defined of two or three arguments.
1027 function defaults(a, b, c) {
1028 if (a != null) {
1029 return a;
1030 }
1031 if (b != null) {
1032 return b;
1033 }
1034 return c;
1035 }
1036
1037 function currentDateArray(config) {
1038 var now = new Date();
1039 if (config._useUTC) {
1040 return [now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate()];
1041 }
1042 return [now.getFullYear(), now.getMonth(), now.getDate()];
1043 }
1044
1045 // convert an array to a date.
1046 // the array should mirror the parameters below
1047 // note: all values past the year are optional and will default to the lowest possible value.
1048 // [year, month, day , hour, minute, second, millisecond]
1049 function configFromArray (config) {
1050 var i, date, input = [], currentDate, yearToUse;
1051
1052 if (config._d) {
1053 return;
1054 }
1055
1056 currentDate = currentDateArray(config);
1057
1058 //compute day of the year from weeks and weekdays
1059 if (config._w && config._a[DATE] == null && config._a[MONTH] == null) {
1060 dayOfYearFromWeekInfo(config);
1061 }
1062
1063 //if the day of the year is set, figure out what it is
1064 if (config._dayOfYear) {
1065 yearToUse = defaults(config._a[YEAR], currentDate[YEAR]);
1066
1067 if (config._dayOfYear > daysInYear(yearToUse)) {
1068 getParsingFlags(config)._overflowDayOfYear = true;
1069 }
1070
1071 date = createUTCDate(yearToUse, 0, config._dayOfYear);
1072 config._a[MONTH] = date.getUTCMonth();
1073 config._a[DATE] = date.getUTCDate();
1074 }
1075
1076 // Default to current date.
1077 // * if no year, month, day of month are given, default to today
1078 // * if day of month is given, default month and year
1079 // * if month is given, default only year
1080 // * if year is given, don't default anything
1081 for (i = 0; i < 3 && config._a[i] == null; ++i) {
1082 config._a[i] = input[i] = currentDate[i];
1083 }
1084
1085 // Zero out whatever was not defaulted, including time
1086 for (; i < 7; i++) {
1087 config._a[i] = input[i] = (config._a[i] == null) ? (i === 2 ? 1 : 0) : config._a[i];
1088 }
1089
1090 // Check for 24:00:00.000
1091 if (config._a[HOUR] === 24 &&
1092 config._a[MINUTE] === 0 &&
1093 config._a[SECOND] === 0 &&
1094 config._a[MILLISECOND] === 0) {
1095 config._nextDay = true;
1096 config._a[HOUR] = 0;
1097 }
1098
1099 config._d = (config._useUTC ? createUTCDate : createDate).apply(null, input);
1100 // Apply timezone offset from input. The actual utcOffset can be changed
1101 // with parseZone.
1102 if (config._tzm != null) {
1103 config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm);
1104 }
1105
1106 if (config._nextDay) {
1107 config._a[HOUR] = 24;
1108 }
1109 }
1110
1111 function dayOfYearFromWeekInfo(config) {
1112 var w, weekYear, week, weekday, dow, doy, temp;
1113
1114 w = config._w;
1115 if (w.GG != null || w.W != null || w.E != null) {
1116 dow = 1;
1117 doy = 4;
1118
1119 // TODO: We need to take the current isoWeekYear, but that depends on
1120 // how we interpret now (local, utc, fixed offset). So create
1121 // a now version of current config (take local/utc/offset flags, and
1122 // create now).
1123 weekYear = defaults(w.GG, config._a[YEAR], weekOfYear(local__createLocal(), 1, 4).year);
1124 week = defaults(w.W, 1);
1125 weekday = defaults(w.E, 1);
1126 } else {
1127 dow = config._locale._week.dow;
1128 doy = config._locale._week.doy;
1129
1130 weekYear = defaults(w.gg, config._a[YEAR], weekOfYear(local__createLocal(), dow, doy).year);
1131 week = defaults(w.w, 1);
1132
1133 if (w.d != null) {
1134 // weekday -- low day numbers are considered next week
1135 weekday = w.d;
1136 if (weekday < dow) {
1137 ++week;
1138 }
1139 } else if (w.e != null) {
1140 // local weekday -- counting starts from begining of week
1141 weekday = w.e + dow;
1142 } else {
1143 // default to begining of week
1144 weekday = dow;
1145 }
1146 }
1147 temp = dayOfYearFromWeeks(weekYear, week, weekday, doy, dow);
1148
1149 config._a[YEAR] = temp.year;
1150 config._dayOfYear = temp.dayOfYear;
1151 }
1152
1153 utils_hooks__hooks.ISO_8601 = function () {};
1154
1155 // date from string and format string
1156 function configFromStringAndFormat(config) {
1157 // TODO: Move this to another part of the creation flow to prevent circular deps
1158 if (config._f === utils_hooks__hooks.ISO_8601) {
1159 configFromISO(config);
1160 return;
1161 }
1162
1163 config._a = [];
1164 getParsingFlags(config).empty = true;
1165
1166 // This array is used to make a Date, either with `new Date` or `Date.UTC`
1167 var string = '' + config._i,
1168 i, parsedInput, tokens, token, skipped,
1169 stringLength = string.length,
1170 totalParsedInputLength = 0;
1171
1172 tokens = expandFormat(config._f, config._locale).match(formattingTokens) || [];
1173
1174 for (i = 0; i < tokens.length; i++) {
1175 token = tokens[i];
1176 parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];
1177 if (parsedInput) {
1178 skipped = string.substr(0, string.indexOf(parsedInput));
1179 if (skipped.length > 0) {
1180 getParsingFlags(config).unusedInput.push(skipped);
1181 }
1182 string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
1183 totalParsedInputLength += parsedInput.length;
1184 }
1185 // don't parse if it's not a known token
1186 if (formatTokenFunctions[token]) {
1187 if (parsedInput) {
1188 getParsingFlags(config).empty = false;
1189 }
1190 else {
1191 getParsingFlags(config).unusedTokens.push(token);
1192 }
1193 addTimeToArrayFromToken(token, parsedInput, config);
1194 }
1195 else if (config._strict && !parsedInput) {
1196 getParsingFlags(config).unusedTokens.push(token);
1197 }
1198 }
1199
1200 // add remaining unparsed input length to the string
1201 getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
1202 if (string.length > 0) {
1203 getParsingFlags(config).unusedInput.push(string);
1204 }
1205
1206 // clear _12h flag if hour is <= 12
1207 if (getParsingFlags(config).bigHour === true &&
1208 config._a[HOUR] <= 12 &&
1209 config._a[HOUR] > 0) {
1210 getParsingFlags(config).bigHour = undefined;
1211 }
1212 // handle meridiem
1213 config._a[HOUR] = meridiemFixWrap(config._locale, config._a[HOUR], config._meridiem);
1214
1215 configFromArray(config);
1216 checkOverflow(config);
1217 }
1218
1219
1220 function meridiemFixWrap (locale, hour, meridiem) {
1221 var isPm;
1222
1223 if (meridiem == null) {
1224 // nothing to do
1225 return hour;
1226 }
1227 if (locale.meridiemHour != null) {
1228 return locale.meridiemHour(hour, meridiem);
1229 } else if (locale.isPM != null) {
1230 // Fallback
1231 isPm = locale.isPM(meridiem);
1232 if (isPm && hour < 12) {
1233 hour += 12;
1234 }
1235 if (!isPm && hour === 12) {
1236 hour = 0;
1237 }
1238 return hour;
1239 } else {
1240 // this is not supposed to happen
1241 return hour;
1242 }
1243 }
1244
1245 function configFromStringAndArray(config) {
1246 var tempConfig,
1247 bestMoment,
1248
1249 scoreToBeat,
1250 i,
1251 currentScore;
1252
1253 if (config._f.length === 0) {
1254 getParsingFlags(config).invalidFormat = true;
1255 config._d = new Date(NaN);
1256 return;
1257 }
1258
1259 for (i = 0; i < config._f.length; i++) {
1260 currentScore = 0;
1261 tempConfig = copyConfig({}, config);
1262 if (config._useUTC != null) {
1263 tempConfig._useUTC = config._useUTC;
1264 }
1265 tempConfig._f = config._f[i];
1266 configFromStringAndFormat(tempConfig);
1267
1268 if (!valid__isValid(tempConfig)) {
1269 continue;
1270 }
1271
1272 // if there is any input that was not parsed add a penalty for that format
1273 currentScore += getParsingFlags(tempConfig).charsLeftOver;
1274
1275 //or tokens
1276 currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10;
1277
1278 getParsingFlags(tempConfig).score = currentScore;
1279
1280 if (scoreToBeat == null || currentScore < scoreToBeat) {
1281 scoreToBeat = currentScore;
1282 bestMoment = tempConfig;
1283 }
1284 }
1285
1286 extend(config, bestMoment || tempConfig);
1287 }
1288
1289 function configFromObject(config) {
1290 if (config._d) {
1291 return;
1292 }
1293
1294 var i = normalizeObjectUnits(config._i);
1295 config._a = [i.year, i.month, i.day || i.date, i.hour, i.minute, i.second, i.millisecond];
1296
1297 configFromArray(config);
1298 }
1299
1300 function createFromConfig (config) {
1301 var res = new Moment(checkOverflow(prepareConfig(config)));
1302 if (res._nextDay) {
1303 // Adding is smart enough around DST
1304 res.add(1, 'd');
1305 res._nextDay = undefined;
1306 }
1307
1308 return res;
1309 }
1310
1311 function prepareConfig (config) {
1312 var input = config._i,
1313 format = config._f;
1314
1315 config._locale = config._locale || locale_locales__getLocale(config._l);
1316
1317 if (input === null || (format === undefined && input === '')) {
1318 return valid__createInvalid({nullInput: true});
1319 }
1320
1321 if (typeof input === 'string') {
1322 config._i = input = config._locale.preparse(input);
1323 }
1324
1325 if (isMoment(input)) {
1326 return new Moment(checkOverflow(input));
1327 } else if (isArray(format)) {
1328 configFromStringAndArray(config);
1329 } else if (format) {
1330 configFromStringAndFormat(config);
1331 } else if (isDate(input)) {
1332 config._d = input;
1333 } else {
1334 configFromInput(config);
1335 }
1336
1337 return config;
1338 }
1339
1340 function configFromInput(config) {
1341 var input = config._i;
1342 if (input === undefined) {
1343 config._d = new Date();
1344 } else if (isDate(input)) {
1345 config._d = new Date(+input);
1346 } else if (typeof input === 'string') {
1347 configFromString(config);
1348 } else if (isArray(input)) {
1349 config._a = map(input.slice(0), function (obj) {
1350 return parseInt(obj, 10);
1351 });
1352 configFromArray(config);
1353 } else if (typeof(input) === 'object') {
1354 configFromObject(config);
1355 } else if (typeof(input) === 'number') {
1356 // from milliseconds
1357 config._d = new Date(input);
1358 } else {
1359 utils_hooks__hooks.createFromInputFallback(config);
1360 }
1361 }
1362
1363 function createLocalOrUTC (input, format, locale, strict, isUTC) {
1364 var c = {};
1365
1366 if (typeof(locale) === 'boolean') {
1367 strict = locale;
1368 locale = undefined;
1369 }
1370 // object construction must be done this way.
1371 // https://github.com/moment/moment/issues/1423
1372 c._isAMomentObject = true;
1373 c._useUTC = c._isUTC = isUTC;
1374 c._l = locale;
1375 c._i = input;
1376 c._f = format;
1377 c._strict = strict;
1378
1379 return createFromConfig(c);
1380 }
1381
1382 function local__createLocal (input, format, locale, strict) {
1383 return createLocalOrUTC(input, format, locale, strict, false);
1384 }
1385
1386 var prototypeMin = deprecate(
1387 'moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548',
1388 function () {
1389 var other = local__createLocal.apply(null, arguments);
1390 return other < this ? this : other;
1391 }
1392 );
1393
1394 var prototypeMax = deprecate(
1395 'moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548',
1396 function () {
1397 var other = local__createLocal.apply(null, arguments);
1398 return other > this ? this : other;
1399 }
1400 );
1401
1402 // Pick a moment m from moments so that m[fn](other) is true for all
1403 // other. This relies on the function fn to be transitive.
1404 //
1405 // moments should either be an array of moment objects or an array, whose
1406 // first element is an array of moment objects.
1407 function pickBy(fn, moments) {
1408 var res, i;
1409 if (moments.length === 1 && isArray(moments[0])) {
1410 moments = moments[0];
1411 }
1412 if (!moments.length) {
1413 return local__createLocal();
1414 }
1415 res = moments[0];
1416 for (i = 1; i < moments.length; ++i) {
1417 if (!moments[i].isValid() || moments[i][fn](res)) {
1418 res = moments[i];
1419 }
1420 }
1421 return res;
1422 }
1423
1424 // TODO: Use [].sort instead?
1425 function min () {
1426 var args = [].slice.call(arguments, 0);
1427
1428 return pickBy('isBefore', args);
1429 }
1430
1431 function max () {
1432 var args = [].slice.call(arguments, 0);
1433
1434 return pickBy('isAfter', args);
1435 }
1436
1437 function Duration (duration) {
1438 var normalizedInput = normalizeObjectUnits(duration),
1439 years = normalizedInput.year || 0,
1440 quarters = normalizedInput.quarter || 0,
1441 months = normalizedInput.month || 0,
1442 weeks = normalizedInput.week || 0,
1443 days = normalizedInput.day || 0,
1444 hours = normalizedInput.hour || 0,
1445 minutes = normalizedInput.minute || 0,
1446 seconds = normalizedInput.second || 0,
1447 milliseconds = normalizedInput.millisecond || 0;
1448
1449 // representation for dateAddRemove
1450 this._milliseconds = +milliseconds +
1451 seconds * 1e3 + // 1000
1452 minutes * 6e4 + // 1000 * 60
1453 hours * 36e5; // 1000 * 60 * 60
1454 // Because of dateAddRemove treats 24 hours as different from a
1455 // day when working around DST, we need to store them separately
1456 this._days = +days +
1457 weeks * 7;
1458 // It is impossible translate months into days without knowing
1459 // which months you are are talking about, so we have to store
1460 // it separately.
1461 this._months = +months +
1462 quarters * 3 +
1463 years * 12;
1464
1465 this._data = {};
1466
1467 this._locale = locale_locales__getLocale();
1468
1469 this._bubble();
1470 }
1471
1472 function isDuration (obj) {
1473 return obj instanceof Duration;
1474 }
1475
1476 function offset (token, separator) {
1477 addFormatToken(token, 0, 0, function () {
1478 var offset = this.utcOffset();
1479 var sign = '+';
1480 if (offset < 0) {
1481 offset = -offset;
1482 sign = '-';
1483 }
1484 return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);
1485 });
1486 }
1487
1488 offset('Z', ':');
1489 offset('ZZ', '');
1490
1491 // PARSING
1492
1493 addRegexToken('Z', matchOffset);
1494 addRegexToken('ZZ', matchOffset);
1495 addParseToken(['Z', 'ZZ'], function (input, array, config) {
1496 config._useUTC = true;
1497 config._tzm = offsetFromString(input);
1498 });
1499
1500 // HELPERS
1501
1502 // timezone chunker
1503 // '+10:00' > ['10', '00']
1504 // '-1530' > ['-15', '30']
1505 var chunkOffset = /([\+\-]|\d\d)/gi;
1506
1507 function offsetFromString(string) {
1508 var matches = ((string || '').match(matchOffset) || []);
1509 var chunk = matches[matches.length - 1] || [];
1510 var parts = (chunk + '').match(chunkOffset) || ['-', 0, 0];
1511 var minutes = +(parts[1] * 60) + toInt(parts[2]);
1512
1513 return parts[0] === '+' ? minutes : -minutes;
1514 }
1515
1516 // Return a moment from input, that is local/utc/zone equivalent to model.
1517 function cloneWithOffset(input, model) {
1518 var res, diff;
1519 if (model._isUTC) {
1520 res = model.clone();
1521 diff = (isMoment(input) || isDate(input) ? +input : +local__createLocal(input)) - (+res);
1522 // Use low-level api, because this fn is low-level api.
1523 res._d.setTime(+res._d + diff);
1524 utils_hooks__hooks.updateOffset(res, false);
1525 return res;
1526 } else {
1527 return local__createLocal(input).local();
1528 }
1529 }
1530
1531 function getDateOffset (m) {
1532 // On Firefox.24 Date#getTimezoneOffset returns a floating point.
1533 // https://github.com/moment/moment/pull/1871
1534 return -Math.round(m._d.getTimezoneOffset() / 15) * 15;
1535 }
1536
1537 // HOOKS
1538
1539 // This function will be called whenever a moment is mutated.
1540 // It is intended to keep the offset in sync with the timezone.
1541 utils_hooks__hooks.updateOffset = function () {};
1542
1543 // MOMENTS
1544
1545 // keepLocalTime = true means only change the timezone, without
1546 // affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]-->
1547 // 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset
1548 // +0200, so we adjust the time as needed, to be valid.
1549 //
1550 // Keeping the time actually adds/subtracts (one hour)
1551 // from the actual represented time. That is why we call updateOffset
1552 // a second time. In case it wants us to change the offset again
1553 // _changeInProgress == true case, then we have to adjust, because
1554 // there is no such time in the given timezone.
1555 function getSetOffset (input, keepLocalTime) {
1556 var offset = this._offset || 0,
1557 localAdjust;
1558 if (input != null) {
1559 if (typeof input === 'string') {
1560 input = offsetFromString(input);
1561 }
1562 if (Math.abs(input) < 16) {
1563 input = input * 60;
1564 }
1565 if (!this._isUTC && keepLocalTime) {
1566 localAdjust = getDateOffset(this);
1567 }
1568 this._offset = input;
1569 this._isUTC = true;
1570 if (localAdjust != null) {
1571 this.add(localAdjust, 'm');
1572 }
1573 if (offset !== input) {
1574 if (!keepLocalTime || this._changeInProgress) {
1575 add_subtract__addSubtract(this, create__createDuration(input - offset, 'm'), 1, false);
1576 } else if (!this._changeInProgress) {
1577 this._changeInProgress = true;
1578 utils_hooks__hooks.updateOffset(this, true);
1579 this._changeInProgress = null;
1580 }
1581 }
1582 return this;
1583 } else {
1584 return this._isUTC ? offset : getDateOffset(this);
1585 }
1586 }
1587
1588 function getSetZone (input, keepLocalTime) {
1589 if (input != null) {
1590 if (typeof input !== 'string') {
1591 input = -input;
1592 }
1593
1594 this.utcOffset(input, keepLocalTime);
1595
1596 return this;
1597 } else {
1598 return -this.utcOffset();
1599 }
1600 }
1601
1602 function setOffsetToUTC (keepLocalTime) {
1603 return this.utcOffset(0, keepLocalTime);
1604 }
1605
1606 function setOffsetToLocal (keepLocalTime) {
1607 if (this._isUTC) {
1608 this.utcOffset(0, keepLocalTime);
1609 this._isUTC = false;
1610
1611 if (keepLocalTime) {
1612 this.subtract(getDateOffset(this), 'm');
1613 }
1614 }
1615 return this;
1616 }
1617
1618 function setOffsetToParsedOffset () {
1619 if (this._tzm) {
1620 this.utcOffset(this._tzm);
1621 } else if (typeof this._i === 'string') {
1622 this.utcOffset(offsetFromString(this._i));
1623 }
1624 return this;
1625 }
1626
1627 function hasAlignedHourOffset (input) {
1628 input = input ? local__createLocal(input).utcOffset() : 0;
1629
1630 return (this.utcOffset() - input) % 60 === 0;
1631 }
1632
1633 function isDaylightSavingTime () {
1634 return (
1635 this.utcOffset() > this.clone().month(0).utcOffset() ||
1636 this.utcOffset() > this.clone().month(5).utcOffset()
1637 );
1638 }
1639
1640 function isDaylightSavingTimeShifted () {
1641 if (typeof this._isDSTShifted !== 'undefined') {
1642 return this._isDSTShifted;
1643 }
1644
1645 var c = {};
1646
1647 copyConfig(c, this);
1648 c = prepareConfig(c);
1649
1650 if (c._a) {
1651 var other = c._isUTC ? create_utc__createUTC(c._a) : local__createLocal(c._a);
1652 this._isDSTShifted = this.isValid() &&
1653 compareArrays(c._a, other.toArray()) > 0;
1654 } else {
1655 this._isDSTShifted = false;
1656 }
1657
1658 return this._isDSTShifted;
1659 }
1660
1661 function isLocal () {
1662 return !this._isUTC;
1663 }
1664
1665 function isUtcOffset () {
1666 return this._isUTC;
1667 }
1668
1669 function isUtc () {
1670 return this._isUTC && this._offset === 0;
1671 }
1672
1673 var aspNetRegex = /(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/;
1674
1675 // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html
1676 // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere
1677 var create__isoRegex = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;
1678
1679 function create__createDuration (input, key) {
1680 var duration = input,
1681 // matching against regexp is expensive, do it on demand
1682 match = null,
1683 sign,
1684 ret,
1685 diffRes;
1686
1687 if (isDuration(input)) {
1688 duration = {
1689 ms : input._milliseconds,
1690 d : input._days,
1691 M : input._months
1692 };
1693 } else if (typeof input === 'number') {
1694 duration = {};
1695 if (key) {
1696 duration[key] = input;
1697 } else {
1698 duration.milliseconds = input;
1699 }
1700 } else if (!!(match = aspNetRegex.exec(input))) {
1701 sign = (match[1] === '-') ? -1 : 1;
1702 duration = {
1703 y : 0,
1704 d : toInt(match[DATE]) * sign,
1705 h : toInt(match[HOUR]) * sign,
1706 m : toInt(match[MINUTE]) * sign,
1707 s : toInt(match[SECOND]) * sign,
1708 ms : toInt(match[MILLISECOND]) * sign
1709 };
1710 } else if (!!(match = create__isoRegex.exec(input))) {
1711 sign = (match[1] === '-') ? -1 : 1;
1712 duration = {
1713 y : parseIso(match[2], sign),
1714 M : parseIso(match[3], sign),
1715 d : parseIso(match[4], sign),
1716 h : parseIso(match[5], sign),
1717 m : parseIso(match[6], sign),
1718 s : parseIso(match[7], sign),
1719 w : parseIso(match[8], sign)
1720 };
1721 } else if (duration == null) {// checks for null or undefined
1722 duration = {};
1723 } else if (typeof duration === 'object' && ('from' in duration || 'to' in duration)) {
1724 diffRes = momentsDifference(local__createLocal(duration.from), local__createLocal(duration.to));
1725
1726 duration = {};
1727 duration.ms = diffRes.milliseconds;
1728 duration.M = diffRes.months;
1729 }
1730
1731 ret = new Duration(duration);
1732
1733 if (isDuration(input) && hasOwnProp(input, '_locale')) {
1734 ret._locale = input._locale;
1735 }
1736
1737 return ret;
1738 }
1739
1740 create__createDuration.fn = Duration.prototype;
1741
1742 function parseIso (inp, sign) {
1743 // We'd normally use ~~inp for this, but unfortunately it also
1744 // converts floats to ints.
1745 // inp may be undefined, so careful calling replace on it.
1746 var res = inp && parseFloat(inp.replace(',', '.'));
1747 // apply sign while we're at it
1748 return (isNaN(res) ? 0 : res) * sign;
1749 }
1750
1751 function positiveMomentsDifference(base, other) {
1752 var res = {milliseconds: 0, months: 0};
1753
1754 res.months = other.month() - base.month() +
1755 (other.year() - base.year()) * 12;
1756 if (base.clone().add(res.months, 'M').isAfter(other)) {
1757 --res.months;
1758 }
1759
1760 res.milliseconds = +other - +(base.clone().add(res.months, 'M'));
1761
1762 return res;
1763 }
1764
1765 function momentsDifference(base, other) {
1766 var res;
1767 other = cloneWithOffset(other, base);
1768 if (base.isBefore(other)) {
1769 res = positiveMomentsDifference(base, other);
1770 } else {
1771 res = positiveMomentsDifference(other, base);
1772 res.milliseconds = -res.milliseconds;
1773 res.months = -res.months;
1774 }
1775
1776 return res;
1777 }
1778
1779 function createAdder(direction, name) {
1780 return function (val, period) {
1781 var dur, tmp;
1782 //invert the arguments, but complain about it
1783 if (period !== null && !isNaN(+period)) {
1784 deprecateSimple(name, 'moment().' + name + '(period, number) is deprecated. Please use moment().' + name + '(number, period).');
1785 tmp = val; val = period; period = tmp;
1786 }
1787
1788 val = typeof val === 'string' ? +val : val;
1789 dur = create__createDuration(val, period);
1790 add_subtract__addSubtract(this, dur, direction);
1791 return this;
1792 };
1793 }
1794
1795 function add_subtract__addSubtract (mom, duration, isAdding, updateOffset) {
1796 var milliseconds = duration._milliseconds,
1797 days = duration._days,
1798 months = duration._months;
1799 updateOffset = updateOffset == null ? true : updateOffset;
1800
1801 if (milliseconds) {
1802 mom._d.setTime(+mom._d + milliseconds * isAdding);
1803 }
1804 if (days) {
1805 get_set__set(mom, 'Date', get_set__get(mom, 'Date') + days * isAdding);
1806 }
1807 if (months) {
1808 setMonth(mom, get_set__get(mom, 'Month') + months * isAdding);
1809 }
1810 if (updateOffset) {
1811 utils_hooks__hooks.updateOffset(mom, days || months);
1812 }
1813 }
1814
1815 var add_subtract__add = createAdder(1, 'add');
1816 var add_subtract__subtract = createAdder(-1, 'subtract');
1817
1818 function moment_calendar__calendar (time, formats) {
1819 // We want to compare the start of today, vs this.
1820 // Getting start-of-today depends on whether we're local/utc/offset or not.
1821 var now = time || local__createLocal(),
1822 sod = cloneWithOffset(now, this).startOf('day'),
1823 diff = this.diff(sod, 'days', true),
1824 format = diff < -6 ? 'sameElse' :
1825 diff < -1 ? 'lastWeek' :
1826 diff < 0 ? 'lastDay' :
1827 diff < 1 ? 'sameDay' :
1828 diff < 2 ? 'nextDay' :
1829 diff < 7 ? 'nextWeek' : 'sameElse';
1830 return this.format(formats && formats[format] || this.localeData().calendar(format, this, local__createLocal(now)));
1831 }
1832
1833 function clone () {
1834 return new Moment(this);
1835 }
1836
1837 function isAfter (input, units) {
1838 var inputMs;
1839 units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');
1840 if (units === 'millisecond') {
1841 input = isMoment(input) ? input : local__createLocal(input);
1842 return +this > +input;
1843 } else {
1844 inputMs = isMoment(input) ? +input : +local__createLocal(input);
1845 return inputMs < +this.clone().startOf(units);
1846 }
1847 }
1848
1849 function isBefore (input, units) {
1850 var inputMs;
1851 units = normalizeUnits(typeof units !== 'undefined' ? units : 'millisecond');
1852 if (units === 'millisecond') {
1853 input = isMoment(input) ? input : local__createLocal(input);
1854 return +this < +input;
1855 } else {
1856 inputMs = isMoment(input) ? +input : +local__createLocal(input);
1857 return +this.clone().endOf(units) < inputMs;
1858 }
1859 }
1860
1861 function isBetween (from, to, units) {
1862 return this.isAfter(from, units) && this.isBefore(to, units);
1863 }
1864
1865 function isSame (input, units) {
1866 var inputMs;
1867 units = normalizeUnits(units || 'millisecond');
1868 if (units === 'millisecond') {
1869 input = isMoment(input) ? input : local__createLocal(input);
1870 return +this === +input;
1871 } else {
1872 inputMs = +local__createLocal(input);
1873 return +(this.clone().startOf(units)) <= inputMs && inputMs <= +(this.clone().endOf(units));
1874 }
1875 }
1876
1877 function diff (input, units, asFloat) {
1878 var that = cloneWithOffset(input, this),
1879 zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4,
1880 delta, output;
1881
1882 units = normalizeUnits(units);
1883
1884 if (units === 'year' || units === 'month' || units === 'quarter') {
1885 output = monthDiff(this, that);
1886 if (units === 'quarter') {
1887 output = output / 3;
1888 } else if (units === 'year') {
1889 output = output / 12;
1890 }
1891 } else {
1892 delta = this - that;
1893 output = units === 'second' ? delta / 1e3 : // 1000
1894 units === 'minute' ? delta / 6e4 : // 1000 * 60
1895 units === 'hour' ? delta / 36e5 : // 1000 * 60 * 60
1896 units === 'day' ? (delta - zoneDelta) / 864e5 : // 1000 * 60 * 60 * 24, negate dst
1897 units === 'week' ? (delta - zoneDelta) / 6048e5 : // 1000 * 60 * 60 * 24 * 7, negate dst
1898 delta;
1899 }
1900 return asFloat ? output : absFloor(output);
1901 }
1902
1903 function monthDiff (a, b) {
1904 // difference in months
1905 var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),
1906 // b is in (anchor - 1 month, anchor + 1 month)
1907 anchor = a.clone().add(wholeMonthDiff, 'months'),
1908 anchor2, adjust;
1909
1910 if (b - anchor < 0) {
1911 anchor2 = a.clone().add(wholeMonthDiff - 1, 'months');
1912 // linear across the month
1913 adjust = (b - anchor) / (anchor - anchor2);
1914 } else {
1915 anchor2 = a.clone().add(wholeMonthDiff + 1, 'months');
1916 // linear across the month
1917 adjust = (b - anchor) / (anchor2 - anchor);
1918 }
1919
1920 return -(wholeMonthDiff + adjust);
1921 }
1922
1923 utils_hooks__hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ';
1924
1925 function toString () {
1926 return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ');
1927 }
1928
1929 function moment_format__toISOString () {
1930 var m = this.clone().utc();
1931 if (0 < m.year() && m.year() <= 9999) {
1932 if ('function' === typeof Date.prototype.toISOString) {
1933 // native implementation is ~50x faster, use it when we can
1934 return this.toDate().toISOString();
1935 } else {
1936 return formatMoment(m, 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
1937 }
1938 } else {
1939 return formatMoment(m, 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]');
1940 }
1941 }
1942
1943 function moment_format__format (inputString) {
1944 var output = formatMoment(this, inputString || utils_hooks__hooks.defaultFormat);
1945 return this.localeData().postformat(output);
1946 }
1947
1948 function from (time, withoutSuffix) {
1949 if (!this.isValid()) {
1950 return this.localeData().invalidDate();
1951 }
1952 return create__createDuration({to: this, from: time}).locale(this.locale()).humanize(!withoutSuffix);
1953 }
1954
1955 function fromNow (withoutSuffix) {
1956 return this.from(local__createLocal(), withoutSuffix);
1957 }
1958
1959 function to (time, withoutSuffix) {
1960 if (!this.isValid()) {
1961 return this.localeData().invalidDate();
1962 }
1963 return create__createDuration({from: this, to: time}).locale(this.locale()).humanize(!withoutSuffix);
1964 }
1965
1966 function toNow (withoutSuffix) {
1967 return this.to(local__createLocal(), withoutSuffix);
1968 }
1969
1970 function locale (key) {
1971 var newLocaleData;
1972
1973 if (key === undefined) {
1974 return this._locale._abbr;
1975 } else {
1976 newLocaleData = locale_locales__getLocale(key);
1977 if (newLocaleData != null) {
1978 this._locale = newLocaleData;
1979 }
1980 return this;
1981 }
1982 }
1983
1984 var lang = deprecate(
1985 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.',
1986 function (key) {
1987 if (key === undefined) {
1988 return this.localeData();
1989 } else {
1990 return this.locale(key);
1991 }
1992 }
1993 );
1994
1995 function localeData () {
1996 return this._locale;
1997 }
1998
1999 function startOf (units) {
2000 units = normalizeUnits(units);
2001 // the following switch intentionally omits break keywords
2002 // to utilize falling through the cases.
2003 switch (units) {
2004 case 'year':
2005 this.month(0);
2006 /* falls through */
2007 case 'quarter':
2008 case 'month':
2009 this.date(1);
2010 /* falls through */
2011 case 'week':
2012 case 'isoWeek':
2013 case 'day':
2014 this.hours(0);
2015 /* falls through */
2016 case 'hour':
2017 this.minutes(0);
2018 /* falls through */
2019 case 'minute':
2020 this.seconds(0);
2021 /* falls through */
2022 case 'second':
2023 this.milliseconds(0);
2024 }
2025
2026 // weeks are a special case
2027 if (units === 'week') {
2028 this.weekday(0);
2029 }
2030 if (units === 'isoWeek') {
2031 this.isoWeekday(1);
2032 }
2033
2034 // quarters are also special
2035 if (units === 'quarter') {
2036 this.month(Math.floor(this.month() / 3) * 3);
2037 }
2038
2039 return this;
2040 }
2041
2042 function endOf (units) {
2043 units = normalizeUnits(units);
2044 if (units === undefined || units === 'millisecond') {
2045 return this;
2046 }
2047 return this.startOf(units).add(1, (units === 'isoWeek' ? 'week' : units)).subtract(1, 'ms');
2048 }
2049
2050 function to_type__valueOf () {
2051 return +this._d - ((this._offset || 0) * 60000);
2052 }
2053
2054 function unix () {
2055 return Math.floor(+this / 1000);
2056 }
2057
2058 function toDate () {
2059 return this._offset ? new Date(+this) : this._d;
2060 }
2061
2062 function toArray () {
2063 var m = this;
2064 return [m.year(), m.month(), m.date(), m.hour(), m.minute(), m.second(), m.millisecond()];
2065 }
2066
2067 function toObject () {
2068 var m = this;
2069 return {
2070 years: m.year(),
2071 months: m.month(),
2072 date: m.date(),
2073 hours: m.hours(),
2074 minutes: m.minutes(),
2075 seconds: m.seconds(),
2076 milliseconds: m.milliseconds()
2077 };
2078 }
2079
2080 function moment_valid__isValid () {
2081 return valid__isValid(this);
2082 }
2083
2084 function parsingFlags () {
2085 return extend({}, getParsingFlags(this));
2086 }
2087
2088 function invalidAt () {
2089 return getParsingFlags(this).overflow;
2090 }
2091
2092 addFormatToken(0, ['gg', 2], 0, function () {
2093 return this.weekYear() % 100;
2094 });
2095
2096 addFormatToken(0, ['GG', 2], 0, function () {
2097 return this.isoWeekYear() % 100;
2098 });
2099
2100 function addWeekYearFormatToken (token, getter) {
2101 addFormatToken(0, [token, token.length], 0, getter);
2102 }
2103
2104 addWeekYearFormatToken('gggg', 'weekYear');
2105 addWeekYearFormatToken('ggggg', 'weekYear');
2106 addWeekYearFormatToken('GGGG', 'isoWeekYear');
2107 addWeekYearFormatToken('GGGGG', 'isoWeekYear');
2108
2109 // ALIASES
2110
2111 addUnitAlias('weekYear', 'gg');
2112 addUnitAlias('isoWeekYear', 'GG');
2113
2114 // PARSING
2115
2116 addRegexToken('G', matchSigned);
2117 addRegexToken('g', matchSigned);
2118 addRegexToken('GG', match1to2, match2);
2119 addRegexToken('gg', match1to2, match2);
2120 addRegexToken('GGGG', match1to4, match4);
2121 addRegexToken('gggg', match1to4, match4);
2122 addRegexToken('GGGGG', match1to6, match6);
2123 addRegexToken('ggggg', match1to6, match6);
2124
2125 addWeekParseToken(['gggg', 'ggggg', 'GGGG', 'GGGGG'], function (input, week, config, token) {
2126 week[token.substr(0, 2)] = toInt(input);
2127 });
2128
2129 addWeekParseToken(['gg', 'GG'], function (input, week, config, token) {
2130 week[token] = utils_hooks__hooks.parseTwoDigitYear(input);
2131 });
2132
2133 // HELPERS
2134
2135 function weeksInYear(year, dow, doy) {
2136 return weekOfYear(local__createLocal([year, 11, 31 + dow - doy]), dow, doy).week;
2137 }
2138
2139 // MOMENTS
2140
2141 function getSetWeekYear (input) {
2142 var year = weekOfYear(this, this.localeData()._week.dow, this.localeData()._week.doy).year;
2143 return input == null ? year : this.add((input - year), 'y');
2144 }
2145
2146 function getSetISOWeekYear (input) {
2147 var year = weekOfYear(this, 1, 4).year;
2148 return input == null ? year : this.add((input - year), 'y');
2149 }
2150
2151 function getISOWeeksInYear () {
2152 return weeksInYear(this.year(), 1, 4);
2153 }
2154
2155 function getWeeksInYear () {
2156 var weekInfo = this.localeData()._week;
2157 return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy);
2158 }
2159
2160 addFormatToken('Q', 0, 0, 'quarter');
2161
2162 // ALIASES
2163
2164 addUnitAlias('quarter', 'Q');
2165
2166 // PARSING
2167
2168 addRegexToken('Q', match1);
2169 addParseToken('Q', function (input, array) {
2170 array[MONTH] = (toInt(input) - 1) * 3;
2171 });
2172
2173 // MOMENTS
2174
2175 function getSetQuarter (input) {
2176 return input == null ? Math.ceil((this.month() + 1) / 3) : this.month((input - 1) * 3 + this.month() % 3);
2177 }
2178
2179 addFormatToken('D', ['DD', 2], 'Do', 'date');
2180
2181 // ALIASES
2182
2183 addUnitAlias('date', 'D');
2184
2185 // PARSING
2186
2187 addRegexToken('D', match1to2);
2188 addRegexToken('DD', match1to2, match2);
2189 addRegexToken('Do', function (isStrict, locale) {
2190 return isStrict ? locale._ordinalParse : locale._ordinalParseLenient;
2191 });
2192
2193 addParseToken(['D', 'DD'], DATE);
2194 addParseToken('Do', function (input, array) {
2195 array[DATE] = toInt(input.match(match1to2)[0], 10);
2196 });
2197
2198 // MOMENTS
2199
2200 var getSetDayOfMonth = makeGetSet('Date', true);
2201
2202 addFormatToken('d', 0, 'do', 'day');
2203
2204 addFormatToken('dd', 0, 0, function (format) {
2205 return this.localeData().weekdaysMin(this, format);
2206 });
2207
2208 addFormatToken('ddd', 0, 0, function (format) {
2209 return this.localeData().weekdaysShort(this, format);
2210 });
2211
2212 addFormatToken('dddd', 0, 0, function (format) {
2213 return this.localeData().weekdays(this, format);
2214 });
2215
2216 addFormatToken('e', 0, 0, 'weekday');
2217 addFormatToken('E', 0, 0, 'isoWeekday');
2218
2219 // ALIASES
2220
2221 addUnitAlias('day', 'd');
2222 addUnitAlias('weekday', 'e');
2223 addUnitAlias('isoWeekday', 'E');
2224
2225 // PARSING
2226
2227 addRegexToken('d', match1to2);
2228 addRegexToken('e', match1to2);
2229 addRegexToken('E', match1to2);
2230 addRegexToken('dd', matchWord);
2231 addRegexToken('ddd', matchWord);
2232 addRegexToken('dddd', matchWord);
2233
2234 addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config) {
2235 var weekday = config._locale.weekdaysParse(input);
2236 // if we didn't get a weekday name, mark the date as invalid
2237 if (weekday != null) {
2238 week.d = weekday;
2239 } else {
2240 getParsingFlags(config).invalidWeekday = input;
2241 }
2242 });
2243
2244 addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) {
2245 week[token] = toInt(input);
2246 });
2247
2248 // HELPERS
2249
2250 function parseWeekday(input, locale) {
2251 if (typeof input !== 'string') {
2252 return input;
2253 }
2254
2255 if (!isNaN(input)) {
2256 return parseInt(input, 10);
2257 }
2258
2259 input = locale.weekdaysParse(input);
2260 if (typeof input === 'number') {
2261 return input;
2262 }
2263
2264 return null;
2265 }
2266
2267 // LOCALES
2268
2269 var defaultLocaleWeekdays = 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_');
2270 function localeWeekdays (m) {
2271 return this._weekdays[m.day()];
2272 }
2273
2274 var defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_');
2275 function localeWeekdaysShort (m) {
2276 return this._weekdaysShort[m.day()];
2277 }
2278
2279 var defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_');
2280 function localeWeekdaysMin (m) {
2281 return this._weekdaysMin[m.day()];
2282 }
2283
2284 function localeWeekdaysParse (weekdayName) {
2285 var i, mom, regex;
2286
2287 this._weekdaysParse = this._weekdaysParse || [];
2288
2289 for (i = 0; i < 7; i++) {
2290 // make the regex if we don't have it already
2291 if (!this._weekdaysParse[i]) {
2292 mom = local__createLocal([2000, 1]).day(i);
2293 regex = '^' + this.weekdays(mom, '') + '|^' + this.weekdaysShort(mom, '') + '|^' + this.weekdaysMin(mom, '');
2294 this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i');
2295 }
2296 // test the regex
2297 if (this._weekdaysParse[i].test(weekdayName)) {
2298 return i;
2299 }
2300 }
2301 }
2302
2303 // MOMENTS
2304
2305 function getSetDayOfWeek (input) {
2306 var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
2307 if (input != null) {
2308 input = parseWeekday(input, this.localeData());
2309 return this.add(input - day, 'd');
2310 } else {
2311 return day;
2312 }
2313 }
2314
2315 function getSetLocaleDayOfWeek (input) {
2316 var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7;
2317 return input == null ? weekday : this.add(input - weekday, 'd');
2318 }
2319
2320 function getSetISODayOfWeek (input) {
2321 // behaves the same as moment#day except
2322 // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6)
2323 // as a setter, sunday should belong to the previous week.
2324 return input == null ? this.day() || 7 : this.day(this.day() % 7 ? input : input - 7);
2325 }
2326
2327 addFormatToken('H', ['HH', 2], 0, 'hour');
2328 addFormatToken('h', ['hh', 2], 0, function () {
2329 return this.hours() % 12 || 12;
2330 });
2331
2332 function meridiem (token, lowercase) {
2333 addFormatToken(token, 0, 0, function () {
2334 return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);
2335 });
2336 }
2337
2338 meridiem('a', true);
2339 meridiem('A', false);
2340
2341 // ALIASES
2342
2343 addUnitAlias('hour', 'h');
2344
2345 // PARSING
2346
2347 function matchMeridiem (isStrict, locale) {
2348 return locale._meridiemParse;
2349 }
2350
2351 addRegexToken('a', matchMeridiem);
2352 addRegexToken('A', matchMeridiem);
2353 addRegexToken('H', match1to2);
2354 addRegexToken('h', match1to2);
2355 addRegexToken('HH', match1to2, match2);
2356 addRegexToken('hh', match1to2, match2);
2357
2358 addParseToken(['H', 'HH'], HOUR);
2359 addParseToken(['a', 'A'], function (input, array, config) {
2360 config._isPm = config._locale.isPM(input);
2361 config._meridiem = input;
2362 });
2363 addParseToken(['h', 'hh'], function (input, array, config) {
2364 array[HOUR] = toInt(input);
2365 getParsingFlags(config).bigHour = true;
2366 });
2367
2368 // LOCALES
2369
2370 function localeIsPM (input) {
2371 // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
2372 // Using charAt should be more compatible.
2373 return ((input + '').toLowerCase().charAt(0) === 'p');
2374 }
2375
2376 var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i;
2377 function localeMeridiem (hours, minutes, isLower) {
2378 if (hours > 11) {
2379 return isLower ? 'pm' : 'PM';
2380 } else {
2381 return isLower ? 'am' : 'AM';
2382 }
2383 }
2384
2385
2386 // MOMENTS
2387
2388 // Setting the hour should keep the time, because the user explicitly
2389 // specified which hour he wants. So trying to maintain the same hour (in
2390 // a new timezone) makes sense. Adding/subtracting hours does not follow
2391 // this rule.
2392 var getSetHour = makeGetSet('Hours', true);
2393
2394 addFormatToken('m', ['mm', 2], 0, 'minute');
2395
2396 // ALIASES
2397
2398 addUnitAlias('minute', 'm');
2399
2400 // PARSING
2401
2402 addRegexToken('m', match1to2);
2403 addRegexToken('mm', match1to2, match2);
2404 addParseToken(['m', 'mm'], MINUTE);
2405
2406 // MOMENTS
2407
2408 var getSetMinute = makeGetSet('Minutes', false);
2409
2410 addFormatToken('s', ['ss', 2], 0, 'second');
2411
2412 // ALIASES
2413
2414 addUnitAlias('second', 's');
2415
2416 // PARSING
2417
2418 addRegexToken('s', match1to2);
2419 addRegexToken('ss', match1to2, match2);
2420 addParseToken(['s', 'ss'], SECOND);
2421
2422 // MOMENTS
2423
2424 var getSetSecond = makeGetSet('Seconds', false);
2425
2426 addFormatToken('S', 0, 0, function () {
2427 return ~~(this.millisecond() / 100);
2428 });
2429
2430 addFormatToken(0, ['SS', 2], 0, function () {
2431 return ~~(this.millisecond() / 10);
2432 });
2433
2434 addFormatToken(0, ['SSS', 3], 0, 'millisecond');
2435 addFormatToken(0, ['SSSS', 4], 0, function () {
2436 return this.millisecond() * 10;
2437 });
2438 addFormatToken(0, ['SSSSS', 5], 0, function () {
2439 return this.millisecond() * 100;
2440 });
2441 addFormatToken(0, ['SSSSSS', 6], 0, function () {
2442 return this.millisecond() * 1000;
2443 });
2444 addFormatToken(0, ['SSSSSSS', 7], 0, function () {
2445 return this.millisecond() * 10000;
2446 });
2447 addFormatToken(0, ['SSSSSSSS', 8], 0, function () {
2448 return this.millisecond() * 100000;
2449 });
2450 addFormatToken(0, ['SSSSSSSSS', 9], 0, function () {
2451 return this.millisecond() * 1000000;
2452 });
2453
2454
2455 // ALIASES
2456
2457 addUnitAlias('millisecond', 'ms');
2458
2459 // PARSING
2460
2461 addRegexToken('S', match1to3, match1);
2462 addRegexToken('SS', match1to3, match2);
2463 addRegexToken('SSS', match1to3, match3);
2464
2465 var token;
2466 for (token = 'SSSS'; token.length <= 9; token += 'S') {
2467 addRegexToken(token, matchUnsigned);
2468 }
2469
2470 function parseMs(input, array) {
2471 array[MILLISECOND] = toInt(('0.' + input) * 1000);
2472 }
2473
2474 for (token = 'S'; token.length <= 9; token += 'S') {
2475 addParseToken(token, parseMs);
2476 }
2477 // MOMENTS
2478
2479 var getSetMillisecond = makeGetSet('Milliseconds', false);
2480
2481 addFormatToken('z', 0, 0, 'zoneAbbr');
2482 addFormatToken('zz', 0, 0, 'zoneName');
2483
2484 // MOMENTS
2485
2486 function getZoneAbbr () {
2487 return this._isUTC ? 'UTC' : '';
2488 }
2489
2490 function getZoneName () {
2491 return this._isUTC ? 'Coordinated Universal Time' : '';
2492 }
2493
2494 var momentPrototype__proto = Moment.prototype;
2495
2496 momentPrototype__proto.add = add_subtract__add;
2497 momentPrototype__proto.calendar = moment_calendar__calendar;
2498 momentPrototype__proto.clone = clone;
2499 momentPrototype__proto.diff = diff;
2500 momentPrototype__proto.endOf = endOf;
2501 momentPrototype__proto.format = moment_format__format;
2502 momentPrototype__proto.from = from;
2503 momentPrototype__proto.fromNow = fromNow;
2504 momentPrototype__proto.to = to;
2505 momentPrototype__proto.toNow = toNow;
2506 momentPrototype__proto.get = getSet;
2507 momentPrototype__proto.invalidAt = invalidAt;
2508 momentPrototype__proto.isAfter = isAfter;
2509 momentPrototype__proto.isBefore = isBefore;
2510 momentPrototype__proto.isBetween = isBetween;
2511 momentPrototype__proto.isSame = isSame;
2512 momentPrototype__proto.isValid = moment_valid__isValid;
2513 momentPrototype__proto.lang = lang;
2514 momentPrototype__proto.locale = locale;
2515 momentPrototype__proto.localeData = localeData;
2516 momentPrototype__proto.max = prototypeMax;
2517 momentPrototype__proto.min = prototypeMin;
2518 momentPrototype__proto.parsingFlags = parsingFlags;
2519 momentPrototype__proto.set = getSet;
2520 momentPrototype__proto.startOf = startOf;
2521 momentPrototype__proto.subtract = add_subtract__subtract;
2522 momentPrototype__proto.toArray = toArray;
2523 momentPrototype__proto.toObject = toObject;
2524 momentPrototype__proto.toDate = toDate;
2525 momentPrototype__proto.toISOString = moment_format__toISOString;
2526 momentPrototype__proto.toJSON = moment_format__toISOString;
2527 momentPrototype__proto.toString = toString;
2528 momentPrototype__proto.unix = unix;
2529 momentPrototype__proto.valueOf = to_type__valueOf;
2530
2531 // Year
2532 momentPrototype__proto.year = getSetYear;
2533 momentPrototype__proto.isLeapYear = getIsLeapYear;
2534
2535 // Week Year
2536 momentPrototype__proto.weekYear = getSetWeekYear;
2537 momentPrototype__proto.isoWeekYear = getSetISOWeekYear;
2538
2539 // Quarter
2540 momentPrototype__proto.quarter = momentPrototype__proto.quarters = getSetQuarter;
2541
2542 // Month
2543 momentPrototype__proto.month = getSetMonth;
2544 momentPrototype__proto.daysInMonth = getDaysInMonth;
2545
2546 // Week
2547 momentPrototype__proto.week = momentPrototype__proto.weeks = getSetWeek;
2548 momentPrototype__proto.isoWeek = momentPrototype__proto.isoWeeks = getSetISOWeek;
2549 momentPrototype__proto.weeksInYear = getWeeksInYear;
2550 momentPrototype__proto.isoWeeksInYear = getISOWeeksInYear;
2551
2552 // Day
2553 momentPrototype__proto.date = getSetDayOfMonth;
2554 momentPrototype__proto.day = momentPrototype__proto.days = getSetDayOfWeek;
2555 momentPrototype__proto.weekday = getSetLocaleDayOfWeek;
2556 momentPrototype__proto.isoWeekday = getSetISODayOfWeek;
2557 momentPrototype__proto.dayOfYear = getSetDayOfYear;
2558
2559 // Hour
2560 momentPrototype__proto.hour = momentPrototype__proto.hours = getSetHour;
2561
2562 // Minute
2563 momentPrototype__proto.minute = momentPrototype__proto.minutes = getSetMinute;
2564
2565 // Second
2566 momentPrototype__proto.second = momentPrototype__proto.seconds = getSetSecond;
2567
2568 // Millisecond
2569 momentPrototype__proto.millisecond = momentPrototype__proto.milliseconds = getSetMillisecond;
2570
2571 // Offset
2572 momentPrototype__proto.utcOffset = getSetOffset;
2573 momentPrototype__proto.utc = setOffsetToUTC;
2574 momentPrototype__proto.local = setOffsetToLocal;
2575 momentPrototype__proto.parseZone = setOffsetToParsedOffset;
2576 momentPrototype__proto.hasAlignedHourOffset = hasAlignedHourOffset;
2577 momentPrototype__proto.isDST = isDaylightSavingTime;
2578 momentPrototype__proto.isDSTShifted = isDaylightSavingTimeShifted;
2579 momentPrototype__proto.isLocal = isLocal;
2580 momentPrototype__proto.isUtcOffset = isUtcOffset;
2581 momentPrototype__proto.isUtc = isUtc;
2582 momentPrototype__proto.isUTC = isUtc;
2583
2584 // Timezone
2585 momentPrototype__proto.zoneAbbr = getZoneAbbr;
2586 momentPrototype__proto.zoneName = getZoneName;
2587
2588 // Deprecations
2589 momentPrototype__proto.dates = deprecate('dates accessor is deprecated. Use date instead.', getSetDayOfMonth);
2590 momentPrototype__proto.months = deprecate('months accessor is deprecated. Use month instead', getSetMonth);
2591 momentPrototype__proto.years = deprecate('years accessor is deprecated. Use year instead', getSetYear);
2592 momentPrototype__proto.zone = deprecate('moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779', getSetZone);
2593
2594 var momentPrototype = momentPrototype__proto;
2595
2596 function moment_moment__createUnix (input) {
2597 return local__createLocal(input * 1000);
2598 }
2599
2600 function moment_moment__createInZone () {
2601 return local__createLocal.apply(null, arguments).parseZone();
2602 }
2603
2604 var defaultCalendar = {
2605 sameDay : '[Today at] LT',
2606 nextDay : '[Tomorrow at] LT',
2607 nextWeek : 'dddd [at] LT',
2608 lastDay : '[Yesterday at] LT',
2609 lastWeek : '[Last] dddd [at] LT',
2610 sameElse : 'L'
2611 };
2612
2613 function locale_calendar__calendar (key, mom, now) {
2614 var output = this._calendar[key];
2615 return typeof output === 'function' ? output.call(mom, now) : output;
2616 }
2617
2618 var defaultLongDateFormat = {
2619 LTS : 'h:mm:ss A',
2620 LT : 'h:mm A',
2621 L : 'MM/DD/YYYY',
2622 LL : 'MMMM D, YYYY',
2623 LLL : 'MMMM D, YYYY h:mm A',
2624 LLLL : 'dddd, MMMM D, YYYY h:mm A'
2625 };
2626
2627 function longDateFormat (key) {
2628 var format = this._longDateFormat[key],
2629 formatUpper = this._longDateFormat[key.toUpperCase()];
2630
2631 if (format || !formatUpper) {
2632 return format;
2633 }
2634
2635 this._longDateFormat[key] = formatUpper.replace(/MMMM|MM|DD|dddd/g, function (val) {
2636 return val.slice(1);
2637 });
2638
2639 return this._longDateFormat[key];
2640 }
2641
2642 var defaultInvalidDate = 'Invalid date';
2643
2644 function invalidDate () {
2645 return this._invalidDate;
2646 }
2647
2648 var defaultOrdinal = '%d';
2649 var defaultOrdinalParse = /\d{1,2}/;
2650
2651 function ordinal (number) {
2652 return this._ordinal.replace('%d', number);
2653 }
2654
2655 function preParsePostFormat (string) {
2656 return string;
2657 }
2658
2659 var defaultRelativeTime = {
2660 future : 'in %s',
2661 past : '%s ago',
2662 s : 'a few seconds',
2663 m : 'a minute',
2664 mm : '%d minutes',
2665 h : 'an hour',
2666 hh : '%d hours',
2667 d : 'a day',
2668 dd : '%d days',
2669 M : 'a month',
2670 MM : '%d months',
2671 y : 'a year',
2672 yy : '%d years'
2673 };
2674
2675 function relative__relativeTime (number, withoutSuffix, string, isFuture) {
2676 var output = this._relativeTime[string];
2677 return (typeof output === 'function') ?
2678 output(number, withoutSuffix, string, isFuture) :
2679 output.replace(/%d/i, number);
2680 }
2681
2682 function pastFuture (diff, output) {
2683 var format = this._relativeTime[diff > 0 ? 'future' : 'past'];
2684 return typeof format === 'function' ? format(output) : format.replace(/%s/i, output);
2685 }
2686
2687 function locale_set__set (config) {
2688 var prop, i;
2689 for (i in config) {
2690 prop = config[i];
2691 if (typeof prop === 'function') {
2692 this[i] = prop;
2693 } else {
2694 this['_' + i] = prop;
2695 }
2696 }
2697 // Lenient ordinal parsing accepts just a number in addition to
2698 // number + (possibly) stuff coming from _ordinalParseLenient.
2699 this._ordinalParseLenient = new RegExp(this._ordinalParse.source + '|' + (/\d{1,2}/).source);
2700 }
2701
2702 var prototype__proto = Locale.prototype;
2703
2704 prototype__proto._calendar = defaultCalendar;
2705 prototype__proto.calendar = locale_calendar__calendar;
2706 prototype__proto._longDateFormat = defaultLongDateFormat;
2707 prototype__proto.longDateFormat = longDateFormat;
2708 prototype__proto._invalidDate = defaultInvalidDate;
2709 prototype__proto.invalidDate = invalidDate;
2710 prototype__proto._ordinal = defaultOrdinal;
2711 prototype__proto.ordinal = ordinal;
2712 prototype__proto._ordinalParse = defaultOrdinalParse;
2713 prototype__proto.preparse = preParsePostFormat;
2714 prototype__proto.postformat = preParsePostFormat;
2715 prototype__proto._relativeTime = defaultRelativeTime;
2716 prototype__proto.relativeTime = relative__relativeTime;
2717 prototype__proto.pastFuture = pastFuture;
2718 prototype__proto.set = locale_set__set;
2719
2720 // Month
2721 prototype__proto.months = localeMonths;
2722 prototype__proto._months = defaultLocaleMonths;
2723 prototype__proto.monthsShort = localeMonthsShort;
2724 prototype__proto._monthsShort = defaultLocaleMonthsShort;
2725 prototype__proto.monthsParse = localeMonthsParse;
2726
2727 // Week
2728 prototype__proto.week = localeWeek;
2729 prototype__proto._week = defaultLocaleWeek;
2730 prototype__proto.firstDayOfYear = localeFirstDayOfYear;
2731 prototype__proto.firstDayOfWeek = localeFirstDayOfWeek;
2732
2733 // Day of Week
2734 prototype__proto.weekdays = localeWeekdays;
2735 prototype__proto._weekdays = defaultLocaleWeekdays;
2736 prototype__proto.weekdaysMin = localeWeekdaysMin;
2737 prototype__proto._weekdaysMin = defaultLocaleWeekdaysMin;
2738 prototype__proto.weekdaysShort = localeWeekdaysShort;
2739 prototype__proto._weekdaysShort = defaultLocaleWeekdaysShort;
2740 prototype__proto.weekdaysParse = localeWeekdaysParse;
2741
2742 // Hours
2743 prototype__proto.isPM = localeIsPM;
2744 prototype__proto._meridiemParse = defaultLocaleMeridiemParse;
2745 prototype__proto.meridiem = localeMeridiem;
2746
2747 function lists__get (format, index, field, setter) {
2748 var locale = locale_locales__getLocale();
2749 var utc = create_utc__createUTC().set(setter, index);
2750 return locale[field](utc, format);
2751 }
2752
2753 function list (format, index, field, count, setter) {
2754 if (typeof format === 'number') {
2755 index = format;
2756 format = undefined;
2757 }
2758
2759 format = format || '';
2760
2761 if (index != null) {
2762 return lists__get(format, index, field, setter);
2763 }
2764
2765 var i;
2766 var out = [];
2767 for (i = 0; i < count; i++) {
2768 out[i] = lists__get(format, i, field, setter);
2769 }
2770 return out;
2771 }
2772
2773 function lists__listMonths (format, index) {
2774 return list(format, index, 'months', 12, 'month');
2775 }
2776
2777 function lists__listMonthsShort (format, index) {
2778 return list(format, index, 'monthsShort', 12, 'month');
2779 }
2780
2781 function lists__listWeekdays (format, index) {
2782 return list(format, index, 'weekdays', 7, 'day');
2783 }
2784
2785 function lists__listWeekdaysShort (format, index) {
2786 return list(format, index, 'weekdaysShort', 7, 'day');
2787 }
2788
2789 function lists__listWeekdaysMin (format, index) {
2790 return list(format, index, 'weekdaysMin', 7, 'day');
2791 }
2792
2793 locale_locales__getSetGlobalLocale('en', {
2794 ordinalParse: /\d{1,2}(th|st|nd|rd)/,
2795 ordinal : function (number) {
2796 var b = number % 10,
2797 output = (toInt(number % 100 / 10) === 1) ? 'th' :
2798 (b === 1) ? 'st' :
2799 (b === 2) ? 'nd' :
2800 (b === 3) ? 'rd' : 'th';
2801 return number + output;
2802 }
2803 });
2804
2805 // Side effect imports
2806 utils_hooks__hooks.lang = deprecate('moment.lang is deprecated. Use moment.locale instead.', locale_locales__getSetGlobalLocale);
2807 utils_hooks__hooks.langData = deprecate('moment.langData is deprecated. Use moment.localeData instead.', locale_locales__getLocale);
2808
2809 var mathAbs = Math.abs;
2810
2811 function duration_abs__abs () {
2812 var data = this._data;
2813
2814 this._milliseconds = mathAbs(this._milliseconds);
2815 this._days = mathAbs(this._days);
2816 this._months = mathAbs(this._months);
2817
2818 data.milliseconds = mathAbs(data.milliseconds);
2819 data.seconds = mathAbs(data.seconds);
2820 data.minutes = mathAbs(data.minutes);
2821 data.hours = mathAbs(data.hours);
2822 data.months = mathAbs(data.months);
2823 data.years = mathAbs(data.years);
2824
2825 return this;
2826 }
2827
2828 function duration_add_subtract__addSubtract (duration, input, value, direction) {
2829 var other = create__createDuration(input, value);
2830
2831 duration._milliseconds += direction * other._milliseconds;
2832 duration._days += direction * other._days;
2833 duration._months += direction * other._months;
2834
2835 return duration._bubble();
2836 }
2837
2838 // supports only 2.0-style add(1, 's') or add(duration)
2839 function duration_add_subtract__add (input, value) {
2840 return duration_add_subtract__addSubtract(this, input, value, 1);
2841 }
2842
2843 // supports only 2.0-style subtract(1, 's') or subtract(duration)
2844 function duration_add_subtract__subtract (input, value) {
2845 return duration_add_subtract__addSubtract(this, input, value, -1);
2846 }
2847
2848 function absCeil (number) {
2849 if (number < 0) {
2850 return Math.floor(number);
2851 } else {
2852 return Math.ceil(number);
2853 }
2854 }
2855
2856 function bubble () {
2857 var milliseconds = this._milliseconds;
2858 var days = this._days;
2859 var months = this._months;
2860 var data = this._data;
2861 var seconds, minutes, hours, years, monthsFromDays;
2862
2863 // if we have a mix of positive and negative values, bubble down first
2864 // check: https://github.com/moment/moment/issues/2166
2865 if (!((milliseconds >= 0 && days >= 0 && months >= 0) ||
2866 (milliseconds <= 0 && days <= 0 && months <= 0))) {
2867 milliseconds += absCeil(monthsToDays(months) + days) * 864e5;
2868 days = 0;
2869 months = 0;
2870 }
2871
2872 // The following code bubbles up values, see the tests for
2873 // examples of what that means.
2874 data.milliseconds = milliseconds % 1000;
2875
2876 seconds = absFloor(milliseconds / 1000);
2877 data.seconds = seconds % 60;
2878
2879 minutes = absFloor(seconds / 60);
2880 data.minutes = minutes % 60;
2881
2882 hours = absFloor(minutes / 60);
2883 data.hours = hours % 24;
2884
2885 days += absFloor(hours / 24);
2886
2887 // convert days to months
2888 monthsFromDays = absFloor(daysToMonths(days));
2889 months += monthsFromDays;
2890 days -= absCeil(monthsToDays(monthsFromDays));
2891
2892 // 12 months -> 1 year
2893 years = absFloor(months / 12);
2894 months %= 12;
2895
2896 data.days = days;
2897 data.months = months;
2898 data.years = years;
2899
2900 return this;
2901 }
2902
2903 function daysToMonths (days) {
2904 // 400 years have 146097 days (taking into account leap year rules)
2905 // 400 years have 12 months === 4800
2906 return days * 4800 / 146097;
2907 }
2908
2909 function monthsToDays (months) {
2910 // the reverse of daysToMonths
2911 return months * 146097 / 4800;
2912 }
2913
2914 function as (units) {
2915 var days;
2916 var months;
2917 var milliseconds = this._milliseconds;
2918
2919 units = normalizeUnits(units);
2920
2921 if (units === 'month' || units === 'year') {
2922 days = this._days + milliseconds / 864e5;
2923 months = this._months + daysToMonths(days);
2924 return units === 'month' ? months : months / 12;
2925 } else {
2926 // handle milliseconds separately because of floating point math errors (issue #1867)
2927 days = this._days + Math.round(monthsToDays(this._months));
2928 switch (units) {
2929 case 'week' : return days / 7 + milliseconds / 6048e5;
2930 case 'day' : return days + milliseconds / 864e5;
2931 case 'hour' : return days * 24 + milliseconds / 36e5;
2932 case 'minute' : return days * 1440 + milliseconds / 6e4;
2933 case 'second' : return days * 86400 + milliseconds / 1000;
2934 // Math.floor prevents floating point math errors here
2935 case 'millisecond': return Math.floor(days * 864e5) + milliseconds;
2936 default: throw new Error('Unknown unit ' + units);
2937 }
2938 }
2939 }
2940
2941 // TODO: Use this.as('ms')?
2942 function duration_as__valueOf () {
2943 return (
2944 this._milliseconds +
2945 this._days * 864e5 +
2946 (this._months % 12) * 2592e6 +
2947 toInt(this._months / 12) * 31536e6
2948 );
2949 }
2950
2951 function makeAs (alias) {
2952 return function () {
2953 return this.as(alias);
2954 };
2955 }
2956
2957 var asMilliseconds = makeAs('ms');
2958 var asSeconds = makeAs('s');
2959 var asMinutes = makeAs('m');
2960 var asHours = makeAs('h');
2961 var asDays = makeAs('d');
2962 var asWeeks = makeAs('w');
2963 var asMonths = makeAs('M');
2964 var asYears = makeAs('y');
2965
2966 function duration_get__get (units) {
2967 units = normalizeUnits(units);
2968 return this[units + 's']();
2969 }
2970
2971 function makeGetter(name) {
2972 return function () {
2973 return this._data[name];
2974 };
2975 }
2976
2977 var milliseconds = makeGetter('milliseconds');
2978 var seconds = makeGetter('seconds');
2979 var minutes = makeGetter('minutes');
2980 var hours = makeGetter('hours');
2981 var days = makeGetter('days');
2982 var duration_get__months = makeGetter('months');
2983 var years = makeGetter('years');
2984
2985 function weeks () {
2986 return absFloor(this.days() / 7);
2987 }
2988
2989 var round = Math.round;
2990 var thresholds = {
2991 s: 45, // seconds to minute
2992 m: 45, // minutes to hour
2993 h: 22, // hours to day
2994 d: 26, // days to month
2995 M: 11 // months to year
2996 };
2997
2998 // helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize
2999 function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) {
3000 return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture);
3001 }
3002
3003 function duration_humanize__relativeTime (posNegDuration, withoutSuffix, locale) {
3004 var duration = create__createDuration(posNegDuration).abs();
3005 var seconds = round(duration.as('s'));
3006 var minutes = round(duration.as('m'));
3007 var hours = round(duration.as('h'));
3008 var days = round(duration.as('d'));
3009 var months = round(duration.as('M'));
3010 var years = round(duration.as('y'));
3011
3012 var a = seconds < thresholds.s && ['s', seconds] ||
3013 minutes === 1 && ['m'] ||
3014 minutes < thresholds.m && ['mm', minutes] ||
3015 hours === 1 && ['h'] ||
3016 hours < thresholds.h && ['hh', hours] ||
3017 days === 1 && ['d'] ||
3018 days < thresholds.d && ['dd', days] ||
3019 months === 1 && ['M'] ||
3020 months < thresholds.M && ['MM', months] ||
3021 years === 1 && ['y'] || ['yy', years];
3022
3023 a[2] = withoutSuffix;
3024 a[3] = +posNegDuration > 0;
3025 a[4] = locale;
3026 return substituteTimeAgo.apply(null, a);
3027 }
3028
3029 // This function allows you to set a threshold for relative time strings
3030 function duration_humanize__getSetRelativeTimeThreshold (threshold, limit) {
3031 if (thresholds[threshold] === undefined) {
3032 return false;
3033 }
3034 if (limit === undefined) {
3035 return thresholds[threshold];
3036 }
3037 thresholds[threshold] = limit;
3038 return true;
3039 }
3040
3041 function humanize (withSuffix) {
3042 var locale = this.localeData();
3043 var output = duration_humanize__relativeTime(this, !withSuffix, locale);
3044
3045 if (withSuffix) {
3046 output = locale.pastFuture(+this, output);
3047 }
3048
3049 return locale.postformat(output);
3050 }
3051
3052 var iso_string__abs = Math.abs;
3053
3054 function iso_string__toISOString() {
3055 // for ISO strings we do not use the normal bubbling rules:
3056 // * milliseconds bubble up until they become hours
3057 // * days do not bubble at all
3058 // * months bubble up until they become years
3059 // This is because there is no context-free conversion between hours and days
3060 // (think of clock changes)
3061 // and also not between days and months (28-31 days per month)
3062 var seconds = iso_string__abs(this._milliseconds) / 1000;
3063 var days = iso_string__abs(this._days);
3064 var months = iso_string__abs(this._months);
3065 var minutes, hours, years;
3066
3067 // 3600 seconds -> 60 minutes -> 1 hour
3068 minutes = absFloor(seconds / 60);
3069 hours = absFloor(minutes / 60);
3070 seconds %= 60;
3071 minutes %= 60;
3072
3073 // 12 months -> 1 year
3074 years = absFloor(months / 12);
3075 months %= 12;
3076
3077
3078 // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js
3079 var Y = years;
3080 var M = months;
3081 var D = days;
3082 var h = hours;
3083 var m = minutes;
3084 var s = seconds;
3085 var total = this.asSeconds();
3086
3087 if (!total) {
3088 // this is the same as C#'s (Noda) and python (isodate)...
3089 // but not other JS (goog.date)
3090 return 'P0D';
3091 }
3092
3093 return (total < 0 ? '-' : '') +
3094 'P' +
3095 (Y ? Y + 'Y' : '') +
3096 (M ? M + 'M' : '') +
3097 (D ? D + 'D' : '') +
3098 ((h || m || s) ? 'T' : '') +
3099 (h ? h + 'H' : '') +
3100 (m ? m + 'M' : '') +
3101 (s ? s + 'S' : '');
3102 }
3103
3104 var duration_prototype__proto = Duration.prototype;
3105
3106 duration_prototype__proto.abs = duration_abs__abs;
3107 duration_prototype__proto.add = duration_add_subtract__add;
3108 duration_prototype__proto.subtract = duration_add_subtract__subtract;
3109 duration_prototype__proto.as = as;
3110 duration_prototype__proto.asMilliseconds = asMilliseconds;
3111 duration_prototype__proto.asSeconds = asSeconds;
3112 duration_prototype__proto.asMinutes = asMinutes;
3113 duration_prototype__proto.asHours = asHours;
3114 duration_prototype__proto.asDays = asDays;
3115 duration_prototype__proto.asWeeks = asWeeks;
3116 duration_prototype__proto.asMonths = asMonths;
3117 duration_prototype__proto.asYears = asYears;
3118 duration_prototype__proto.valueOf = duration_as__valueOf;
3119 duration_prototype__proto._bubble = bubble;
3120 duration_prototype__proto.get = duration_get__get;
3121 duration_prototype__proto.milliseconds = milliseconds;
3122 duration_prototype__proto.seconds = seconds;
3123 duration_prototype__proto.minutes = minutes;
3124 duration_prototype__proto.hours = hours;
3125 duration_prototype__proto.days = days;
3126 duration_prototype__proto.weeks = weeks;
3127 duration_prototype__proto.months = duration_get__months;
3128 duration_prototype__proto.years = years;
3129 duration_prototype__proto.humanize = humanize;
3130 duration_prototype__proto.toISOString = iso_string__toISOString;
3131 duration_prototype__proto.toString = iso_string__toISOString;
3132 duration_prototype__proto.toJSON = iso_string__toISOString;
3133 duration_prototype__proto.locale = locale;
3134 duration_prototype__proto.localeData = localeData;
3135
3136 // Deprecations
3137 duration_prototype__proto.toIsoString = deprecate('toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', iso_string__toISOString);
3138 duration_prototype__proto.lang = lang;
3139
3140 // Side effect imports
3141
3142 addFormatToken('X', 0, 0, 'unix');
3143 addFormatToken('x', 0, 0, 'valueOf');
3144
3145 // PARSING
3146
3147 addRegexToken('x', matchSigned);
3148 addRegexToken('X', matchTimestamp);
3149 addParseToken('X', function (input, array, config) {
3150 config._d = new Date(parseFloat(input, 10) * 1000);
3151 });
3152 addParseToken('x', function (input, array, config) {
3153 config._d = new Date(toInt(input));
3154 });
3155
3156 // Side effect imports
3157
3158 ;
3159
3160 //! moment.js
3161 //! version : 2.10.6
3162 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors
3163 //! license : MIT
3164 //! momentjs.com
3165
3166 utils_hooks__hooks.version = '2.10.6';
3167
3168 setHookCallback(local__createLocal);
3169
3170 utils_hooks__hooks.fn = momentPrototype;
3171 utils_hooks__hooks.min = min;
3172 utils_hooks__hooks.max = max;
3173 utils_hooks__hooks.utc = create_utc__createUTC;
3174 utils_hooks__hooks.unix = moment_moment__createUnix;
3175 utils_hooks__hooks.months = lists__listMonths;
3176 utils_hooks__hooks.isDate = isDate;
3177 utils_hooks__hooks.locale = locale_locales__getSetGlobalLocale;
3178 utils_hooks__hooks.invalid = valid__createInvalid;
3179 utils_hooks__hooks.duration = create__createDuration;
3180 utils_hooks__hooks.isMoment = isMoment;
3181 utils_hooks__hooks.weekdays = lists__listWeekdays;
3182 utils_hooks__hooks.parseZone = moment_moment__createInZone;
3183 utils_hooks__hooks.localeData = locale_locales__getLocale;
3184 utils_hooks__hooks.isDuration = isDuration;
3185 utils_hooks__hooks.monthsShort = lists__listMonthsShort;
3186 utils_hooks__hooks.weekdaysMin = lists__listWeekdaysMin;
3187 utils_hooks__hooks.defineLocale = defineLocale;
3188 utils_hooks__hooks.weekdaysShort = lists__listWeekdaysShort;
3189 utils_hooks__hooks.normalizeUnits = normalizeUnits;
3190 utils_hooks__hooks.relativeTimeThreshold = duration_humanize__getSetRelativeTimeThreshold;
3191
3192 var _moment__default = utils_hooks__hooks;
3193
3194 //! moment.js locale configuration
3195 //! locale : afrikaans (af)
3196 //! author : Werner Mollentze : https://github.com/wernerm
3197
3198 var af = _moment__default.defineLocale('af', {
3199 months : 'Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember'.split('_'),
3200 monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des'.split('_'),
3201 weekdays : 'Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag'.split('_'),
3202 weekdaysShort : 'Son_Maa_Din_Woe_Don_Vry_Sat'.split('_'),
3203 weekdaysMin : 'So_Ma_Di_Wo_Do_Vr_Sa'.split('_'),
3204 meridiemParse: /vm|nm/i,
3205 isPM : function (input) {
3206 return /^nm$/i.test(input);
3207 },
3208 meridiem : function (hours, minutes, isLower) {
3209 if (hours < 12) {
3210 return isLower ? 'vm' : 'VM';
3211 } else {
3212 return isLower ? 'nm' : 'NM';
3213 }
3214 },
3215 longDateFormat : {
3216 LT : 'HH:mm',
3217 LTS : 'HH:mm:ss',
3218 L : 'DD/MM/YYYY',
3219 LL : 'D MMMM YYYY',
3220 LLL : 'D MMMM YYYY HH:mm',
3221 LLLL : 'dddd, D MMMM YYYY HH:mm'
3222 },
3223 calendar : {
3224 sameDay : '[Vandag om] LT',
3225 nextDay : '[Môre om] LT',
3226 nextWeek : 'dddd [om] LT',
3227 lastDay : '[Gister om] LT',
3228 lastWeek : '[Laas] dddd [om] LT',
3229 sameElse : 'L'
3230 },
3231 relativeTime : {
3232 future : 'oor %s',
3233 past : '%s gelede',
3234 s : '\'n paar sekondes',
3235 m : '\'n minuut',
3236 mm : '%d minute',
3237 h : '\'n uur',
3238 hh : '%d ure',
3239 d : '\'n dag',
3240 dd : '%d dae',
3241 M : '\'n maand',
3242 MM : '%d maande',
3243 y : '\'n jaar',
3244 yy : '%d jaar'
3245 },
3246 ordinalParse: /\d{1,2}(ste|de)/,
3247 ordinal : function (number) {
3248 return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de'); // Thanks to Joris Röling : https://github.com/jjupiter
3249 },
3250 week : {
3251 dow : 1, // Maandag is die eerste dag van die week.
3252 doy : 4 // Die week wat die 4de Januarie bevat is die eerste week van die jaar.
3253 }
3254 });
3255
3256 //! moment.js locale configuration
3257 //! locale : Moroccan Arabic (ar-ma)
3258 //! author : ElFadili Yassine : https://github.com/ElFadiliY
3259 //! author : Abdel Said : https://github.com/abdelsaid
3260
3261 var ar_ma = _moment__default.defineLocale('ar-ma', {
3262 months : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),
3263 monthsShort : 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split('_'),
3264 weekdays : 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3265 weekdaysShort : 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'),
3266 weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3267 longDateFormat : {
3268 LT : 'HH:mm',
3269 LTS : 'HH:mm:ss',
3270 L : 'DD/MM/YYYY',
3271 LL : 'D MMMM YYYY',
3272 LLL : 'D MMMM YYYY HH:mm',
3273 LLLL : 'dddd D MMMM YYYY HH:mm'
3274 },
3275 calendar : {
3276 sameDay: '[اليوم على الساعة] LT',
3277 nextDay: '[غدا على الساعة] LT',
3278 nextWeek: 'dddd [على الساعة] LT',
3279 lastDay: '[أمس على الساعة] LT',
3280 lastWeek: 'dddd [على الساعة] LT',
3281 sameElse: 'L'
3282 },
3283 relativeTime : {
3284 future : 'في %s',
3285 past : 'منذ %s',
3286 s : 'ثوان',
3287 m : 'دقيقة',
3288 mm : '%d دقائق',
3289 h : 'ساعة',
3290 hh : '%d ساعات',
3291 d : 'يوم',
3292 dd : '%d أيام',
3293 M : 'شهر',
3294 MM : '%d أشهر',
3295 y : 'سنة',
3296 yy : '%d سنوات'
3297 },
3298 week : {
3299 dow : 6, // Saturday is the first day of the week.
3300 doy : 12 // The week that contains Jan 1st is the first week of the year.
3301 }
3302 });
3303
3304 //! moment.js locale configuration
3305 //! locale : Arabic Saudi Arabia (ar-sa)
3306 //! author : Suhail Alkowaileet : https://github.com/xsoh
3307
3308 var ar_sa__symbolMap = {
3309 '1': '١',
3310 '2': '٢',
3311 '3': '٣',
3312 '4': '٤',
3313 '5': '٥',
3314 '6': '٦',
3315 '7': '٧',
3316 '8': '٨',
3317 '9': '٩',
3318 '0': '٠'
3319 }, ar_sa__numberMap = {
3320 '١': '1',
3321 '٢': '2',
3322 '٣': '3',
3323 '٤': '4',
3324 '٥': '5',
3325 '٦': '6',
3326 '٧': '7',
3327 '٨': '8',
3328 '٩': '9',
3329 '٠': '0'
3330 };
3331
3332 var ar_sa = _moment__default.defineLocale('ar-sa', {
3333 months : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3334 monthsShort : 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3335 weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3336 weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3337 weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3338 longDateFormat : {
3339 LT : 'HH:mm',
3340 LTS : 'HH:mm:ss',
3341 L : 'DD/MM/YYYY',
3342 LL : 'D MMMM YYYY',
3343 LLL : 'D MMMM YYYY HH:mm',
3344 LLLL : 'dddd D MMMM YYYY HH:mm'
3345 },
3346 meridiemParse: /ص|م/,
3347 isPM : function (input) {
3348 return 'م' === input;
3349 },
3350 meridiem : function (hour, minute, isLower) {
3351 if (hour < 12) {
3352 return 'ص';
3353 } else {
3354 return 'م';
3355 }
3356 },
3357 calendar : {
3358 sameDay: '[اليوم على الساعة] LT',
3359 nextDay: '[غدا على الساعة] LT',
3360 nextWeek: 'dddd [على الساعة] LT',
3361 lastDay: '[أمس على الساعة] LT',
3362 lastWeek: 'dddd [على الساعة] LT',
3363 sameElse: 'L'
3364 },
3365 relativeTime : {
3366 future : 'في %s',
3367 past : 'منذ %s',
3368 s : 'ثوان',
3369 m : 'دقيقة',
3370 mm : '%d دقائق',
3371 h : 'ساعة',
3372 hh : '%d ساعات',
3373 d : 'يوم',
3374 dd : '%d أيام',
3375 M : 'شهر',
3376 MM : '%d أشهر',
3377 y : 'سنة',
3378 yy : '%d سنوات'
3379 },
3380 preparse: function (string) {
3381 return string.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
3382 return ar_sa__numberMap[match];
3383 }).replace(/،/g, ',');
3384 },
3385 postformat: function (string) {
3386 return string.replace(/\d/g, function (match) {
3387 return ar_sa__symbolMap[match];
3388 }).replace(/,/g, '،');
3389 },
3390 week : {
3391 dow : 6, // Saturday is the first day of the week.
3392 doy : 12 // The week that contains Jan 1st is the first week of the year.
3393 }
3394 });
3395
3396 //! moment.js locale configuration
3397 //! locale : Tunisian Arabic (ar-tn)
3398
3399 var ar_tn = _moment__default.defineLocale('ar-tn', {
3400 months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3401 monthsShort: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split('_'),
3402 weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3403 weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3404 weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3405 longDateFormat: {
3406 LT: 'HH:mm',
3407 LTS: 'HH:mm:ss',
3408 L: 'DD/MM/YYYY',
3409 LL: 'D MMMM YYYY',
3410 LLL: 'D MMMM YYYY HH:mm',
3411 LLLL: 'dddd D MMMM YYYY HH:mm'
3412 },
3413 calendar: {
3414 sameDay: '[اليوم على الساعة] LT',
3415 nextDay: '[غدا على الساعة] LT',
3416 nextWeek: 'dddd [على الساعة] LT',
3417 lastDay: '[أمس على الساعة] LT',
3418 lastWeek: 'dddd [على الساعة] LT',
3419 sameElse: 'L'
3420 },
3421 relativeTime: {
3422 future: 'في %s',
3423 past: 'منذ %s',
3424 s: 'ثوان',
3425 m: 'دقيقة',
3426 mm: '%d دقائق',
3427 h: 'ساعة',
3428 hh: '%d ساعات',
3429 d: 'يوم',
3430 dd: '%d أيام',
3431 M: 'شهر',
3432 MM: '%d أشهر',
3433 y: 'سنة',
3434 yy: '%d سنوات'
3435 },
3436 week: {
3437 dow: 1, // Monday is the first day of the week.
3438 doy: 4 // The week that contains Jan 4th is the first week of the year.
3439 }
3440 });
3441
3442 //! moment.js locale configuration
3443 //! Locale: Arabic (ar)
3444 //! Author: Abdel Said: https://github.com/abdelsaid
3445 //! Changes in months, weekdays: Ahmed Elkhatib
3446 //! Native plural forms: forabi https://github.com/forabi
3447
3448 var ar__symbolMap = {
3449 '1': '١',
3450 '2': '٢',
3451 '3': '٣',
3452 '4': '٤',
3453 '5': '٥',
3454 '6': '٦',
3455 '7': '٧',
3456 '8': '٨',
3457 '9': '٩',
3458 '0': '٠'
3459 }, ar__numberMap = {
3460 '١': '1',
3461 '٢': '2',
3462 '٣': '3',
3463 '٤': '4',
3464 '٥': '5',
3465 '٦': '6',
3466 '٧': '7',
3467 '٨': '8',
3468 '٩': '9',
3469 '٠': '0'
3470 }, pluralForm = function (n) {
3471 return n === 0 ? 0 : n === 1 ? 1 : n === 2 ? 2 : n % 100 >= 3 && n % 100 <= 10 ? 3 : n % 100 >= 11 ? 4 : 5;
3472 }, plurals = {
3473 s : ['أقل من ثانية', 'ثانية واحدة', ['ثانيتان', 'ثانيتين'], '%d ثوان', '%d ثانية', '%d ثانية'],
3474 m : ['أقل من دقيقة', 'دقيقة واحدة', ['دقيقتان', 'دقيقتين'], '%d دقائق', '%d دقيقة', '%d دقيقة'],
3475 h : ['أقل من ساعة', 'ساعة واحدة', ['ساعتان', 'ساعتين'], '%d ساعات', '%d ساعة', '%d ساعة'],
3476 d : ['أقل من يوم', 'يوم واحد', ['يومان', 'يومين'], '%d أيام', '%d يومًا', '%d يوم'],
3477 M : ['أقل من شهر', 'شهر واحد', ['شهران', 'شهرين'], '%d أشهر', '%d شهرا', '%d شهر'],
3478 y : ['أقل من عام', 'عام واحد', ['عامان', 'عامين'], '%d أعوام', '%d عامًا', '%d عام']
3479 }, pluralize = function (u) {
3480 return function (number, withoutSuffix, string, isFuture) {
3481 var f = pluralForm(number),
3482 str = plurals[u][pluralForm(number)];
3483 if (f === 2) {
3484 str = str[withoutSuffix ? 0 : 1];
3485 }
3486 return str.replace(/%d/i, number);
3487 };
3488 }, ar__months = [
3489 'كانون الثاني يناير',
3490 'شباط فبراير',
3491 'آذار مارس',
3492 'نيسان أبريل',
3493 'أيار مايو',
3494 'حزيران يونيو',
3495 'تموز يوليو',
3496 'آب أغسطس',
3497 'أيلول سبتمبر',
3498 'تشرين الأول أكتوبر',
3499 'تشرين الثاني نوفمبر',
3500 'كانون الأول ديسمبر'
3501 ];
3502
3503 var ar = _moment__default.defineLocale('ar', {
3504 months : ar__months,
3505 monthsShort : ar__months,
3506 weekdays : 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'),
3507 weekdaysShort : 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'),
3508 weekdaysMin : 'ح_ن_ث_ر_خ_ج_س'.split('_'),
3509 longDateFormat : {
3510 LT : 'HH:mm',
3511 LTS : 'HH:mm:ss',
3512 L : 'D/\u200FM/\u200FYYYY',
3513 LL : 'D MMMM YYYY',
3514 LLL : 'D MMMM YYYY HH:mm',
3515 LLLL : 'dddd D MMMM YYYY HH:mm'
3516 },
3517 meridiemParse: /ص|م/,
3518 isPM : function (input) {
3519 return 'م' === input;
3520 },
3521 meridiem : function (hour, minute, isLower) {
3522 if (hour < 12) {
3523 return 'ص';
3524 } else {
3525 return 'م';
3526 }
3527 },
3528 calendar : {
3529 sameDay: '[اليوم عند الساعة] LT',
3530 nextDay: '[غدًا عند الساعة] LT',
3531 nextWeek: 'dddd [عند الساعة] LT',
3532 lastDay: '[أمس عند الساعة] LT',
3533 lastWeek: 'dddd [عند الساعة] LT',
3534 sameElse: 'L'
3535 },
3536 relativeTime : {
3537 future : 'بعد %s',
3538 past : 'منذ %s',
3539 s : pluralize('s'),
3540 m : pluralize('m'),
3541 mm : pluralize('m'),
3542 h : pluralize('h'),
3543 hh : pluralize('h'),
3544 d : pluralize('d'),
3545 dd : pluralize('d'),
3546 M : pluralize('M'),
3547 MM : pluralize('M'),
3548 y : pluralize('y'),
3549 yy : pluralize('y')
3550 },
3551 preparse: function (string) {
3552 return string.replace(/\u200f/g, '').replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) {
3553 return ar__numberMap[match];
3554 }).replace(/،/g, ',');
3555 },
3556 postformat: function (string) {
3557 return string.replace(/\d/g, function (match) {
3558 return ar__symbolMap[match];
3559 }).replace(/,/g, '،');
3560 },
3561 week : {
3562 dow : 6, // Saturday is the first day of the week.
3563 doy : 12 // The week that contains Jan 1st is the first week of the year.
3564 }
3565 });
3566
3567 //! moment.js locale configuration
3568 //! locale : azerbaijani (az)
3569 //! author : topchiyev : https://github.com/topchiyev
3570
3571 var az__suffixes = {
3572 1: '-inci',
3573 5: '-inci',
3574 8: '-inci',
3575 70: '-inci',
3576 80: '-inci',
3577 2: '-nci',
3578 7: '-nci',
3579 20: '-nci',
3580 50: '-nci',
3581 3: '-üncü',
3582 4: '-üncü',
3583 100: '-üncü',
3584 6: '-ncı',
3585 9: '-uncu',
3586 10: '-uncu',
3587 30: '-uncu',
3588 60: '-ıncı',
3589 90: '-ıncı'
3590 };
3591
3592 var az = _moment__default.defineLocale('az', {
3593 months : 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split('_'),
3594 monthsShort : 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'),
3595 weekdays : 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split('_'),
3596 weekdaysShort : 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'),
3597 weekdaysMin : 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'),
3598 longDateFormat : {
3599 LT : 'HH:mm',
3600 LTS : 'HH:mm:ss',
3601 L : 'DD.MM.YYYY',
3602 LL : 'D MMMM YYYY',
3603 LLL : 'D MMMM YYYY HH:mm',
3604 LLLL : 'dddd, D MMMM YYYY HH:mm'
3605 },
3606 calendar : {
3607 sameDay : '[bugün saat] LT',
3608 nextDay : '[sabah saat] LT',
3609 nextWeek : '[gələn həftə] dddd [saat] LT',
3610 lastDay : '[dünən] LT',
3611 lastWeek : '[keçən həftə] dddd [saat] LT',
3612 sameElse : 'L'
3613 },
3614 relativeTime : {
3615 future : '%s sonra',
3616 past : '%s əvvəl',
3617 s : 'birneçə saniyyə',
3618 m : 'bir dəqiqə',
3619 mm : '%d dəqiqə',
3620 h : 'bir saat',
3621 hh : '%d saat',
3622 d : 'bir gün',
3623 dd : '%d gün',
3624 M : 'bir ay',
3625 MM : '%d ay',
3626 y : 'bir il',
3627 yy : '%d il'
3628 },
3629 meridiemParse: /gecə|səhər|gündüz|axşam/,
3630 isPM : function (input) {
3631 return /^(gündüz|axşam)$/.test(input);
3632 },
3633 meridiem : function (hour, minute, isLower) {
3634 if (hour < 4) {
3635 return 'gecə';
3636 } else if (hour < 12) {
3637 return 'səhər';
3638 } else if (hour < 17) {
3639 return 'gündüz';
3640 } else {
3641 return 'axşam';
3642 }
3643 },
3644 ordinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,
3645 ordinal : function (number) {
3646 if (number === 0) { // special case for zero
3647 return number + '-ıncı';
3648 }
3649 var a = number % 10,
3650 b = number % 100 - a,
3651 c = number >= 100 ? 100 : null;
3652 return number + (az__suffixes[a] || az__suffixes[b] || az__suffixes[c]);
3653 },
3654 week : {
3655 dow : 1, // Monday is the first day of the week.
3656 doy : 7 // The week that contains Jan 1st is the first week of the year.
3657 }
3658 });
3659
3660 //! moment.js locale configuration
3661 //! locale : belarusian (be)
3662 //! author : Dmitry Demidov : https://github.com/demidov91
3663 //! author: Praleska: http://praleska.pro/
3664 //! Author : Menelion Elensúle : https://github.com/Oire
3665
3666 function be__plural(word, num) {
3667 var forms = word.split('_');
3668 return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
3669 }
3670 function be__relativeTimeWithPlural(number, withoutSuffix, key) {
3671 var format = {
3672 'mm': withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін',
3673 'hh': withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін',
3674 'dd': 'дзень_дні_дзён',
3675 'MM': 'месяц_месяцы_месяцаў',
3676 'yy': 'год_гады_гадоў'
3677 };
3678 if (key === 'm') {
3679 return withoutSuffix ? 'хвіліна' : 'хвіліну';
3680 }
3681 else if (key === 'h') {
3682 return withoutSuffix ? 'гадзіна' : 'гадзіну';
3683 }
3684 else {
3685 return number + ' ' + be__plural(format[key], +number);
3686 }
3687 }
3688 function be__monthsCaseReplace(m, format) {
3689 var months = {
3690 'nominative': 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split('_'),
3691 'accusative': 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split('_')
3692 },
3693 nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
3694 'accusative' :
3695 'nominative';
3696 return months[nounCase][m.month()];
3697 }
3698 function be__weekdaysCaseReplace(m, format) {
3699 var weekdays = {
3700 'nominative': 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split('_'),
3701 'accusative': 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split('_')
3702 },
3703 nounCase = (/\[ ?[Вв] ?(?:мінулую|наступную)? ?\] ?dddd/).test(format) ?
3704 'accusative' :
3705 'nominative';
3706 return weekdays[nounCase][m.day()];
3707 }
3708
3709 var be = _moment__default.defineLocale('be', {
3710 months : be__monthsCaseReplace,
3711 monthsShort : 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'),
3712 weekdays : be__weekdaysCaseReplace,
3713 weekdaysShort : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
3714 weekdaysMin : 'нд_пн_ат_ср_чц_пт_сб'.split('_'),
3715 longDateFormat : {
3716 LT : 'HH:mm',
3717 LTS : 'HH:mm:ss',
3718 L : 'DD.MM.YYYY',
3719 LL : 'D MMMM YYYY г.',
3720 LLL : 'D MMMM YYYY г., HH:mm',
3721 LLLL : 'dddd, D MMMM YYYY г., HH:mm'
3722 },
3723 calendar : {
3724 sameDay: '[Сёння ў] LT',
3725 nextDay: '[Заўтра ў] LT',
3726 lastDay: '[Учора ў] LT',
3727 nextWeek: function () {
3728 return '[У] dddd [ў] LT';
3729 },
3730 lastWeek: function () {
3731 switch (this.day()) {
3732 case 0:
3733 case 3:
3734 case 5:
3735 case 6:
3736 return '[У мінулую] dddd [ў] LT';
3737 case 1:
3738 case 2:
3739 case 4:
3740 return '[У мінулы] dddd [ў] LT';
3741 }
3742 },
3743 sameElse: 'L'
3744 },
3745 relativeTime : {
3746 future : 'праз %s',
3747 past : '%s таму',
3748 s : 'некалькі секунд',
3749 m : be__relativeTimeWithPlural,
3750 mm : be__relativeTimeWithPlural,
3751 h : be__relativeTimeWithPlural,
3752 hh : be__relativeTimeWithPlural,
3753 d : 'дзень',
3754 dd : be__relativeTimeWithPlural,
3755 M : 'месяц',
3756 MM : be__relativeTimeWithPlural,
3757 y : 'год',
3758 yy : be__relativeTimeWithPlural
3759 },
3760 meridiemParse: /ночы|раніцы|дня|вечара/,
3761 isPM : function (input) {
3762 return /^(дня|вечара)$/.test(input);
3763 },
3764 meridiem : function (hour, minute, isLower) {
3765 if (hour < 4) {
3766 return 'ночы';
3767 } else if (hour < 12) {
3768 return 'раніцы';
3769 } else if (hour < 17) {
3770 return 'дня';
3771 } else {
3772 return 'вечара';
3773 }
3774 },
3775 ordinalParse: /\d{1,2}-(і|ы|га)/,
3776 ordinal: function (number, period) {
3777 switch (period) {
3778 case 'M':
3779 case 'd':
3780 case 'DDD':
3781 case 'w':
3782 case 'W':
3783 return (number % 10 === 2 || number % 10 === 3) && (number % 100 !== 12 && number % 100 !== 13) ? number + '-і' : number + '-ы';
3784 case 'D':
3785 return number + '-га';
3786 default:
3787 return number;
3788 }
3789 },
3790 week : {
3791 dow : 1, // Monday is the first day of the week.
3792 doy : 7 // The week that contains Jan 1st is the first week of the year.
3793 }
3794 });
3795
3796 //! moment.js locale configuration
3797 //! locale : bulgarian (bg)
3798 //! author : Krasen Borisov : https://github.com/kraz
3799
3800 var bg = _moment__default.defineLocale('bg', {
3801 months : 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split('_'),
3802 monthsShort : 'янр_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'),
3803 weekdays : 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split('_'),
3804 weekdaysShort : 'нед_пон_вто_сря_чет_пет_съб'.split('_'),
3805 weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
3806 longDateFormat : {
3807 LT : 'H:mm',
3808 LTS : 'H:mm:ss',
3809 L : 'D.MM.YYYY',
3810 LL : 'D MMMM YYYY',
3811 LLL : 'D MMMM YYYY H:mm',
3812 LLLL : 'dddd, D MMMM YYYY H:mm'
3813 },
3814 calendar : {
3815 sameDay : '[Днес в] LT',
3816 nextDay : '[Утре в] LT',
3817 nextWeek : 'dddd [в] LT',
3818 lastDay : '[Вчера в] LT',
3819 lastWeek : function () {
3820 switch (this.day()) {
3821 case 0:
3822 case 3:
3823 case 6:
3824 return '[В изминалата] dddd [в] LT';
3825 case 1:
3826 case 2:
3827 case 4:
3828 case 5:
3829 return '[В изминалия] dddd [в] LT';
3830 }
3831 },
3832 sameElse : 'L'
3833 },
3834 relativeTime : {
3835 future : 'след %s',
3836 past : 'преди %s',
3837 s : 'няколко секунди',
3838 m : 'минута',
3839 mm : '%d минути',
3840 h : 'час',
3841 hh : '%d часа',
3842 d : 'ден',
3843 dd : '%d дни',
3844 M : 'месец',
3845 MM : '%d месеца',
3846 y : 'година',
3847 yy : '%d години'
3848 },
3849 ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
3850 ordinal : function (number) {
3851 var lastDigit = number % 10,
3852 last2Digits = number % 100;
3853 if (number === 0) {
3854 return number + '-ев';
3855 } else if (last2Digits === 0) {
3856 return number + '-ен';
3857 } else if (last2Digits > 10 && last2Digits < 20) {
3858 return number + '-ти';
3859 } else if (lastDigit === 1) {
3860 return number + '-ви';
3861 } else if (lastDigit === 2) {
3862 return number + '-ри';
3863 } else if (lastDigit === 7 || lastDigit === 8) {
3864 return number + '-ми';
3865 } else {
3866 return number + '-ти';
3867 }
3868 },
3869 week : {
3870 dow : 1, // Monday is the first day of the week.
3871 doy : 7 // The week that contains Jan 1st is the first week of the year.
3872 }
3873 });
3874
3875 //! moment.js locale configuration
3876 //! locale : Bengali (bn)
3877 //! author : Kaushik Gandhi : https://github.com/kaushikgandhi
3878
3879 var bn__symbolMap = {
3880 '1': '১',
3881 '2': '২',
3882 '3': '৩',
3883 '4': '৪',
3884 '5': '৫',
3885 '6': '৬',
3886 '7': '৭',
3887 '8': '৮',
3888 '9': '৯',
3889 '0': '০'
3890 },
3891 bn__numberMap = {
3892 '১': '1',
3893 '২': '2',
3894 '৩': '3',
3895 '৪': '4',
3896 '৫': '5',
3897 '৬': '6',
3898 '৭': '7',
3899 '৮': '8',
3900 '৯': '9',
3901 '০': '0'
3902 };
3903
3904 var bn = _moment__default.defineLocale('bn', {
3905 months : 'জানুয়ারী_ফেবুয়ারী_মার্চ_এপ্রিল_মে_জুন_জুলাই_অগাস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split('_'),
3906 monthsShort : 'জানু_ফেব_মার্চ_এপর_মে_জুন_জুল_অগ_সেপ্ট_অক্টো_নভ_ডিসেম্'.split('_'),
3907 weekdays : 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পত্তিবার_শুক্রুবার_শনিবার'.split('_'),
3908 weekdaysShort : 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পত্তি_শুক্রু_শনি'.split('_'),
3909 weekdaysMin : 'রব_সম_মঙ্গ_বু_ব্রিহ_শু_শনি'.split('_'),
3910 longDateFormat : {
3911 LT : 'A h:mm সময়',
3912 LTS : 'A h:mm:ss সময়',
3913 L : 'DD/MM/YYYY',
3914 LL : 'D MMMM YYYY',
3915 LLL : 'D MMMM YYYY, A h:mm সময়',
3916 LLLL : 'dddd, D MMMM YYYY, A h:mm সময়'
3917 },
3918 calendar : {
3919 sameDay : '[আজ] LT',
3920 nextDay : '[আগামীকাল] LT',
3921 nextWeek : 'dddd, LT',
3922 lastDay : '[গতকাল] LT',
3923 lastWeek : '[গত] dddd, LT',
3924 sameElse : 'L'
3925 },
3926 relativeTime : {
3927 future : '%s পরে',
3928 past : '%s আগে',
3929 s : 'কএক সেকেন্ড',
3930 m : 'এক মিনিট',
3931 mm : '%d মিনিট',
3932 h : 'এক ঘন্টা',
3933 hh : '%d ঘন্টা',
3934 d : 'এক দিন',
3935 dd : '%d দিন',
3936 M : 'এক মাস',
3937 MM : '%d মাস',
3938 y : 'এক বছর',
3939 yy : '%d বছর'
3940 },
3941 preparse: function (string) {
3942 return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) {
3943 return bn__numberMap[match];
3944 });
3945 },
3946 postformat: function (string) {
3947 return string.replace(/\d/g, function (match) {
3948 return bn__symbolMap[match];
3949 });
3950 },
3951 meridiemParse: /রাত|সকাল|দুপুর|বিকেল|রাত/,
3952 isPM: function (input) {
3953 return /^(দুপুর|বিকেল|রাত)$/.test(input);
3954 },
3955 //Bengali is a vast language its spoken
3956 //in different forms in various parts of the world.
3957 //I have just generalized with most common one used
3958 meridiem : function (hour, minute, isLower) {
3959 if (hour < 4) {
3960 return 'রাত';
3961 } else if (hour < 10) {
3962 return 'সকাল';
3963 } else if (hour < 17) {
3964 return 'দুপুর';
3965 } else if (hour < 20) {
3966 return 'বিকেল';
3967 } else {
3968 return 'রাত';
3969 }
3970 },
3971 week : {
3972 dow : 0, // Sunday is the first day of the week.
3973 doy : 6 // The week that contains Jan 1st is the first week of the year.
3974 }
3975 });
3976
3977 //! moment.js locale configuration
3978 //! locale : tibetan (bo)
3979 //! author : Thupten N. Chakrishar : https://github.com/vajradog
3980
3981 var bo__symbolMap = {
3982 '1': '༡',
3983 '2': '༢',
3984 '3': '༣',
3985 '4': '༤',
3986 '5': '༥',
3987 '6': '༦',
3988 '7': '༧',
3989 '8': '༨',
3990 '9': '༩',
3991 '0': '༠'
3992 },
3993 bo__numberMap = {
3994 '༡': '1',
3995 '༢': '2',
3996 '༣': '3',
3997 '༤': '4',
3998 '༥': '5',
3999 '༦': '6',
4000 '༧': '7',
4001 '༨': '8',
4002 '༩': '9',
4003 '༠': '0'
4004 };
4005
4006 var bo = _moment__default.defineLocale('bo', {
4007 months : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),
4008 monthsShort : 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split('_'),
4009 weekdays : 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split('_'),
4010 weekdaysShort : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),
4011 weekdaysMin : 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split('_'),
4012 longDateFormat : {
4013 LT : 'A h:mm',
4014 LTS : 'A h:mm:ss',
4015 L : 'DD/MM/YYYY',
4016 LL : 'D MMMM YYYY',
4017 LLL : 'D MMMM YYYY, A h:mm',
4018 LLLL : 'dddd, D MMMM YYYY, A h:mm'
4019 },
4020 calendar : {
4021 sameDay : '[དི་རིང] LT',
4022 nextDay : '[སང་ཉིན] LT',
4023 nextWeek : '[བདུན་ཕྲག་རྗེས་མ], LT',
4024 lastDay : '[ཁ་སང] LT',
4025 lastWeek : '[བདུན་ཕྲག་མཐའ་མ] dddd, LT',
4026 sameElse : 'L'
4027 },
4028 relativeTime : {
4029 future : '%s ལ་',
4030 past : '%s སྔན་ལ',
4031 s : 'ལམ་སང',
4032 m : 'སྐར་མ་གཅིག',
4033 mm : '%d སྐར་མ',
4034 h : 'ཆུ་ཚོད་གཅིག',
4035 hh : '%d ཆུ་ཚོད',
4036 d : 'ཉིན་གཅིག',
4037 dd : '%d ཉིན་',
4038 M : 'ཟླ་བ་གཅིག',
4039 MM : '%d ཟླ་བ',
4040 y : 'ལོ་གཅིག',
4041 yy : '%d ལོ'
4042 },
4043 preparse: function (string) {
4044 return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) {
4045 return bo__numberMap[match];
4046 });
4047 },
4048 postformat: function (string) {
4049 return string.replace(/\d/g, function (match) {
4050 return bo__symbolMap[match];
4051 });
4052 },
4053 meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
4054 isPM: function (input) {
4055 return /^(ཉིན་གུང|དགོང་དག|མཚན་མོ)$/.test(input);
4056 },
4057 meridiem : function (hour, minute, isLower) {
4058 if (hour < 4) {
4059 return 'མཚན་མོ';
4060 } else if (hour < 10) {
4061 return 'ཞོགས་ཀས';
4062 } else if (hour < 17) {
4063 return 'ཉིན་གུང';
4064 } else if (hour < 20) {
4065 return 'དགོང་དག';
4066 } else {
4067 return 'མཚན་མོ';
4068 }
4069 },
4070 week : {
4071 dow : 0, // Sunday is the first day of the week.
4072 doy : 6 // The week that contains Jan 1st is the first week of the year.
4073 }
4074 });
4075
4076 //! moment.js locale configuration
4077 //! locale : breton (br)
4078 //! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou
4079
4080 function relativeTimeWithMutation(number, withoutSuffix, key) {
4081 var format = {
4082 'mm': 'munutenn',
4083 'MM': 'miz',
4084 'dd': 'devezh'
4085 };
4086 return number + ' ' + mutation(format[key], number);
4087 }
4088 function specialMutationForYears(number) {
4089 switch (lastNumber(number)) {
4090 case 1:
4091 case 3:
4092 case 4:
4093 case 5:
4094 case 9:
4095 return number + ' bloaz';
4096 default:
4097 return number + ' vloaz';
4098 }
4099 }
4100 function lastNumber(number) {
4101 if (number > 9) {
4102 return lastNumber(number % 10);
4103 }
4104 return number;
4105 }
4106 function mutation(text, number) {
4107 if (number === 2) {
4108 return softMutation(text);
4109 }
4110 return text;
4111 }
4112 function softMutation(text) {
4113 var mutationTable = {
4114 'm': 'v',
4115 'b': 'v',
4116 'd': 'z'
4117 };
4118 if (mutationTable[text.charAt(0)] === undefined) {
4119 return text;
4120 }
4121 return mutationTable[text.charAt(0)] + text.substring(1);
4122 }
4123
4124 var br = _moment__default.defineLocale('br', {
4125 months : 'Genver_C\'hwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split('_'),
4126 monthsShort : 'Gen_C\'hwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'),
4127 weekdays : 'Sul_Lun_Meurzh_Merc\'her_Yaou_Gwener_Sadorn'.split('_'),
4128 weekdaysShort : 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'),
4129 weekdaysMin : 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'),
4130 longDateFormat : {
4131 LT : 'h[e]mm A',
4132 LTS : 'h[e]mm:ss A',
4133 L : 'DD/MM/YYYY',
4134 LL : 'D [a viz] MMMM YYYY',
4135 LLL : 'D [a viz] MMMM YYYY h[e]mm A',
4136 LLLL : 'dddd, D [a viz] MMMM YYYY h[e]mm A'
4137 },
4138 calendar : {
4139 sameDay : '[Hiziv da] LT',
4140 nextDay : '[Warc\'hoazh da] LT',
4141 nextWeek : 'dddd [da] LT',
4142 lastDay : '[Dec\'h da] LT',
4143 lastWeek : 'dddd [paset da] LT',
4144 sameElse : 'L'
4145 },
4146 relativeTime : {
4147 future : 'a-benn %s',
4148 past : '%s \'zo',
4149 s : 'un nebeud segondennoù',
4150 m : 'ur vunutenn',
4151 mm : relativeTimeWithMutation,
4152 h : 'un eur',
4153 hh : '%d eur',
4154 d : 'un devezh',
4155 dd : relativeTimeWithMutation,
4156 M : 'ur miz',
4157 MM : relativeTimeWithMutation,
4158 y : 'ur bloaz',
4159 yy : specialMutationForYears
4160 },
4161 ordinalParse: /\d{1,2}(añ|vet)/,
4162 ordinal : function (number) {
4163 var output = (number === 1) ? 'añ' : 'vet';
4164 return number + output;
4165 },
4166 week : {
4167 dow : 1, // Monday is the first day of the week.
4168 doy : 4 // The week that contains Jan 4th is the first week of the year.
4169 }
4170 });
4171
4172 //! moment.js locale configuration
4173 //! locale : bosnian (bs)
4174 //! author : Nedim Cholich : https://github.com/frontyard
4175 //! based on (hr) translation by Bojan Marković
4176
4177 function bs__translate(number, withoutSuffix, key) {
4178 var result = number + ' ';
4179 switch (key) {
4180 case 'm':
4181 return withoutSuffix ? 'jedna minuta' : 'jedne minute';
4182 case 'mm':
4183 if (number === 1) {
4184 result += 'minuta';
4185 } else if (number === 2 || number === 3 || number === 4) {
4186 result += 'minute';
4187 } else {
4188 result += 'minuta';
4189 }
4190 return result;
4191 case 'h':
4192 return withoutSuffix ? 'jedan sat' : 'jednog sata';
4193 case 'hh':
4194 if (number === 1) {
4195 result += 'sat';
4196 } else if (number === 2 || number === 3 || number === 4) {
4197 result += 'sata';
4198 } else {
4199 result += 'sati';
4200 }
4201 return result;
4202 case 'dd':
4203 if (number === 1) {
4204 result += 'dan';
4205 } else {
4206 result += 'dana';
4207 }
4208 return result;
4209 case 'MM':
4210 if (number === 1) {
4211 result += 'mjesec';
4212 } else if (number === 2 || number === 3 || number === 4) {
4213 result += 'mjeseca';
4214 } else {
4215 result += 'mjeseci';
4216 }
4217 return result;
4218 case 'yy':
4219 if (number === 1) {
4220 result += 'godina';
4221 } else if (number === 2 || number === 3 || number === 4) {
4222 result += 'godine';
4223 } else {
4224 result += 'godina';
4225 }
4226 return result;
4227 }
4228 }
4229
4230 var bs = _moment__default.defineLocale('bs', {
4231 months : 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split('_'),
4232 monthsShort : 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split('_'),
4233 weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),
4234 weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
4235 weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),
4236 longDateFormat : {
4237 LT : 'H:mm',
4238 LTS : 'H:mm:ss',
4239 L : 'DD. MM. YYYY',
4240 LL : 'D. MMMM YYYY',
4241 LLL : 'D. MMMM YYYY H:mm',
4242 LLLL : 'dddd, D. MMMM YYYY H:mm'
4243 },
4244 calendar : {
4245 sameDay : '[danas u] LT',
4246 nextDay : '[sutra u] LT',
4247 nextWeek : function () {
4248 switch (this.day()) {
4249 case 0:
4250 return '[u] [nedjelju] [u] LT';
4251 case 3:
4252 return '[u] [srijedu] [u] LT';
4253 case 6:
4254 return '[u] [subotu] [u] LT';
4255 case 1:
4256 case 2:
4257 case 4:
4258 case 5:
4259 return '[u] dddd [u] LT';
4260 }
4261 },
4262 lastDay : '[jučer u] LT',
4263 lastWeek : function () {
4264 switch (this.day()) {
4265 case 0:
4266 case 3:
4267 return '[prošlu] dddd [u] LT';
4268 case 6:
4269 return '[prošle] [subote] [u] LT';
4270 case 1:
4271 case 2:
4272 case 4:
4273 case 5:
4274 return '[prošli] dddd [u] LT';
4275 }
4276 },
4277 sameElse : 'L'
4278 },
4279 relativeTime : {
4280 future : 'za %s',
4281 past : 'prije %s',
4282 s : 'par sekundi',
4283 m : bs__translate,
4284 mm : bs__translate,
4285 h : bs__translate,
4286 hh : bs__translate,
4287 d : 'dan',
4288 dd : bs__translate,
4289 M : 'mjesec',
4290 MM : bs__translate,
4291 y : 'godinu',
4292 yy : bs__translate
4293 },
4294 ordinalParse: /\d{1,2}\./,
4295 ordinal : '%d.',
4296 week : {
4297 dow : 1, // Monday is the first day of the week.
4298 doy : 7 // The week that contains Jan 1st is the first week of the year.
4299 }
4300 });
4301
4302 //! moment.js locale configuration
4303 //! locale : catalan (ca)
4304 //! author : Juan G. Hurtado : https://github.com/juanghurtado
4305
4306 var ca = _moment__default.defineLocale('ca', {
4307 months : 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split('_'),
4308 monthsShort : 'gen._febr._mar._abr._mai._jun._jul._ag._set._oct._nov._des.'.split('_'),
4309 weekdays : 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split('_'),
4310 weekdaysShort : 'dg._dl._dt._dc._dj._dv._ds.'.split('_'),
4311 weekdaysMin : 'Dg_Dl_Dt_Dc_Dj_Dv_Ds'.split('_'),
4312 longDateFormat : {
4313 LT : 'H:mm',
4314 LTS : 'LT:ss',
4315 L : 'DD/MM/YYYY',
4316 LL : 'D MMMM YYYY',
4317 LLL : 'D MMMM YYYY H:mm',
4318 LLLL : 'dddd D MMMM YYYY H:mm'
4319 },
4320 calendar : {
4321 sameDay : function () {
4322 return '[avui a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4323 },
4324 nextDay : function () {
4325 return '[demà a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4326 },
4327 nextWeek : function () {
4328 return 'dddd [a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4329 },
4330 lastDay : function () {
4331 return '[ahir a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4332 },
4333 lastWeek : function () {
4334 return '[el] dddd [passat a ' + ((this.hours() !== 1) ? 'les' : 'la') + '] LT';
4335 },
4336 sameElse : 'L'
4337 },
4338 relativeTime : {
4339 future : 'en %s',
4340 past : 'fa %s',
4341 s : 'uns segons',
4342 m : 'un minut',
4343 mm : '%d minuts',
4344 h : 'una hora',
4345 hh : '%d hores',
4346 d : 'un dia',
4347 dd : '%d dies',
4348 M : 'un mes',
4349 MM : '%d mesos',
4350 y : 'un any',
4351 yy : '%d anys'
4352 },
4353 ordinalParse: /\d{1,2}(r|n|t|è|a)/,
4354 ordinal : function (number, period) {
4355 var output = (number === 1) ? 'r' :
4356 (number === 2) ? 'n' :
4357 (number === 3) ? 'r' :
4358 (number === 4) ? 't' : 'è';
4359 if (period === 'w' || period === 'W') {
4360 output = 'a';
4361 }
4362 return number + output;
4363 },
4364 week : {
4365 dow : 1, // Monday is the first day of the week.
4366 doy : 4 // The week that contains Jan 4th is the first week of the year.
4367 }
4368 });
4369
4370 //! moment.js locale configuration
4371 //! locale : czech (cs)
4372 //! author : petrbela : https://github.com/petrbela
4373
4374 var cs__months = 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split('_'),
4375 cs__monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_');
4376 function cs__plural(n) {
4377 return (n > 1) && (n < 5) && (~~(n / 10) !== 1);
4378 }
4379 function cs__translate(number, withoutSuffix, key, isFuture) {
4380 var result = number + ' ';
4381 switch (key) {
4382 case 's': // a few seconds / in a few seconds / a few seconds ago
4383 return (withoutSuffix || isFuture) ? 'pár sekund' : 'pár sekundami';
4384 case 'm': // a minute / in a minute / a minute ago
4385 return withoutSuffix ? 'minuta' : (isFuture ? 'minutu' : 'minutou');
4386 case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
4387 if (withoutSuffix || isFuture) {
4388 return result + (cs__plural(number) ? 'minuty' : 'minut');
4389 } else {
4390 return result + 'minutami';
4391 }
4392 break;
4393 case 'h': // an hour / in an hour / an hour ago
4394 return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');
4395 case 'hh': // 9 hours / in 9 hours / 9 hours ago
4396 if (withoutSuffix || isFuture) {
4397 return result + (cs__plural(number) ? 'hodiny' : 'hodin');
4398 } else {
4399 return result + 'hodinami';
4400 }
4401 break;
4402 case 'd': // a day / in a day / a day ago
4403 return (withoutSuffix || isFuture) ? 'den' : 'dnem';
4404 case 'dd': // 9 days / in 9 days / 9 days ago
4405 if (withoutSuffix || isFuture) {
4406 return result + (cs__plural(number) ? 'dny' : 'dní');
4407 } else {
4408 return result + 'dny';
4409 }
4410 break;
4411 case 'M': // a month / in a month / a month ago
4412 return (withoutSuffix || isFuture) ? 'měsíc' : 'měsícem';
4413 case 'MM': // 9 months / in 9 months / 9 months ago
4414 if (withoutSuffix || isFuture) {
4415 return result + (cs__plural(number) ? 'měsíce' : 'měsíců');
4416 } else {
4417 return result + 'měsíci';
4418 }
4419 break;
4420 case 'y': // a year / in a year / a year ago
4421 return (withoutSuffix || isFuture) ? 'rok' : 'rokem';
4422 case 'yy': // 9 years / in 9 years / 9 years ago
4423 if (withoutSuffix || isFuture) {
4424 return result + (cs__plural(number) ? 'roky' : 'let');
4425 } else {
4426 return result + 'lety';
4427 }
4428 break;
4429 }
4430 }
4431
4432 var cs = _moment__default.defineLocale('cs', {
4433 months : cs__months,
4434 monthsShort : cs__monthsShort,
4435 monthsParse : (function (months, monthsShort) {
4436 var i, _monthsParse = [];
4437 for (i = 0; i < 12; i++) {
4438 // use custom parser to solve problem with July (červenec)
4439 _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');
4440 }
4441 return _monthsParse;
4442 }(cs__months, cs__monthsShort)),
4443 weekdays : 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'),
4444 weekdaysShort : 'ne_po_út_st_čt_pá_so'.split('_'),
4445 weekdaysMin : 'ne_po_út_st_čt_pá_so'.split('_'),
4446 longDateFormat : {
4447 LT: 'H:mm',
4448 LTS : 'H:mm:ss',
4449 L : 'DD.MM.YYYY',
4450 LL : 'D. MMMM YYYY',
4451 LLL : 'D. MMMM YYYY H:mm',
4452 LLLL : 'dddd D. MMMM YYYY H:mm'
4453 },
4454 calendar : {
4455 sameDay: '[dnes v] LT',
4456 nextDay: '[zítra v] LT',
4457 nextWeek: function () {
4458 switch (this.day()) {
4459 case 0:
4460 return '[v neděli v] LT';
4461 case 1:
4462 case 2:
4463 return '[v] dddd [v] LT';
4464 case 3:
4465 return '[ve středu v] LT';
4466 case 4:
4467 return '[ve čtvrtek v] LT';
4468 case 5:
4469 return '[v pátek v] LT';
4470 case 6:
4471 return '[v sobotu v] LT';
4472 }
4473 },
4474 lastDay: '[včera v] LT',
4475 lastWeek: function () {
4476 switch (this.day()) {
4477 case 0:
4478 return '[minulou neděli v] LT';
4479 case 1:
4480 case 2:
4481 return '[minulé] dddd [v] LT';
4482 case 3:
4483 return '[minulou středu v] LT';
4484 case 4:
4485 case 5:
4486 return '[minulý] dddd [v] LT';
4487 case 6:
4488 return '[minulou sobotu v] LT';
4489 }
4490 },
4491 sameElse: 'L'
4492 },
4493 relativeTime : {
4494 future : 'za %s',
4495 past : 'před %s',
4496 s : cs__translate,
4497 m : cs__translate,
4498 mm : cs__translate,
4499 h : cs__translate,
4500 hh : cs__translate,
4501 d : cs__translate,
4502 dd : cs__translate,
4503 M : cs__translate,
4504 MM : cs__translate,
4505 y : cs__translate,
4506 yy : cs__translate
4507 },
4508 ordinalParse : /\d{1,2}\./,
4509 ordinal : '%d.',
4510 week : {
4511 dow : 1, // Monday is the first day of the week.
4512 doy : 4 // The week that contains Jan 4th is the first week of the year.
4513 }
4514 });
4515
4516 //! moment.js locale configuration
4517 //! locale : chuvash (cv)
4518 //! author : Anatoly Mironov : https://github.com/mirontoli
4519
4520 var cv = _moment__default.defineLocale('cv', {
4521 months : 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split('_'),
4522 monthsShort : 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'),
4523 weekdays : 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split('_'),
4524 weekdaysShort : 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'),
4525 weekdaysMin : 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'),
4526 longDateFormat : {
4527 LT : 'HH:mm',
4528 LTS : 'HH:mm:ss',
4529 L : 'DD-MM-YYYY',
4530 LL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]',
4531 LLL : 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm',
4532 LLLL : 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm'
4533 },
4534 calendar : {
4535 sameDay: '[Паян] LT [сехетре]',
4536 nextDay: '[Ыран] LT [сехетре]',
4537 lastDay: '[Ӗнер] LT [сехетре]',
4538 nextWeek: '[Ҫитес] dddd LT [сехетре]',
4539 lastWeek: '[Иртнӗ] dddd LT [сехетре]',
4540 sameElse: 'L'
4541 },
4542 relativeTime : {
4543 future : function (output) {
4544 var affix = /сехет$/i.exec(output) ? 'рен' : /ҫул$/i.exec(output) ? 'тан' : 'ран';
4545 return output + affix;
4546 },
4547 past : '%s каялла',
4548 s : 'пӗр-ик ҫеккунт',
4549 m : 'пӗр минут',
4550 mm : '%d минут',
4551 h : 'пӗр сехет',
4552 hh : '%d сехет',
4553 d : 'пӗр кун',
4554 dd : '%d кун',
4555 M : 'пӗр уйӑх',
4556 MM : '%d уйӑх',
4557 y : 'пӗр ҫул',
4558 yy : '%d ҫул'
4559 },
4560 ordinalParse: /\d{1,2}-мӗш/,
4561 ordinal : '%d-мӗш',
4562 week : {
4563 dow : 1, // Monday is the first day of the week.
4564 doy : 7 // The week that contains Jan 1st is the first week of the year.
4565 }
4566 });
4567
4568 //! moment.js locale configuration
4569 //! locale : Welsh (cy)
4570 //! author : Robert Allen
4571
4572 var cy = _moment__default.defineLocale('cy', {
4573 months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split('_'),
4574 monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split('_'),
4575 weekdays: 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split('_'),
4576 weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'),
4577 weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'),
4578 // time formats are the same as en-gb
4579 longDateFormat: {
4580 LT: 'HH:mm',
4581 LTS : 'HH:mm:ss',
4582 L: 'DD/MM/YYYY',
4583 LL: 'D MMMM YYYY',
4584 LLL: 'D MMMM YYYY HH:mm',
4585 LLLL: 'dddd, D MMMM YYYY HH:mm'
4586 },
4587 calendar: {
4588 sameDay: '[Heddiw am] LT',
4589 nextDay: '[Yfory am] LT',
4590 nextWeek: 'dddd [am] LT',
4591 lastDay: '[Ddoe am] LT',
4592 lastWeek: 'dddd [diwethaf am] LT',
4593 sameElse: 'L'
4594 },
4595 relativeTime: {
4596 future: 'mewn %s',
4597 past: '%s yn ôl',
4598 s: 'ychydig eiliadau',
4599 m: 'munud',
4600 mm: '%d munud',
4601 h: 'awr',
4602 hh: '%d awr',
4603 d: 'diwrnod',
4604 dd: '%d diwrnod',
4605 M: 'mis',
4606 MM: '%d mis',
4607 y: 'blwyddyn',
4608 yy: '%d flynedd'
4609 },
4610 ordinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,
4611 // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh
4612 ordinal: function (number) {
4613 var b = number,
4614 output = '',
4615 lookup = [
4616 '', 'af', 'il', 'ydd', 'ydd', 'ed', 'ed', 'ed', 'fed', 'fed', 'fed', // 1af to 10fed
4617 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'eg', 'fed', 'eg', 'fed' // 11eg to 20fed
4618 ];
4619 if (b > 20) {
4620 if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) {
4621 output = 'fed'; // not 30ain, 70ain or 90ain
4622 } else {
4623 output = 'ain';
4624 }
4625 } else if (b > 0) {
4626 output = lookup[b];
4627 }
4628 return number + output;
4629 },
4630 week : {
4631 dow : 1, // Monday is the first day of the week.
4632 doy : 4 // The week that contains Jan 4th is the first week of the year.
4633 }
4634 });
4635
4636 //! moment.js locale configuration
4637 //! locale : danish (da)
4638 //! author : Ulrik Nielsen : https://github.com/mrbase
4639
4640 var da = _moment__default.defineLocale('da', {
4641 months : 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split('_'),
4642 monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
4643 weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
4644 weekdaysShort : 'søn_man_tir_ons_tor_fre_lør'.split('_'),
4645 weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),
4646 longDateFormat : {
4647 LT : 'HH:mm',
4648 LTS : 'HH:mm:ss',
4649 L : 'DD/MM/YYYY',
4650 LL : 'D. MMMM YYYY',
4651 LLL : 'D. MMMM YYYY HH:mm',
4652 LLLL : 'dddd [d.] D. MMMM YYYY HH:mm'
4653 },
4654 calendar : {
4655 sameDay : '[I dag kl.] LT',
4656 nextDay : '[I morgen kl.] LT',
4657 nextWeek : 'dddd [kl.] LT',
4658 lastDay : '[I går kl.] LT',
4659 lastWeek : '[sidste] dddd [kl] LT',
4660 sameElse : 'L'
4661 },
4662 relativeTime : {
4663 future : 'om %s',
4664 past : '%s siden',
4665 s : 'få sekunder',
4666 m : 'et minut',
4667 mm : '%d minutter',
4668 h : 'en time',
4669 hh : '%d timer',
4670 d : 'en dag',
4671 dd : '%d dage',
4672 M : 'en måned',
4673 MM : '%d måneder',
4674 y : 'et år',
4675 yy : '%d år'
4676 },
4677 ordinalParse: /\d{1,2}\./,
4678 ordinal : '%d.',
4679 week : {
4680 dow : 1, // Monday is the first day of the week.
4681 doy : 4 // The week that contains Jan 4th is the first week of the year.
4682 }
4683 });
4684
4685 //! moment.js locale configuration
4686 //! locale : austrian german (de-at)
4687 //! author : lluchs : https://github.com/lluchs
4688 //! author: Menelion Elensúle: https://github.com/Oire
4689 //! author : Martin Groller : https://github.com/MadMG
4690
4691 function de_at__processRelativeTime(number, withoutSuffix, key, isFuture) {
4692 var format = {
4693 'm': ['eine Minute', 'einer Minute'],
4694 'h': ['eine Stunde', 'einer Stunde'],
4695 'd': ['ein Tag', 'einem Tag'],
4696 'dd': [number + ' Tage', number + ' Tagen'],
4697 'M': ['ein Monat', 'einem Monat'],
4698 'MM': [number + ' Monate', number + ' Monaten'],
4699 'y': ['ein Jahr', 'einem Jahr'],
4700 'yy': [number + ' Jahre', number + ' Jahren']
4701 };
4702 return withoutSuffix ? format[key][0] : format[key][1];
4703 }
4704
4705 var de_at = _moment__default.defineLocale('de-at', {
4706 months : 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
4707 monthsShort : 'Jän._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
4708 weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),
4709 weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
4710 weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
4711 longDateFormat : {
4712 LT: 'HH:mm',
4713 LTS: 'HH:mm:ss',
4714 L : 'DD.MM.YYYY',
4715 LL : 'D. MMMM YYYY',
4716 LLL : 'D. MMMM YYYY HH:mm',
4717 LLLL : 'dddd, D. MMMM YYYY HH:mm'
4718 },
4719 calendar : {
4720 sameDay: '[Heute um] LT [Uhr]',
4721 sameElse: 'L',
4722 nextDay: '[Morgen um] LT [Uhr]',
4723 nextWeek: 'dddd [um] LT [Uhr]',
4724 lastDay: '[Gestern um] LT [Uhr]',
4725 lastWeek: '[letzten] dddd [um] LT [Uhr]'
4726 },
4727 relativeTime : {
4728 future : 'in %s',
4729 past : 'vor %s',
4730 s : 'ein paar Sekunden',
4731 m : de_at__processRelativeTime,
4732 mm : '%d Minuten',
4733 h : de_at__processRelativeTime,
4734 hh : '%d Stunden',
4735 d : de_at__processRelativeTime,
4736 dd : de_at__processRelativeTime,
4737 M : de_at__processRelativeTime,
4738 MM : de_at__processRelativeTime,
4739 y : de_at__processRelativeTime,
4740 yy : de_at__processRelativeTime
4741 },
4742 ordinalParse: /\d{1,2}\./,
4743 ordinal : '%d.',
4744 week : {
4745 dow : 1, // Monday is the first day of the week.
4746 doy : 4 // The week that contains Jan 4th is the first week of the year.
4747 }
4748 });
4749
4750 //! moment.js locale configuration
4751 //! locale : german (de)
4752 //! author : lluchs : https://github.com/lluchs
4753 //! author: Menelion Elensúle: https://github.com/Oire
4754
4755 function de__processRelativeTime(number, withoutSuffix, key, isFuture) {
4756 var format = {
4757 'm': ['eine Minute', 'einer Minute'],
4758 'h': ['eine Stunde', 'einer Stunde'],
4759 'd': ['ein Tag', 'einem Tag'],
4760 'dd': [number + ' Tage', number + ' Tagen'],
4761 'M': ['ein Monat', 'einem Monat'],
4762 'MM': [number + ' Monate', number + ' Monaten'],
4763 'y': ['ein Jahr', 'einem Jahr'],
4764 'yy': [number + ' Jahre', number + ' Jahren']
4765 };
4766 return withoutSuffix ? format[key][0] : format[key][1];
4767 }
4768
4769 var de = _moment__default.defineLocale('de', {
4770 months : 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
4771 monthsShort : 'Jan._Febr._Mrz._Apr._Mai_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
4772 weekdays : 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split('_'),
4773 weekdaysShort : 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'),
4774 weekdaysMin : 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'),
4775 longDateFormat : {
4776 LT: 'HH:mm',
4777 LTS: 'HH:mm:ss',
4778 L : 'DD.MM.YYYY',
4779 LL : 'D. MMMM YYYY',
4780 LLL : 'D. MMMM YYYY HH:mm',
4781 LLLL : 'dddd, D. MMMM YYYY HH:mm'
4782 },
4783 calendar : {
4784 sameDay: '[Heute um] LT [Uhr]',
4785 sameElse: 'L',
4786 nextDay: '[Morgen um] LT [Uhr]',
4787 nextWeek: 'dddd [um] LT [Uhr]',
4788 lastDay: '[Gestern um] LT [Uhr]',
4789 lastWeek: '[letzten] dddd [um] LT [Uhr]'
4790 },
4791 relativeTime : {
4792 future : 'in %s',
4793 past : 'vor %s',
4794 s : 'ein paar Sekunden',
4795 m : de__processRelativeTime,
4796 mm : '%d Minuten',
4797 h : de__processRelativeTime,
4798 hh : '%d Stunden',
4799 d : de__processRelativeTime,
4800 dd : de__processRelativeTime,
4801 M : de__processRelativeTime,
4802 MM : de__processRelativeTime,
4803 y : de__processRelativeTime,
4804 yy : de__processRelativeTime
4805 },
4806 ordinalParse: /\d{1,2}\./,
4807 ordinal : '%d.',
4808 week : {
4809 dow : 1, // Monday is the first day of the week.
4810 doy : 4 // The week that contains Jan 4th is the first week of the year.
4811 }
4812 });
4813
4814 //! moment.js locale configuration
4815 //! locale : modern greek (el)
4816 //! author : Aggelos Karalias : https://github.com/mehiel
4817
4818 var el = _moment__default.defineLocale('el', {
4819 monthsNominativeEl : 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split('_'),
4820 monthsGenitiveEl : 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split('_'),
4821 months : function (momentToFormat, format) {
4822 if (/D/.test(format.substring(0, format.indexOf('MMMM')))) { // if there is a day number before 'MMMM'
4823 return this._monthsGenitiveEl[momentToFormat.month()];
4824 } else {
4825 return this._monthsNominativeEl[momentToFormat.month()];
4826 }
4827 },
4828 monthsShort : 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'),
4829 weekdays : 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split('_'),
4830 weekdaysShort : 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'),
4831 weekdaysMin : 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'),
4832 meridiem : function (hours, minutes, isLower) {
4833 if (hours > 11) {
4834 return isLower ? 'μμ' : 'ΜΜ';
4835 } else {
4836 return isLower ? 'πμ' : 'ΠΜ';
4837 }
4838 },
4839 isPM : function (input) {
4840 return ((input + '').toLowerCase()[0] === 'μ');
4841 },
4842 meridiemParse : /[ΠΜ]\.?Μ?\.?/i,
4843 longDateFormat : {
4844 LT : 'h:mm A',
4845 LTS : 'h:mm:ss A',
4846 L : 'DD/MM/YYYY',
4847 LL : 'D MMMM YYYY',
4848 LLL : 'D MMMM YYYY h:mm A',
4849 LLLL : 'dddd, D MMMM YYYY h:mm A'
4850 },
4851 calendarEl : {
4852 sameDay : '[Σήμερα {}] LT',
4853 nextDay : '[Αύριο {}] LT',
4854 nextWeek : 'dddd [{}] LT',
4855 lastDay : '[Χθες {}] LT',
4856 lastWeek : function () {
4857 switch (this.day()) {
4858 case 6:
4859 return '[το προηγούμενο] dddd [{}] LT';
4860 default:
4861 return '[την προηγούμενη] dddd [{}] LT';
4862 }
4863 },
4864 sameElse : 'L'
4865 },
4866 calendar : function (key, mom) {
4867 var output = this._calendarEl[key],
4868 hours = mom && mom.hours();
4869 if (typeof output === 'function') {
4870 output = output.apply(mom);
4871 }
4872 return output.replace('{}', (hours % 12 === 1 ? 'στη' : 'στις'));
4873 },
4874 relativeTime : {
4875 future : 'σε %s',
4876 past : '%s πριν',
4877 s : 'λίγα δευτερόλεπτα',
4878 m : 'ένα λεπτό',
4879 mm : '%d λεπτά',
4880 h : 'μία ώρα',
4881 hh : '%d ώρες',
4882 d : 'μία μέρα',
4883 dd : '%d μέρες',
4884 M : 'ένας μήνας',
4885 MM : '%d μήνες',
4886 y : 'ένας χρόνος',
4887 yy : '%d χρόνια'
4888 },
4889 ordinalParse: /\d{1,2}η/,
4890 ordinal: '%dη',
4891 week : {
4892 dow : 1, // Monday is the first day of the week.
4893 doy : 4 // The week that contains Jan 4st is the first week of the year.
4894 }
4895 });
4896
4897 //! moment.js locale configuration
4898 //! locale : australian english (en-au)
4899
4900 var en_au = _moment__default.defineLocale('en-au', {
4901 months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
4902 monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
4903 weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
4904 weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
4905 weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
4906 longDateFormat : {
4907 LT : 'h:mm A',
4908 LTS : 'h:mm:ss A',
4909 L : 'DD/MM/YYYY',
4910 LL : 'D MMMM YYYY',
4911 LLL : 'D MMMM YYYY h:mm A',
4912 LLLL : 'dddd, D MMMM YYYY h:mm A'
4913 },
4914 calendar : {
4915 sameDay : '[Today at] LT',
4916 nextDay : '[Tomorrow at] LT',
4917 nextWeek : 'dddd [at] LT',
4918 lastDay : '[Yesterday at] LT',
4919 lastWeek : '[Last] dddd [at] LT',
4920 sameElse : 'L'
4921 },
4922 relativeTime : {
4923 future : 'in %s',
4924 past : '%s ago',
4925 s : 'a few seconds',
4926 m : 'a minute',
4927 mm : '%d minutes',
4928 h : 'an hour',
4929 hh : '%d hours',
4930 d : 'a day',
4931 dd : '%d days',
4932 M : 'a month',
4933 MM : '%d months',
4934 y : 'a year',
4935 yy : '%d years'
4936 },
4937 ordinalParse: /\d{1,2}(st|nd|rd|th)/,
4938 ordinal : function (number) {
4939 var b = number % 10,
4940 output = (~~(number % 100 / 10) === 1) ? 'th' :
4941 (b === 1) ? 'st' :
4942 (b === 2) ? 'nd' :
4943 (b === 3) ? 'rd' : 'th';
4944 return number + output;
4945 },
4946 week : {
4947 dow : 1, // Monday is the first day of the week.
4948 doy : 4 // The week that contains Jan 4th is the first week of the year.
4949 }
4950 });
4951
4952 //! moment.js locale configuration
4953 //! locale : canadian english (en-ca)
4954 //! author : Jonathan Abourbih : https://github.com/jonbca
4955
4956 var en_ca = _moment__default.defineLocale('en-ca', {
4957 months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
4958 monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
4959 weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
4960 weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
4961 weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
4962 longDateFormat : {
4963 LT : 'h:mm A',
4964 LTS : 'h:mm:ss A',
4965 L : 'YYYY-MM-DD',
4966 LL : 'D MMMM, YYYY',
4967 LLL : 'D MMMM, YYYY h:mm A',
4968 LLLL : 'dddd, D MMMM, YYYY h:mm A'
4969 },
4970 calendar : {
4971 sameDay : '[Today at] LT',
4972 nextDay : '[Tomorrow at] LT',
4973 nextWeek : 'dddd [at] LT',
4974 lastDay : '[Yesterday at] LT',
4975 lastWeek : '[Last] dddd [at] LT',
4976 sameElse : 'L'
4977 },
4978 relativeTime : {
4979 future : 'in %s',
4980 past : '%s ago',
4981 s : 'a few seconds',
4982 m : 'a minute',
4983 mm : '%d minutes',
4984 h : 'an hour',
4985 hh : '%d hours',
4986 d : 'a day',
4987 dd : '%d days',
4988 M : 'a month',
4989 MM : '%d months',
4990 y : 'a year',
4991 yy : '%d years'
4992 },
4993 ordinalParse: /\d{1,2}(st|nd|rd|th)/,
4994 ordinal : function (number) {
4995 var b = number % 10,
4996 output = (~~(number % 100 / 10) === 1) ? 'th' :
4997 (b === 1) ? 'st' :
4998 (b === 2) ? 'nd' :
4999 (b === 3) ? 'rd' : 'th';
5000 return number + output;
5001 }
5002 });
5003
5004 //! moment.js locale configuration
5005 //! locale : great britain english (en-gb)
5006 //! author : Chris Gedrim : https://github.com/chrisgedrim
5007
5008 var en_gb = _moment__default.defineLocale('en-gb', {
5009 months : 'January_February_March_April_May_June_July_August_September_October_November_December'.split('_'),
5010 monthsShort : 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'),
5011 weekdays : 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'),
5012 weekdaysShort : 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'),
5013 weekdaysMin : 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'),
5014 longDateFormat : {
5015 LT : 'HH:mm',
5016 LTS : 'HH:mm:ss',
5017 L : 'DD/MM/YYYY',
5018 LL : 'D MMMM YYYY',
5019 LLL : 'D MMMM YYYY HH:mm',
5020 LLLL : 'dddd, D MMMM YYYY HH:mm'
5021 },
5022 calendar : {
5023 sameDay : '[Today at] LT',
5024 nextDay : '[Tomorrow at] LT',
5025 nextWeek : 'dddd [at] LT',
5026 lastDay : '[Yesterday at] LT',
5027 lastWeek : '[Last] dddd [at] LT',
5028 sameElse : 'L'
5029 },
5030 relativeTime : {
5031 future : 'in %s',
5032 past : '%s ago',
5033 s : 'a few seconds',
5034 m : 'a minute',
5035 mm : '%d minutes',
5036 h : 'an hour',
5037 hh : '%d hours',
5038 d : 'a day',
5039 dd : '%d days',
5040 M : 'a month',
5041 MM : '%d months',
5042 y : 'a year',
5043 yy : '%d years'
5044 },
5045 ordinalParse: /\d{1,2}(st|nd|rd|th)/,
5046 ordinal : function (number) {
5047 var b = number % 10,
5048 output = (~~(number % 100 / 10) === 1) ? 'th' :
5049 (b === 1) ? 'st' :
5050 (b === 2) ? 'nd' :
5051 (b === 3) ? 'rd' : 'th';
5052 return number + output;
5053 },
5054 week : {
5055 dow : 1, // Monday is the first day of the week.
5056 doy : 4 // The week that contains Jan 4th is the first week of the year.
5057 }
5058 });
5059
5060 //! moment.js locale configuration
5061 //! locale : esperanto (eo)
5062 //! author : Colin Dean : https://github.com/colindean
5063 //! komento: Mi estas malcerta se mi korekte traktis akuzativojn en tiu traduko.
5064 //! Se ne, bonvolu korekti kaj avizi min por ke mi povas lerni!
5065
5066 var eo = _moment__default.defineLocale('eo', {
5067 months : 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split('_'),
5068 monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aŭg_sep_okt_nov_dec'.split('_'),
5069 weekdays : 'Dimanĉo_Lundo_Mardo_Merkredo_Ĵaŭdo_Vendredo_Sabato'.split('_'),
5070 weekdaysShort : 'Dim_Lun_Mard_Merk_Ĵaŭ_Ven_Sab'.split('_'),
5071 weekdaysMin : 'Di_Lu_Ma_Me_Ĵa_Ve_Sa'.split('_'),
5072 longDateFormat : {
5073 LT : 'HH:mm',
5074 LTS : 'HH:mm:ss',
5075 L : 'YYYY-MM-DD',
5076 LL : 'D[-an de] MMMM, YYYY',
5077 LLL : 'D[-an de] MMMM, YYYY HH:mm',
5078 LLLL : 'dddd, [la] D[-an de] MMMM, YYYY HH:mm'
5079 },
5080 meridiemParse: /[ap]\.t\.m/i,
5081 isPM: function (input) {
5082 return input.charAt(0).toLowerCase() === 'p';
5083 },
5084 meridiem : function (hours, minutes, isLower) {
5085 if (hours > 11) {
5086 return isLower ? 'p.t.m.' : 'P.T.M.';
5087 } else {
5088 return isLower ? 'a.t.m.' : 'A.T.M.';
5089 }
5090 },
5091 calendar : {
5092 sameDay : '[Hodiaŭ je] LT',
5093 nextDay : '[Morgaŭ je] LT',
5094 nextWeek : 'dddd [je] LT',
5095 lastDay : '[Hieraŭ je] LT',
5096 lastWeek : '[pasinta] dddd [je] LT',
5097 sameElse : 'L'
5098 },
5099 relativeTime : {
5100 future : 'je %s',
5101 past : 'antaŭ %s',
5102 s : 'sekundoj',
5103 m : 'minuto',
5104 mm : '%d minutoj',
5105 h : 'horo',
5106 hh : '%d horoj',
5107 d : 'tago',//ne 'diurno', ĉar estas uzita por proksimumo
5108 dd : '%d tagoj',
5109 M : 'monato',
5110 MM : '%d monatoj',
5111 y : 'jaro',
5112 yy : '%d jaroj'
5113 },
5114 ordinalParse: /\d{1,2}a/,
5115 ordinal : '%da',
5116 week : {
5117 dow : 1, // Monday is the first day of the week.
5118 doy : 7 // The week that contains Jan 1st is the first week of the year.
5119 }
5120 });
5121
5122 //! moment.js locale configuration
5123 //! locale : spanish (es)
5124 //! author : Julio Napurí : https://github.com/julionc
5125
5126 var monthsShortDot = 'Ene._Feb._Mar._Abr._May._Jun._Jul._Ago._Sep._Oct._Nov._Dic.'.split('_'),
5127 es__monthsShort = 'Ene_Feb_Mar_Abr_May_Jun_Jul_Ago_Sep_Oct_Nov_Dic'.split('_');
5128
5129 var es = _moment__default.defineLocale('es', {
5130 months : 'Enero_Febrero_Marzo_Abril_Mayo_Junio_Julio_Agosto_Septiembre_Octubre_Noviembre_Diciembre'.split('_'),
5131 monthsShort : function (m, format) {
5132 if (/-MMM-/.test(format)) {
5133 return es__monthsShort[m.month()];
5134 } else {
5135 return monthsShortDot[m.month()];
5136 }
5137 },
5138 weekdays : 'Domingo_Lunes_Martes_Miércoles_Jueves_Viernes_Sábado'.split('_'),
5139 weekdaysShort : 'Dom._Lun._Mar._Mié._Jue._Vie._Sáb.'.split('_'),
5140 weekdaysMin : 'Do_Lu_Ma_Mi_Ju_Vi_Sá'.split('_'),
5141 longDateFormat : {
5142 LT : 'H:mm',
5143 LTS : 'H:mm:ss',
5144 L : 'DD/MM/YYYY',
5145 LL : 'D [de] MMMM [de] YYYY',
5146 LLL : 'D [de] MMMM [de] YYYY H:mm',
5147 LLLL : 'dddd, D [de] MMMM [de] YYYY H:mm'
5148 },
5149 calendar : {
5150 sameDay : function () {
5151 return '[hoy a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5152 },
5153 nextDay : function () {
5154 return '[mañana a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5155 },
5156 nextWeek : function () {
5157 return 'dddd [a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5158 },
5159 lastDay : function () {
5160 return '[ayer a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5161 },
5162 lastWeek : function () {
5163 return '[el] dddd [pasado a la' + ((this.hours() !== 1) ? 's' : '') + '] LT';
5164 },
5165 sameElse : 'L'
5166 },
5167 relativeTime : {
5168 future : 'en %s',
5169 past : 'hace %s',
5170 s : 'unos segundos',
5171 m : 'un minuto',
5172 mm : '%d minutos',
5173 h : 'una hora',
5174 hh : '%d horas',
5175 d : 'un día',
5176 dd : '%d días',
5177 M : 'un mes',
5178 MM : '%d meses',
5179 y : 'un año',
5180 yy : '%d años'
5181 },
5182 ordinalParse : /\d{1,2}º/,
5183 ordinal : '%dº',
5184 week : {
5185 dow : 1, // Monday is the first day of the week.
5186 doy : 4 // The week that contains Jan 4th is the first week of the year.
5187 }
5188 });
5189
5190 //! moment.js locale configuration
5191 //! locale : estonian (et)
5192 //! author : Henry Kehlmann : https://github.com/madhenry
5193 //! improvements : Illimar Tambek : https://github.com/ragulka
5194
5195 function et__processRelativeTime(number, withoutSuffix, key, isFuture) {
5196 var format = {
5197 's' : ['mõne sekundi', 'mõni sekund', 'paar sekundit'],
5198 'm' : ['ühe minuti', 'üks minut'],
5199 'mm': [number + ' minuti', number + ' minutit'],
5200 'h' : ['ühe tunni', 'tund aega', 'üks tund'],
5201 'hh': [number + ' tunni', number + ' tundi'],
5202 'd' : ['ühe päeva', 'üks päev'],
5203 'M' : ['kuu aja', 'kuu aega', 'üks kuu'],
5204 'MM': [number + ' kuu', number + ' kuud'],
5205 'y' : ['ühe aasta', 'aasta', 'üks aasta'],
5206 'yy': [number + ' aasta', number + ' aastat']
5207 };
5208 if (withoutSuffix) {
5209 return format[key][2] ? format[key][2] : format[key][1];
5210 }
5211 return isFuture ? format[key][0] : format[key][1];
5212 }
5213
5214 var et = _moment__default.defineLocale('et', {
5215 months : 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split('_'),
5216 monthsShort : 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'),
5217 weekdays : 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split('_'),
5218 weekdaysShort : 'P_E_T_K_N_R_L'.split('_'),
5219 weekdaysMin : 'P_E_T_K_N_R_L'.split('_'),
5220 longDateFormat : {
5221 LT : 'H:mm',
5222 LTS : 'H:mm:ss',
5223 L : 'DD.MM.YYYY',
5224 LL : 'D. MMMM YYYY',
5225 LLL : 'D. MMMM YYYY H:mm',
5226 LLLL : 'dddd, D. MMMM YYYY H:mm'
5227 },
5228 calendar : {
5229 sameDay : '[Täna,] LT',
5230 nextDay : '[Homme,] LT',
5231 nextWeek : '[Järgmine] dddd LT',
5232 lastDay : '[Eile,] LT',
5233 lastWeek : '[Eelmine] dddd LT',
5234 sameElse : 'L'
5235 },
5236 relativeTime : {
5237 future : '%s pärast',
5238 past : '%s tagasi',
5239 s : et__processRelativeTime,
5240 m : et__processRelativeTime,
5241 mm : et__processRelativeTime,
5242 h : et__processRelativeTime,
5243 hh : et__processRelativeTime,
5244 d : et__processRelativeTime,
5245 dd : '%d päeva',
5246 M : et__processRelativeTime,
5247 MM : et__processRelativeTime,
5248 y : et__processRelativeTime,
5249 yy : et__processRelativeTime
5250 },
5251 ordinalParse: /\d{1,2}\./,
5252 ordinal : '%d.',
5253 week : {
5254 dow : 1, // Monday is the first day of the week.
5255 doy : 4 // The week that contains Jan 4th is the first week of the year.
5256 }
5257 });
5258
5259 //! moment.js locale configuration
5260 //! locale : euskara (eu)
5261 //! author : Eneko Illarramendi : https://github.com/eillarra
5262
5263 var eu = _moment__default.defineLocale('eu', {
5264 months : 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split('_'),
5265 monthsShort : 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split('_'),
5266 weekdays : 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split('_'),
5267 weekdaysShort : 'ig._al._ar._az._og._ol._lr.'.split('_'),
5268 weekdaysMin : 'ig_al_ar_az_og_ol_lr'.split('_'),
5269 longDateFormat : {
5270 LT : 'HH:mm',
5271 LTS : 'HH:mm:ss',
5272 L : 'YYYY-MM-DD',
5273 LL : 'YYYY[ko] MMMM[ren] D[a]',
5274 LLL : 'YYYY[ko] MMMM[ren] D[a] HH:mm',
5275 LLLL : 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm',
5276 l : 'YYYY-M-D',
5277 ll : 'YYYY[ko] MMM D[a]',
5278 lll : 'YYYY[ko] MMM D[a] HH:mm',
5279 llll : 'ddd, YYYY[ko] MMM D[a] HH:mm'
5280 },
5281 calendar : {
5282 sameDay : '[gaur] LT[etan]',
5283 nextDay : '[bihar] LT[etan]',
5284 nextWeek : 'dddd LT[etan]',
5285 lastDay : '[atzo] LT[etan]',
5286 lastWeek : '[aurreko] dddd LT[etan]',
5287 sameElse : 'L'
5288 },
5289 relativeTime : {
5290 future : '%s barru',
5291 past : 'duela %s',
5292 s : 'segundo batzuk',
5293 m : 'minutu bat',
5294 mm : '%d minutu',
5295 h : 'ordu bat',
5296 hh : '%d ordu',
5297 d : 'egun bat',
5298 dd : '%d egun',
5299 M : 'hilabete bat',
5300 MM : '%d hilabete',
5301 y : 'urte bat',
5302 yy : '%d urte'
5303 },
5304 ordinalParse: /\d{1,2}\./,
5305 ordinal : '%d.',
5306 week : {
5307 dow : 1, // Monday is the first day of the week.
5308 doy : 7 // The week that contains Jan 1st is the first week of the year.
5309 }
5310 });
5311
5312 //! moment.js locale configuration
5313 //! locale : Persian (fa)
5314 //! author : Ebrahim Byagowi : https://github.com/ebraminio
5315
5316 var fa__symbolMap = {
5317 '1': '۱',
5318 '2': '۲',
5319 '3': '۳',
5320 '4': '۴',
5321 '5': '۵',
5322 '6': '۶',
5323 '7': '۷',
5324 '8': '۸',
5325 '9': '۹',
5326 '0': '۰'
5327 }, fa__numberMap = {
5328 '۱': '1',
5329 '۲': '2',
5330 '۳': '3',
5331 '۴': '4',
5332 '۵': '5',
5333 '۶': '6',
5334 '۷': '7',
5335 '۸': '8',
5336 '۹': '9',
5337 '۰': '0'
5338 };
5339
5340 var fa = _moment__default.defineLocale('fa', {
5341 months : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),
5342 monthsShort : 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split('_'),
5343 weekdays : 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split('_'),
5344 weekdaysShort : 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split('_'),
5345 weekdaysMin : 'ی_د_س_چ_پ_ج_ش'.split('_'),
5346 longDateFormat : {
5347 LT : 'HH:mm',
5348 LTS : 'HH:mm:ss',
5349 L : 'DD/MM/YYYY',
5350 LL : 'D MMMM YYYY',
5351 LLL : 'D MMMM YYYY HH:mm',
5352 LLLL : 'dddd, D MMMM YYYY HH:mm'
5353 },
5354 meridiemParse: /قبل از ظهر|بعد از ظهر/,
5355 isPM: function (input) {
5356 return /بعد از ظهر/.test(input);
5357 },
5358 meridiem : function (hour, minute, isLower) {
5359 if (hour < 12) {
5360 return 'قبل از ظهر';
5361 } else {
5362 return 'بعد از ظهر';
5363 }
5364 },
5365 calendar : {
5366 sameDay : '[امروز ساعت] LT',
5367 nextDay : '[فردا ساعت] LT',
5368 nextWeek : 'dddd [ساعت] LT',
5369 lastDay : '[دیروز ساعت] LT',
5370 lastWeek : 'dddd [پیش] [ساعت] LT',
5371 sameElse : 'L'
5372 },
5373 relativeTime : {
5374 future : 'در %s',
5375 past : '%s پیش',
5376 s : 'چندین ثانیه',
5377 m : 'یک دقیقه',
5378 mm : '%d دقیقه',
5379 h : 'یک ساعت',
5380 hh : '%d ساعت',
5381 d : 'یک روز',
5382 dd : '%d روز',
5383 M : 'یک ماه',
5384 MM : '%d ماه',
5385 y : 'یک سال',
5386 yy : '%d سال'
5387 },
5388 preparse: function (string) {
5389 return string.replace(/[۰-۹]/g, function (match) {
5390 return fa__numberMap[match];
5391 }).replace(/،/g, ',');
5392 },
5393 postformat: function (string) {
5394 return string.replace(/\d/g, function (match) {
5395 return fa__symbolMap[match];
5396 }).replace(/,/g, '،');
5397 },
5398 ordinalParse: /\d{1,2}م/,
5399 ordinal : '%dم',
5400 week : {
5401 dow : 6, // Saturday is the first day of the week.
5402 doy : 12 // The week that contains Jan 1st is the first week of the year.
5403 }
5404 });
5405
5406 //! moment.js locale configuration
5407 //! locale : finnish (fi)
5408 //! author : Tarmo Aidantausta : https://github.com/bleadof
5409
5410 var numbersPast = 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split(' '),
5411 numbersFuture = [
5412 'nolla', 'yhden', 'kahden', 'kolmen', 'neljän', 'viiden', 'kuuden',
5413 numbersPast[7], numbersPast[8], numbersPast[9]
5414 ];
5415 function fi__translate(number, withoutSuffix, key, isFuture) {
5416 var result = '';
5417 switch (key) {
5418 case 's':
5419 return isFuture ? 'muutaman sekunnin' : 'muutama sekunti';
5420 case 'm':
5421 return isFuture ? 'minuutin' : 'minuutti';
5422 case 'mm':
5423 result = isFuture ? 'minuutin' : 'minuuttia';
5424 break;
5425 case 'h':
5426 return isFuture ? 'tunnin' : 'tunti';
5427 case 'hh':
5428 result = isFuture ? 'tunnin' : 'tuntia';
5429 break;
5430 case 'd':
5431 return isFuture ? 'päivän' : 'päivä';
5432 case 'dd':
5433 result = isFuture ? 'päivän' : 'päivää';
5434 break;
5435 case 'M':
5436 return isFuture ? 'kuukauden' : 'kuukausi';
5437 case 'MM':
5438 result = isFuture ? 'kuukauden' : 'kuukautta';
5439 break;
5440 case 'y':
5441 return isFuture ? 'vuoden' : 'vuosi';
5442 case 'yy':
5443 result = isFuture ? 'vuoden' : 'vuotta';
5444 break;
5445 }
5446 result = verbalNumber(number, isFuture) + ' ' + result;
5447 return result;
5448 }
5449 function verbalNumber(number, isFuture) {
5450 return number < 10 ? (isFuture ? numbersFuture[number] : numbersPast[number]) : number;
5451 }
5452
5453 var fi = _moment__default.defineLocale('fi', {
5454 months : 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split('_'),
5455 monthsShort : 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split('_'),
5456 weekdays : 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split('_'),
5457 weekdaysShort : 'su_ma_ti_ke_to_pe_la'.split('_'),
5458 weekdaysMin : 'su_ma_ti_ke_to_pe_la'.split('_'),
5459 longDateFormat : {
5460 LT : 'HH.mm',
5461 LTS : 'HH.mm.ss',
5462 L : 'DD.MM.YYYY',
5463 LL : 'Do MMMM[ta] YYYY',
5464 LLL : 'Do MMMM[ta] YYYY, [klo] HH.mm',
5465 LLLL : 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm',
5466 l : 'D.M.YYYY',
5467 ll : 'Do MMM YYYY',
5468 lll : 'Do MMM YYYY, [klo] HH.mm',
5469 llll : 'ddd, Do MMM YYYY, [klo] HH.mm'
5470 },
5471 calendar : {
5472 sameDay : '[tänään] [klo] LT',
5473 nextDay : '[huomenna] [klo] LT',
5474 nextWeek : 'dddd [klo] LT',
5475 lastDay : '[eilen] [klo] LT',
5476 lastWeek : '[viime] dddd[na] [klo] LT',
5477 sameElse : 'L'
5478 },
5479 relativeTime : {
5480 future : '%s päästä',
5481 past : '%s sitten',
5482 s : fi__translate,
5483 m : fi__translate,
5484 mm : fi__translate,
5485 h : fi__translate,
5486 hh : fi__translate,
5487 d : fi__translate,
5488 dd : fi__translate,
5489 M : fi__translate,
5490 MM : fi__translate,
5491 y : fi__translate,
5492 yy : fi__translate
5493 },
5494 ordinalParse: /\d{1,2}\./,
5495 ordinal : '%d.',
5496 week : {
5497 dow : 1, // Monday is the first day of the week.
5498 doy : 4 // The week that contains Jan 4th is the first week of the year.
5499 }
5500 });
5501
5502 //! moment.js locale configuration
5503 //! locale : faroese (fo)
5504 //! author : Ragnar Johannesen : https://github.com/ragnar123
5505
5506 var fo = _moment__default.defineLocale('fo', {
5507 months : 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
5508 monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
5509 weekdays : 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split('_'),
5510 weekdaysShort : 'sun_mán_týs_mik_hós_frí_ley'.split('_'),
5511 weekdaysMin : 'su_má_tý_mi_hó_fr_le'.split('_'),
5512 longDateFormat : {
5513 LT : 'HH:mm',
5514 LTS : 'HH:mm:ss',
5515 L : 'DD/MM/YYYY',
5516 LL : 'D MMMM YYYY',
5517 LLL : 'D MMMM YYYY HH:mm',
5518 LLLL : 'dddd D. MMMM, YYYY HH:mm'
5519 },
5520 calendar : {
5521 sameDay : '[Í dag kl.] LT',
5522 nextDay : '[Í morgin kl.] LT',
5523 nextWeek : 'dddd [kl.] LT',
5524 lastDay : '[Í gjár kl.] LT',
5525 lastWeek : '[síðstu] dddd [kl] LT',
5526 sameElse : 'L'
5527 },
5528 relativeTime : {
5529 future : 'um %s',
5530 past : '%s síðani',
5531 s : 'fá sekund',
5532 m : 'ein minutt',
5533 mm : '%d minuttir',
5534 h : 'ein tími',
5535 hh : '%d tímar',
5536 d : 'ein dagur',
5537 dd : '%d dagar',
5538 M : 'ein mánaði',
5539 MM : '%d mánaðir',
5540 y : 'eitt ár',
5541 yy : '%d ár'
5542 },
5543 ordinalParse: /\d{1,2}\./,
5544 ordinal : '%d.',
5545 week : {
5546 dow : 1, // Monday is the first day of the week.
5547 doy : 4 // The week that contains Jan 4th is the first week of the year.
5548 }
5549 });
5550
5551 //! moment.js locale configuration
5552 //! locale : canadian french (fr-ca)
5553 //! author : Jonathan Abourbih : https://github.com/jonbca
5554
5555 var fr_ca = _moment__default.defineLocale('fr-ca', {
5556 months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
5557 monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
5558 weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
5559 weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
5560 weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),
5561 longDateFormat : {
5562 LT : 'HH:mm',
5563 LTS : 'HH:mm:ss',
5564 L : 'YYYY-MM-DD',
5565 LL : 'D MMMM YYYY',
5566 LLL : 'D MMMM YYYY HH:mm',
5567 LLLL : 'dddd D MMMM YYYY HH:mm'
5568 },
5569 calendar : {
5570 sameDay: '[Aujourd\'hui à] LT',
5571 nextDay: '[Demain à] LT',
5572 nextWeek: 'dddd [à] LT',
5573 lastDay: '[Hier à] LT',
5574 lastWeek: 'dddd [dernier à] LT',
5575 sameElse: 'L'
5576 },
5577 relativeTime : {
5578 future : 'dans %s',
5579 past : 'il y a %s',
5580 s : 'quelques secondes',
5581 m : 'une minute',
5582 mm : '%d minutes',
5583 h : 'une heure',
5584 hh : '%d heures',
5585 d : 'un jour',
5586 dd : '%d jours',
5587 M : 'un mois',
5588 MM : '%d mois',
5589 y : 'un an',
5590 yy : '%d ans'
5591 },
5592 ordinalParse: /\d{1,2}(er|e)/,
5593 ordinal : function (number) {
5594 return number + (number === 1 ? 'er' : 'e');
5595 }
5596 });
5597
5598 //! moment.js locale configuration
5599 //! locale : french (fr)
5600 //! author : John Fischer : https://github.com/jfroffice
5601
5602 var fr = _moment__default.defineLocale('fr', {
5603 months : 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split('_'),
5604 monthsShort : 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split('_'),
5605 weekdays : 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'),
5606 weekdaysShort : 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'),
5607 weekdaysMin : 'Di_Lu_Ma_Me_Je_Ve_Sa'.split('_'),
5608 longDateFormat : {
5609 LT : 'HH:mm',
5610 LTS : 'HH:mm:ss',
5611 L : 'DD/MM/YYYY',
5612 LL : 'D MMMM YYYY',
5613 LLL : 'D MMMM YYYY HH:mm',
5614 LLLL : 'dddd D MMMM YYYY HH:mm'
5615 },
5616 calendar : {
5617 sameDay: '[Aujourd\'hui à] LT',
5618 nextDay: '[Demain à] LT',
5619 nextWeek: 'dddd [à] LT',
5620 lastDay: '[Hier à] LT',
5621 lastWeek: 'dddd [dernier à] LT',
5622 sameElse: 'L'
5623 },
5624 relativeTime : {
5625 future : 'dans %s',
5626 past : 'il y a %s',
5627 s : 'quelques secondes',
5628 m : 'une minute',
5629 mm : '%d minutes',
5630 h : 'une heure',
5631 hh : '%d heures',
5632 d : 'un jour',
5633 dd : '%d jours',
5634 M : 'un mois',
5635 MM : '%d mois',
5636 y : 'un an',
5637 yy : '%d ans'
5638 },
5639 ordinalParse: /\d{1,2}(er|)/,
5640 ordinal : function (number) {
5641 return number + (number === 1 ? 'er' : '');
5642 },
5643 week : {
5644 dow : 1, // Monday is the first day of the week.
5645 doy : 4 // The week that contains Jan 4th is the first week of the year.
5646 }
5647 });
5648
5649 //! moment.js locale configuration
5650 //! locale : frisian (fy)
5651 //! author : Robin van der Vliet : https://github.com/robin0van0der0v
5652
5653 var fy__monthsShortWithDots = 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'),
5654 fy__monthsShortWithoutDots = 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_');
5655
5656 var fy = _moment__default.defineLocale('fy', {
5657 months : 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split('_'),
5658 monthsShort : function (m, format) {
5659 if (/-MMM-/.test(format)) {
5660 return fy__monthsShortWithoutDots[m.month()];
5661 } else {
5662 return fy__monthsShortWithDots[m.month()];
5663 }
5664 },
5665 weekdays : 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split('_'),
5666 weekdaysShort : 'si._mo._ti._wo._to._fr._so.'.split('_'),
5667 weekdaysMin : 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'),
5668 longDateFormat : {
5669 LT : 'HH:mm',
5670 LTS : 'HH:mm:ss',
5671 L : 'DD-MM-YYYY',
5672 LL : 'D MMMM YYYY',
5673 LLL : 'D MMMM YYYY HH:mm',
5674 LLLL : 'dddd D MMMM YYYY HH:mm'
5675 },
5676 calendar : {
5677 sameDay: '[hjoed om] LT',
5678 nextDay: '[moarn om] LT',
5679 nextWeek: 'dddd [om] LT',
5680 lastDay: '[juster om] LT',
5681 lastWeek: '[ôfrûne] dddd [om] LT',
5682 sameElse: 'L'
5683 },
5684 relativeTime : {
5685 future : 'oer %s',
5686 past : '%s lyn',
5687 s : 'in pear sekonden',
5688 m : 'ien minút',
5689 mm : '%d minuten',
5690 h : 'ien oere',
5691 hh : '%d oeren',
5692 d : 'ien dei',
5693 dd : '%d dagen',
5694 M : 'ien moanne',
5695 MM : '%d moannen',
5696 y : 'ien jier',
5697 yy : '%d jierren'
5698 },
5699 ordinalParse: /\d{1,2}(ste|de)/,
5700 ordinal : function (number) {
5701 return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
5702 },
5703 week : {
5704 dow : 1, // Monday is the first day of the week.
5705 doy : 4 // The week that contains Jan 4th is the first week of the year.
5706 }
5707 });
5708
5709 //! moment.js locale configuration
5710 //! locale : galician (gl)
5711 //! author : Juan G. Hurtado : https://github.com/juanghurtado
5712
5713 var gl = _moment__default.defineLocale('gl', {
5714 months : 'Xaneiro_Febreiro_Marzo_Abril_Maio_Xuño_Xullo_Agosto_Setembro_Outubro_Novembro_Decembro'.split('_'),
5715 monthsShort : 'Xan._Feb._Mar._Abr._Mai._Xuñ._Xul._Ago._Set._Out._Nov._Dec.'.split('_'),
5716 weekdays : 'Domingo_Luns_Martes_Mércores_Xoves_Venres_Sábado'.split('_'),
5717 weekdaysShort : 'Dom._Lun._Mar._Mér._Xov._Ven._Sáb.'.split('_'),
5718 weekdaysMin : 'Do_Lu_Ma_Mé_Xo_Ve_Sá'.split('_'),
5719 longDateFormat : {
5720 LT : 'H:mm',
5721 LTS : 'H:mm:ss',
5722 L : 'DD/MM/YYYY',
5723 LL : 'D MMMM YYYY',
5724 LLL : 'D MMMM YYYY H:mm',
5725 LLLL : 'dddd D MMMM YYYY H:mm'
5726 },
5727 calendar : {
5728 sameDay : function () {
5729 return '[hoxe ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';
5730 },
5731 nextDay : function () {
5732 return '[mañá ' + ((this.hours() !== 1) ? 'ás' : 'á') + '] LT';
5733 },
5734 nextWeek : function () {
5735 return 'dddd [' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';
5736 },
5737 lastDay : function () {
5738 return '[onte ' + ((this.hours() !== 1) ? 'á' : 'a') + '] LT';
5739 },
5740 lastWeek : function () {
5741 return '[o] dddd [pasado ' + ((this.hours() !== 1) ? 'ás' : 'a') + '] LT';
5742 },
5743 sameElse : 'L'
5744 },
5745 relativeTime : {
5746 future : function (str) {
5747 if (str === 'uns segundos') {
5748 return 'nuns segundos';
5749 }
5750 return 'en ' + str;
5751 },
5752 past : 'hai %s',
5753 s : 'uns segundos',
5754 m : 'un minuto',
5755 mm : '%d minutos',
5756 h : 'unha hora',
5757 hh : '%d horas',
5758 d : 'un día',
5759 dd : '%d días',
5760 M : 'un mes',
5761 MM : '%d meses',
5762 y : 'un ano',
5763 yy : '%d anos'
5764 },
5765 ordinalParse : /\d{1,2}º/,
5766 ordinal : '%dº',
5767 week : {
5768 dow : 1, // Monday is the first day of the week.
5769 doy : 7 // The week that contains Jan 1st is the first week of the year.
5770 }
5771 });
5772
5773 //! moment.js locale configuration
5774 //! locale : Hebrew (he)
5775 //! author : Tomer Cohen : https://github.com/tomer
5776 //! author : Moshe Simantov : https://github.com/DevelopmentIL
5777 //! author : Tal Ater : https://github.com/TalAter
5778
5779 var he = _moment__default.defineLocale('he', {
5780 months : 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split('_'),
5781 monthsShort : 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'),
5782 weekdays : 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'),
5783 weekdaysShort : 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'),
5784 weekdaysMin : 'א_ב_ג_ד_ה_ו_ש'.split('_'),
5785 longDateFormat : {
5786 LT : 'HH:mm',
5787 LTS : 'HH:mm:ss',
5788 L : 'DD/MM/YYYY',
5789 LL : 'D [ב]MMMM YYYY',
5790 LLL : 'D [ב]MMMM YYYY HH:mm',
5791 LLLL : 'dddd, D [ב]MMMM YYYY HH:mm',
5792 l : 'D/M/YYYY',
5793 ll : 'D MMM YYYY',
5794 lll : 'D MMM YYYY HH:mm',
5795 llll : 'ddd, D MMM YYYY HH:mm'
5796 },
5797 calendar : {
5798 sameDay : '[היום ב־]LT',
5799 nextDay : '[מחר ב־]LT',
5800 nextWeek : 'dddd [בשעה] LT',
5801 lastDay : '[אתמול ב־]LT',
5802 lastWeek : '[ביום] dddd [האחרון בשעה] LT',
5803 sameElse : 'L'
5804 },
5805 relativeTime : {
5806 future : 'בעוד %s',
5807 past : 'לפני %s',
5808 s : 'מספר שניות',
5809 m : 'דקה',
5810 mm : '%d דקות',
5811 h : 'שעה',
5812 hh : function (number) {
5813 if (number === 2) {
5814 return 'שעתיים';
5815 }
5816 return number + ' שעות';
5817 },
5818 d : 'יום',
5819 dd : function (number) {
5820 if (number === 2) {
5821 return 'יומיים';
5822 }
5823 return number + ' ימים';
5824 },
5825 M : 'חודש',
5826 MM : function (number) {
5827 if (number === 2) {
5828 return 'חודשיים';
5829 }
5830 return number + ' חודשים';
5831 },
5832 y : 'שנה',
5833 yy : function (number) {
5834 if (number === 2) {
5835 return 'שנתיים';
5836 } else if (number % 10 === 0 && number !== 10) {
5837 return number + ' שנה';
5838 }
5839 return number + ' שנים';
5840 }
5841 }
5842 });
5843
5844 //! moment.js locale configuration
5845 //! locale : hindi (hi)
5846 //! author : Mayank Singhal : https://github.com/mayanksinghal
5847
5848 var hi__symbolMap = {
5849 '1': '१',
5850 '2': '२',
5851 '3': '३',
5852 '4': '४',
5853 '5': '५',
5854 '6': '६',
5855 '7': '७',
5856 '8': '८',
5857 '9': '९',
5858 '0': '०'
5859 },
5860 hi__numberMap = {
5861 '१': '1',
5862 '२': '2',
5863 '३': '3',
5864 '४': '4',
5865 '५': '5',
5866 '६': '6',
5867 '७': '7',
5868 '८': '8',
5869 '९': '9',
5870 '०': '0'
5871 };
5872
5873 var hi = _moment__default.defineLocale('hi', {
5874 months : 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split('_'),
5875 monthsShort : 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'),
5876 weekdays : 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
5877 weekdaysShort : 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'),
5878 weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),
5879 longDateFormat : {
5880 LT : 'A h:mm बजे',
5881 LTS : 'A h:mm:ss बजे',
5882 L : 'DD/MM/YYYY',
5883 LL : 'D MMMM YYYY',
5884 LLL : 'D MMMM YYYY, A h:mm बजे',
5885 LLLL : 'dddd, D MMMM YYYY, A h:mm बजे'
5886 },
5887 calendar : {
5888 sameDay : '[आज] LT',
5889 nextDay : '[कल] LT',
5890 nextWeek : 'dddd, LT',
5891 lastDay : '[कल] LT',
5892 lastWeek : '[पिछले] dddd, LT',
5893 sameElse : 'L'
5894 },
5895 relativeTime : {
5896 future : '%s में',
5897 past : '%s पहले',
5898 s : 'कुछ ही क्षण',
5899 m : 'एक मिनट',
5900 mm : '%d मिनट',
5901 h : 'एक घंटा',
5902 hh : '%d घंटे',
5903 d : 'एक दिन',
5904 dd : '%d दिन',
5905 M : 'एक महीने',
5906 MM : '%d महीने',
5907 y : 'एक वर्ष',
5908 yy : '%d वर्ष'
5909 },
5910 preparse: function (string) {
5911 return string.replace(/[१२३४५६७८९०]/g, function (match) {
5912 return hi__numberMap[match];
5913 });
5914 },
5915 postformat: function (string) {
5916 return string.replace(/\d/g, function (match) {
5917 return hi__symbolMap[match];
5918 });
5919 },
5920 // Hindi notation for meridiems are quite fuzzy in practice. While there exists
5921 // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi.
5922 meridiemParse: /रात|सुबह|दोपहर|शाम/,
5923 meridiemHour : function (hour, meridiem) {
5924 if (hour === 12) {
5925 hour = 0;
5926 }
5927 if (meridiem === 'रात') {
5928 return hour < 4 ? hour : hour + 12;
5929 } else if (meridiem === 'सुबह') {
5930 return hour;
5931 } else if (meridiem === 'दोपहर') {
5932 return hour >= 10 ? hour : hour + 12;
5933 } else if (meridiem === 'शाम') {
5934 return hour + 12;
5935 }
5936 },
5937 meridiem : function (hour, minute, isLower) {
5938 if (hour < 4) {
5939 return 'रात';
5940 } else if (hour < 10) {
5941 return 'सुबह';
5942 } else if (hour < 17) {
5943 return 'दोपहर';
5944 } else if (hour < 20) {
5945 return 'शाम';
5946 } else {
5947 return 'रात';
5948 }
5949 },
5950 week : {
5951 dow : 0, // Sunday is the first day of the week.
5952 doy : 6 // The week that contains Jan 1st is the first week of the year.
5953 }
5954 });
5955
5956 //! moment.js locale configuration
5957 //! locale : hrvatski (hr)
5958 //! author : Bojan Marković : https://github.com/bmarkovic
5959
5960 function hr__translate(number, withoutSuffix, key) {
5961 var result = number + ' ';
5962 switch (key) {
5963 case 'm':
5964 return withoutSuffix ? 'jedna minuta' : 'jedne minute';
5965 case 'mm':
5966 if (number === 1) {
5967 result += 'minuta';
5968 } else if (number === 2 || number === 3 || number === 4) {
5969 result += 'minute';
5970 } else {
5971 result += 'minuta';
5972 }
5973 return result;
5974 case 'h':
5975 return withoutSuffix ? 'jedan sat' : 'jednog sata';
5976 case 'hh':
5977 if (number === 1) {
5978 result += 'sat';
5979 } else if (number === 2 || number === 3 || number === 4) {
5980 result += 'sata';
5981 } else {
5982 result += 'sati';
5983 }
5984 return result;
5985 case 'dd':
5986 if (number === 1) {
5987 result += 'dan';
5988 } else {
5989 result += 'dana';
5990 }
5991 return result;
5992 case 'MM':
5993 if (number === 1) {
5994 result += 'mjesec';
5995 } else if (number === 2 || number === 3 || number === 4) {
5996 result += 'mjeseca';
5997 } else {
5998 result += 'mjeseci';
5999 }
6000 return result;
6001 case 'yy':
6002 if (number === 1) {
6003 result += 'godina';
6004 } else if (number === 2 || number === 3 || number === 4) {
6005 result += 'godine';
6006 } else {
6007 result += 'godina';
6008 }
6009 return result;
6010 }
6011 }
6012
6013 var hr = _moment__default.defineLocale('hr', {
6014 months : 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split('_'),
6015 monthsShort : 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split('_'),
6016 weekdays : 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split('_'),
6017 weekdaysShort : 'ned._pon._uto._sri._čet._pet._sub.'.split('_'),
6018 weekdaysMin : 'ne_po_ut_sr_če_pe_su'.split('_'),
6019 longDateFormat : {
6020 LT : 'H:mm',
6021 LTS : 'H:mm:ss',
6022 L : 'DD. MM. YYYY',
6023 LL : 'D. MMMM YYYY',
6024 LLL : 'D. MMMM YYYY H:mm',
6025 LLLL : 'dddd, D. MMMM YYYY H:mm'
6026 },
6027 calendar : {
6028 sameDay : '[danas u] LT',
6029 nextDay : '[sutra u] LT',
6030 nextWeek : function () {
6031 switch (this.day()) {
6032 case 0:
6033 return '[u] [nedjelju] [u] LT';
6034 case 3:
6035 return '[u] [srijedu] [u] LT';
6036 case 6:
6037 return '[u] [subotu] [u] LT';
6038 case 1:
6039 case 2:
6040 case 4:
6041 case 5:
6042 return '[u] dddd [u] LT';
6043 }
6044 },
6045 lastDay : '[jučer u] LT',
6046 lastWeek : function () {
6047 switch (this.day()) {
6048 case 0:
6049 case 3:
6050 return '[prošlu] dddd [u] LT';
6051 case 6:
6052 return '[prošle] [subote] [u] LT';
6053 case 1:
6054 case 2:
6055 case 4:
6056 case 5:
6057 return '[prošli] dddd [u] LT';
6058 }
6059 },
6060 sameElse : 'L'
6061 },
6062 relativeTime : {
6063 future : 'za %s',
6064 past : 'prije %s',
6065 s : 'par sekundi',
6066 m : hr__translate,
6067 mm : hr__translate,
6068 h : hr__translate,
6069 hh : hr__translate,
6070 d : 'dan',
6071 dd : hr__translate,
6072 M : 'mjesec',
6073 MM : hr__translate,
6074 y : 'godinu',
6075 yy : hr__translate
6076 },
6077 ordinalParse: /\d{1,2}\./,
6078 ordinal : '%d.',
6079 week : {
6080 dow : 1, // Monday is the first day of the week.
6081 doy : 7 // The week that contains Jan 1st is the first week of the year.
6082 }
6083 });
6084
6085 //! moment.js locale configuration
6086 //! locale : hungarian (hu)
6087 //! author : Adam Brunner : https://github.com/adambrunner
6088
6089 var weekEndings = 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' ');
6090 function hu__translate(number, withoutSuffix, key, isFuture) {
6091 var num = number,
6092 suffix;
6093 switch (key) {
6094 case 's':
6095 return (isFuture || withoutSuffix) ? 'néhány másodperc' : 'néhány másodperce';
6096 case 'm':
6097 return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce');
6098 case 'mm':
6099 return num + (isFuture || withoutSuffix ? ' perc' : ' perce');
6100 case 'h':
6101 return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája');
6102 case 'hh':
6103 return num + (isFuture || withoutSuffix ? ' óra' : ' órája');
6104 case 'd':
6105 return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja');
6106 case 'dd':
6107 return num + (isFuture || withoutSuffix ? ' nap' : ' napja');
6108 case 'M':
6109 return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
6110 case 'MM':
6111 return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja');
6112 case 'y':
6113 return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve');
6114 case 'yy':
6115 return num + (isFuture || withoutSuffix ? ' év' : ' éve');
6116 }
6117 return '';
6118 }
6119 function week(isFuture) {
6120 return (isFuture ? '' : '[múlt] ') + '[' + weekEndings[this.day()] + '] LT[-kor]';
6121 }
6122
6123 var hu = _moment__default.defineLocale('hu', {
6124 months : 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split('_'),
6125 monthsShort : 'jan_feb_márc_ápr_máj_jún_júl_aug_szept_okt_nov_dec'.split('_'),
6126 weekdays : 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'),
6127 weekdaysShort : 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'),
6128 weekdaysMin : 'v_h_k_sze_cs_p_szo'.split('_'),
6129 longDateFormat : {
6130 LT : 'H:mm',
6131 LTS : 'H:mm:ss',
6132 L : 'YYYY.MM.DD.',
6133 LL : 'YYYY. MMMM D.',
6134 LLL : 'YYYY. MMMM D. H:mm',
6135 LLLL : 'YYYY. MMMM D., dddd H:mm'
6136 },
6137 meridiemParse: /de|du/i,
6138 isPM: function (input) {
6139 return input.charAt(1).toLowerCase() === 'u';
6140 },
6141 meridiem : function (hours, minutes, isLower) {
6142 if (hours < 12) {
6143 return isLower === true ? 'de' : 'DE';
6144 } else {
6145 return isLower === true ? 'du' : 'DU';
6146 }
6147 },
6148 calendar : {
6149 sameDay : '[ma] LT[-kor]',
6150 nextDay : '[holnap] LT[-kor]',
6151 nextWeek : function () {
6152 return week.call(this, true);
6153 },
6154 lastDay : '[tegnap] LT[-kor]',
6155 lastWeek : function () {
6156 return week.call(this, false);
6157 },
6158 sameElse : 'L'
6159 },
6160 relativeTime : {
6161 future : '%s múlva',
6162 past : '%s',
6163 s : hu__translate,
6164 m : hu__translate,
6165 mm : hu__translate,
6166 h : hu__translate,
6167 hh : hu__translate,
6168 d : hu__translate,
6169 dd : hu__translate,
6170 M : hu__translate,
6171 MM : hu__translate,
6172 y : hu__translate,
6173 yy : hu__translate
6174 },
6175 ordinalParse: /\d{1,2}\./,
6176 ordinal : '%d.',
6177 week : {
6178 dow : 1, // Monday is the first day of the week.
6179 doy : 7 // The week that contains Jan 1st is the first week of the year.
6180 }
6181 });
6182
6183 //! moment.js locale configuration
6184 //! locale : Armenian (hy-am)
6185 //! author : Armendarabyan : https://github.com/armendarabyan
6186
6187 function hy_am__monthsCaseReplace(m, format) {
6188 var months = {
6189 'nominative': 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split('_'),
6190 'accusative': 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split('_')
6191 },
6192 nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
6193 'accusative' :
6194 'nominative';
6195 return months[nounCase][m.month()];
6196 }
6197 function hy_am__monthsShortCaseReplace(m, format) {
6198 var monthsShort = 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_');
6199 return monthsShort[m.month()];
6200 }
6201 function hy_am__weekdaysCaseReplace(m, format) {
6202 var weekdays = 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split('_');
6203 return weekdays[m.day()];
6204 }
6205
6206 var hy_am = _moment__default.defineLocale('hy-am', {
6207 months : hy_am__monthsCaseReplace,
6208 monthsShort : hy_am__monthsShortCaseReplace,
6209 weekdays : hy_am__weekdaysCaseReplace,
6210 weekdaysShort : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
6211 weekdaysMin : 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'),
6212 longDateFormat : {
6213 LT : 'HH:mm',
6214 LTS : 'HH:mm:ss',
6215 L : 'DD.MM.YYYY',
6216 LL : 'D MMMM YYYY թ.',
6217 LLL : 'D MMMM YYYY թ., HH:mm',
6218 LLLL : 'dddd, D MMMM YYYY թ., HH:mm'
6219 },
6220 calendar : {
6221 sameDay: '[այսօր] LT',
6222 nextDay: '[վաղը] LT',
6223 lastDay: '[երեկ] LT',
6224 nextWeek: function () {
6225 return 'dddd [օրը ժամը] LT';
6226 },
6227 lastWeek: function () {
6228 return '[անցած] dddd [օրը ժամը] LT';
6229 },
6230 sameElse: 'L'
6231 },
6232 relativeTime : {
6233 future : '%s հետո',
6234 past : '%s առաջ',
6235 s : 'մի քանի վայրկյան',
6236 m : 'րոպե',
6237 mm : '%d րոպե',
6238 h : 'ժամ',
6239 hh : '%d ժամ',
6240 d : 'օր',
6241 dd : '%d օր',
6242 M : 'ամիս',
6243 MM : '%d ամիս',
6244 y : 'տարի',
6245 yy : '%d տարի'
6246 },
6247 meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,
6248 isPM: function (input) {
6249 return /^(ցերեկվա|երեկոյան)$/.test(input);
6250 },
6251 meridiem : function (hour) {
6252 if (hour < 4) {
6253 return 'գիշերվա';
6254 } else if (hour < 12) {
6255 return 'առավոտվա';
6256 } else if (hour < 17) {
6257 return 'ցերեկվա';
6258 } else {
6259 return 'երեկոյան';
6260 }
6261 },
6262 ordinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/,
6263 ordinal: function (number, period) {
6264 switch (period) {
6265 case 'DDD':
6266 case 'w':
6267 case 'W':
6268 case 'DDDo':
6269 if (number === 1) {
6270 return number + '-ին';
6271 }
6272 return number + '-րդ';
6273 default:
6274 return number;
6275 }
6276 },
6277 week : {
6278 dow : 1, // Monday is the first day of the week.
6279 doy : 7 // The week that contains Jan 1st is the first week of the year.
6280 }
6281 });
6282
6283 //! moment.js locale configuration
6284 //! locale : Bahasa Indonesia (id)
6285 //! author : Mohammad Satrio Utomo : https://github.com/tyok
6286 //! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan
6287
6288 var id = _moment__default.defineLocale('id', {
6289 months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split('_'),
6290 monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des'.split('_'),
6291 weekdays : 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'),
6292 weekdaysShort : 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'),
6293 weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'),
6294 longDateFormat : {
6295 LT : 'HH.mm',
6296 LTS : 'HH.mm.ss',
6297 L : 'DD/MM/YYYY',
6298 LL : 'D MMMM YYYY',
6299 LLL : 'D MMMM YYYY [pukul] HH.mm',
6300 LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'
6301 },
6302 meridiemParse: /pagi|siang|sore|malam/,
6303 meridiemHour : function (hour, meridiem) {
6304 if (hour === 12) {
6305 hour = 0;
6306 }
6307 if (meridiem === 'pagi') {
6308 return hour;
6309 } else if (meridiem === 'siang') {
6310 return hour >= 11 ? hour : hour + 12;
6311 } else if (meridiem === 'sore' || meridiem === 'malam') {
6312 return hour + 12;
6313 }
6314 },
6315 meridiem : function (hours, minutes, isLower) {
6316 if (hours < 11) {
6317 return 'pagi';
6318 } else if (hours < 15) {
6319 return 'siang';
6320 } else if (hours < 19) {
6321 return 'sore';
6322 } else {
6323 return 'malam';
6324 }
6325 },
6326 calendar : {
6327 sameDay : '[Hari ini pukul] LT',
6328 nextDay : '[Besok pukul] LT',
6329 nextWeek : 'dddd [pukul] LT',
6330 lastDay : '[Kemarin pukul] LT',
6331 lastWeek : 'dddd [lalu pukul] LT',
6332 sameElse : 'L'
6333 },
6334 relativeTime : {
6335 future : 'dalam %s',
6336 past : '%s yang lalu',
6337 s : 'beberapa detik',
6338 m : 'semenit',
6339 mm : '%d menit',
6340 h : 'sejam',
6341 hh : '%d jam',
6342 d : 'sehari',
6343 dd : '%d hari',
6344 M : 'sebulan',
6345 MM : '%d bulan',
6346 y : 'setahun',
6347 yy : '%d tahun'
6348 },
6349 week : {
6350 dow : 1, // Monday is the first day of the week.
6351 doy : 7 // The week that contains Jan 1st is the first week of the year.
6352 }
6353 });
6354
6355 //! moment.js locale configuration
6356 //! locale : icelandic (is)
6357 //! author : Hinrik Örn Sigurðsson : https://github.com/hinrik
6358
6359 function is__plural(n) {
6360 if (n % 100 === 11) {
6361 return true;
6362 } else if (n % 10 === 1) {
6363 return false;
6364 }
6365 return true;
6366 }
6367 function is__translate(number, withoutSuffix, key, isFuture) {
6368 var result = number + ' ';
6369 switch (key) {
6370 case 's':
6371 return withoutSuffix || isFuture ? 'nokkrar sekúndur' : 'nokkrum sekúndum';
6372 case 'm':
6373 return withoutSuffix ? 'mínúta' : 'mínútu';
6374 case 'mm':
6375 if (is__plural(number)) {
6376 return result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum');
6377 } else if (withoutSuffix) {
6378 return result + 'mínúta';
6379 }
6380 return result + 'mínútu';
6381 case 'hh':
6382 if (is__plural(number)) {
6383 return result + (withoutSuffix || isFuture ? 'klukkustundir' : 'klukkustundum');
6384 }
6385 return result + 'klukkustund';
6386 case 'd':
6387 if (withoutSuffix) {
6388 return 'dagur';
6389 }
6390 return isFuture ? 'dag' : 'degi';
6391 case 'dd':
6392 if (is__plural(number)) {
6393 if (withoutSuffix) {
6394 return result + 'dagar';
6395 }
6396 return result + (isFuture ? 'daga' : 'dögum');
6397 } else if (withoutSuffix) {
6398 return result + 'dagur';
6399 }
6400 return result + (isFuture ? 'dag' : 'degi');
6401 case 'M':
6402 if (withoutSuffix) {
6403 return 'mánuður';
6404 }
6405 return isFuture ? 'mánuð' : 'mánuði';
6406 case 'MM':
6407 if (is__plural(number)) {
6408 if (withoutSuffix) {
6409 return result + 'mánuðir';
6410 }
6411 return result + (isFuture ? 'mánuði' : 'mánuðum');
6412 } else if (withoutSuffix) {
6413 return result + 'mánuður';
6414 }
6415 return result + (isFuture ? 'mánuð' : 'mánuði');
6416 case 'y':
6417 return withoutSuffix || isFuture ? 'ár' : 'ári';
6418 case 'yy':
6419 if (is__plural(number)) {
6420 return result + (withoutSuffix || isFuture ? 'ár' : 'árum');
6421 }
6422 return result + (withoutSuffix || isFuture ? 'ár' : 'ári');
6423 }
6424 }
6425
6426 var is = _moment__default.defineLocale('is', {
6427 months : 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split('_'),
6428 monthsShort : 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'),
6429 weekdays : 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split('_'),
6430 weekdaysShort : 'sun_mán_þri_mið_fim_fös_lau'.split('_'),
6431 weekdaysMin : 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'),
6432 longDateFormat : {
6433 LT : 'H:mm',
6434 LTS : 'H:mm:ss',
6435 L : 'DD/MM/YYYY',
6436 LL : 'D. MMMM YYYY',
6437 LLL : 'D. MMMM YYYY [kl.] H:mm',
6438 LLLL : 'dddd, D. MMMM YYYY [kl.] H:mm'
6439 },
6440 calendar : {
6441 sameDay : '[í dag kl.] LT',
6442 nextDay : '[á morgun kl.] LT',
6443 nextWeek : 'dddd [kl.] LT',
6444 lastDay : '[í gær kl.] LT',
6445 lastWeek : '[síðasta] dddd [kl.] LT',
6446 sameElse : 'L'
6447 },
6448 relativeTime : {
6449 future : 'eftir %s',
6450 past : 'fyrir %s síðan',
6451 s : is__translate,
6452 m : is__translate,
6453 mm : is__translate,
6454 h : 'klukkustund',
6455 hh : is__translate,
6456 d : is__translate,
6457 dd : is__translate,
6458 M : is__translate,
6459 MM : is__translate,
6460 y : is__translate,
6461 yy : is__translate
6462 },
6463 ordinalParse: /\d{1,2}\./,
6464 ordinal : '%d.',
6465 week : {
6466 dow : 1, // Monday is the first day of the week.
6467 doy : 4 // The week that contains Jan 4th is the first week of the year.
6468 }
6469 });
6470
6471 //! moment.js locale configuration
6472 //! locale : italian (it)
6473 //! author : Lorenzo : https://github.com/aliem
6474 //! author: Mattia Larentis: https://github.com/nostalgiaz
6475
6476 var it = _moment__default.defineLocale('it', {
6477 months : 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split('_'),
6478 monthsShort : 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'),
6479 weekdays : 'Domenica_Lunedì_Martedì_Mercoledì_Giovedì_Venerdì_Sabato'.split('_'),
6480 weekdaysShort : 'Dom_Lun_Mar_Mer_Gio_Ven_Sab'.split('_'),
6481 weekdaysMin : 'D_L_Ma_Me_G_V_S'.split('_'),
6482 longDateFormat : {
6483 LT : 'HH:mm',
6484 LTS : 'HH:mm:ss',
6485 L : 'DD/MM/YYYY',
6486 LL : 'D MMMM YYYY',
6487 LLL : 'D MMMM YYYY HH:mm',
6488 LLLL : 'dddd, D MMMM YYYY HH:mm'
6489 },
6490 calendar : {
6491 sameDay: '[Oggi alle] LT',
6492 nextDay: '[Domani alle] LT',
6493 nextWeek: 'dddd [alle] LT',
6494 lastDay: '[Ieri alle] LT',
6495 lastWeek: function () {
6496 switch (this.day()) {
6497 case 0:
6498 return '[la scorsa] dddd [alle] LT';
6499 default:
6500 return '[lo scorso] dddd [alle] LT';
6501 }
6502 },
6503 sameElse: 'L'
6504 },
6505 relativeTime : {
6506 future : function (s) {
6507 return ((/^[0-9].+$/).test(s) ? 'tra' : 'in') + ' ' + s;
6508 },
6509 past : '%s fa',
6510 s : 'alcuni secondi',
6511 m : 'un minuto',
6512 mm : '%d minuti',
6513 h : 'un\'ora',
6514 hh : '%d ore',
6515 d : 'un giorno',
6516 dd : '%d giorni',
6517 M : 'un mese',
6518 MM : '%d mesi',
6519 y : 'un anno',
6520 yy : '%d anni'
6521 },
6522 ordinalParse : /\d{1,2}º/,
6523 ordinal: '%dº',
6524 week : {
6525 dow : 1, // Monday is the first day of the week.
6526 doy : 4 // The week that contains Jan 4th is the first week of the year.
6527 }
6528 });
6529
6530 //! moment.js locale configuration
6531 //! locale : japanese (ja)
6532 //! author : LI Long : https://github.com/baryon
6533
6534 var ja = _moment__default.defineLocale('ja', {
6535 months : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
6536 monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
6537 weekdays : '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'),
6538 weekdaysShort : '日_月_火_水_木_金_土'.split('_'),
6539 weekdaysMin : '日_月_火_水_木_金_土'.split('_'),
6540 longDateFormat : {
6541 LT : 'Ah時m分',
6542 LTS : 'Ah時m分s秒',
6543 L : 'YYYY/MM/DD',
6544 LL : 'YYYY年M月D日',
6545 LLL : 'YYYY年M月D日Ah時m分',
6546 LLLL : 'YYYY年M月D日Ah時m分 dddd'
6547 },
6548 meridiemParse: /午前|午後/i,
6549 isPM : function (input) {
6550 return input === '午後';
6551 },
6552 meridiem : function (hour, minute, isLower) {
6553 if (hour < 12) {
6554 return '午前';
6555 } else {
6556 return '午後';
6557 }
6558 },
6559 calendar : {
6560 sameDay : '[今日] LT',
6561 nextDay : '[明日] LT',
6562 nextWeek : '[来週]dddd LT',
6563 lastDay : '[昨日] LT',
6564 lastWeek : '[前週]dddd LT',
6565 sameElse : 'L'
6566 },
6567 relativeTime : {
6568 future : '%s後',
6569 past : '%s前',
6570 s : '数秒',
6571 m : '1分',
6572 mm : '%d分',
6573 h : '1時間',
6574 hh : '%d時間',
6575 d : '1日',
6576 dd : '%d日',
6577 M : '1ヶ月',
6578 MM : '%dヶ月',
6579 y : '1年',
6580 yy : '%d年'
6581 }
6582 });
6583
6584 //! moment.js locale configuration
6585 //! locale : Boso Jowo (jv)
6586 //! author : Rony Lantip : https://github.com/lantip
6587 //! reference: http://jv.wikipedia.org/wiki/Basa_Jawa
6588
6589 var jv = _moment__default.defineLocale('jv', {
6590 months : 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split('_'),
6591 monthsShort : 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'),
6592 weekdays : 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'),
6593 weekdaysShort : 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'),
6594 weekdaysMin : 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'),
6595 longDateFormat : {
6596 LT : 'HH.mm',
6597 LTS : 'HH.mm.ss',
6598 L : 'DD/MM/YYYY',
6599 LL : 'D MMMM YYYY',
6600 LLL : 'D MMMM YYYY [pukul] HH.mm',
6601 LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'
6602 },
6603 meridiemParse: /enjing|siyang|sonten|ndalu/,
6604 meridiemHour : function (hour, meridiem) {
6605 if (hour === 12) {
6606 hour = 0;
6607 }
6608 if (meridiem === 'enjing') {
6609 return hour;
6610 } else if (meridiem === 'siyang') {
6611 return hour >= 11 ? hour : hour + 12;
6612 } else if (meridiem === 'sonten' || meridiem === 'ndalu') {
6613 return hour + 12;
6614 }
6615 },
6616 meridiem : function (hours, minutes, isLower) {
6617 if (hours < 11) {
6618 return 'enjing';
6619 } else if (hours < 15) {
6620 return 'siyang';
6621 } else if (hours < 19) {
6622 return 'sonten';
6623 } else {
6624 return 'ndalu';
6625 }
6626 },
6627 calendar : {
6628 sameDay : '[Dinten puniko pukul] LT',
6629 nextDay : '[Mbenjang pukul] LT',
6630 nextWeek : 'dddd [pukul] LT',
6631 lastDay : '[Kala wingi pukul] LT',
6632 lastWeek : 'dddd [kepengker pukul] LT',
6633 sameElse : 'L'
6634 },
6635 relativeTime : {
6636 future : 'wonten ing %s',
6637 past : '%s ingkang kepengker',
6638 s : 'sawetawis detik',
6639 m : 'setunggal menit',
6640 mm : '%d menit',
6641 h : 'setunggal jam',
6642 hh : '%d jam',
6643 d : 'sedinten',
6644 dd : '%d dinten',
6645 M : 'sewulan',
6646 MM : '%d wulan',
6647 y : 'setaun',
6648 yy : '%d taun'
6649 },
6650 week : {
6651 dow : 1, // Monday is the first day of the week.
6652 doy : 7 // The week that contains Jan 1st is the first week of the year.
6653 }
6654 });
6655
6656 //! moment.js locale configuration
6657 //! locale : Georgian (ka)
6658 //! author : Irakli Janiashvili : https://github.com/irakli-janiashvili
6659
6660 function ka__monthsCaseReplace(m, format) {
6661 var months = {
6662 'nominative': 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split('_'),
6663 'accusative': 'იანვარს_თებერვალს_მარტს_აპრილის_მაისს_ივნისს_ივლისს_აგვისტს_სექტემბერს_ოქტომბერს_ნოემბერს_დეკემბერს'.split('_')
6664 },
6665 nounCase = (/D[oD] *MMMM?/).test(format) ?
6666 'accusative' :
6667 'nominative';
6668 return months[nounCase][m.month()];
6669 }
6670 function ka__weekdaysCaseReplace(m, format) {
6671 var weekdays = {
6672 'nominative': 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split('_'),
6673 'accusative': 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split('_')
6674 },
6675 nounCase = (/(წინა|შემდეგ)/).test(format) ?
6676 'accusative' :
6677 'nominative';
6678 return weekdays[nounCase][m.day()];
6679 }
6680
6681 var ka = _moment__default.defineLocale('ka', {
6682 months : ka__monthsCaseReplace,
6683 monthsShort : 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'),
6684 weekdays : ka__weekdaysCaseReplace,
6685 weekdaysShort : 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'),
6686 weekdaysMin : 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'),
6687 longDateFormat : {
6688 LT : 'h:mm A',
6689 LTS : 'h:mm:ss A',
6690 L : 'DD/MM/YYYY',
6691 LL : 'D MMMM YYYY',
6692 LLL : 'D MMMM YYYY h:mm A',
6693 LLLL : 'dddd, D MMMM YYYY h:mm A'
6694 },
6695 calendar : {
6696 sameDay : '[დღეს] LT[-ზე]',
6697 nextDay : '[ხვალ] LT[-ზე]',
6698 lastDay : '[გუშინ] LT[-ზე]',
6699 nextWeek : '[შემდეგ] dddd LT[-ზე]',
6700 lastWeek : '[წინა] dddd LT-ზე',
6701 sameElse : 'L'
6702 },
6703 relativeTime : {
6704 future : function (s) {
6705 return (/(წამი|წუთი|საათი|წელი)/).test(s) ?
6706 s.replace(/ი$/, 'ში') :
6707 s + 'ში';
6708 },
6709 past : function (s) {
6710 if ((/(წამი|წუთი|საათი|დღე|თვე)/).test(s)) {
6711 return s.replace(/(ი|ე)$/, 'ის წინ');
6712 }
6713 if ((/წელი/).test(s)) {
6714 return s.replace(/წელი$/, 'წლის წინ');
6715 }
6716 },
6717 s : 'რამდენიმე წამი',
6718 m : 'წუთი',
6719 mm : '%d წუთი',
6720 h : 'საათი',
6721 hh : '%d საათი',
6722 d : 'დღე',
6723 dd : '%d დღე',
6724 M : 'თვე',
6725 MM : '%d თვე',
6726 y : 'წელი',
6727 yy : '%d წელი'
6728 },
6729 ordinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,
6730 ordinal : function (number) {
6731 if (number === 0) {
6732 return number;
6733 }
6734 if (number === 1) {
6735 return number + '-ლი';
6736 }
6737 if ((number < 20) || (number <= 100 && (number % 20 === 0)) || (number % 100 === 0)) {
6738 return 'მე-' + number;
6739 }
6740 return number + '-ე';
6741 },
6742 week : {
6743 dow : 1,
6744 doy : 7
6745 }
6746 });
6747
6748 //! moment.js locale configuration
6749 //! locale : khmer (km)
6750 //! author : Kruy Vanna : https://github.com/kruyvanna
6751
6752 var km = _moment__default.defineLocale('km', {
6753 months: 'មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split('_'),
6754 monthsShort: 'មករា_កុម្ភៈ_មិនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split('_'),
6755 weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6756 weekdaysShort: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6757 weekdaysMin: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'),
6758 longDateFormat: {
6759 LT: 'HH:mm',
6760 LTS : 'HH:mm:ss',
6761 L: 'DD/MM/YYYY',
6762 LL: 'D MMMM YYYY',
6763 LLL: 'D MMMM YYYY HH:mm',
6764 LLLL: 'dddd, D MMMM YYYY HH:mm'
6765 },
6766 calendar: {
6767 sameDay: '[ថ្ងៃនៈ ម៉ោង] LT',
6768 nextDay: '[ស្អែក ម៉ោង] LT',
6769 nextWeek: 'dddd [ម៉ោង] LT',
6770 lastDay: '[ម្សិលមិញ ម៉ោង] LT',
6771 lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT',
6772 sameElse: 'L'
6773 },
6774 relativeTime: {
6775 future: '%sទៀត',
6776 past: '%sមុន',
6777 s: 'ប៉ុន្មានវិនាទី',
6778 m: 'មួយនាទី',
6779 mm: '%d នាទី',
6780 h: 'មួយម៉ោង',
6781 hh: '%d ម៉ោង',
6782 d: 'មួយថ្ងៃ',
6783 dd: '%d ថ្ងៃ',
6784 M: 'មួយខែ',
6785 MM: '%d ខែ',
6786 y: 'មួយឆ្នាំ',
6787 yy: '%d ឆ្នាំ'
6788 },
6789 week: {
6790 dow: 1, // Monday is the first day of the week.
6791 doy: 4 // The week that contains Jan 4th is the first week of the year.
6792 }
6793 });
6794
6795 //! moment.js locale configuration
6796 //! locale : korean (ko)
6797 //!
6798 //! authors
6799 //!
6800 //! - Kyungwook, Park : https://github.com/kyungw00k
6801 //! - Jeeeyul Lee <jeeeyul@gmail.com>
6802
6803 var ko = _moment__default.defineLocale('ko', {
6804 months : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),
6805 monthsShort : '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'),
6806 weekdays : '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'),
6807 weekdaysShort : '일_월_화_수_목_금_토'.split('_'),
6808 weekdaysMin : '일_월_화_수_목_금_토'.split('_'),
6809 longDateFormat : {
6810 LT : 'A h시 m분',
6811 LTS : 'A h시 m분 s초',
6812 L : 'YYYY.MM.DD',
6813 LL : 'YYYY년 MMMM D일',
6814 LLL : 'YYYY년 MMMM D일 A h시 m분',
6815 LLLL : 'YYYY년 MMMM D일 dddd A h시 m분'
6816 },
6817 calendar : {
6818 sameDay : '오늘 LT',
6819 nextDay : '내일 LT',
6820 nextWeek : 'dddd LT',
6821 lastDay : '어제 LT',
6822 lastWeek : '지난주 dddd LT',
6823 sameElse : 'L'
6824 },
6825 relativeTime : {
6826 future : '%s 후',
6827 past : '%s 전',
6828 s : '몇초',
6829 ss : '%d초',
6830 m : '일분',
6831 mm : '%d분',
6832 h : '한시간',
6833 hh : '%d시간',
6834 d : '하루',
6835 dd : '%d일',
6836 M : '한달',
6837 MM : '%d달',
6838 y : '일년',
6839 yy : '%d년'
6840 },
6841 ordinalParse : /\d{1,2}일/,
6842 ordinal : '%d일',
6843 meridiemParse : /오전|오후/,
6844 isPM : function (token) {
6845 return token === '오후';
6846 },
6847 meridiem : function (hour, minute, isUpper) {
6848 return hour < 12 ? '오전' : '오후';
6849 }
6850 });
6851
6852 //! moment.js locale configuration
6853 //! locale : Luxembourgish (lb)
6854 //! author : mweimerskirch : https://github.com/mweimerskirch, David Raison : https://github.com/kwisatz
6855
6856 function lb__processRelativeTime(number, withoutSuffix, key, isFuture) {
6857 var format = {
6858 'm': ['eng Minutt', 'enger Minutt'],
6859 'h': ['eng Stonn', 'enger Stonn'],
6860 'd': ['een Dag', 'engem Dag'],
6861 'M': ['ee Mount', 'engem Mount'],
6862 'y': ['ee Joer', 'engem Joer']
6863 };
6864 return withoutSuffix ? format[key][0] : format[key][1];
6865 }
6866 function processFutureTime(string) {
6867 var number = string.substr(0, string.indexOf(' '));
6868 if (eifelerRegelAppliesToNumber(number)) {
6869 return 'a ' + string;
6870 }
6871 return 'an ' + string;
6872 }
6873 function processPastTime(string) {
6874 var number = string.substr(0, string.indexOf(' '));
6875 if (eifelerRegelAppliesToNumber(number)) {
6876 return 'viru ' + string;
6877 }
6878 return 'virun ' + string;
6879 }
6880 /**
6881 * Returns true if the word before the given number loses the '-n' ending.
6882 * e.g. 'an 10 Deeg' but 'a 5 Deeg'
6883 *
6884 * @param number {integer}
6885 * @returns {boolean}
6886 */
6887 function eifelerRegelAppliesToNumber(number) {
6888 number = parseInt(number, 10);
6889 if (isNaN(number)) {
6890 return false;
6891 }
6892 if (number < 0) {
6893 // Negative Number --> always true
6894 return true;
6895 } else if (number < 10) {
6896 // Only 1 digit
6897 if (4 <= number && number <= 7) {
6898 return true;
6899 }
6900 return false;
6901 } else if (number < 100) {
6902 // 2 digits
6903 var lastDigit = number % 10, firstDigit = number / 10;
6904 if (lastDigit === 0) {
6905 return eifelerRegelAppliesToNumber(firstDigit);
6906 }
6907 return eifelerRegelAppliesToNumber(lastDigit);
6908 } else if (number < 10000) {
6909 // 3 or 4 digits --> recursively check first digit
6910 while (number >= 10) {
6911 number = number / 10;
6912 }
6913 return eifelerRegelAppliesToNumber(number);
6914 } else {
6915 // Anything larger than 4 digits: recursively check first n-3 digits
6916 number = number / 1000;
6917 return eifelerRegelAppliesToNumber(number);
6918 }
6919 }
6920
6921 var lb = _moment__default.defineLocale('lb', {
6922 months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split('_'),
6923 monthsShort: 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split('_'),
6924 weekdays: 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split('_'),
6925 weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'),
6926 weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'),
6927 longDateFormat: {
6928 LT: 'H:mm [Auer]',
6929 LTS: 'H:mm:ss [Auer]',
6930 L: 'DD.MM.YYYY',
6931 LL: 'D. MMMM YYYY',
6932 LLL: 'D. MMMM YYYY H:mm [Auer]',
6933 LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]'
6934 },
6935 calendar: {
6936 sameDay: '[Haut um] LT',
6937 sameElse: 'L',
6938 nextDay: '[Muer um] LT',
6939 nextWeek: 'dddd [um] LT',
6940 lastDay: '[Gëschter um] LT',
6941 lastWeek: function () {
6942 // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule
6943 switch (this.day()) {
6944 case 2:
6945 case 4:
6946 return '[Leschten] dddd [um] LT';
6947 default:
6948 return '[Leschte] dddd [um] LT';
6949 }
6950 }
6951 },
6952 relativeTime : {
6953 future : processFutureTime,
6954 past : processPastTime,
6955 s : 'e puer Sekonnen',
6956 m : lb__processRelativeTime,
6957 mm : '%d Minutten',
6958 h : lb__processRelativeTime,
6959 hh : '%d Stonnen',
6960 d : lb__processRelativeTime,
6961 dd : '%d Deeg',
6962 M : lb__processRelativeTime,
6963 MM : '%d Méint',
6964 y : lb__processRelativeTime,
6965 yy : '%d Joer'
6966 },
6967 ordinalParse: /\d{1,2}\./,
6968 ordinal: '%d.',
6969 week: {
6970 dow: 1, // Monday is the first day of the week.
6971 doy: 4 // The week that contains Jan 4th is the first week of the year.
6972 }
6973 });
6974
6975 //! moment.js locale configuration
6976 //! locale : Lithuanian (lt)
6977 //! author : Mindaugas Mozūras : https://github.com/mmozuras
6978
6979 var lt__units = {
6980 'm' : 'minutė_minutės_minutę',
6981 'mm': 'minutės_minučių_minutes',
6982 'h' : 'valanda_valandos_valandą',
6983 'hh': 'valandos_valandų_valandas',
6984 'd' : 'diena_dienos_dieną',
6985 'dd': 'dienos_dienų_dienas',
6986 'M' : 'mėnuo_mėnesio_mėnesį',
6987 'MM': 'mėnesiai_mėnesių_mėnesius',
6988 'y' : 'metai_metų_metus',
6989 'yy': 'metai_metų_metus'
6990 },
6991 weekDays = 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split('_');
6992 function translateSeconds(number, withoutSuffix, key, isFuture) {
6993 if (withoutSuffix) {
6994 return 'kelios sekundės';
6995 } else {
6996 return isFuture ? 'kelių sekundžių' : 'kelias sekundes';
6997 }
6998 }
6999 function lt__monthsCaseReplace(m, format) {
7000 var months = {
7001 'nominative': 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split('_'),
7002 'accusative': 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split('_')
7003 },
7004 nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
7005 'accusative' :
7006 'nominative';
7007 return months[nounCase][m.month()];
7008 }
7009 function translateSingular(number, withoutSuffix, key, isFuture) {
7010 return withoutSuffix ? forms(key)[0] : (isFuture ? forms(key)[1] : forms(key)[2]);
7011 }
7012 function special(number) {
7013 return number % 10 === 0 || (number > 10 && number < 20);
7014 }
7015 function forms(key) {
7016 return lt__units[key].split('_');
7017 }
7018 function lt__translate(number, withoutSuffix, key, isFuture) {
7019 var result = number + ' ';
7020 if (number === 1) {
7021 return result + translateSingular(number, withoutSuffix, key[0], isFuture);
7022 } else if (withoutSuffix) {
7023 return result + (special(number) ? forms(key)[1] : forms(key)[0]);
7024 } else {
7025 if (isFuture) {
7026 return result + forms(key)[1];
7027 } else {
7028 return result + (special(number) ? forms(key)[1] : forms(key)[2]);
7029 }
7030 }
7031 }
7032 function relativeWeekDay(moment, format) {
7033 var nominative = format.indexOf('dddd HH:mm') === -1,
7034 weekDay = weekDays[moment.day()];
7035 return nominative ? weekDay : weekDay.substring(0, weekDay.length - 2) + 'į';
7036 }
7037
7038 var lt = _moment__default.defineLocale('lt', {
7039 months : lt__monthsCaseReplace,
7040 monthsShort : 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'),
7041 weekdays : relativeWeekDay,
7042 weekdaysShort : 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'),
7043 weekdaysMin : 'S_P_A_T_K_Pn_Š'.split('_'),
7044 longDateFormat : {
7045 LT : 'HH:mm',
7046 LTS : 'HH:mm:ss',
7047 L : 'YYYY-MM-DD',
7048 LL : 'YYYY [m.] MMMM D [d.]',
7049 LLL : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',
7050 LLLL : 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]',
7051 l : 'YYYY-MM-DD',
7052 ll : 'YYYY [m.] MMMM D [d.]',
7053 lll : 'YYYY [m.] MMMM D [d.], HH:mm [val.]',
7054 llll : 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]'
7055 },
7056 calendar : {
7057 sameDay : '[Šiandien] LT',
7058 nextDay : '[Rytoj] LT',
7059 nextWeek : 'dddd LT',
7060 lastDay : '[Vakar] LT',
7061 lastWeek : '[Praėjusį] dddd LT',
7062 sameElse : 'L'
7063 },
7064 relativeTime : {
7065 future : 'po %s',
7066 past : 'prieš %s',
7067 s : translateSeconds,
7068 m : translateSingular,
7069 mm : lt__translate,
7070 h : translateSingular,
7071 hh : lt__translate,
7072 d : translateSingular,
7073 dd : lt__translate,
7074 M : translateSingular,
7075 MM : lt__translate,
7076 y : translateSingular,
7077 yy : lt__translate
7078 },
7079 ordinalParse: /\d{1,2}-oji/,
7080 ordinal : function (number) {
7081 return number + '-oji';
7082 },
7083 week : {
7084 dow : 1, // Monday is the first day of the week.
7085 doy : 4 // The week that contains Jan 4th is the first week of the year.
7086 }
7087 });
7088
7089 //! moment.js locale configuration
7090 //! locale : latvian (lv)
7091 //! author : Kristaps Karlsons : https://github.com/skakri
7092 //! author : Jānis Elmeris : https://github.com/JanisE
7093
7094 var lv__units = {
7095 'm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),
7096 'mm': 'minūtes_minūtēm_minūte_minūtes'.split('_'),
7097 'h': 'stundas_stundām_stunda_stundas'.split('_'),
7098 'hh': 'stundas_stundām_stunda_stundas'.split('_'),
7099 'd': 'dienas_dienām_diena_dienas'.split('_'),
7100 'dd': 'dienas_dienām_diena_dienas'.split('_'),
7101 'M': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
7102 'MM': 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'),
7103 'y': 'gada_gadiem_gads_gadi'.split('_'),
7104 'yy': 'gada_gadiem_gads_gadi'.split('_')
7105 };
7106 /**
7107 * @param withoutSuffix boolean true = a length of time; false = before/after a period of time.
7108 */
7109 function lv__format(forms, number, withoutSuffix) {
7110 if (withoutSuffix) {
7111 // E.g. "21 minūte", "3 minūtes".
7112 return number % 10 === 1 && number !== 11 ? forms[2] : forms[3];
7113 } else {
7114 // E.g. "21 minūtes" as in "pēc 21 minūtes".
7115 // E.g. "3 minūtēm" as in "pēc 3 minūtēm".
7116 return number % 10 === 1 && number !== 11 ? forms[0] : forms[1];
7117 }
7118 }
7119 function lv__relativeTimeWithPlural(number, withoutSuffix, key) {
7120 return number + ' ' + lv__format(lv__units[key], number, withoutSuffix);
7121 }
7122 function relativeTimeWithSingular(number, withoutSuffix, key) {
7123 return lv__format(lv__units[key], number, withoutSuffix);
7124 }
7125 function relativeSeconds(number, withoutSuffix) {
7126 return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm';
7127 }
7128
7129 var lv = _moment__default.defineLocale('lv', {
7130 months : 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split('_'),
7131 monthsShort : 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'),
7132 weekdays : 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split('_'),
7133 weekdaysShort : 'Sv_P_O_T_C_Pk_S'.split('_'),
7134 weekdaysMin : 'Sv_P_O_T_C_Pk_S'.split('_'),
7135 longDateFormat : {
7136 LT : 'HH:mm',
7137 LTS : 'HH:mm:ss',
7138 L : 'DD.MM.YYYY.',
7139 LL : 'YYYY. [gada] D. MMMM',
7140 LLL : 'YYYY. [gada] D. MMMM, HH:mm',
7141 LLLL : 'YYYY. [gada] D. MMMM, dddd, HH:mm'
7142 },
7143 calendar : {
7144 sameDay : '[Šodien pulksten] LT',
7145 nextDay : '[Rīt pulksten] LT',
7146 nextWeek : 'dddd [pulksten] LT',
7147 lastDay : '[Vakar pulksten] LT',
7148 lastWeek : '[Pagājušā] dddd [pulksten] LT',
7149 sameElse : 'L'
7150 },
7151 relativeTime : {
7152 future : 'pēc %s',
7153 past : 'pirms %s',
7154 s : relativeSeconds,
7155 m : relativeTimeWithSingular,
7156 mm : lv__relativeTimeWithPlural,
7157 h : relativeTimeWithSingular,
7158 hh : lv__relativeTimeWithPlural,
7159 d : relativeTimeWithSingular,
7160 dd : lv__relativeTimeWithPlural,
7161 M : relativeTimeWithSingular,
7162 MM : lv__relativeTimeWithPlural,
7163 y : relativeTimeWithSingular,
7164 yy : lv__relativeTimeWithPlural
7165 },
7166 ordinalParse: /\d{1,2}\./,
7167 ordinal : '%d.',
7168 week : {
7169 dow : 1, // Monday is the first day of the week.
7170 doy : 4 // The week that contains Jan 4th is the first week of the year.
7171 }
7172 });
7173
7174 //! moment.js locale configuration
7175 //! locale : Montenegrin (me)
7176 //! author : Miodrag Nikač <miodrag@restartit.me> : https://github.com/miodragnikac
7177
7178 var me__translator = {
7179 words: { //Different grammatical cases
7180 m: ['jedan minut', 'jednog minuta'],
7181 mm: ['minut', 'minuta', 'minuta'],
7182 h: ['jedan sat', 'jednog sata'],
7183 hh: ['sat', 'sata', 'sati'],
7184 dd: ['dan', 'dana', 'dana'],
7185 MM: ['mjesec', 'mjeseca', 'mjeseci'],
7186 yy: ['godina', 'godine', 'godina']
7187 },
7188 correctGrammaticalCase: function (number, wordKey) {
7189 return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
7190 },
7191 translate: function (number, withoutSuffix, key) {
7192 var wordKey = me__translator.words[key];
7193 if (key.length === 1) {
7194 return withoutSuffix ? wordKey[0] : wordKey[1];
7195 } else {
7196 return number + ' ' + me__translator.correctGrammaticalCase(number, wordKey);
7197 }
7198 }
7199 };
7200
7201 var me = _moment__default.defineLocale('me', {
7202 months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
7203 monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
7204 weekdays: ['nedjelja', 'ponedjeljak', 'utorak', 'srijeda', 'četvrtak', 'petak', 'subota'],
7205 weekdaysShort: ['ned.', 'pon.', 'uto.', 'sri.', 'čet.', 'pet.', 'sub.'],
7206 weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
7207 longDateFormat: {
7208 LT: 'H:mm',
7209 LTS : 'H:mm:ss',
7210 L: 'DD. MM. YYYY',
7211 LL: 'D. MMMM YYYY',
7212 LLL: 'D. MMMM YYYY H:mm',
7213 LLLL: 'dddd, D. MMMM YYYY H:mm'
7214 },
7215 calendar: {
7216 sameDay: '[danas u] LT',
7217 nextDay: '[sjutra u] LT',
7218
7219 nextWeek: function () {
7220 switch (this.day()) {
7221 case 0:
7222 return '[u] [nedjelju] [u] LT';
7223 case 3:
7224 return '[u] [srijedu] [u] LT';
7225 case 6:
7226 return '[u] [subotu] [u] LT';
7227 case 1:
7228 case 2:
7229 case 4:
7230 case 5:
7231 return '[u] dddd [u] LT';
7232 }
7233 },
7234 lastDay : '[juče u] LT',
7235 lastWeek : function () {
7236 var lastWeekDays = [
7237 '[prošle] [nedjelje] [u] LT',
7238 '[prošlog] [ponedjeljka] [u] LT',
7239 '[prošlog] [utorka] [u] LT',
7240 '[prošle] [srijede] [u] LT',
7241 '[prošlog] [četvrtka] [u] LT',
7242 '[prošlog] [petka] [u] LT',
7243 '[prošle] [subote] [u] LT'
7244 ];
7245 return lastWeekDays[this.day()];
7246 },
7247 sameElse : 'L'
7248 },
7249 relativeTime : {
7250 future : 'za %s',
7251 past : 'prije %s',
7252 s : 'nekoliko sekundi',
7253 m : me__translator.translate,
7254 mm : me__translator.translate,
7255 h : me__translator.translate,
7256 hh : me__translator.translate,
7257 d : 'dan',
7258 dd : me__translator.translate,
7259 M : 'mjesec',
7260 MM : me__translator.translate,
7261 y : 'godinu',
7262 yy : me__translator.translate
7263 },
7264 ordinalParse: /\d{1,2}\./,
7265 ordinal : '%d.',
7266 week : {
7267 dow : 1, // Monday is the first day of the week.
7268 doy : 7 // The week that contains Jan 1st is the first week of the year.
7269 }
7270 });
7271
7272 //! moment.js locale configuration
7273 //! locale : macedonian (mk)
7274 //! author : Borislav Mickov : https://github.com/B0k0
7275
7276 var mk = _moment__default.defineLocale('mk', {
7277 months : 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split('_'),
7278 monthsShort : 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'),
7279 weekdays : 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split('_'),
7280 weekdaysShort : 'нед_пон_вто_сре_чет_пет_саб'.split('_'),
7281 weekdaysMin : 'нe_пo_вт_ср_че_пе_сa'.split('_'),
7282 longDateFormat : {
7283 LT : 'H:mm',
7284 LTS : 'H:mm:ss',
7285 L : 'D.MM.YYYY',
7286 LL : 'D MMMM YYYY',
7287 LLL : 'D MMMM YYYY H:mm',
7288 LLLL : 'dddd, D MMMM YYYY H:mm'
7289 },
7290 calendar : {
7291 sameDay : '[Денес во] LT',
7292 nextDay : '[Утре во] LT',
7293 nextWeek : 'dddd [во] LT',
7294 lastDay : '[Вчера во] LT',
7295 lastWeek : function () {
7296 switch (this.day()) {
7297 case 0:
7298 case 3:
7299 case 6:
7300 return '[Во изминатата] dddd [во] LT';
7301 case 1:
7302 case 2:
7303 case 4:
7304 case 5:
7305 return '[Во изминатиот] dddd [во] LT';
7306 }
7307 },
7308 sameElse : 'L'
7309 },
7310 relativeTime : {
7311 future : 'после %s',
7312 past : 'пред %s',
7313 s : 'неколку секунди',
7314 m : 'минута',
7315 mm : '%d минути',
7316 h : 'час',
7317 hh : '%d часа',
7318 d : 'ден',
7319 dd : '%d дена',
7320 M : 'месец',
7321 MM : '%d месеци',
7322 y : 'година',
7323 yy : '%d години'
7324 },
7325 ordinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
7326 ordinal : function (number) {
7327 var lastDigit = number % 10,
7328 last2Digits = number % 100;
7329 if (number === 0) {
7330 return number + '-ев';
7331 } else if (last2Digits === 0) {
7332 return number + '-ен';
7333 } else if (last2Digits > 10 && last2Digits < 20) {
7334 return number + '-ти';
7335 } else if (lastDigit === 1) {
7336 return number + '-ви';
7337 } else if (lastDigit === 2) {
7338 return number + '-ри';
7339 } else if (lastDigit === 7 || lastDigit === 8) {
7340 return number + '-ми';
7341 } else {
7342 return number + '-ти';
7343 }
7344 },
7345 week : {
7346 dow : 1, // Monday is the first day of the week.
7347 doy : 7 // The week that contains Jan 1st is the first week of the year.
7348 }
7349 });
7350
7351 //! moment.js locale configuration
7352 //! locale : malayalam (ml)
7353 //! author : Floyd Pink : https://github.com/floydpink
7354
7355 var ml = _moment__default.defineLocale('ml', {
7356 months : 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split('_'),
7357 monthsShort : 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split('_'),
7358 weekdays : 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split('_'),
7359 weekdaysShort : 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'),
7360 weekdaysMin : 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'),
7361 longDateFormat : {
7362 LT : 'A h:mm -നു',
7363 LTS : 'A h:mm:ss -നു',
7364 L : 'DD/MM/YYYY',
7365 LL : 'D MMMM YYYY',
7366 LLL : 'D MMMM YYYY, A h:mm -നു',
7367 LLLL : 'dddd, D MMMM YYYY, A h:mm -നു'
7368 },
7369 calendar : {
7370 sameDay : '[ഇന്ന്] LT',
7371 nextDay : '[നാളെ] LT',
7372 nextWeek : 'dddd, LT',
7373 lastDay : '[ഇന്നലെ] LT',
7374 lastWeek : '[കഴിഞ്ഞ] dddd, LT',
7375 sameElse : 'L'
7376 },
7377 relativeTime : {
7378 future : '%s കഴിഞ്ഞ്',
7379 past : '%s മുൻപ്',
7380 s : 'അൽപ നിമിഷങ്ങൾ',
7381 m : 'ഒരു മിനിറ്റ്',
7382 mm : '%d മിനിറ്റ്',
7383 h : 'ഒരു മണിക്കൂർ',
7384 hh : '%d മണിക്കൂർ',
7385 d : 'ഒരു ദിവസം',
7386 dd : '%d ദിവസം',
7387 M : 'ഒരു മാസം',
7388 MM : '%d മാസം',
7389 y : 'ഒരു വർഷം',
7390 yy : '%d വർഷം'
7391 },
7392 meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
7393 isPM : function (input) {
7394 return /^(ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി)$/.test(input);
7395 },
7396 meridiem : function (hour, minute, isLower) {
7397 if (hour < 4) {
7398 return 'രാത്രി';
7399 } else if (hour < 12) {
7400 return 'രാവിലെ';
7401 } else if (hour < 17) {
7402 return 'ഉച്ച കഴിഞ്ഞ്';
7403 } else if (hour < 20) {
7404 return 'വൈകുന്നേരം';
7405 } else {
7406 return 'രാത്രി';
7407 }
7408 }
7409 });
7410
7411 //! moment.js locale configuration
7412 //! locale : Marathi (mr)
7413 //! author : Harshad Kale : https://github.com/kalehv
7414
7415 var mr__symbolMap = {
7416 '1': '१',
7417 '2': '२',
7418 '3': '३',
7419 '4': '४',
7420 '5': '५',
7421 '6': '६',
7422 '7': '७',
7423 '8': '८',
7424 '9': '९',
7425 '0': '०'
7426 },
7427 mr__numberMap = {
7428 '१': '1',
7429 '२': '2',
7430 '३': '3',
7431 '४': '4',
7432 '५': '5',
7433 '६': '6',
7434 '७': '7',
7435 '८': '8',
7436 '९': '9',
7437 '०': '0'
7438 };
7439
7440 var mr = _moment__default.defineLocale('mr', {
7441 months : 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split('_'),
7442 monthsShort: 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split('_'),
7443 weekdays : 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'),
7444 weekdaysShort : 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'),
7445 weekdaysMin : 'र_सो_मं_बु_गु_शु_श'.split('_'),
7446 longDateFormat : {
7447 LT : 'A h:mm वाजता',
7448 LTS : 'A h:mm:ss वाजता',
7449 L : 'DD/MM/YYYY',
7450 LL : 'D MMMM YYYY',
7451 LLL : 'D MMMM YYYY, A h:mm वाजता',
7452 LLLL : 'dddd, D MMMM YYYY, A h:mm वाजता'
7453 },
7454 calendar : {
7455 sameDay : '[आज] LT',
7456 nextDay : '[उद्या] LT',
7457 nextWeek : 'dddd, LT',
7458 lastDay : '[काल] LT',
7459 lastWeek: '[मागील] dddd, LT',
7460 sameElse : 'L'
7461 },
7462 relativeTime : {
7463 future : '%s नंतर',
7464 past : '%s पूर्वी',
7465 s : 'सेकंद',
7466 m: 'एक मिनिट',
7467 mm: '%d मिनिटे',
7468 h : 'एक तास',
7469 hh : '%d तास',
7470 d : 'एक दिवस',
7471 dd : '%d दिवस',
7472 M : 'एक महिना',
7473 MM : '%d महिने',
7474 y : 'एक वर्ष',
7475 yy : '%d वर्षे'
7476 },
7477 preparse: function (string) {
7478 return string.replace(/[१२३४५६७८९०]/g, function (match) {
7479 return mr__numberMap[match];
7480 });
7481 },
7482 postformat: function (string) {
7483 return string.replace(/\d/g, function (match) {
7484 return mr__symbolMap[match];
7485 });
7486 },
7487 meridiemParse: /रात्री|सकाळी|दुपारी|सायंकाळी/,
7488 meridiemHour : function (hour, meridiem) {
7489 if (hour === 12) {
7490 hour = 0;
7491 }
7492 if (meridiem === 'रात्री') {
7493 return hour < 4 ? hour : hour + 12;
7494 } else if (meridiem === 'सकाळी') {
7495 return hour;
7496 } else if (meridiem === 'दुपारी') {
7497 return hour >= 10 ? hour : hour + 12;
7498 } else if (meridiem === 'सायंकाळी') {
7499 return hour + 12;
7500 }
7501 },
7502 meridiem: function (hour, minute, isLower) {
7503 if (hour < 4) {
7504 return 'रात्री';
7505 } else if (hour < 10) {
7506 return 'सकाळी';
7507 } else if (hour < 17) {
7508 return 'दुपारी';
7509 } else if (hour < 20) {
7510 return 'सायंकाळी';
7511 } else {
7512 return 'रात्री';
7513 }
7514 },
7515 week : {
7516 dow : 0, // Sunday is the first day of the week.
7517 doy : 6 // The week that contains Jan 1st is the first week of the year.
7518 }
7519 });
7520
7521 //! moment.js locale configuration
7522 //! locale : Bahasa Malaysia (ms-MY)
7523 //! author : Weldan Jamili : https://github.com/weldan
7524
7525 var ms_my = _moment__default.defineLocale('ms-my', {
7526 months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),
7527 monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),
7528 weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),
7529 weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),
7530 weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),
7531 longDateFormat : {
7532 LT : 'HH.mm',
7533 LTS : 'HH.mm.ss',
7534 L : 'DD/MM/YYYY',
7535 LL : 'D MMMM YYYY',
7536 LLL : 'D MMMM YYYY [pukul] HH.mm',
7537 LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'
7538 },
7539 meridiemParse: /pagi|tengahari|petang|malam/,
7540 meridiemHour: function (hour, meridiem) {
7541 if (hour === 12) {
7542 hour = 0;
7543 }
7544 if (meridiem === 'pagi') {
7545 return hour;
7546 } else if (meridiem === 'tengahari') {
7547 return hour >= 11 ? hour : hour + 12;
7548 } else if (meridiem === 'petang' || meridiem === 'malam') {
7549 return hour + 12;
7550 }
7551 },
7552 meridiem : function (hours, minutes, isLower) {
7553 if (hours < 11) {
7554 return 'pagi';
7555 } else if (hours < 15) {
7556 return 'tengahari';
7557 } else if (hours < 19) {
7558 return 'petang';
7559 } else {
7560 return 'malam';
7561 }
7562 },
7563 calendar : {
7564 sameDay : '[Hari ini pukul] LT',
7565 nextDay : '[Esok pukul] LT',
7566 nextWeek : 'dddd [pukul] LT',
7567 lastDay : '[Kelmarin pukul] LT',
7568 lastWeek : 'dddd [lepas pukul] LT',
7569 sameElse : 'L'
7570 },
7571 relativeTime : {
7572 future : 'dalam %s',
7573 past : '%s yang lepas',
7574 s : 'beberapa saat',
7575 m : 'seminit',
7576 mm : '%d minit',
7577 h : 'sejam',
7578 hh : '%d jam',
7579 d : 'sehari',
7580 dd : '%d hari',
7581 M : 'sebulan',
7582 MM : '%d bulan',
7583 y : 'setahun',
7584 yy : '%d tahun'
7585 },
7586 week : {
7587 dow : 1, // Monday is the first day of the week.
7588 doy : 7 // The week that contains Jan 1st is the first week of the year.
7589 }
7590 });
7591
7592 //! moment.js locale configuration
7593 //! locale : Bahasa Malaysia (ms-MY)
7594 //! author : Weldan Jamili : https://github.com/weldan
7595
7596 var locale_ms = _moment__default.defineLocale('ms', {
7597 months : 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split('_'),
7598 monthsShort : 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'),
7599 weekdays : 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'),
7600 weekdaysShort : 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'),
7601 weekdaysMin : 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'),
7602 longDateFormat : {
7603 LT : 'HH.mm',
7604 LTS : 'HH.mm.ss',
7605 L : 'DD/MM/YYYY',
7606 LL : 'D MMMM YYYY',
7607 LLL : 'D MMMM YYYY [pukul] HH.mm',
7608 LLLL : 'dddd, D MMMM YYYY [pukul] HH.mm'
7609 },
7610 meridiemParse: /pagi|tengahari|petang|malam/,
7611 meridiemHour: function (hour, meridiem) {
7612 if (hour === 12) {
7613 hour = 0;
7614 }
7615 if (meridiem === 'pagi') {
7616 return hour;
7617 } else if (meridiem === 'tengahari') {
7618 return hour >= 11 ? hour : hour + 12;
7619 } else if (meridiem === 'petang' || meridiem === 'malam') {
7620 return hour + 12;
7621 }
7622 },
7623 meridiem : function (hours, minutes, isLower) {
7624 if (hours < 11) {
7625 return 'pagi';
7626 } else if (hours < 15) {
7627 return 'tengahari';
7628 } else if (hours < 19) {
7629 return 'petang';
7630 } else {
7631 return 'malam';
7632 }
7633 },
7634 calendar : {
7635 sameDay : '[Hari ini pukul] LT',
7636 nextDay : '[Esok pukul] LT',
7637 nextWeek : 'dddd [pukul] LT',
7638 lastDay : '[Kelmarin pukul] LT',
7639 lastWeek : 'dddd [lepas pukul] LT',
7640 sameElse : 'L'
7641 },
7642 relativeTime : {
7643 future : 'dalam %s',
7644 past : '%s yang lepas',
7645 s : 'beberapa saat',
7646 m : 'seminit',
7647 mm : '%d minit',
7648 h : 'sejam',
7649 hh : '%d jam',
7650 d : 'sehari',
7651 dd : '%d hari',
7652 M : 'sebulan',
7653 MM : '%d bulan',
7654 y : 'setahun',
7655 yy : '%d tahun'
7656 },
7657 week : {
7658 dow : 1, // Monday is the first day of the week.
7659 doy : 7 // The week that contains Jan 1st is the first week of the year.
7660 }
7661 });
7662
7663 //! moment.js locale configuration
7664 //! locale : Burmese (my)
7665 //! author : Squar team, mysquar.com
7666
7667 var my__symbolMap = {
7668 '1': '၁',
7669 '2': '၂',
7670 '3': '၃',
7671 '4': '၄',
7672 '5': '၅',
7673 '6': '၆',
7674 '7': '၇',
7675 '8': '၈',
7676 '9': '၉',
7677 '0': '၀'
7678 }, my__numberMap = {
7679 '၁': '1',
7680 '၂': '2',
7681 '၃': '3',
7682 '၄': '4',
7683 '၅': '5',
7684 '၆': '6',
7685 '၇': '7',
7686 '၈': '8',
7687 '၉': '9',
7688 '၀': '0'
7689 };
7690
7691 var my = _moment__default.defineLocale('my', {
7692 months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split('_'),
7693 monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'),
7694 weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split('_'),
7695 weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
7696 weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'),
7697
7698 longDateFormat: {
7699 LT: 'HH:mm',
7700 LTS: 'HH:mm:ss',
7701 L: 'DD/MM/YYYY',
7702 LL: 'D MMMM YYYY',
7703 LLL: 'D MMMM YYYY HH:mm',
7704 LLLL: 'dddd D MMMM YYYY HH:mm'
7705 },
7706 calendar: {
7707 sameDay: '[ယနေ.] LT [မှာ]',
7708 nextDay: '[မနက်ဖြန်] LT [မှာ]',
7709 nextWeek: 'dddd LT [မှာ]',
7710 lastDay: '[မနေ.က] LT [မှာ]',
7711 lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]',
7712 sameElse: 'L'
7713 },
7714 relativeTime: {
7715 future: 'လာမည့် %s မှာ',
7716 past: 'လွန်ခဲ့သော %s က',
7717 s: 'စက္ကန်.အနည်းငယ်',
7718 m: 'တစ်မိနစ်',
7719 mm: '%d မိနစ်',
7720 h: 'တစ်နာရီ',
7721 hh: '%d နာရီ',
7722 d: 'တစ်ရက်',
7723 dd: '%d ရက်',
7724 M: 'တစ်လ',
7725 MM: '%d လ',
7726 y: 'တစ်နှစ်',
7727 yy: '%d နှစ်'
7728 },
7729 preparse: function (string) {
7730 return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) {
7731 return my__numberMap[match];
7732 });
7733 },
7734 postformat: function (string) {
7735 return string.replace(/\d/g, function (match) {
7736 return my__symbolMap[match];
7737 });
7738 },
7739 week: {
7740 dow: 1, // Monday is the first day of the week.
7741 doy: 4 // The week that contains Jan 1st is the first week of the year.
7742 }
7743 });
7744
7745 //! moment.js locale configuration
7746 //! locale : norwegian bokmål (nb)
7747 //! authors : Espen Hovlandsdal : https://github.com/rexxars
7748 //! Sigurd Gartmann : https://github.com/sigurdga
7749
7750 var nb = _moment__default.defineLocale('nb', {
7751 months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
7752 monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
7753 weekdays : 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'),
7754 weekdaysShort : 'søn_man_tirs_ons_tors_fre_lør'.split('_'),
7755 weekdaysMin : 'sø_ma_ti_on_to_fr_lø'.split('_'),
7756 longDateFormat : {
7757 LT : 'H.mm',
7758 LTS : 'H.mm.ss',
7759 L : 'DD.MM.YYYY',
7760 LL : 'D. MMMM YYYY',
7761 LLL : 'D. MMMM YYYY [kl.] H.mm',
7762 LLLL : 'dddd D. MMMM YYYY [kl.] H.mm'
7763 },
7764 calendar : {
7765 sameDay: '[i dag kl.] LT',
7766 nextDay: '[i morgen kl.] LT',
7767 nextWeek: 'dddd [kl.] LT',
7768 lastDay: '[i går kl.] LT',
7769 lastWeek: '[forrige] dddd [kl.] LT',
7770 sameElse: 'L'
7771 },
7772 relativeTime : {
7773 future : 'om %s',
7774 past : 'for %s siden',
7775 s : 'noen sekunder',
7776 m : 'ett minutt',
7777 mm : '%d minutter',
7778 h : 'en time',
7779 hh : '%d timer',
7780 d : 'en dag',
7781 dd : '%d dager',
7782 M : 'en måned',
7783 MM : '%d måneder',
7784 y : 'ett år',
7785 yy : '%d år'
7786 },
7787 ordinalParse: /\d{1,2}\./,
7788 ordinal : '%d.',
7789 week : {
7790 dow : 1, // Monday is the first day of the week.
7791 doy : 4 // The week that contains Jan 4th is the first week of the year.
7792 }
7793 });
7794
7795 //! moment.js locale configuration
7796 //! locale : nepali/nepalese
7797 //! author : suvash : https://github.com/suvash
7798
7799 var ne__symbolMap = {
7800 '1': '१',
7801 '2': '२',
7802 '3': '३',
7803 '4': '४',
7804 '5': '५',
7805 '6': '६',
7806 '7': '७',
7807 '8': '८',
7808 '9': '९',
7809 '0': '०'
7810 },
7811 ne__numberMap = {
7812 '१': '1',
7813 '२': '2',
7814 '३': '3',
7815 '४': '4',
7816 '५': '5',
7817 '६': '6',
7818 '७': '7',
7819 '८': '8',
7820 '९': '9',
7821 '०': '0'
7822 };
7823
7824 var ne = _moment__default.defineLocale('ne', {
7825 months : 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split('_'),
7826 monthsShort : 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split('_'),
7827 weekdays : 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split('_'),
7828 weekdaysShort : 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'),
7829 weekdaysMin : 'आइ._सो._मङ्_बु._बि._शु._श.'.split('_'),
7830 longDateFormat : {
7831 LT : 'Aको h:mm बजे',
7832 LTS : 'Aको h:mm:ss बजे',
7833 L : 'DD/MM/YYYY',
7834 LL : 'D MMMM YYYY',
7835 LLL : 'D MMMM YYYY, Aको h:mm बजे',
7836 LLLL : 'dddd, D MMMM YYYY, Aको h:mm बजे'
7837 },
7838 preparse: function (string) {
7839 return string.replace(/[१२३४५६७८९०]/g, function (match) {
7840 return ne__numberMap[match];
7841 });
7842 },
7843 postformat: function (string) {
7844 return string.replace(/\d/g, function (match) {
7845 return ne__symbolMap[match];
7846 });
7847 },
7848 meridiemParse: /राती|बिहान|दिउँसो|बेलुका|साँझ|राती/,
7849 meridiemHour : function (hour, meridiem) {
7850 if (hour === 12) {
7851 hour = 0;
7852 }
7853 if (meridiem === 'राती') {
7854 return hour < 3 ? hour : hour + 12;
7855 } else if (meridiem === 'बिहान') {
7856 return hour;
7857 } else if (meridiem === 'दिउँसो') {
7858 return hour >= 10 ? hour : hour + 12;
7859 } else if (meridiem === 'बेलुका' || meridiem === 'साँझ') {
7860 return hour + 12;
7861 }
7862 },
7863 meridiem : function (hour, minute, isLower) {
7864 if (hour < 3) {
7865 return 'राती';
7866 } else if (hour < 10) {
7867 return 'बिहान';
7868 } else if (hour < 15) {
7869 return 'दिउँसो';
7870 } else if (hour < 18) {
7871 return 'बेलुका';
7872 } else if (hour < 20) {
7873 return 'साँझ';
7874 } else {
7875 return 'राती';
7876 }
7877 },
7878 calendar : {
7879 sameDay : '[आज] LT',
7880 nextDay : '[भोली] LT',
7881 nextWeek : '[आउँदो] dddd[,] LT',
7882 lastDay : '[हिजो] LT',
7883 lastWeek : '[गएको] dddd[,] LT',
7884 sameElse : 'L'
7885 },
7886 relativeTime : {
7887 future : '%sमा',
7888 past : '%s अगाडी',
7889 s : 'केही समय',
7890 m : 'एक मिनेट',
7891 mm : '%d मिनेट',
7892 h : 'एक घण्टा',
7893 hh : '%d घण्टा',
7894 d : 'एक दिन',
7895 dd : '%d दिन',
7896 M : 'एक महिना',
7897 MM : '%d महिना',
7898 y : 'एक बर्ष',
7899 yy : '%d बर्ष'
7900 },
7901 week : {
7902 dow : 1, // Monday is the first day of the week.
7903 doy : 7 // The week that contains Jan 1st is the first week of the year.
7904 }
7905 });
7906
7907 //! moment.js locale configuration
7908 //! locale : dutch (nl)
7909 //! author : Joris Röling : https://github.com/jjupiter
7910
7911 var nl__monthsShortWithDots = 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'),
7912 nl__monthsShortWithoutDots = 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_');
7913
7914 var nl = _moment__default.defineLocale('nl', {
7915 months : 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split('_'),
7916 monthsShort : function (m, format) {
7917 if (/-MMM-/.test(format)) {
7918 return nl__monthsShortWithoutDots[m.month()];
7919 } else {
7920 return nl__monthsShortWithDots[m.month()];
7921 }
7922 },
7923 weekdays : 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'),
7924 weekdaysShort : 'zo._ma._di._wo._do._vr._za.'.split('_'),
7925 weekdaysMin : 'Zo_Ma_Di_Wo_Do_Vr_Za'.split('_'),
7926 longDateFormat : {
7927 LT : 'HH:mm',
7928 LTS : 'HH:mm:ss',
7929 L : 'DD-MM-YYYY',
7930 LL : 'D MMMM YYYY',
7931 LLL : 'D MMMM YYYY HH:mm',
7932 LLLL : 'dddd D MMMM YYYY HH:mm'
7933 },
7934 calendar : {
7935 sameDay: '[vandaag om] LT',
7936 nextDay: '[morgen om] LT',
7937 nextWeek: 'dddd [om] LT',
7938 lastDay: '[gisteren om] LT',
7939 lastWeek: '[afgelopen] dddd [om] LT',
7940 sameElse: 'L'
7941 },
7942 relativeTime : {
7943 future : 'over %s',
7944 past : '%s geleden',
7945 s : 'een paar seconden',
7946 m : 'één minuut',
7947 mm : '%d minuten',
7948 h : 'één uur',
7949 hh : '%d uur',
7950 d : 'één dag',
7951 dd : '%d dagen',
7952 M : 'één maand',
7953 MM : '%d maanden',
7954 y : 'één jaar',
7955 yy : '%d jaar'
7956 },
7957 ordinalParse: /\d{1,2}(ste|de)/,
7958 ordinal : function (number) {
7959 return number + ((number === 1 || number === 8 || number >= 20) ? 'ste' : 'de');
7960 },
7961 week : {
7962 dow : 1, // Monday is the first day of the week.
7963 doy : 4 // The week that contains Jan 4th is the first week of the year.
7964 }
7965 });
7966
7967 //! moment.js locale configuration
7968 //! locale : norwegian nynorsk (nn)
7969 //! author : https://github.com/mechuwind
7970
7971 var nn = _moment__default.defineLocale('nn', {
7972 months : 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split('_'),
7973 monthsShort : 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'),
7974 weekdays : 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'),
7975 weekdaysShort : 'sun_mån_tys_ons_tor_fre_lau'.split('_'),
7976 weekdaysMin : 'su_må_ty_on_to_fr_lø'.split('_'),
7977 longDateFormat : {
7978 LT : 'HH:mm',
7979 LTS : 'HH:mm:ss',
7980 L : 'DD.MM.YYYY',
7981 LL : 'D MMMM YYYY',
7982 LLL : 'D MMMM YYYY HH:mm',
7983 LLLL : 'dddd D MMMM YYYY HH:mm'
7984 },
7985 calendar : {
7986 sameDay: '[I dag klokka] LT',
7987 nextDay: '[I morgon klokka] LT',
7988 nextWeek: 'dddd [klokka] LT',
7989 lastDay: '[I går klokka] LT',
7990 lastWeek: '[Føregåande] dddd [klokka] LT',
7991 sameElse: 'L'
7992 },
7993 relativeTime : {
7994 future : 'om %s',
7995 past : 'for %s sidan',
7996 s : 'nokre sekund',
7997 m : 'eit minutt',
7998 mm : '%d minutt',
7999 h : 'ein time',
8000 hh : '%d timar',
8001 d : 'ein dag',
8002 dd : '%d dagar',
8003 M : 'ein månad',
8004 MM : '%d månader',
8005 y : 'eit år',
8006 yy : '%d år'
8007 },
8008 ordinalParse: /\d{1,2}\./,
8009 ordinal : '%d.',
8010 week : {
8011 dow : 1, // Monday is the first day of the week.
8012 doy : 4 // The week that contains Jan 4th is the first week of the year.
8013 }
8014 });
8015
8016 //! moment.js locale configuration
8017 //! locale : polish (pl)
8018 //! author : Rafal Hirsz : https://github.com/evoL
8019
8020 var monthsNominative = 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split('_'),
8021 monthsSubjective = 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split('_');
8022 function pl__plural(n) {
8023 return (n % 10 < 5) && (n % 10 > 1) && ((~~(n / 10) % 10) !== 1);
8024 }
8025 function pl__translate(number, withoutSuffix, key) {
8026 var result = number + ' ';
8027 switch (key) {
8028 case 'm':
8029 return withoutSuffix ? 'minuta' : 'minutę';
8030 case 'mm':
8031 return result + (pl__plural(number) ? 'minuty' : 'minut');
8032 case 'h':
8033 return withoutSuffix ? 'godzina' : 'godzinę';
8034 case 'hh':
8035 return result + (pl__plural(number) ? 'godziny' : 'godzin');
8036 case 'MM':
8037 return result + (pl__plural(number) ? 'miesiące' : 'miesięcy');
8038 case 'yy':
8039 return result + (pl__plural(number) ? 'lata' : 'lat');
8040 }
8041 }
8042
8043 var pl = _moment__default.defineLocale('pl', {
8044 months : function (momentToFormat, format) {
8045 if (format === '') {
8046 // Hack: if format empty we know this is used to generate
8047 // RegExp by moment. Give then back both valid forms of months
8048 // in RegExp ready format.
8049 return '(' + monthsSubjective[momentToFormat.month()] + '|' + monthsNominative[momentToFormat.month()] + ')';
8050 } else if (/D MMMM/.test(format)) {
8051 return monthsSubjective[momentToFormat.month()];
8052 } else {
8053 return monthsNominative[momentToFormat.month()];
8054 }
8055 },
8056 monthsShort : 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'),
8057 weekdays : 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'),
8058 weekdaysShort : 'nie_pon_wt_śr_czw_pt_sb'.split('_'),
8059 weekdaysMin : 'N_Pn_Wt_Śr_Cz_Pt_So'.split('_'),
8060 longDateFormat : {
8061 LT : 'HH:mm',
8062 LTS : 'HH:mm:ss',
8063 L : 'DD.MM.YYYY',
8064 LL : 'D MMMM YYYY',
8065 LLL : 'D MMMM YYYY HH:mm',
8066 LLLL : 'dddd, D MMMM YYYY HH:mm'
8067 },
8068 calendar : {
8069 sameDay: '[Dziś o] LT',
8070 nextDay: '[Jutro o] LT',
8071 nextWeek: '[W] dddd [o] LT',
8072 lastDay: '[Wczoraj o] LT',
8073 lastWeek: function () {
8074 switch (this.day()) {
8075 case 0:
8076 return '[W zeszłą niedzielę o] LT';
8077 case 3:
8078 return '[W zeszłą środę o] LT';
8079 case 6:
8080 return '[W zeszłą sobotę o] LT';
8081 default:
8082 return '[W zeszły] dddd [o] LT';
8083 }
8084 },
8085 sameElse: 'L'
8086 },
8087 relativeTime : {
8088 future : 'za %s',
8089 past : '%s temu',
8090 s : 'kilka sekund',
8091 m : pl__translate,
8092 mm : pl__translate,
8093 h : pl__translate,
8094 hh : pl__translate,
8095 d : '1 dzień',
8096 dd : '%d dni',
8097 M : 'miesiąc',
8098 MM : pl__translate,
8099 y : 'rok',
8100 yy : pl__translate
8101 },
8102 ordinalParse: /\d{1,2}\./,
8103 ordinal : '%d.',
8104 week : {
8105 dow : 1, // Monday is the first day of the week.
8106 doy : 4 // The week that contains Jan 4th is the first week of the year.
8107 }
8108 });
8109
8110 //! moment.js locale configuration
8111 //! locale : brazilian portuguese (pt-br)
8112 //! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira
8113
8114 var pt_br = _moment__default.defineLocale('pt-br', {
8115 months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),
8116 monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
8117 weekdays : 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'),
8118 weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
8119 weekdaysMin : 'Dom_2ª_3ª_4ª_5ª_6ª_Sáb'.split('_'),
8120 longDateFormat : {
8121 LT : 'HH:mm',
8122 LTS : 'HH:mm:ss',
8123 L : 'DD/MM/YYYY',
8124 LL : 'D [de] MMMM [de] YYYY',
8125 LLL : 'D [de] MMMM [de] YYYY [às] HH:mm',
8126 LLLL : 'dddd, D [de] MMMM [de] YYYY [às] HH:mm'
8127 },
8128 calendar : {
8129 sameDay: '[Hoje às] LT',
8130 nextDay: '[Amanhã às] LT',
8131 nextWeek: 'dddd [às] LT',
8132 lastDay: '[Ontem às] LT',
8133 lastWeek: function () {
8134 return (this.day() === 0 || this.day() === 6) ?
8135 '[Último] dddd [às] LT' : // Saturday + Sunday
8136 '[Última] dddd [às] LT'; // Monday - Friday
8137 },
8138 sameElse: 'L'
8139 },
8140 relativeTime : {
8141 future : 'em %s',
8142 past : '%s atrás',
8143 s : 'poucos segundos',
8144 m : 'um minuto',
8145 mm : '%d minutos',
8146 h : 'uma hora',
8147 hh : '%d horas',
8148 d : 'um dia',
8149 dd : '%d dias',
8150 M : 'um mês',
8151 MM : '%d meses',
8152 y : 'um ano',
8153 yy : '%d anos'
8154 },
8155 ordinalParse: /\d{1,2}º/,
8156 ordinal : '%dº'
8157 });
8158
8159 //! moment.js locale configuration
8160 //! locale : portuguese (pt)
8161 //! author : Jefferson : https://github.com/jalex79
8162
8163 var pt = _moment__default.defineLocale('pt', {
8164 months : 'Janeiro_Fevereiro_Março_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro'.split('_'),
8165 monthsShort : 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'),
8166 weekdays : 'Domingo_Segunda-Feira_Terça-Feira_Quarta-Feira_Quinta-Feira_Sexta-Feira_Sábado'.split('_'),
8167 weekdaysShort : 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'),
8168 weekdaysMin : 'Dom_2ª_3ª_4ª_5ª_6ª_Sáb'.split('_'),
8169 longDateFormat : {
8170 LT : 'HH:mm',
8171 LTS : 'HH:mm:ss',
8172 L : 'DD/MM/YYYY',
8173 LL : 'D [de] MMMM [de] YYYY',
8174 LLL : 'D [de] MMMM [de] YYYY HH:mm',
8175 LLLL : 'dddd, D [de] MMMM [de] YYYY HH:mm'
8176 },
8177 calendar : {
8178 sameDay: '[Hoje às] LT',
8179 nextDay: '[Amanhã às] LT',
8180 nextWeek: 'dddd [às] LT',
8181 lastDay: '[Ontem às] LT',
8182 lastWeek: function () {
8183 return (this.day() === 0 || this.day() === 6) ?
8184 '[Último] dddd [às] LT' : // Saturday + Sunday
8185 '[Última] dddd [às] LT'; // Monday - Friday
8186 },
8187 sameElse: 'L'
8188 },
8189 relativeTime : {
8190 future : 'em %s',
8191 past : 'há %s',
8192 s : 'segundos',
8193 m : 'um minuto',
8194 mm : '%d minutos',
8195 h : 'uma hora',
8196 hh : '%d horas',
8197 d : 'um dia',
8198 dd : '%d dias',
8199 M : 'um mês',
8200 MM : '%d meses',
8201 y : 'um ano',
8202 yy : '%d anos'
8203 },
8204 ordinalParse: /\d{1,2}º/,
8205 ordinal : '%dº',
8206 week : {
8207 dow : 1, // Monday is the first day of the week.
8208 doy : 4 // The week that contains Jan 4th is the first week of the year.
8209 }
8210 });
8211
8212 //! moment.js locale configuration
8213 //! locale : romanian (ro)
8214 //! author : Vlad Gurdiga : https://github.com/gurdiga
8215 //! author : Valentin Agachi : https://github.com/avaly
8216
8217 function ro__relativeTimeWithPlural(number, withoutSuffix, key) {
8218 var format = {
8219 'mm': 'minute',
8220 'hh': 'ore',
8221 'dd': 'zile',
8222 'MM': 'luni',
8223 'yy': 'ani'
8224 },
8225 separator = ' ';
8226 if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) {
8227 separator = ' de ';
8228 }
8229 return number + separator + format[key];
8230 }
8231
8232 var ro = _moment__default.defineLocale('ro', {
8233 months : 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split('_'),
8234 monthsShort : 'ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split('_'),
8235 weekdays : 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'),
8236 weekdaysShort : 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'),
8237 weekdaysMin : 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'),
8238 longDateFormat : {
8239 LT : 'H:mm',
8240 LTS : 'H:mm:ss',
8241 L : 'DD.MM.YYYY',
8242 LL : 'D MMMM YYYY',
8243 LLL : 'D MMMM YYYY H:mm',
8244 LLLL : 'dddd, D MMMM YYYY H:mm'
8245 },
8246 calendar : {
8247 sameDay: '[azi la] LT',
8248 nextDay: '[mâine la] LT',
8249 nextWeek: 'dddd [la] LT',
8250 lastDay: '[ieri la] LT',
8251 lastWeek: '[fosta] dddd [la] LT',
8252 sameElse: 'L'
8253 },
8254 relativeTime : {
8255 future : 'peste %s',
8256 past : '%s în urmă',
8257 s : 'câteva secunde',
8258 m : 'un minut',
8259 mm : ro__relativeTimeWithPlural,
8260 h : 'o oră',
8261 hh : ro__relativeTimeWithPlural,
8262 d : 'o zi',
8263 dd : ro__relativeTimeWithPlural,
8264 M : 'o lună',
8265 MM : ro__relativeTimeWithPlural,
8266 y : 'un an',
8267 yy : ro__relativeTimeWithPlural
8268 },
8269 week : {
8270 dow : 1, // Monday is the first day of the week.
8271 doy : 7 // The week that contains Jan 1st is the first week of the year.
8272 }
8273 });
8274
8275 //! moment.js locale configuration
8276 //! locale : russian (ru)
8277 //! author : Viktorminator : https://github.com/Viktorminator
8278 //! Author : Menelion Elensúle : https://github.com/Oire
8279
8280 function ru__plural(word, num) {
8281 var forms = word.split('_');
8282 return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
8283 }
8284 function ru__relativeTimeWithPlural(number, withoutSuffix, key) {
8285 var format = {
8286 'mm': withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут',
8287 'hh': 'час_часа_часов',
8288 'dd': 'день_дня_дней',
8289 'MM': 'месяц_месяца_месяцев',
8290 'yy': 'год_года_лет'
8291 };
8292 if (key === 'm') {
8293 return withoutSuffix ? 'минута' : 'минуту';
8294 }
8295 else {
8296 return number + ' ' + ru__plural(format[key], +number);
8297 }
8298 }
8299 function ru__monthsCaseReplace(m, format) {
8300 var months = {
8301 'nominative': 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
8302 'accusative': 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split('_')
8303 },
8304 nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
8305 'accusative' :
8306 'nominative';
8307 return months[nounCase][m.month()];
8308 }
8309 function ru__monthsShortCaseReplace(m, format) {
8310 var monthsShort = {
8311 'nominative': 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split('_'),
8312 'accusative': 'янв_фев_мар_апр_мая_июня_июля_авг_сен_окт_ноя_дек'.split('_')
8313 },
8314 nounCase = (/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/).test(format) ?
8315 'accusative' :
8316 'nominative';
8317 return monthsShort[nounCase][m.month()];
8318 }
8319 function ru__weekdaysCaseReplace(m, format) {
8320 var weekdays = {
8321 'nominative': 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split('_'),
8322 'accusative': 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split('_')
8323 },
8324 nounCase = (/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/).test(format) ?
8325 'accusative' :
8326 'nominative';
8327 return weekdays[nounCase][m.day()];
8328 }
8329
8330 var ru = _moment__default.defineLocale('ru', {
8331 months : ru__monthsCaseReplace,
8332 monthsShort : ru__monthsShortCaseReplace,
8333 weekdays : ru__weekdaysCaseReplace,
8334 weekdaysShort : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
8335 weekdaysMin : 'вс_пн_вт_ср_чт_пт_сб'.split('_'),
8336 monthsParse : [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[й|я]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i],
8337 longDateFormat : {
8338 LT : 'HH:mm',
8339 LTS : 'HH:mm:ss',
8340 L : 'DD.MM.YYYY',
8341 LL : 'D MMMM YYYY г.',
8342 LLL : 'D MMMM YYYY г., HH:mm',
8343 LLLL : 'dddd, D MMMM YYYY г., HH:mm'
8344 },
8345 calendar : {
8346 sameDay: '[Сегодня в] LT',
8347 nextDay: '[Завтра в] LT',
8348 lastDay: '[Вчера в] LT',
8349 nextWeek: function () {
8350 return this.day() === 2 ? '[Во] dddd [в] LT' : '[В] dddd [в] LT';
8351 },
8352 lastWeek: function (now) {
8353 if (now.week() !== this.week()) {
8354 switch (this.day()) {
8355 case 0:
8356 return '[В прошлое] dddd [в] LT';
8357 case 1:
8358 case 2:
8359 case 4:
8360 return '[В прошлый] dddd [в] LT';
8361 case 3:
8362 case 5:
8363 case 6:
8364 return '[В прошлую] dddd [в] LT';
8365 }
8366 } else {
8367 if (this.day() === 2) {
8368 return '[Во] dddd [в] LT';
8369 } else {
8370 return '[В] dddd [в] LT';
8371 }
8372 }
8373 },
8374 sameElse: 'L'
8375 },
8376 relativeTime : {
8377 future : 'через %s',
8378 past : '%s назад',
8379 s : 'несколько секунд',
8380 m : ru__relativeTimeWithPlural,
8381 mm : ru__relativeTimeWithPlural,
8382 h : 'час',
8383 hh : ru__relativeTimeWithPlural,
8384 d : 'день',
8385 dd : ru__relativeTimeWithPlural,
8386 M : 'месяц',
8387 MM : ru__relativeTimeWithPlural,
8388 y : 'год',
8389 yy : ru__relativeTimeWithPlural
8390 },
8391 meridiemParse: /ночи|утра|дня|вечера/i,
8392 isPM : function (input) {
8393 return /^(дня|вечера)$/.test(input);
8394 },
8395 meridiem : function (hour, minute, isLower) {
8396 if (hour < 4) {
8397 return 'ночи';
8398 } else if (hour < 12) {
8399 return 'утра';
8400 } else if (hour < 17) {
8401 return 'дня';
8402 } else {
8403 return 'вечера';
8404 }
8405 },
8406 ordinalParse: /\d{1,2}-(й|го|я)/,
8407 ordinal: function (number, period) {
8408 switch (period) {
8409 case 'M':
8410 case 'd':
8411 case 'DDD':
8412 return number + '-й';
8413 case 'D':
8414 return number + '-го';
8415 case 'w':
8416 case 'W':
8417 return number + '-я';
8418 default:
8419 return number;
8420 }
8421 },
8422 week : {
8423 dow : 1, // Monday is the first day of the week.
8424 doy : 7 // The week that contains Jan 1st is the first week of the year.
8425 }
8426 });
8427
8428 //! moment.js locale configuration
8429 //! locale : Sinhalese (si)
8430 //! author : Sampath Sitinamaluwa : https://github.com/sampathsris
8431
8432 var si = _moment__default.defineLocale('si', {
8433 months : 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split('_'),
8434 monthsShort : 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split('_'),
8435 weekdays : 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split('_'),
8436 weekdaysShort : 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'),
8437 weekdaysMin : 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'),
8438 longDateFormat : {
8439 LT : 'a h:mm',
8440 LTS : 'a h:mm:ss',
8441 L : 'YYYY/MM/DD',
8442 LL : 'YYYY MMMM D',
8443 LLL : 'YYYY MMMM D, a h:mm',
8444 LLLL : 'YYYY MMMM D [වැනි] dddd, a h:mm:ss'
8445 },
8446 calendar : {
8447 sameDay : '[අද] LT[ට]',
8448 nextDay : '[හෙට] LT[ට]',
8449 nextWeek : 'dddd LT[ට]',
8450 lastDay : '[ඊයේ] LT[ට]',
8451 lastWeek : '[පසුගිය] dddd LT[ට]',
8452 sameElse : 'L'
8453 },
8454 relativeTime : {
8455 future : '%sකින්',
8456 past : '%sකට පෙර',
8457 s : 'තත්පර කිහිපය',
8458 m : 'මිනිත්තුව',
8459 mm : 'මිනිත්තු %d',
8460 h : 'පැය',
8461 hh : 'පැය %d',
8462 d : 'දිනය',
8463 dd : 'දින %d',
8464 M : 'මාසය',
8465 MM : 'මාස %d',
8466 y : 'වසර',
8467 yy : 'වසර %d'
8468 },
8469 ordinalParse: /\d{1,2} වැනි/,
8470 ordinal : function (number) {
8471 return number + ' වැනි';
8472 },
8473 meridiem : function (hours, minutes, isLower) {
8474 if (hours > 11) {
8475 return isLower ? 'ප.ව.' : 'පස් වරු';
8476 } else {
8477 return isLower ? 'පෙ.ව.' : 'පෙර වරු';
8478 }
8479 }
8480 });
8481
8482 //! moment.js locale configuration
8483 //! locale : slovak (sk)
8484 //! author : Martin Minka : https://github.com/k2s
8485 //! based on work of petrbela : https://github.com/petrbela
8486
8487 var sk__months = 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split('_'),
8488 sk__monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_');
8489 function sk__plural(n) {
8490 return (n > 1) && (n < 5);
8491 }
8492 function sk__translate(number, withoutSuffix, key, isFuture) {
8493 var result = number + ' ';
8494 switch (key) {
8495 case 's': // a few seconds / in a few seconds / a few seconds ago
8496 return (withoutSuffix || isFuture) ? 'pár sekúnd' : 'pár sekundami';
8497 case 'm': // a minute / in a minute / a minute ago
8498 return withoutSuffix ? 'minúta' : (isFuture ? 'minútu' : 'minútou');
8499 case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago
8500 if (withoutSuffix || isFuture) {
8501 return result + (sk__plural(number) ? 'minúty' : 'minút');
8502 } else {
8503 return result + 'minútami';
8504 }
8505 break;
8506 case 'h': // an hour / in an hour / an hour ago
8507 return withoutSuffix ? 'hodina' : (isFuture ? 'hodinu' : 'hodinou');
8508 case 'hh': // 9 hours / in 9 hours / 9 hours ago
8509 if (withoutSuffix || isFuture) {
8510 return result + (sk__plural(number) ? 'hodiny' : 'hodín');
8511 } else {
8512 return result + 'hodinami';
8513 }
8514 break;
8515 case 'd': // a day / in a day / a day ago
8516 return (withoutSuffix || isFuture) ? 'deň' : 'dňom';
8517 case 'dd': // 9 days / in 9 days / 9 days ago
8518 if (withoutSuffix || isFuture) {
8519 return result + (sk__plural(number) ? 'dni' : 'dní');
8520 } else {
8521 return result + 'dňami';
8522 }
8523 break;
8524 case 'M': // a month / in a month / a month ago
8525 return (withoutSuffix || isFuture) ? 'mesiac' : 'mesiacom';
8526 case 'MM': // 9 months / in 9 months / 9 months ago
8527 if (withoutSuffix || isFuture) {
8528 return result + (sk__plural(number) ? 'mesiace' : 'mesiacov');
8529 } else {
8530 return result + 'mesiacmi';
8531 }
8532 break;
8533 case 'y': // a year / in a year / a year ago
8534 return (withoutSuffix || isFuture) ? 'rok' : 'rokom';
8535 case 'yy': // 9 years / in 9 years / 9 years ago
8536 if (withoutSuffix || isFuture) {
8537 return result + (sk__plural(number) ? 'roky' : 'rokov');
8538 } else {
8539 return result + 'rokmi';
8540 }
8541 break;
8542 }
8543 }
8544
8545 var sk = _moment__default.defineLocale('sk', {
8546 months : sk__months,
8547 monthsShort : sk__monthsShort,
8548 monthsParse : (function (months, monthsShort) {
8549 var i, _monthsParse = [];
8550 for (i = 0; i < 12; i++) {
8551 // use custom parser to solve problem with July (červenec)
8552 _monthsParse[i] = new RegExp('^' + months[i] + '$|^' + monthsShort[i] + '$', 'i');
8553 }
8554 return _monthsParse;
8555 }(sk__months, sk__monthsShort)),
8556 weekdays : 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'),
8557 weekdaysShort : 'ne_po_ut_st_št_pi_so'.split('_'),
8558 weekdaysMin : 'ne_po_ut_st_št_pi_so'.split('_'),
8559 longDateFormat : {
8560 LT: 'H:mm',
8561 LTS : 'H:mm:ss',
8562 L : 'DD.MM.YYYY',
8563 LL : 'D. MMMM YYYY',
8564 LLL : 'D. MMMM YYYY H:mm',
8565 LLLL : 'dddd D. MMMM YYYY H:mm'
8566 },
8567 calendar : {
8568 sameDay: '[dnes o] LT',
8569 nextDay: '[zajtra o] LT',
8570 nextWeek: function () {
8571 switch (this.day()) {
8572 case 0:
8573 return '[v nedeľu o] LT';
8574 case 1:
8575 case 2:
8576 return '[v] dddd [o] LT';
8577 case 3:
8578 return '[v stredu o] LT';
8579 case 4:
8580 return '[vo štvrtok o] LT';
8581 case 5:
8582 return '[v piatok o] LT';
8583 case 6:
8584 return '[v sobotu o] LT';
8585 }
8586 },
8587 lastDay: '[včera o] LT',
8588 lastWeek: function () {
8589 switch (this.day()) {
8590 case 0:
8591 return '[minulú nedeľu o] LT';
8592 case 1:
8593 case 2:
8594 return '[minulý] dddd [o] LT';
8595 case 3:
8596 return '[minulú stredu o] LT';
8597 case 4:
8598 case 5:
8599 return '[minulý] dddd [o] LT';
8600 case 6:
8601 return '[minulú sobotu o] LT';
8602 }
8603 },
8604 sameElse: 'L'
8605 },
8606 relativeTime : {
8607 future : 'za %s',
8608 past : 'pred %s',
8609 s : sk__translate,
8610 m : sk__translate,
8611 mm : sk__translate,
8612 h : sk__translate,
8613 hh : sk__translate,
8614 d : sk__translate,
8615 dd : sk__translate,
8616 M : sk__translate,
8617 MM : sk__translate,
8618 y : sk__translate,
8619 yy : sk__translate
8620 },
8621 ordinalParse: /\d{1,2}\./,
8622 ordinal : '%d.',
8623 week : {
8624 dow : 1, // Monday is the first day of the week.
8625 doy : 4 // The week that contains Jan 4th is the first week of the year.
8626 }
8627 });
8628
8629 //! moment.js locale configuration
8630 //! locale : slovenian (sl)
8631 //! author : Robert Sedovšek : https://github.com/sedovsek
8632
8633 function sl__processRelativeTime(number, withoutSuffix, key, isFuture) {
8634 var result = number + ' ';
8635 switch (key) {
8636 case 's':
8637 return withoutSuffix || isFuture ? 'nekaj sekund' : 'nekaj sekundami';
8638 case 'm':
8639 return withoutSuffix ? 'ena minuta' : 'eno minuto';
8640 case 'mm':
8641 if (number === 1) {
8642 result += withoutSuffix ? 'minuta' : 'minuto';
8643 } else if (number === 2) {
8644 result += withoutSuffix || isFuture ? 'minuti' : 'minutama';
8645 } else if (number < 5) {
8646 result += withoutSuffix || isFuture ? 'minute' : 'minutami';
8647 } else {
8648 result += withoutSuffix || isFuture ? 'minut' : 'minutami';
8649 }
8650 return result;
8651 case 'h':
8652 return withoutSuffix ? 'ena ura' : 'eno uro';
8653 case 'hh':
8654 if (number === 1) {
8655 result += withoutSuffix ? 'ura' : 'uro';
8656 } else if (number === 2) {
8657 result += withoutSuffix || isFuture ? 'uri' : 'urama';
8658 } else if (number < 5) {
8659 result += withoutSuffix || isFuture ? 'ure' : 'urami';
8660 } else {
8661 result += withoutSuffix || isFuture ? 'ur' : 'urami';
8662 }
8663 return result;
8664 case 'd':
8665 return withoutSuffix || isFuture ? 'en dan' : 'enim dnem';
8666 case 'dd':
8667 if (number === 1) {
8668 result += withoutSuffix || isFuture ? 'dan' : 'dnem';
8669 } else if (number === 2) {
8670 result += withoutSuffix || isFuture ? 'dni' : 'dnevoma';
8671 } else {
8672 result += withoutSuffix || isFuture ? 'dni' : 'dnevi';
8673 }
8674 return result;
8675 case 'M':
8676 return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem';
8677 case 'MM':
8678 if (number === 1) {
8679 result += withoutSuffix || isFuture ? 'mesec' : 'mesecem';
8680 } else if (number === 2) {
8681 result += withoutSuffix || isFuture ? 'meseca' : 'mesecema';
8682 } else if (number < 5) {
8683 result += withoutSuffix || isFuture ? 'mesece' : 'meseci';
8684 } else {
8685 result += withoutSuffix || isFuture ? 'mesecev' : 'meseci';
8686 }
8687 return result;
8688 case 'y':
8689 return withoutSuffix || isFuture ? 'eno leto' : 'enim letom';
8690 case 'yy':
8691 if (number === 1) {
8692 result += withoutSuffix || isFuture ? 'leto' : 'letom';
8693 } else if (number === 2) {
8694 result += withoutSuffix || isFuture ? 'leti' : 'letoma';
8695 } else if (number < 5) {
8696 result += withoutSuffix || isFuture ? 'leta' : 'leti';
8697 } else {
8698 result += withoutSuffix || isFuture ? 'let' : 'leti';
8699 }
8700 return result;
8701 }
8702 }
8703
8704 var sl = _moment__default.defineLocale('sl', {
8705 months : 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split('_'),
8706 monthsShort : 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split('_'),
8707 weekdays : 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'),
8708 weekdaysShort : 'ned._pon._tor._sre._čet._pet._sob.'.split('_'),
8709 weekdaysMin : 'ne_po_to_sr_če_pe_so'.split('_'),
8710 longDateFormat : {
8711 LT : 'H:mm',
8712 LTS : 'H:mm:ss',
8713 L : 'DD. MM. YYYY',
8714 LL : 'D. MMMM YYYY',
8715 LLL : 'D. MMMM YYYY H:mm',
8716 LLLL : 'dddd, D. MMMM YYYY H:mm'
8717 },
8718 calendar : {
8719 sameDay : '[danes ob] LT',
8720 nextDay : '[jutri ob] LT',
8721
8722 nextWeek : function () {
8723 switch (this.day()) {
8724 case 0:
8725 return '[v] [nedeljo] [ob] LT';
8726 case 3:
8727 return '[v] [sredo] [ob] LT';
8728 case 6:
8729 return '[v] [soboto] [ob] LT';
8730 case 1:
8731 case 2:
8732 case 4:
8733 case 5:
8734 return '[v] dddd [ob] LT';
8735 }
8736 },
8737 lastDay : '[včeraj ob] LT',
8738 lastWeek : function () {
8739 switch (this.day()) {
8740 case 0:
8741 return '[prejšnjo] [nedeljo] [ob] LT';
8742 case 3:
8743 return '[prejšnjo] [sredo] [ob] LT';
8744 case 6:
8745 return '[prejšnjo] [soboto] [ob] LT';
8746 case 1:
8747 case 2:
8748 case 4:
8749 case 5:
8750 return '[prejšnji] dddd [ob] LT';
8751 }
8752 },
8753 sameElse : 'L'
8754 },
8755 relativeTime : {
8756 future : 'čez %s',
8757 past : 'pred %s',
8758 s : sl__processRelativeTime,
8759 m : sl__processRelativeTime,
8760 mm : sl__processRelativeTime,
8761 h : sl__processRelativeTime,
8762 hh : sl__processRelativeTime,
8763 d : sl__processRelativeTime,
8764 dd : sl__processRelativeTime,
8765 M : sl__processRelativeTime,
8766 MM : sl__processRelativeTime,
8767 y : sl__processRelativeTime,
8768 yy : sl__processRelativeTime
8769 },
8770 ordinalParse: /\d{1,2}\./,
8771 ordinal : '%d.',
8772 week : {
8773 dow : 1, // Monday is the first day of the week.
8774 doy : 7 // The week that contains Jan 1st is the first week of the year.
8775 }
8776 });
8777
8778 //! moment.js locale configuration
8779 //! locale : Albanian (sq)
8780 //! author : Flakërim Ismani : https://github.com/flakerimi
8781 //! author: Menelion Elensúle: https://github.com/Oire (tests)
8782 //! author : Oerd Cukalla : https://github.com/oerd (fixes)
8783
8784 var sq = _moment__default.defineLocale('sq', {
8785 months : 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split('_'),
8786 monthsShort : 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'),
8787 weekdays : 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split('_'),
8788 weekdaysShort : 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'),
8789 weekdaysMin : 'D_H_Ma_Më_E_P_Sh'.split('_'),
8790 meridiemParse: /PD|MD/,
8791 isPM: function (input) {
8792 return input.charAt(0) === 'M';
8793 },
8794 meridiem : function (hours, minutes, isLower) {
8795 return hours < 12 ? 'PD' : 'MD';
8796 },
8797 longDateFormat : {
8798 LT : 'HH:mm',
8799 LTS : 'HH:mm:ss',
8800 L : 'DD/MM/YYYY',
8801 LL : 'D MMMM YYYY',
8802 LLL : 'D MMMM YYYY HH:mm',
8803 LLLL : 'dddd, D MMMM YYYY HH:mm'
8804 },
8805 calendar : {
8806 sameDay : '[Sot në] LT',
8807 nextDay : '[Nesër në] LT',
8808 nextWeek : 'dddd [në] LT',
8809 lastDay : '[Dje në] LT',
8810 lastWeek : 'dddd [e kaluar në] LT',
8811 sameElse : 'L'
8812 },
8813 relativeTime : {
8814 future : 'në %s',
8815 past : '%s më parë',
8816 s : 'disa sekonda',
8817 m : 'një minutë',
8818 mm : '%d minuta',
8819 h : 'një orë',
8820 hh : '%d orë',
8821 d : 'një ditë',
8822 dd : '%d ditë',
8823 M : 'një muaj',
8824 MM : '%d muaj',
8825 y : 'një vit',
8826 yy : '%d vite'
8827 },
8828 ordinalParse: /\d{1,2}\./,
8829 ordinal : '%d.',
8830 week : {
8831 dow : 1, // Monday is the first day of the week.
8832 doy : 4 // The week that contains Jan 4th is the first week of the year.
8833 }
8834 });
8835
8836 //! moment.js locale configuration
8837 //! locale : Serbian-cyrillic (sr-cyrl)
8838 //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
8839
8840 var sr_cyrl__translator = {
8841 words: { //Different grammatical cases
8842 m: ['један минут', 'једне минуте'],
8843 mm: ['минут', 'минуте', 'минута'],
8844 h: ['један сат', 'једног сата'],
8845 hh: ['сат', 'сата', 'сати'],
8846 dd: ['дан', 'дана', 'дана'],
8847 MM: ['месец', 'месеца', 'месеци'],
8848 yy: ['година', 'године', 'година']
8849 },
8850 correctGrammaticalCase: function (number, wordKey) {
8851 return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
8852 },
8853 translate: function (number, withoutSuffix, key) {
8854 var wordKey = sr_cyrl__translator.words[key];
8855 if (key.length === 1) {
8856 return withoutSuffix ? wordKey[0] : wordKey[1];
8857 } else {
8858 return number + ' ' + sr_cyrl__translator.correctGrammaticalCase(number, wordKey);
8859 }
8860 }
8861 };
8862
8863 var sr_cyrl = _moment__default.defineLocale('sr-cyrl', {
8864 months: ['јануар', 'фебруар', 'март', 'април', 'мај', 'јун', 'јул', 'август', 'септембар', 'октобар', 'новембар', 'децембар'],
8865 monthsShort: ['јан.', 'феб.', 'мар.', 'апр.', 'мај', 'јун', 'јул', 'авг.', 'сеп.', 'окт.', 'нов.', 'дец.'],
8866 weekdays: ['недеља', 'понедељак', 'уторак', 'среда', 'четвртак', 'петак', 'субота'],
8867 weekdaysShort: ['нед.', 'пон.', 'уто.', 'сре.', 'чет.', 'пет.', 'суб.'],
8868 weekdaysMin: ['не', 'по', 'ут', 'ср', 'че', 'пе', 'су'],
8869 longDateFormat: {
8870 LT: 'H:mm',
8871 LTS : 'H:mm:ss',
8872 L: 'DD. MM. YYYY',
8873 LL: 'D. MMMM YYYY',
8874 LLL: 'D. MMMM YYYY H:mm',
8875 LLLL: 'dddd, D. MMMM YYYY H:mm'
8876 },
8877 calendar: {
8878 sameDay: '[данас у] LT',
8879 nextDay: '[сутра у] LT',
8880 nextWeek: function () {
8881 switch (this.day()) {
8882 case 0:
8883 return '[у] [недељу] [у] LT';
8884 case 3:
8885 return '[у] [среду] [у] LT';
8886 case 6:
8887 return '[у] [суботу] [у] LT';
8888 case 1:
8889 case 2:
8890 case 4:
8891 case 5:
8892 return '[у] dddd [у] LT';
8893 }
8894 },
8895 lastDay : '[јуче у] LT',
8896 lastWeek : function () {
8897 var lastWeekDays = [
8898 '[прошле] [недеље] [у] LT',
8899 '[прошлог] [понедељка] [у] LT',
8900 '[прошлог] [уторка] [у] LT',
8901 '[прошле] [среде] [у] LT',
8902 '[прошлог] [четвртка] [у] LT',
8903 '[прошлог] [петка] [у] LT',
8904 '[прошле] [суботе] [у] LT'
8905 ];
8906 return lastWeekDays[this.day()];
8907 },
8908 sameElse : 'L'
8909 },
8910 relativeTime : {
8911 future : 'за %s',
8912 past : 'пре %s',
8913 s : 'неколико секунди',
8914 m : sr_cyrl__translator.translate,
8915 mm : sr_cyrl__translator.translate,
8916 h : sr_cyrl__translator.translate,
8917 hh : sr_cyrl__translator.translate,
8918 d : 'дан',
8919 dd : sr_cyrl__translator.translate,
8920 M : 'месец',
8921 MM : sr_cyrl__translator.translate,
8922 y : 'годину',
8923 yy : sr_cyrl__translator.translate
8924 },
8925 ordinalParse: /\d{1,2}\./,
8926 ordinal : '%d.',
8927 week : {
8928 dow : 1, // Monday is the first day of the week.
8929 doy : 7 // The week that contains Jan 1st is the first week of the year.
8930 }
8931 });
8932
8933 //! moment.js locale configuration
8934 //! locale : Serbian-latin (sr)
8935 //! author : Milan Janačković<milanjanackovic@gmail.com> : https://github.com/milan-j
8936
8937 var sr__translator = {
8938 words: { //Different grammatical cases
8939 m: ['jedan minut', 'jedne minute'],
8940 mm: ['minut', 'minute', 'minuta'],
8941 h: ['jedan sat', 'jednog sata'],
8942 hh: ['sat', 'sata', 'sati'],
8943 dd: ['dan', 'dana', 'dana'],
8944 MM: ['mesec', 'meseca', 'meseci'],
8945 yy: ['godina', 'godine', 'godina']
8946 },
8947 correctGrammaticalCase: function (number, wordKey) {
8948 return number === 1 ? wordKey[0] : (number >= 2 && number <= 4 ? wordKey[1] : wordKey[2]);
8949 },
8950 translate: function (number, withoutSuffix, key) {
8951 var wordKey = sr__translator.words[key];
8952 if (key.length === 1) {
8953 return withoutSuffix ? wordKey[0] : wordKey[1];
8954 } else {
8955 return number + ' ' + sr__translator.correctGrammaticalCase(number, wordKey);
8956 }
8957 }
8958 };
8959
8960 var sr = _moment__default.defineLocale('sr', {
8961 months: ['januar', 'februar', 'mart', 'april', 'maj', 'jun', 'jul', 'avgust', 'septembar', 'oktobar', 'novembar', 'decembar'],
8962 monthsShort: ['jan.', 'feb.', 'mar.', 'apr.', 'maj', 'jun', 'jul', 'avg.', 'sep.', 'okt.', 'nov.', 'dec.'],
8963 weekdays: ['nedelja', 'ponedeljak', 'utorak', 'sreda', 'četvrtak', 'petak', 'subota'],
8964 weekdaysShort: ['ned.', 'pon.', 'uto.', 'sre.', 'čet.', 'pet.', 'sub.'],
8965 weekdaysMin: ['ne', 'po', 'ut', 'sr', 'če', 'pe', 'su'],
8966 longDateFormat: {
8967 LT: 'H:mm',
8968 LTS : 'H:mm:ss',
8969 L: 'DD. MM. YYYY',
8970 LL: 'D. MMMM YYYY',
8971 LLL: 'D. MMMM YYYY H:mm',
8972 LLLL: 'dddd, D. MMMM YYYY H:mm'
8973 },
8974 calendar: {
8975 sameDay: '[danas u] LT',
8976 nextDay: '[sutra u] LT',
8977 nextWeek: function () {
8978 switch (this.day()) {
8979 case 0:
8980 return '[u] [nedelju] [u] LT';
8981 case 3:
8982 return '[u] [sredu] [u] LT';
8983 case 6:
8984 return '[u] [subotu] [u] LT';
8985 case 1:
8986 case 2:
8987 case 4:
8988 case 5:
8989 return '[u] dddd [u] LT';
8990 }
8991 },
8992 lastDay : '[juče u] LT',
8993 lastWeek : function () {
8994 var lastWeekDays = [
8995 '[prošle] [nedelje] [u] LT',
8996 '[prošlog] [ponedeljka] [u] LT',
8997 '[prošlog] [utorka] [u] LT',
8998 '[prošle] [srede] [u] LT',
8999 '[prošlog] [četvrtka] [u] LT',
9000 '[prošlog] [petka] [u] LT',
9001 '[prošle] [subote] [u] LT'
9002 ];
9003 return lastWeekDays[this.day()];
9004 },
9005 sameElse : 'L'
9006 },
9007 relativeTime : {
9008 future : 'za %s',
9009 past : 'pre %s',
9010 s : 'nekoliko sekundi',
9011 m : sr__translator.translate,
9012 mm : sr__translator.translate,
9013 h : sr__translator.translate,
9014 hh : sr__translator.translate,
9015 d : 'dan',
9016 dd : sr__translator.translate,
9017 M : 'mesec',
9018 MM : sr__translator.translate,
9019 y : 'godinu',
9020 yy : sr__translator.translate
9021 },
9022 ordinalParse: /\d{1,2}\./,
9023 ordinal : '%d.',
9024 week : {
9025 dow : 1, // Monday is the first day of the week.
9026 doy : 7 // The week that contains Jan 1st is the first week of the year.
9027 }
9028 });
9029
9030 //! moment.js locale configuration
9031 //! locale : swedish (sv)
9032 //! author : Jens Alm : https://github.com/ulmus
9033
9034 var sv = _moment__default.defineLocale('sv', {
9035 months : 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split('_'),
9036 monthsShort : 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'),
9037 weekdays : 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'),
9038 weekdaysShort : 'sön_mån_tis_ons_tor_fre_lör'.split('_'),
9039 weekdaysMin : 'sö_må_ti_on_to_fr_lö'.split('_'),
9040 longDateFormat : {
9041 LT : 'HH:mm',
9042 LTS : 'HH:mm:ss',
9043 L : 'YYYY-MM-DD',
9044 LL : 'D MMMM YYYY',
9045 LLL : 'D MMMM YYYY HH:mm',
9046 LLLL : 'dddd D MMMM YYYY HH:mm'
9047 },
9048 calendar : {
9049 sameDay: '[Idag] LT',
9050 nextDay: '[Imorgon] LT',
9051 lastDay: '[Igår] LT',
9052 nextWeek: '[På] dddd LT',
9053 lastWeek: '[I] dddd[s] LT',
9054 sameElse: 'L'
9055 },
9056 relativeTime : {
9057 future : 'om %s',
9058 past : 'för %s sedan',
9059 s : 'några sekunder',
9060 m : 'en minut',
9061 mm : '%d minuter',
9062 h : 'en timme',
9063 hh : '%d timmar',
9064 d : 'en dag',
9065 dd : '%d dagar',
9066 M : 'en månad',
9067 MM : '%d månader',
9068 y : 'ett år',
9069 yy : '%d år'
9070 },
9071 ordinalParse: /\d{1,2}(e|a)/,
9072 ordinal : function (number) {
9073 var b = number % 10,
9074 output = (~~(number % 100 / 10) === 1) ? 'e' :
9075 (b === 1) ? 'a' :
9076 (b === 2) ? 'a' :
9077 (b === 3) ? 'e' : 'e';
9078 return number + output;
9079 },
9080 week : {
9081 dow : 1, // Monday is the first day of the week.
9082 doy : 4 // The week that contains Jan 4th is the first week of the year.
9083 }
9084 });
9085
9086 //! moment.js locale configuration
9087 //! locale : tamil (ta)
9088 //! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404
9089
9090 var ta = _moment__default.defineLocale('ta', {
9091 months : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),
9092 monthsShort : 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split('_'),
9093 weekdays : 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split('_'),
9094 weekdaysShort : 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split('_'),
9095 weekdaysMin : 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'),
9096 longDateFormat : {
9097 LT : 'HH:mm',
9098 LTS : 'HH:mm:ss',
9099 L : 'DD/MM/YYYY',
9100 LL : 'D MMMM YYYY',
9101 LLL : 'D MMMM YYYY, HH:mm',
9102 LLLL : 'dddd, D MMMM YYYY, HH:mm'
9103 },
9104 calendar : {
9105 sameDay : '[இன்று] LT',
9106 nextDay : '[நாளை] LT',
9107 nextWeek : 'dddd, LT',
9108 lastDay : '[நேற்று] LT',
9109 lastWeek : '[கடந்த வாரம்] dddd, LT',
9110 sameElse : 'L'
9111 },
9112 relativeTime : {
9113 future : '%s இல்',
9114 past : '%s முன்',
9115 s : 'ஒரு சில விநாடிகள்',
9116 m : 'ஒரு நிமிடம்',
9117 mm : '%d நிமிடங்கள்',
9118 h : 'ஒரு மணி நேரம்',
9119 hh : '%d மணி நேரம்',
9120 d : 'ஒரு நாள்',
9121 dd : '%d நாட்கள்',
9122 M : 'ஒரு மாதம்',
9123 MM : '%d மாதங்கள்',
9124 y : 'ஒரு வருடம்',
9125 yy : '%d ஆண்டுகள்'
9126 },
9127 ordinalParse: /\d{1,2}வது/,
9128 ordinal : function (number) {
9129 return number + 'வது';
9130 },
9131 // refer http://ta.wikipedia.org/s/1er1
9132 meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,
9133 meridiem : function (hour, minute, isLower) {
9134 if (hour < 2) {
9135 return ' யாமம்';
9136 } else if (hour < 6) {
9137 return ' வைகறை'; // வைகறை
9138 } else if (hour < 10) {
9139 return ' காலை'; // காலை
9140 } else if (hour < 14) {
9141 return ' நண்பகல்'; // நண்பகல்
9142 } else if (hour < 18) {
9143 return ' எற்பாடு'; // எற்பாடு
9144 } else if (hour < 22) {
9145 return ' மாலை'; // மாலை
9146 } else {
9147 return ' யாமம்';
9148 }
9149 },
9150 meridiemHour : function (hour, meridiem) {
9151 if (hour === 12) {
9152 hour = 0;
9153 }
9154 if (meridiem === 'யாமம்') {
9155 return hour < 2 ? hour : hour + 12;
9156 } else if (meridiem === 'வைகறை' || meridiem === 'காலை') {
9157 return hour;
9158 } else if (meridiem === 'நண்பகல்') {
9159 return hour >= 10 ? hour : hour + 12;
9160 } else {
9161 return hour + 12;
9162 }
9163 },
9164 week : {
9165 dow : 0, // Sunday is the first day of the week.
9166 doy : 6 // The week that contains Jan 1st is the first week of the year.
9167 }
9168 });
9169
9170 //! moment.js locale configuration
9171 //! locale : thai (th)
9172 //! author : Kridsada Thanabulpong : https://github.com/sirn
9173
9174 var th = _moment__default.defineLocale('th', {
9175 months : 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split('_'),
9176 monthsShort : 'มกรา_กุมภา_มีนา_เมษา_พฤษภา_มิถุนา_กรกฎา_สิงหา_กันยา_ตุลา_พฤศจิกา_ธันวา'.split('_'),
9177 weekdays : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'),
9178 weekdaysShort : 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference
9179 weekdaysMin : 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'),
9180 longDateFormat : {
9181 LT : 'H นาฬิกา m นาที',
9182 LTS : 'H นาฬิกา m นาที s วินาที',
9183 L : 'YYYY/MM/DD',
9184 LL : 'D MMMM YYYY',
9185 LLL : 'D MMMM YYYY เวลา H นาฬิกา m นาที',
9186 LLLL : 'วันddddที่ D MMMM YYYY เวลา H นาฬิกา m นาที'
9187 },
9188 meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,
9189 isPM: function (input) {
9190 return input === 'หลังเที่ยง';
9191 },
9192 meridiem : function (hour, minute, isLower) {
9193 if (hour < 12) {
9194 return 'ก่อนเที่ยง';
9195 } else {
9196 return 'หลังเที่ยง';
9197 }
9198 },
9199 calendar : {
9200 sameDay : '[วันนี้ เวลา] LT',
9201 nextDay : '[พรุ่งนี้ เวลา] LT',
9202 nextWeek : 'dddd[หน้า เวลา] LT',
9203 lastDay : '[เมื่อวานนี้ เวลา] LT',
9204 lastWeek : '[วัน]dddd[ที่แล้ว เวลา] LT',
9205 sameElse : 'L'
9206 },
9207 relativeTime : {
9208 future : 'อีก %s',
9209 past : '%sที่แล้ว',
9210 s : 'ไม่กี่วินาที',
9211 m : '1 นาที',
9212 mm : '%d นาที',
9213 h : '1 ชั่วโมง',
9214 hh : '%d ชั่วโมง',
9215 d : '1 วัน',
9216 dd : '%d วัน',
9217 M : '1 เดือน',
9218 MM : '%d เดือน',
9219 y : '1 ปี',
9220 yy : '%d ปี'
9221 }
9222 });
9223
9224 //! moment.js locale configuration
9225 //! locale : Tagalog/Filipino (tl-ph)
9226 //! author : Dan Hagman
9227
9228 var tl_ph = _moment__default.defineLocale('tl-ph', {
9229 months : 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split('_'),
9230 monthsShort : 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'),
9231 weekdays : 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split('_'),
9232 weekdaysShort : 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'),
9233 weekdaysMin : 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'),
9234 longDateFormat : {
9235 LT : 'HH:mm',
9236 LTS : 'HH:mm:ss',
9237 L : 'MM/D/YYYY',
9238 LL : 'MMMM D, YYYY',
9239 LLL : 'MMMM D, YYYY HH:mm',
9240 LLLL : 'dddd, MMMM DD, YYYY HH:mm'
9241 },
9242 calendar : {
9243 sameDay: '[Ngayon sa] LT',
9244 nextDay: '[Bukas sa] LT',
9245 nextWeek: 'dddd [sa] LT',
9246 lastDay: '[Kahapon sa] LT',
9247 lastWeek: 'dddd [huling linggo] LT',
9248 sameElse: 'L'
9249 },
9250 relativeTime : {
9251 future : 'sa loob ng %s',
9252 past : '%s ang nakalipas',
9253 s : 'ilang segundo',
9254 m : 'isang minuto',
9255 mm : '%d minuto',
9256 h : 'isang oras',
9257 hh : '%d oras',
9258 d : 'isang araw',
9259 dd : '%d araw',
9260 M : 'isang buwan',
9261 MM : '%d buwan',
9262 y : 'isang taon',
9263 yy : '%d taon'
9264 },
9265 ordinalParse: /\d{1,2}/,
9266 ordinal : function (number) {
9267 return number;
9268 },
9269 week : {
9270 dow : 1, // Monday is the first day of the week.
9271 doy : 4 // The week that contains Jan 4th is the first week of the year.
9272 }
9273 });
9274
9275 //! moment.js locale configuration
9276 //! locale : turkish (tr)
9277 //! authors : Erhan Gundogan : https://github.com/erhangundogan,
9278 //! Burak Yiğit Kaya: https://github.com/BYK
9279
9280 var tr__suffixes = {
9281 1: '\'inci',
9282 5: '\'inci',
9283 8: '\'inci',
9284 70: '\'inci',
9285 80: '\'inci',
9286 2: '\'nci',
9287 7: '\'nci',
9288 20: '\'nci',
9289 50: '\'nci',
9290 3: '\'üncü',
9291 4: '\'üncü',
9292 100: '\'üncü',
9293 6: '\'ncı',
9294 9: '\'uncu',
9295 10: '\'uncu',
9296 30: '\'uncu',
9297 60: '\'ıncı',
9298 90: '\'ıncı'
9299 };
9300
9301 var tr = _moment__default.defineLocale('tr', {
9302 months : 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split('_'),
9303 monthsShort : 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'),
9304 weekdays : 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split('_'),
9305 weekdaysShort : 'Paz_Pts_Sal_Çar_Per_Cum_Cts'.split('_'),
9306 weekdaysMin : 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'),
9307 longDateFormat : {
9308 LT : 'HH:mm',
9309 LTS : 'HH:mm:ss',
9310 L : 'DD.MM.YYYY',
9311 LL : 'D MMMM YYYY',
9312 LLL : 'D MMMM YYYY HH:mm',
9313 LLLL : 'dddd, D MMMM YYYY HH:mm'
9314 },
9315 calendar : {
9316 sameDay : '[bugün saat] LT',
9317 nextDay : '[yarın saat] LT',
9318 nextWeek : '[haftaya] dddd [saat] LT',
9319 lastDay : '[dün] LT',
9320 lastWeek : '[geçen hafta] dddd [saat] LT',
9321 sameElse : 'L'
9322 },
9323 relativeTime : {
9324 future : '%s sonra',
9325 past : '%s önce',
9326 s : 'birkaç saniye',
9327 m : 'bir dakika',
9328 mm : '%d dakika',
9329 h : 'bir saat',
9330 hh : '%d saat',
9331 d : 'bir gün',
9332 dd : '%d gün',
9333 M : 'bir ay',
9334 MM : '%d ay',
9335 y : 'bir yıl',
9336 yy : '%d yıl'
9337 },
9338 ordinalParse: /\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,
9339 ordinal : function (number) {
9340 if (number === 0) { // special case for zero
9341 return number + '\'ıncı';
9342 }
9343 var a = number % 10,
9344 b = number % 100 - a,
9345 c = number >= 100 ? 100 : null;
9346 return number + (tr__suffixes[a] || tr__suffixes[b] || tr__suffixes[c]);
9347 },
9348 week : {
9349 dow : 1, // Monday is the first day of the week.
9350 doy : 7 // The week that contains Jan 1st is the first week of the year.
9351 }
9352 });
9353
9354 //! moment.js locale configuration
9355 //! locale : talossan (tzl)
9356 //! author : Robin van der Vliet : https://github.com/robin0van0der0v with the help of Iustì Canun
9357
9358
9359 var tzl = _moment__default.defineLocale('tzl', {
9360 months : 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split('_'),
9361 monthsShort : 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'),
9362 weekdays : 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'),
9363 weekdaysShort : 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'),
9364 weekdaysMin : 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'),
9365 longDateFormat : {
9366 LT : 'HH.mm',
9367 LTS : 'LT.ss',
9368 L : 'DD.MM.YYYY',
9369 LL : 'D. MMMM [dallas] YYYY',
9370 LLL : 'D. MMMM [dallas] YYYY LT',
9371 LLLL : 'dddd, [li] D. MMMM [dallas] YYYY LT'
9372 },
9373 meridiem : function (hours, minutes, isLower) {
9374 if (hours > 11) {
9375 return isLower ? 'd\'o' : 'D\'O';
9376 } else {
9377 return isLower ? 'd\'a' : 'D\'A';
9378 }
9379 },
9380 calendar : {
9381 sameDay : '[oxhi à] LT',
9382 nextDay : '[demà à] LT',
9383 nextWeek : 'dddd [à] LT',
9384 lastDay : '[ieiri à] LT',
9385 lastWeek : '[sür el] dddd [lasteu à] LT',
9386 sameElse : 'L'
9387 },
9388 relativeTime : {
9389 future : 'osprei %s',
9390 past : 'ja%s',
9391 s : tzl__processRelativeTime,
9392 m : tzl__processRelativeTime,
9393 mm : tzl__processRelativeTime,
9394 h : tzl__processRelativeTime,
9395 hh : tzl__processRelativeTime,
9396 d : tzl__processRelativeTime,
9397 dd : tzl__processRelativeTime,
9398 M : tzl__processRelativeTime,
9399 MM : tzl__processRelativeTime,
9400 y : tzl__processRelativeTime,
9401 yy : tzl__processRelativeTime
9402 },
9403 ordinalParse: /\d{1,2}\./,
9404 ordinal : '%d.',
9405 week : {
9406 dow : 1, // Monday is the first day of the week.
9407 doy : 4 // The week that contains Jan 4th is the first week of the year.
9408 }
9409 });
9410
9411 function tzl__processRelativeTime(number, withoutSuffix, key, isFuture) {
9412 var format = {
9413 's': ['viensas secunds', '\'iensas secunds'],
9414 'm': ['\'n míut', '\'iens míut'],
9415 'mm': [number + ' míuts', ' ' + number + ' míuts'],
9416 'h': ['\'n þora', '\'iensa þora'],
9417 'hh': [number + ' þoras', ' ' + number + ' þoras'],
9418 'd': ['\'n ziua', '\'iensa ziua'],
9419 'dd': [number + ' ziuas', ' ' + number + ' ziuas'],
9420 'M': ['\'n mes', '\'iens mes'],
9421 'MM': [number + ' mesen', ' ' + number + ' mesen'],
9422 'y': ['\'n ar', '\'iens ar'],
9423 'yy': [number + ' ars', ' ' + number + ' ars']
9424 };
9425 return isFuture ? format[key][0] : (withoutSuffix ? format[key][0] : format[key][1].trim());
9426 }
9427
9428 //! moment.js locale configuration
9429 //! locale : Morocco Central Atlas Tamaziɣt in Latin (tzm-latn)
9430 //! author : Abdel Said : https://github.com/abdelsaid
9431
9432 var tzm_latn = _moment__default.defineLocale('tzm-latn', {
9433 months : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),
9434 monthsShort : 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split('_'),
9435 weekdays : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9436 weekdaysShort : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9437 weekdaysMin : 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'),
9438 longDateFormat : {
9439 LT : 'HH:mm',
9440 LTS : 'HH:mm:ss',
9441 L : 'DD/MM/YYYY',
9442 LL : 'D MMMM YYYY',
9443 LLL : 'D MMMM YYYY HH:mm',
9444 LLLL : 'dddd D MMMM YYYY HH:mm'
9445 },
9446 calendar : {
9447 sameDay: '[asdkh g] LT',
9448 nextDay: '[aska g] LT',
9449 nextWeek: 'dddd [g] LT',
9450 lastDay: '[assant g] LT',
9451 lastWeek: 'dddd [g] LT',
9452 sameElse: 'L'
9453 },
9454 relativeTime : {
9455 future : 'dadkh s yan %s',
9456 past : 'yan %s',
9457 s : 'imik',
9458 m : 'minuḍ',
9459 mm : '%d minuḍ',
9460 h : 'saɛa',
9461 hh : '%d tassaɛin',
9462 d : 'ass',
9463 dd : '%d ossan',
9464 M : 'ayowr',
9465 MM : '%d iyyirn',
9466 y : 'asgas',
9467 yy : '%d isgasn'
9468 },
9469 week : {
9470 dow : 6, // Saturday is the first day of the week.
9471 doy : 12 // The week that contains Jan 1st is the first week of the year.
9472 }
9473 });
9474
9475 //! moment.js locale configuration
9476 //! locale : Morocco Central Atlas Tamaziɣt (tzm)
9477 //! author : Abdel Said : https://github.com/abdelsaid
9478
9479 var tzm = _moment__default.defineLocale('tzm', {
9480 months : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),
9481 monthsShort : 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split('_'),
9482 weekdays : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9483 weekdaysShort : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9484 weekdaysMin : 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'),
9485 longDateFormat : {
9486 LT : 'HH:mm',
9487 LTS: 'HH:mm:ss',
9488 L : 'DD/MM/YYYY',
9489 LL : 'D MMMM YYYY',
9490 LLL : 'D MMMM YYYY HH:mm',
9491 LLLL : 'dddd D MMMM YYYY HH:mm'
9492 },
9493 calendar : {
9494 sameDay: '[ⴰⵙⴷⵅ ⴴ] LT',
9495 nextDay: '[ⴰⵙⴽⴰ ⴴ] LT',
9496 nextWeek: 'dddd [ⴴ] LT',
9497 lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT',
9498 lastWeek: 'dddd [ⴴ] LT',
9499 sameElse: 'L'
9500 },
9501 relativeTime : {
9502 future : 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s',
9503 past : 'ⵢⴰⵏ %s',
9504 s : 'ⵉⵎⵉⴽ',
9505 m : 'ⵎⵉⵏⵓⴺ',
9506 mm : '%d ⵎⵉⵏⵓⴺ',
9507 h : 'ⵙⴰⵄⴰ',
9508 hh : '%d ⵜⴰⵙⵙⴰⵄⵉⵏ',
9509 d : 'ⴰⵙⵙ',
9510 dd : '%d oⵙⵙⴰⵏ',
9511 M : 'ⴰⵢoⵓⵔ',
9512 MM : '%d ⵉⵢⵢⵉⵔⵏ',
9513 y : 'ⴰⵙⴳⴰⵙ',
9514 yy : '%d ⵉⵙⴳⴰⵙⵏ'
9515 },
9516 week : {
9517 dow : 6, // Saturday is the first day of the week.
9518 doy : 12 // The week that contains Jan 1st is the first week of the year.
9519 }
9520 });
9521
9522 //! moment.js locale configuration
9523 //! locale : ukrainian (uk)
9524 //! author : zemlanin : https://github.com/zemlanin
9525 //! Author : Menelion Elensúle : https://github.com/Oire
9526
9527 function uk__plural(word, num) {
9528 var forms = word.split('_');
9529 return num % 10 === 1 && num % 100 !== 11 ? forms[0] : (num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) ? forms[1] : forms[2]);
9530 }
9531 function uk__relativeTimeWithPlural(number, withoutSuffix, key) {
9532 var format = {
9533 'mm': 'хвилина_хвилини_хвилин',
9534 'hh': 'година_години_годин',
9535 'dd': 'день_дні_днів',
9536 'MM': 'місяць_місяці_місяців',
9537 'yy': 'рік_роки_років'
9538 };
9539 if (key === 'm') {
9540 return withoutSuffix ? 'хвилина' : 'хвилину';
9541 }
9542 else if (key === 'h') {
9543 return withoutSuffix ? 'година' : 'годину';
9544 }
9545 else {
9546 return number + ' ' + uk__plural(format[key], +number);
9547 }
9548 }
9549 function uk__monthsCaseReplace(m, format) {
9550 var months = {
9551 'nominative': 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split('_'),
9552 'accusative': 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split('_')
9553 },
9554 nounCase = (/D[oD]? *MMMM?/).test(format) ?
9555 'accusative' :
9556 'nominative';
9557 return months[nounCase][m.month()];
9558 }
9559 function uk__weekdaysCaseReplace(m, format) {
9560 var weekdays = {
9561 'nominative': 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split('_'),
9562 'accusative': 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split('_'),
9563 'genitive': 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split('_')
9564 },
9565 nounCase = (/(\[[ВвУу]\]) ?dddd/).test(format) ?
9566 'accusative' :
9567 ((/\[?(?:минулої|наступної)? ?\] ?dddd/).test(format) ?
9568 'genitive' :
9569 'nominative');
9570 return weekdays[nounCase][m.day()];
9571 }
9572 function processHoursFunction(str) {
9573 return function () {
9574 return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT';
9575 };
9576 }
9577
9578 var uk = _moment__default.defineLocale('uk', {
9579 months : uk__monthsCaseReplace,
9580 monthsShort : 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split('_'),
9581 weekdays : uk__weekdaysCaseReplace,
9582 weekdaysShort : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
9583 weekdaysMin : 'нд_пн_вт_ср_чт_пт_сб'.split('_'),
9584 longDateFormat : {
9585 LT : 'HH:mm',
9586 LTS : 'HH:mm:ss',
9587 L : 'DD.MM.YYYY',
9588 LL : 'D MMMM YYYY р.',
9589 LLL : 'D MMMM YYYY р., HH:mm',
9590 LLLL : 'dddd, D MMMM YYYY р., HH:mm'
9591 },
9592 calendar : {
9593 sameDay: processHoursFunction('[Сьогодні '),
9594 nextDay: processHoursFunction('[Завтра '),
9595 lastDay: processHoursFunction('[Вчора '),
9596 nextWeek: processHoursFunction('[У] dddd ['),
9597 lastWeek: function () {
9598 switch (this.day()) {
9599 case 0:
9600 case 3:
9601 case 5:
9602 case 6:
9603 return processHoursFunction('[Минулої] dddd [').call(this);
9604 case 1:
9605 case 2:
9606 case 4:
9607 return processHoursFunction('[Минулого] dddd [').call(this);
9608 }
9609 },
9610 sameElse: 'L'
9611 },
9612 relativeTime : {
9613 future : 'за %s',
9614 past : '%s тому',
9615 s : 'декілька секунд',
9616 m : uk__relativeTimeWithPlural,
9617 mm : uk__relativeTimeWithPlural,
9618 h : 'годину',
9619 hh : uk__relativeTimeWithPlural,
9620 d : 'день',
9621 dd : uk__relativeTimeWithPlural,
9622 M : 'місяць',
9623 MM : uk__relativeTimeWithPlural,
9624 y : 'рік',
9625 yy : uk__relativeTimeWithPlural
9626 },
9627 // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason
9628 meridiemParse: /ночі|ранку|дня|вечора/,
9629 isPM: function (input) {
9630 return /^(дня|вечора)$/.test(input);
9631 },
9632 meridiem : function (hour, minute, isLower) {
9633 if (hour < 4) {
9634 return 'ночі';
9635 } else if (hour < 12) {
9636 return 'ранку';
9637 } else if (hour < 17) {
9638 return 'дня';
9639 } else {
9640 return 'вечора';
9641 }
9642 },
9643 ordinalParse: /\d{1,2}-(й|го)/,
9644 ordinal: function (number, period) {
9645 switch (period) {
9646 case 'M':
9647 case 'd':
9648 case 'DDD':
9649 case 'w':
9650 case 'W':
9651 return number + '-й';
9652 case 'D':
9653 return number + '-го';
9654 default:
9655 return number;
9656 }
9657 },
9658 week : {
9659 dow : 1, // Monday is the first day of the week.
9660 doy : 7 // The week that contains Jan 1st is the first week of the year.
9661 }
9662 });
9663
9664 //! moment.js locale configuration
9665 //! locale : uzbek (uz)
9666 //! author : Sardor Muminov : https://github.com/muminoff
9667
9668 var uz = _moment__default.defineLocale('uz', {
9669 months : 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split('_'),
9670 monthsShort : 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'),
9671 weekdays : 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'),
9672 weekdaysShort : 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'),
9673 weekdaysMin : 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'),
9674 longDateFormat : {
9675 LT : 'HH:mm',
9676 LTS : 'HH:mm:ss',
9677 L : 'DD/MM/YYYY',
9678 LL : 'D MMMM YYYY',
9679 LLL : 'D MMMM YYYY HH:mm',
9680 LLLL : 'D MMMM YYYY, dddd HH:mm'
9681 },
9682 calendar : {
9683 sameDay : '[Бугун соат] LT [да]',
9684 nextDay : '[Эртага] LT [да]',
9685 nextWeek : 'dddd [куни соат] LT [да]',
9686 lastDay : '[Кеча соат] LT [да]',
9687 lastWeek : '[Утган] dddd [куни соат] LT [да]',
9688 sameElse : 'L'
9689 },
9690 relativeTime : {
9691 future : 'Якин %s ичида',
9692 past : 'Бир неча %s олдин',
9693 s : 'фурсат',
9694 m : 'бир дакика',
9695 mm : '%d дакика',
9696 h : 'бир соат',
9697 hh : '%d соат',
9698 d : 'бир кун',
9699 dd : '%d кун',
9700 M : 'бир ой',
9701 MM : '%d ой',
9702 y : 'бир йил',
9703 yy : '%d йил'
9704 },
9705 week : {
9706 dow : 1, // Monday is the first day of the week.
9707 doy : 7 // The week that contains Jan 4th is the first week of the year.
9708 }
9709 });
9710
9711 //! moment.js locale configuration
9712 //! locale : vietnamese (vi)
9713 //! author : Bang Nguyen : https://github.com/bangnk
9714
9715 var vi = _moment__default.defineLocale('vi', {
9716 months : 'tháng 1_tháng 2_tháng 3_tháng 4_tháng 5_tháng 6_tháng 7_tháng 8_tháng 9_tháng 10_tháng 11_tháng 12'.split('_'),
9717 monthsShort : 'Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12'.split('_'),
9718 weekdays : 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split('_'),
9719 weekdaysShort : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
9720 weekdaysMin : 'CN_T2_T3_T4_T5_T6_T7'.split('_'),
9721 longDateFormat : {
9722 LT : 'HH:mm',
9723 LTS : 'HH:mm:ss',
9724 L : 'DD/MM/YYYY',
9725 LL : 'D MMMM [năm] YYYY',
9726 LLL : 'D MMMM [năm] YYYY HH:mm',
9727 LLLL : 'dddd, D MMMM [năm] YYYY HH:mm',
9728 l : 'DD/M/YYYY',
9729 ll : 'D MMM YYYY',
9730 lll : 'D MMM YYYY HH:mm',
9731 llll : 'ddd, D MMM YYYY HH:mm'
9732 },
9733 calendar : {
9734 sameDay: '[Hôm nay lúc] LT',
9735 nextDay: '[Ngày mai lúc] LT',
9736 nextWeek: 'dddd [tuần tới lúc] LT',
9737 lastDay: '[Hôm qua lúc] LT',
9738 lastWeek: 'dddd [tuần rồi lúc] LT',
9739 sameElse: 'L'
9740 },
9741 relativeTime : {
9742 future : '%s tới',
9743 past : '%s trước',
9744 s : 'vài giây',
9745 m : 'một phút',
9746 mm : '%d phút',
9747 h : 'một giờ',
9748 hh : '%d giờ',
9749 d : 'một ngày',
9750 dd : '%d ngày',
9751 M : 'một tháng',
9752 MM : '%d tháng',
9753 y : 'một năm',
9754 yy : '%d năm'
9755 },
9756 ordinalParse: /\d{1,2}/,
9757 ordinal : function (number) {
9758 return number;
9759 },
9760 week : {
9761 dow : 1, // Monday is the first day of the week.
9762 doy : 4 // The week that contains Jan 4th is the first week of the year.
9763 }
9764 });
9765
9766 //! moment.js locale configuration
9767 //! locale : chinese (zh-cn)
9768 //! author : suupic : https://github.com/suupic
9769 //! author : Zeno Zeng : https://github.com/zenozeng
9770
9771 var zh_cn = _moment__default.defineLocale('zh-cn', {
9772 months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
9773 monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
9774 weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
9775 weekdaysShort : '周日_周一_周二_周三_周四_周五_周六'.split('_'),
9776 weekdaysMin : '日_一_二_三_四_五_六'.split('_'),
9777 longDateFormat : {
9778 LT : 'Ah点mm分',
9779 LTS : 'Ah点m分s秒',
9780 L : 'YYYY-MM-DD',
9781 LL : 'YYYY年MMMD日',
9782 LLL : 'YYYY年MMMD日Ah点mm分',
9783 LLLL : 'YYYY年MMMD日ddddAh点mm分',
9784 l : 'YYYY-MM-DD',
9785 ll : 'YYYY年MMMD日',
9786 lll : 'YYYY年MMMD日Ah点mm分',
9787 llll : 'YYYY年MMMD日ddddAh点mm分'
9788 },
9789 meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
9790 meridiemHour: function (hour, meridiem) {
9791 if (hour === 12) {
9792 hour = 0;
9793 }
9794 if (meridiem === '凌晨' || meridiem === '早上' ||
9795 meridiem === '上午') {
9796 return hour;
9797 } else if (meridiem === '下午' || meridiem === '晚上') {
9798 return hour + 12;
9799 } else {
9800 // '中午'
9801 return hour >= 11 ? hour : hour + 12;
9802 }
9803 },
9804 meridiem : function (hour, minute, isLower) {
9805 var hm = hour * 100 + minute;
9806 if (hm < 600) {
9807 return '凌晨';
9808 } else if (hm < 900) {
9809 return '早上';
9810 } else if (hm < 1130) {
9811 return '上午';
9812 } else if (hm < 1230) {
9813 return '中午';
9814 } else if (hm < 1800) {
9815 return '下午';
9816 } else {
9817 return '晚上';
9818 }
9819 },
9820 calendar : {
9821 sameDay : function () {
9822 return this.minutes() === 0 ? '[今天]Ah[点整]' : '[今天]LT';
9823 },
9824 nextDay : function () {
9825 return this.minutes() === 0 ? '[明天]Ah[点整]' : '[明天]LT';
9826 },
9827 lastDay : function () {
9828 return this.minutes() === 0 ? '[昨天]Ah[点整]' : '[昨天]LT';
9829 },
9830 nextWeek : function () {
9831 var startOfWeek, prefix;
9832 startOfWeek = _moment__default().startOf('week');
9833 prefix = this.unix() - startOfWeek.unix() >= 7 * 24 * 3600 ? '[下]' : '[本]';
9834 return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm';
9835 },
9836 lastWeek : function () {
9837 var startOfWeek, prefix;
9838 startOfWeek = _moment__default().startOf('week');
9839 prefix = this.unix() < startOfWeek.unix() ? '[上]' : '[本]';
9840 return this.minutes() === 0 ? prefix + 'dddAh点整' : prefix + 'dddAh点mm';
9841 },
9842 sameElse : 'LL'
9843 },
9844 ordinalParse: /\d{1,2}(日|月|周)/,
9845 ordinal : function (number, period) {
9846 switch (period) {
9847 case 'd':
9848 case 'D':
9849 case 'DDD':
9850 return number + '日';
9851 case 'M':
9852 return number + '月';
9853 case 'w':
9854 case 'W':
9855 return number + '周';
9856 default:
9857 return number;
9858 }
9859 },
9860 relativeTime : {
9861 future : '%s内',
9862 past : '%s前',
9863 s : '几秒',
9864 m : '1 分钟',
9865 mm : '%d 分钟',
9866 h : '1 小时',
9867 hh : '%d 小时',
9868 d : '1 天',
9869 dd : '%d 天',
9870 M : '1 个月',
9871 MM : '%d 个月',
9872 y : '1 年',
9873 yy : '%d 年'
9874 },
9875 week : {
9876 // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效
9877 dow : 1, // Monday is the first day of the week.
9878 doy : 4 // The week that contains Jan 4th is the first week of the year.
9879 }
9880 });
9881
9882 //! moment.js locale configuration
9883 //! locale : traditional chinese (zh-tw)
9884 //! author : Ben : https://github.com/ben-lin
9885
9886 var zh_tw = _moment__default.defineLocale('zh-tw', {
9887 months : '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split('_'),
9888 monthsShort : '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'),
9889 weekdays : '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'),
9890 weekdaysShort : '週日_週一_週二_週三_週四_週五_週六'.split('_'),
9891 weekdaysMin : '日_一_二_三_四_五_六'.split('_'),
9892 longDateFormat : {
9893 LT : 'Ah點mm分',
9894 LTS : 'Ah點m分s秒',
9895 L : 'YYYY年MMMD日',
9896 LL : 'YYYY年MMMD日',
9897 LLL : 'YYYY年MMMD日Ah點mm分',
9898 LLLL : 'YYYY年MMMD日ddddAh點mm分',
9899 l : 'YYYY年MMMD日',
9900 ll : 'YYYY年MMMD日',
9901 lll : 'YYYY年MMMD日Ah點mm分',
9902 llll : 'YYYY年MMMD日ddddAh點mm分'
9903 },
9904 meridiemParse: /早上|上午|中午|下午|晚上/,
9905 meridiemHour : function (hour, meridiem) {
9906 if (hour === 12) {
9907 hour = 0;
9908 }
9909 if (meridiem === '早上' || meridiem === '上午') {
9910 return hour;
9911 } else if (meridiem === '中午') {
9912 return hour >= 11 ? hour : hour + 12;
9913 } else if (meridiem === '下午' || meridiem === '晚上') {
9914 return hour + 12;
9915 }
9916 },
9917 meridiem : function (hour, minute, isLower) {
9918 var hm = hour * 100 + minute;
9919 if (hm < 900) {
9920 return '早上';
9921 } else if (hm < 1130) {
9922 return '上午';
9923 } else if (hm < 1230) {
9924 return '中午';
9925 } else if (hm < 1800) {
9926 return '下午';
9927 } else {
9928 return '晚上';
9929 }
9930 },
9931 calendar : {
9932 sameDay : '[今天]LT',
9933 nextDay : '[明天]LT',
9934 nextWeek : '[下]ddddLT',
9935 lastDay : '[昨天]LT',
9936 lastWeek : '[上]ddddLT',
9937 sameElse : 'L'
9938 },
9939 ordinalParse: /\d{1,2}(日|月|週)/,
9940 ordinal : function (number, period) {
9941 switch (period) {
9942 case 'd' :
9943 case 'D' :
9944 case 'DDD' :
9945 return number + '日';
9946 case 'M' :
9947 return number + '月';
9948 case 'w' :
9949 case 'W' :
9950 return number + '週';
9951 default :
9952 return number;
9953 }
9954 },
9955 relativeTime : {
9956 future : '%s內',
9957 past : '%s前',
9958 s : '幾秒',
9959 m : '一分鐘',
9960 mm : '%d分鐘',
9961 h : '一小時',
9962 hh : '%d小時',
9963 d : '一天',
9964 dd : '%d天',
9965 M : '一個月',
9966 MM : '%d個月',
9967 y : '一年',
9968 yy : '%d年'
9969 }
9970 });
9971
9972 var moment_with_locales = _moment__default;
9973 moment_with_locales.locale('en');
9974
9975 return moment_with_locales;
9976
9977 }));