mirror of
https://github.com/rmontanana/inventario2.git
synced 2025-08-17 16:35:58 +00:00
798 lines
37 KiB
JavaScript
798 lines
37 KiB
JavaScript
//! moment.js
|
|
//! version : 2.5.1
|
|
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
|
//! license : MIT
|
|
//! momentjs.com
|
|
(function(a) {
|
|
function b() {
|
|
return{empty: !1, unusedTokens: [], unusedInput: [], overflow: -2, charsLeftOver: 0, nullInput: !1, invalidMonth: null, invalidFormat: !1, userInvalidated: !1, iso: !1}
|
|
}
|
|
function c(a, b) {
|
|
return function(c) {
|
|
return k(a.call(this, c), b)
|
|
}
|
|
}
|
|
function d(a, b) {
|
|
return function(c) {
|
|
return this.lang().ordinal(a.call(this, c), b)
|
|
}
|
|
}
|
|
function e() {
|
|
}
|
|
function f(a) {
|
|
w(a), h(this, a)
|
|
}
|
|
function g(a) {
|
|
var b = q(a), c = b.year || 0, d = b.month || 0, e = b.week || 0, f = b.day || 0, g = b.hour || 0, h = b.minute || 0, i = b.second || 0, j = b.millisecond || 0;
|
|
this._milliseconds = +j + 1e3 * i + 6e4 * h + 36e5 * g, this._days = +f + 7 * e, this._months = +d + 12 * c, this._data = {}, this._bubble()
|
|
}
|
|
function h(a, b) {
|
|
for (var c in b)
|
|
b.hasOwnProperty(c) && (a[c] = b[c]);
|
|
return b.hasOwnProperty("toString") && (a.toString = b.toString), b.hasOwnProperty("valueOf") && (a.valueOf = b.valueOf), a
|
|
}
|
|
function i(a) {
|
|
var b, c = {};
|
|
for (b in a)
|
|
a.hasOwnProperty(b) && qb.hasOwnProperty(b) && (c[b] = a[b]);
|
|
return c
|
|
}
|
|
function j(a) {
|
|
return 0 > a ? Math.ceil(a) : Math.floor(a)
|
|
}
|
|
function k(a, b, c) {
|
|
for (var d = "" + Math.abs(a), e = a >= 0; d.length < b; )
|
|
d = "0" + d;
|
|
return(e ? c ? "+" : "" : "-") + d
|
|
}
|
|
function l(a, b, c, d) {
|
|
var e, f, g = b._milliseconds, h = b._days, i = b._months;
|
|
g && a._d.setTime(+a._d + g * c), (h || i) && (e = a.minute(), f = a.hour()), h && a.date(a.date() + h * c), i && a.month(a.month() + i * c), g && !d && db.updateOffset(a), (h || i) && (a.minute(e), a.hour(f))
|
|
}
|
|
function m(a) {
|
|
return"[object Array]" === Object.prototype.toString.call(a)
|
|
}
|
|
function n(a) {
|
|
return"[object Date]" === Object.prototype.toString.call(a) || a instanceof Date
|
|
}
|
|
function o(a, b, c) {
|
|
var d, e = Math.min(a.length, b.length), f = Math.abs(a.length - b.length), g = 0;
|
|
for (d = 0; e > d; d++)
|
|
(c && a[d] !== b[d] || !c && s(a[d]) !== s(b[d])) && g++;
|
|
return g + f
|
|
}
|
|
function p(a) {
|
|
if (a) {
|
|
var b = a.toLowerCase().replace(/(.)s$/, "$1");
|
|
a = Tb[a] || Ub[b] || b
|
|
}
|
|
return a
|
|
}
|
|
function q(a) {
|
|
var b, c, d = {};
|
|
for (c in a)
|
|
a.hasOwnProperty(c) && (b = p(c), b && (d[b] = a[c]));
|
|
return d
|
|
}
|
|
function r(b) {
|
|
var c, d;
|
|
if (0 === b.indexOf("week"))
|
|
c = 7, d = "day";
|
|
else {
|
|
if (0 !== b.indexOf("month"))
|
|
return;
|
|
c = 12, d = "month"
|
|
}
|
|
db[b] = function(e, f) {
|
|
var g, h, i = db.fn._lang[b], j = [];
|
|
if ("number" == typeof e && (f = e, e = a), h = function(a) {
|
|
var b = db().utc().set(d, a);
|
|
return i.call(db.fn._lang, b, e || "")
|
|
}, null != f)
|
|
return h(f);
|
|
for (g = 0; c > g; g++)
|
|
j.push(h(g));
|
|
return j
|
|
}
|
|
}
|
|
function s(a) {
|
|
var b = +a, c = 0;
|
|
return 0 !== b && isFinite(b) && (c = b >= 0 ? Math.floor(b) : Math.ceil(b)), c
|
|
}
|
|
function t(a, b) {
|
|
return new Date(Date.UTC(a, b + 1, 0)).getUTCDate()
|
|
}
|
|
function u(a) {
|
|
return v(a) ? 366 : 365
|
|
}
|
|
function v(a) {
|
|
return a % 4 === 0 && a % 100 !== 0 || a % 400 === 0
|
|
}
|
|
function w(a) {
|
|
var b;
|
|
a._a && -2 === a._pf.overflow && (b = a._a[jb] < 0 || a._a[jb] > 11 ? jb : a._a[kb] < 1 || a._a[kb] > t(a._a[ib], a._a[jb]) ? kb : a._a[lb] < 0 || a._a[lb] > 23 ? lb : a._a[mb] < 0 || a._a[mb] > 59 ? mb : a._a[nb] < 0 || a._a[nb] > 59 ? nb : a._a[ob] < 0 || a._a[ob] > 999 ? ob : -1, a._pf._overflowDayOfYear && (ib > b || b > kb) && (b = kb), a._pf.overflow = b)
|
|
}
|
|
function x(a) {
|
|
return null == a._isValid && (a._isValid = !isNaN(a._d.getTime()) && a._pf.overflow < 0 && !a._pf.empty && !a._pf.invalidMonth && !a._pf.nullInput && !a._pf.invalidFormat && !a._pf.userInvalidated, a._strict && (a._isValid = a._isValid && 0 === a._pf.charsLeftOver && 0 === a._pf.unusedTokens.length)), a._isValid
|
|
}
|
|
function y(a) {
|
|
return a ? a.toLowerCase().replace("_", "-") : a
|
|
}
|
|
function z(a, b) {
|
|
return b._isUTC ? db(a).zone(b._offset || 0) : db(a).local()
|
|
}
|
|
function A(a, b) {
|
|
return b.abbr = a, pb[a] || (pb[a] = new e), pb[a].set(b), pb[a]
|
|
}
|
|
function B(a) {
|
|
delete pb[a]
|
|
}
|
|
function C(a) {
|
|
var b, c, d, e, f = 0, g = function(a) {
|
|
if (!pb[a] && rb)
|
|
try {
|
|
require("./lang/" + a)
|
|
} catch (b) {
|
|
}
|
|
return pb[a]
|
|
};
|
|
if (!a)
|
|
return db.fn._lang;
|
|
if (!m(a)) {
|
|
if (c = g(a))
|
|
return c;
|
|
a = [a]
|
|
}
|
|
for (; f < a.length; ) {
|
|
for (e = y(a[f]).split("-"), b = e.length, d = y(a[f + 1]), d = d ? d.split("-") : null; b > 0; ) {
|
|
if (c = g(e.slice(0, b).join("-")))
|
|
return c;
|
|
if (d && d.length >= b && o(e, d, !0) >= b - 1)
|
|
break;
|
|
b--
|
|
}
|
|
f++
|
|
}
|
|
return db.fn._lang
|
|
}
|
|
function D(a) {
|
|
return a.match(/\[[\s\S]/) ? a.replace(/^\[|\]$/g, "") : a.replace(/\\/g, "")
|
|
}
|
|
function E(a) {
|
|
var b, c, d = a.match(vb);
|
|
for (b = 0, c = d.length; c > b; b++)
|
|
d[b] = Yb[d[b]] ? Yb[d[b]] : D(d[b]);
|
|
return function(e) {
|
|
var f = "";
|
|
for (b = 0; c > b; b++)
|
|
f += d[b]instanceof Function ? d[b].call(e, a) : d[b];
|
|
return f
|
|
}
|
|
}
|
|
function F(a, b) {
|
|
return a.isValid() ? (b = G(b, a.lang()), Vb[b] || (Vb[b] = E(b)), Vb[b](a)) : a.lang().invalidDate()
|
|
}
|
|
function G(a, b) {
|
|
function c(a) {
|
|
return b.longDateFormat(a) || a
|
|
}
|
|
var d = 5;
|
|
for (wb.lastIndex = 0; d >= 0 && wb.test(a); )
|
|
a = a.replace(wb, c), wb.lastIndex = 0, d -= 1;
|
|
return a
|
|
}
|
|
function H(a, b) {
|
|
var c, d = b._strict;
|
|
switch (a) {
|
|
case"DDDD":
|
|
return Ib;
|
|
case"YYYY":
|
|
case"GGGG":
|
|
case"gggg":
|
|
return d ? Jb : zb;
|
|
case"Y":
|
|
case"G":
|
|
case"g":
|
|
return Lb;
|
|
case"YYYYYY":
|
|
case"YYYYY":
|
|
case"GGGGG":
|
|
case"ggggg":
|
|
return d ? Kb : Ab;
|
|
case"S":
|
|
if (d)
|
|
return Gb;
|
|
case"SS":
|
|
if (d)
|
|
return Hb;
|
|
case"SSS":
|
|
if (d)
|
|
return Ib;
|
|
case"DDD":
|
|
return yb;
|
|
case"MMM":
|
|
case"MMMM":
|
|
case"dd":
|
|
case"ddd":
|
|
case"dddd":
|
|
return Cb;
|
|
case"a":
|
|
case"A":
|
|
return C(b._l)._meridiemParse;
|
|
case"X":
|
|
return Fb;
|
|
case"Z":
|
|
case"ZZ":
|
|
return Db;
|
|
case"T":
|
|
return Eb;
|
|
case"SSSS":
|
|
return Bb;
|
|
case"MM":
|
|
case"DD":
|
|
case"YY":
|
|
case"GG":
|
|
case"gg":
|
|
case"HH":
|
|
case"hh":
|
|
case"mm":
|
|
case"ss":
|
|
case"ww":
|
|
case"WW":
|
|
return d ? Hb : xb;
|
|
case"M":
|
|
case"D":
|
|
case"d":
|
|
case"H":
|
|
case"h":
|
|
case"m":
|
|
case"s":
|
|
case"w":
|
|
case"W":
|
|
case"e":
|
|
case"E":
|
|
return xb;
|
|
default:
|
|
return c = new RegExp(P(O(a.replace("\\", "")), "i"))
|
|
}
|
|
}
|
|
function I(a) {
|
|
a = a || "";
|
|
var b = a.match(Db) || [], c = b[b.length - 1] || [], d = (c + "").match(Qb) || ["-", 0, 0], e = +(60 * d[1]) + s(d[2]);
|
|
return"+" === d[0] ? -e : e
|
|
}
|
|
function J(a, b, c) {
|
|
var d, e = c._a;
|
|
switch (a) {
|
|
case"M":
|
|
case"MM":
|
|
null != b && (e[jb] = s(b) - 1);
|
|
break;
|
|
case"MMM":
|
|
case"MMMM":
|
|
d = C(c._l).monthsParse(b), null != d ? e[jb] = d : c._pf.invalidMonth = b;
|
|
break;
|
|
case"D":
|
|
case"DD":
|
|
null != b && (e[kb] = s(b));
|
|
break;
|
|
case"DDD":
|
|
case"DDDD":
|
|
null != b && (c._dayOfYear = s(b));
|
|
break;
|
|
case"YY":
|
|
e[ib] = s(b) + (s(b) > 68 ? 1900 : 2e3);
|
|
break;
|
|
case"YYYY":
|
|
case"YYYYY":
|
|
case"YYYYYY":
|
|
e[ib] = s(b);
|
|
break;
|
|
case"a":
|
|
case"A":
|
|
c._isPm = C(c._l).isPM(b);
|
|
break;
|
|
case"H":
|
|
case"HH":
|
|
case"h":
|
|
case"hh":
|
|
e[lb] = s(b);
|
|
break;
|
|
case"m":
|
|
case"mm":
|
|
e[mb] = s(b);
|
|
break;
|
|
case"s":
|
|
case"ss":
|
|
e[nb] = s(b);
|
|
break;
|
|
case"S":
|
|
case"SS":
|
|
case"SSS":
|
|
case"SSSS":
|
|
e[ob] = s(1e3 * ("0." + b));
|
|
break;
|
|
case"X":
|
|
c._d = new Date(1e3 * parseFloat(b));
|
|
break;
|
|
case"Z":
|
|
case"ZZ":
|
|
c._useUTC = !0, c._tzm = I(b);
|
|
break;
|
|
case"w":
|
|
case"ww":
|
|
case"W":
|
|
case"WW":
|
|
case"d":
|
|
case"dd":
|
|
case"ddd":
|
|
case"dddd":
|
|
case"e":
|
|
case"E":
|
|
a = a.substr(0, 1);
|
|
case"gg":
|
|
case"gggg":
|
|
case"GG":
|
|
case"GGGG":
|
|
case"GGGGG":
|
|
a = a.substr(0, 2), b && (c._w = c._w || {}, c._w[a] = b)
|
|
}
|
|
}
|
|
function K(a) {
|
|
var b, c, d, e, f, g, h, i, j, k, l = [];
|
|
if (!a._d) {
|
|
for (d = M(a), a._w && null == a._a[kb] && null == a._a[jb] && (f = function(b) {
|
|
var c = parseInt(b, 10);
|
|
return b ? b.length < 3 ? c > 68 ? 1900 + c : 2e3 + c : c : null == a._a[ib] ? db().weekYear() : a._a[ib]
|
|
}, g = a._w, null != g.GG || null != g.W || null != g.E?h = Z(f(g.GG), g.W || 1, g.E, 4, 1):(i = C(a._l), j = null != g.d?V(g.d, i):null != g.e?parseInt(g.e, 10) + i._week.dow:0, k = parseInt(g.w, 10) || 1, null != g.d && j < i._week.dow && k++, h = Z(f(g.gg), k, j, i._week.doy, i._week.dow)), a._a[ib] = h.year, a._dayOfYear = h.dayOfYear), a._dayOfYear && (e = null == a._a[ib]?d[ib]:a._a[ib], a._dayOfYear > u(e) && (a._pf._overflowDayOfYear = !0), c = U(e, 0, a._dayOfYear), a._a[jb] = c.getUTCMonth(), a._a[kb] = c.getUTCDate()), b = 0; 3 > b && null == a._a[b]; ++b)
|
|
a._a[b] = l[b] = d[b];
|
|
for (; 7 > b; b++)
|
|
a._a[b] = l[b] = null == a._a[b] ? 2 === b ? 1 : 0 : a._a[b];
|
|
l[lb] += s((a._tzm || 0) / 60), l[mb] += s((a._tzm || 0) % 60), a._d = (a._useUTC ? U : T).apply(null, l)
|
|
}
|
|
}
|
|
function L(a) {
|
|
var b;
|
|
a._d || (b = q(a._i), a._a = [b.year, b.month, b.day, b.hour, b.minute, b.second, b.millisecond], K(a))
|
|
}
|
|
function M(a) {
|
|
var b = new Date;
|
|
return a._useUTC ? [b.getUTCFullYear(), b.getUTCMonth(), b.getUTCDate()] : [b.getFullYear(), b.getMonth(), b.getDate()]
|
|
}
|
|
function N(a) {
|
|
a._a = [], a._pf.empty = !0;
|
|
var b, c, d, e, f, g = C(a._l), h = "" + a._i, i = h.length, j = 0;
|
|
for (d = G(a._f, g).match(vb) || [], b = 0; b < d.length; b++)
|
|
e = d[b], c = (h.match(H(e, a)) || [])[0], c && (f = h.substr(0, h.indexOf(c)), f.length > 0 && a._pf.unusedInput.push(f), h = h.slice(h.indexOf(c) + c.length), j += c.length), Yb[e] ? (c ? a._pf.empty = !1 : a._pf.unusedTokens.push(e), J(e, c, a)) : a._strict && !c && a._pf.unusedTokens.push(e);
|
|
a._pf.charsLeftOver = i - j, h.length > 0 && a._pf.unusedInput.push(h), a._isPm && a._a[lb] < 12 && (a._a[lb] += 12), a._isPm === !1 && 12 === a._a[lb] && (a._a[lb] = 0), K(a), w(a)
|
|
}
|
|
function O(a) {
|
|
return a.replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function(a, b, c, d, e) {
|
|
return b || c || d || e
|
|
})
|
|
}
|
|
function P(a) {
|
|
return a.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&")
|
|
}
|
|
function Q(a) {
|
|
var c, d, e, f, g;
|
|
if (0 === a._f.length)
|
|
return a._pf.invalidFormat = !0, a._d = new Date(0 / 0), void 0;
|
|
for (f = 0; f < a._f.length; f++)
|
|
g = 0, c = h({}, a), c._pf = b(), c._f = a._f[f], N(c), x(c) && (g += c._pf.charsLeftOver, g += 10 * c._pf.unusedTokens.length, c._pf.score = g, (null == e || e > g) && (e = g, d = c));
|
|
h(a, d || c)
|
|
}
|
|
function R(a) {
|
|
var b, c, d = a._i, e = Mb.exec(d);
|
|
if (e) {
|
|
for (a._pf.iso = !0, b = 0, c = Ob.length; c > b; b++)
|
|
if (Ob[b][1].exec(d)) {
|
|
a._f = Ob[b][0] + (e[6] || " ");
|
|
break
|
|
}
|
|
for (b = 0, c = Pb.length; c > b; b++)
|
|
if (Pb[b][1].exec(d)) {
|
|
a._f += Pb[b][0];
|
|
break
|
|
}
|
|
d.match(Db) && (a._f += "Z"), N(a)
|
|
} else
|
|
a._d = new Date(d)
|
|
}
|
|
function S(b) {
|
|
var c = b._i, d = sb.exec(c);
|
|
c === a ? b._d = new Date : d ? b._d = new Date(+d[1]) : "string" == typeof c ? R(b) : m(c) ? (b._a = c.slice(0), K(b)) : n(c) ? b._d = new Date(+c) : "object" == typeof c ? L(b) : b._d = new Date(c)
|
|
}
|
|
function T(a, b, c, d, e, f, g) {
|
|
var h = new Date(a, b, c, d, e, f, g);
|
|
return 1970 > a && h.setFullYear(a), h
|
|
}
|
|
function U(a) {
|
|
var b = new Date(Date.UTC.apply(null, arguments));
|
|
return 1970 > a && b.setUTCFullYear(a), b
|
|
}
|
|
function V(a, b) {
|
|
if ("string" == typeof a)
|
|
if (isNaN(a)) {
|
|
if (a = b.weekdaysParse(a), "number" != typeof a)
|
|
return null
|
|
} else
|
|
a = parseInt(a, 10);
|
|
return a
|
|
}
|
|
function W(a, b, c, d, e) {
|
|
return e.relativeTime(b || 1, !!c, a, d)
|
|
}
|
|
function X(a, b, c) {
|
|
var d = hb(Math.abs(a) / 1e3), e = hb(d / 60), f = hb(e / 60), g = hb(f / 24), h = hb(g / 365), i = 45 > d && ["s", d] || 1 === e && ["m"] || 45 > e && ["mm", e] || 1 === f && ["h"] || 22 > f && ["hh", f] || 1 === g && ["d"] || 25 >= g && ["dd", g] || 45 >= g && ["M"] || 345 > g && ["MM", hb(g / 30)] || 1 === h && ["y"] || ["yy", h];
|
|
return i[2] = b, i[3] = a > 0, i[4] = c, W.apply({}, i)
|
|
}
|
|
function Y(a, b, c) {
|
|
var d, e = c - b, f = c - a.day();
|
|
return f > e && (f -= 7), e - 7 > f && (f += 7), d = db(a).add("d", f), {week: Math.ceil(d.dayOfYear() / 7), year: d.year()}
|
|
}
|
|
function Z(a, b, c, d, e) {
|
|
var f, g, h = U(a, 0, 1).getUTCDay();
|
|
return c = null != c ? c : e, f = e - h + (h > d ? 7 : 0) - (e > h ? 7 : 0), g = 7 * (b - 1) + (c - e) + f + 1, {year: g > 0 ? a : a - 1, dayOfYear: g > 0 ? g : u(a - 1) + g}
|
|
}
|
|
function $(a) {
|
|
var b = a._i, c = a._f;
|
|
return null === b ? db.invalid({nullInput: !0}) : ("string" == typeof b && (a._i = b = C().preparse(b)), db.isMoment(b) ? (a = i(b), a._d = new Date(+b._d)) : c ? m(c) ? Q(a) : N(a) : S(a), new f(a))
|
|
}
|
|
function _(a, b) {
|
|
db.fn[a] = db.fn[a + "s"] = function(a) {
|
|
var c = this._isUTC ? "UTC" : "";
|
|
return null != a ? (this._d["set" + c + b](a), db.updateOffset(this), this) : this._d["get" + c + b]()
|
|
}
|
|
}
|
|
function ab(a) {
|
|
db.duration.fn[a] = function() {
|
|
return this._data[a]
|
|
}
|
|
}
|
|
function bb(a, b) {
|
|
db.duration.fn["as" + a] = function() {
|
|
return+this / b
|
|
}
|
|
}
|
|
function cb(a) {
|
|
var b = !1, c = db;
|
|
"undefined" == typeof ender && (a ? (gb.moment = function() {
|
|
return!b && console && console.warn && (b = !0, console.warn("Accessing Moment through the global scope is deprecated, and will be removed in an upcoming release.")), c.apply(null, arguments)
|
|
}, h(gb.moment, c)) : gb.moment = db)
|
|
}
|
|
for (var db, eb, fb = "2.5.1", gb = this, hb = Math.round, ib = 0, jb = 1, kb = 2, lb = 3, mb = 4, nb = 5, ob = 6, pb = {}, qb = {_isAMomentObject: null, _i: null, _f: null, _l: null, _strict: null, _isUTC: null, _offset: null, _pf: null, _lang: null}, rb = "undefined" != typeof module && module.exports && "undefined" != typeof require, sb = /^\/?Date\((\-?\d+)/i, tb = /(\-)?(?:(\d*)\.)?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/, ub = /^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/, vb = /(\[[^\[]*\])|(\\)?(Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,4}|X|zz?|ZZ?|.)/g, wb = /(\[[^\[]*\])|(\\)?(LT|LL?L?L?|l{1,4})/g, xb = /\d\d?/, yb = /\d{1,3}/, zb = /\d{1,4}/, Ab = /[+\-]?\d{1,6}/, Bb = /\d+/, Cb = /[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i, Db = /Z|[\+\-]\d\d:?\d\d/gi, Eb = /T/i, Fb = /[\+\-]?\d+(\.\d{1,3})?/, Gb = /\d/, Hb = /\d\d/, Ib = /\d{3}/, Jb = /\d{4}/, Kb = /[+-]?\d{6}/, Lb = /[+-]?\d+/, Mb = /^\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)?)?$/, Nb = "YYYY-MM-DDTHH:mm:ssZ", Ob = [["YYYYYY-MM-DD", /[+-]\d{6}-\d{2}-\d{2}/], ["YYYY-MM-DD", /\d{4}-\d{2}-\d{2}/], ["GGGG-[W]WW-E", /\d{4}-W\d{2}-\d/], ["GGGG-[W]WW", /\d{4}-W\d{2}/], ["YYYY-DDD", /\d{4}-\d{3}/]], Pb = [["HH:mm:ss.SSSS", /(T| )\d\d:\d\d:\d\d\.\d{1,3}/], ["HH:mm:ss", /(T| )\d\d:\d\d:\d\d/], ["HH:mm", /(T| )\d\d:\d\d/], ["HH", /(T| )\d\d/]], Qb = /([\+\-]|\d\d)/gi, Rb = "Date|Hours|Minutes|Seconds|Milliseconds".split("|"), Sb = {Milliseconds: 1, Seconds: 1e3, Minutes: 6e4, Hours: 36e5, Days: 864e5, Months: 2592e6, Years: 31536e6}, Tb = {ms: "millisecond", s: "second", m: "minute", h: "hour", d: "day", D: "date", w: "week", W: "isoWeek", M: "month", y: "year", DDD: "dayOfYear", e: "weekday", E: "isoWeekday", gg: "weekYear", GG: "isoWeekYear"}, Ub = {dayofyear: "dayOfYear", isoweekday: "isoWeekday", isoweek: "isoWeek", weekyear: "weekYear", isoweekyear: "isoWeekYear"}, Vb = {}, Wb = "DDD w W M D d".split(" "), Xb = "M D H h m s w W".split(" "), Yb = {M: function() {
|
|
return this.month() + 1
|
|
}, MMM: function(a) {
|
|
return this.lang().monthsShort(this, a)
|
|
}, MMMM: function(a) {
|
|
return this.lang().months(this, a)
|
|
}, D: function() {
|
|
return this.date()
|
|
}, DDD: function() {
|
|
return this.dayOfYear()
|
|
}, d: function() {
|
|
return this.day()
|
|
}, dd: function(a) {
|
|
return this.lang().weekdaysMin(this, a)
|
|
}, ddd: function(a) {
|
|
return this.lang().weekdaysShort(this, a)
|
|
}, dddd: function(a) {
|
|
return this.lang().weekdays(this, a)
|
|
}, w: function() {
|
|
return this.week()
|
|
}, W: function() {
|
|
return this.isoWeek()
|
|
}, YY: function() {
|
|
return k(this.year() % 100, 2)
|
|
}, YYYY: function() {
|
|
return k(this.year(), 4)
|
|
}, YYYYY: function() {
|
|
return k(this.year(), 5)
|
|
}, YYYYYY: function() {
|
|
var a = this.year(), b = a >= 0 ? "+" : "-";
|
|
return b + k(Math.abs(a), 6)
|
|
}, gg: function() {
|
|
return k(this.weekYear() % 100, 2)
|
|
}, gggg: function() {
|
|
return k(this.weekYear(), 4)
|
|
}, ggggg: function() {
|
|
return k(this.weekYear(), 5)
|
|
}, GG: function() {
|
|
return k(this.isoWeekYear() % 100, 2)
|
|
}, GGGG: function() {
|
|
return k(this.isoWeekYear(), 4)
|
|
}, GGGGG: function() {
|
|
return k(this.isoWeekYear(), 5)
|
|
}, e: function() {
|
|
return this.weekday()
|
|
}, E: function() {
|
|
return this.isoWeekday()
|
|
}, a: function() {
|
|
return this.lang().meridiem(this.hours(), this.minutes(), !0)
|
|
}, A: function() {
|
|
return this.lang().meridiem(this.hours(), this.minutes(), !1)
|
|
}, H: function() {
|
|
return this.hours()
|
|
}, h: function() {
|
|
return this.hours() % 12 || 12
|
|
}, m: function() {
|
|
return this.minutes()
|
|
}, s: function() {
|
|
return this.seconds()
|
|
}, S: function() {
|
|
return s(this.milliseconds() / 100)
|
|
}, SS: function() {
|
|
return k(s(this.milliseconds() / 10), 2)
|
|
}, SSS: function() {
|
|
return k(this.milliseconds(), 3)
|
|
}, SSSS: function() {
|
|
return k(this.milliseconds(), 3)
|
|
}, Z: function() {
|
|
var a = -this.zone(), b = "+";
|
|
return 0 > a && (a = -a, b = "-"), b + k(s(a / 60), 2) + ":" + k(s(a) % 60, 2)
|
|
}, ZZ: function() {
|
|
var a = -this.zone(), b = "+";
|
|
return 0 > a && (a = -a, b = "-"), b + k(s(a / 60), 2) + k(s(a) % 60, 2)
|
|
}, z: function() {
|
|
return this.zoneAbbr()
|
|
}, zz: function() {
|
|
return this.zoneName()
|
|
}, X: function() {
|
|
return this.unix()
|
|
}, Q: function() {
|
|
return this.quarter()
|
|
}}, Zb = ["months", "monthsShort", "weekdays", "weekdaysShort", "weekdaysMin"]; Wb.length; )
|
|
eb = Wb.pop(), Yb[eb + "o"] = d(Yb[eb], eb);
|
|
for (; Xb.length; )
|
|
eb = Xb.pop(), Yb[eb + eb] = c(Yb[eb], 2);
|
|
for (Yb.DDDD = c(Yb.DDD, 3), h(e.prototype, {set:function(a) {
|
|
var b, c;
|
|
for (c in a)
|
|
b = a[c], "function" == typeof b ? this[c] = b : this["_" + c] = b
|
|
}, _months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"), months:function(a) {
|
|
return this._months[a.month()]
|
|
}, _monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), monthsShort:function(a) {
|
|
return this._monthsShort[a.month()]
|
|
}, monthsParse:function(a) {
|
|
var b, c, d;
|
|
for (this._monthsParse || (this._monthsParse = []), b = 0; 12 > b; b++)
|
|
if (this._monthsParse[b] || (c = db.utc([2e3, b]), d = "^" + this.months(c, "") + "|^" + this.monthsShort(c, ""), this._monthsParse[b] = new RegExp(d.replace(".", ""), "i")), this._monthsParse[b].test(a))
|
|
return b
|
|
}, _weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"), weekdays:function(a) {
|
|
return this._weekdays[a.day()]
|
|
}, _weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), weekdaysShort:function(a) {
|
|
return this._weekdaysShort[a.day()]
|
|
}, _weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"), weekdaysMin:function(a) {
|
|
return this._weekdaysMin[a.day()]
|
|
}, weekdaysParse:function(a) {
|
|
var b, c, d;
|
|
for (this._weekdaysParse || (this._weekdaysParse = []), b = 0; 7 > b; b++)
|
|
if (this._weekdaysParse[b] || (c = db([2e3, 1]).day(b), d = "^" + this.weekdays(c, "") + "|^" + this.weekdaysShort(c, "") + "|^" + this.weekdaysMin(c, ""), this._weekdaysParse[b] = new RegExp(d.replace(".", ""), "i")), this._weekdaysParse[b].test(a))
|
|
return b
|
|
}, _longDateFormat:{LT:"h:mm A", L:"MM/DD/YYYY", LL:"MMMM D YYYY", LLL:"MMMM D YYYY LT", LLLL:"dddd, MMMM D YYYY LT"}, longDateFormat:function(a) {
|
|
var b = this._longDateFormat[a];
|
|
return!b && this._longDateFormat[a.toUpperCase()] && (b = this._longDateFormat[a.toUpperCase()].replace(/MMMM|MM|DD|dddd/g, function(a) {
|
|
return a.slice(1)
|
|
}), this._longDateFormat[a] = b), b
|
|
}, isPM:function(a) {
|
|
return"p" === (a + "").toLowerCase().charAt(0)
|
|
}, _meridiemParse:/[ap]\.?m?\.?/i, meridiem:function(a, b, c) {
|
|
return a > 11 ? c ? "pm" : "PM" : c ? "am" : "AM"
|
|
}, _calendar:{sameDay:"[Today at] LT", nextDay:"[Tomorrow at] LT", nextWeek:"dddd [at] LT", lastDay:"[Yesterday at] LT", lastWeek:"[Last] dddd [at] LT", sameElse:"L"}, calendar:function(a, b) {
|
|
var c = this._calendar[a];
|
|
return"function" == typeof c ? c.apply(b) : c
|
|
}, _relativeTime:{future:"in %s", past:"%s ago", s:"a few seconds", m:"a minute", mm:"%d minutes", h:"an hour", hh:"%d hours", d:"a day", dd:"%d days", M:"a month", MM:"%d months", y:"a year", yy:"%d years"}, relativeTime:function(a, b, c, d) {
|
|
var e = this._relativeTime[c];
|
|
return"function" == typeof e ? e(a, b, c, d) : e.replace(/%d/i, a)
|
|
}, pastFuture:function(a, b) {
|
|
var c = this._relativeTime[a > 0 ? "future" : "past"];
|
|
return"function" == typeof c ? c(b) : c.replace(/%s/i, b)
|
|
}, ordinal:function(a) {
|
|
return this._ordinal.replace("%d", a)
|
|
}, _ordinal:"%d", preparse:function(a) {
|
|
return a
|
|
}, postformat:function(a) {
|
|
return a
|
|
}, week:function(a) {
|
|
return Y(a, this._week.dow, this._week.doy).week
|
|
}, _week:{dow:0, doy:6}, _invalidDate:"Invalid date", invalidDate:function() {
|
|
return this._invalidDate
|
|
}}), db = function(c, d, e, f) {
|
|
var g;
|
|
return"boolean" == typeof e && (f = e, e = a), g = {}, g._isAMomentObject = !0, g._i = c, g._f = d, g._l = e, g._strict = f, g._isUTC = !1, g._pf = b(), $(g)
|
|
}, db.utc = function(c, d, e, f) {
|
|
var g;
|
|
return"boolean" == typeof e && (f = e, e = a), g = {}, g._isAMomentObject = !0, g._useUTC = !0, g._isUTC = !0, g._l = e, g._i = c, g._f = d, g._strict = f, g._pf = b(), $(g).utc()
|
|
}, db.unix = function(a) {
|
|
return db(1e3 * a)
|
|
}, db.duration = function(a, b) {
|
|
var c, d, e, f = a, h = null;
|
|
return db.isDuration(a) ? f = {ms: a._milliseconds, d: a._days, M: a._months} : "number" == typeof a ? (f = {}, b ? f[b] = a : f.milliseconds = a) : (h = tb.exec(a)) ? (c = "-" === h[1] ? -1 : 1, f = {y: 0, d: s(h[kb]) * c, h: s(h[lb]) * c, m: s(h[mb]) * c, s: s(h[nb]) * c, ms: s(h[ob]) * c}) : (h = ub.exec(a)) && (c = "-" === h[1] ? -1 : 1, e = function(a) {
|
|
var b = a && parseFloat(a.replace(",", "."));
|
|
return(isNaN(b) ? 0 : b) * c
|
|
}, f = {y: e(h[2]), M: e(h[3]), d: e(h[4]), h: e(h[5]), m: e(h[6]), s: e(h[7]), w: e(h[8])}), d = new g(f), db.isDuration(a) && a.hasOwnProperty("_lang") && (d._lang = a._lang), d
|
|
}, db.version = fb, db.defaultFormat = Nb, db.updateOffset = function() {
|
|
}, db.lang = function(a, b) {
|
|
var c;
|
|
return a ? (b ? A(y(a), b) : null === b ? (B(a), a = "en") : pb[a] || C(a), c = db.duration.fn._lang = db.fn._lang = C(a), c._abbr) : db.fn._lang._abbr
|
|
}, db.langData = function(a) {
|
|
return a && a._lang && a._lang._abbr && (a = a._lang._abbr), C(a)
|
|
}, db.isMoment = function(a) {
|
|
return a instanceof f || null != a && a.hasOwnProperty("_isAMomentObject")
|
|
}, db.isDuration = function(a) {
|
|
return a instanceof g
|
|
}, eb = Zb.length - 1; eb >= 0; --eb)
|
|
r(Zb[eb]);
|
|
for (db.normalizeUnits = function(a) {
|
|
return p(a)
|
|
}, db.invalid = function(a) {
|
|
var b = db.utc(0 / 0);
|
|
return null != a ? h(b._pf, a) : b._pf.userInvalidated = !0, b
|
|
}, db.parseZone = function(a) {
|
|
return db(a).parseZone()
|
|
}, h(db.fn = f.prototype, {clone:function() {
|
|
return db(this)
|
|
}, valueOf:function() {
|
|
return+this._d + 6e4 * (this._offset || 0)
|
|
}, unix:function() {
|
|
return Math.floor(+this / 1e3)
|
|
}, toString:function() {
|
|
return this.clone().lang("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")
|
|
}, toDate:function() {
|
|
return this._offset ? new Date(+this) : this._d
|
|
}, toISOString:function() {
|
|
var a = db(this).utc();
|
|
return 0 < a.year() && a.year() <= 9999 ? F(a, "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]") : F(a, "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]")
|
|
}, toArray:function() {
|
|
var a = this;
|
|
return[a.year(), a.month(), a.date(), a.hours(), a.minutes(), a.seconds(), a.milliseconds()]
|
|
}, isValid:function() {
|
|
return x(this)
|
|
}, isDSTShifted:function() {
|
|
return this._a ? this.isValid() && o(this._a, (this._isUTC ? db.utc(this._a) : db(this._a)).toArray()) > 0 : !1
|
|
}, parsingFlags:function() {
|
|
return h({}, this._pf)
|
|
}, invalidAt:function() {
|
|
return this._pf.overflow
|
|
}, utc:function() {
|
|
return this.zone(0)
|
|
}, local:function() {
|
|
return this.zone(0), this._isUTC = !1, this
|
|
}, format:function(a) {
|
|
var b = F(this, a || db.defaultFormat);
|
|
return this.lang().postformat(b)
|
|
}, add:function(a, b) {
|
|
var c;
|
|
return c = "string" == typeof a ? db.duration(+b, a) : db.duration(a, b), l(this, c, 1), this
|
|
}, subtract:function(a, b) {
|
|
var c;
|
|
return c = "string" == typeof a ? db.duration(+b, a) : db.duration(a, b), l(this, c, -1), this
|
|
}, diff:function(a, b, c) {
|
|
var d, e, f = z(a, this), g = 6e4 * (this.zone() - f.zone());
|
|
return b = p(b), "year" === b || "month" === b ? (d = 432e5 * (this.daysInMonth() + f.daysInMonth()), e = 12 * (this.year() - f.year()) + (this.month() - f.month()), e += (this - db(this).startOf("month") - (f - db(f).startOf("month"))) / d, e -= 6e4 * (this.zone() - db(this).startOf("month").zone() - (f.zone() - db(f).startOf("month").zone())) / d, "year" === b && (e /= 12)) : (d = this - f, e = "second" === b ? d / 1e3 : "minute" === b ? d / 6e4 : "hour" === b ? d / 36e5 : "day" === b ? (d - g) / 864e5 : "week" === b ? (d - g) / 6048e5 : d), c ? e : j(e)
|
|
}, from:function(a, b) {
|
|
return db.duration(this.diff(a)).lang(this.lang()._abbr).humanize(!b)
|
|
}, fromNow:function(a) {
|
|
return this.from(db(), a)
|
|
}, calendar:function() {
|
|
var a = z(db(), this).startOf("day"), b = this.diff(a, "days", !0), c = -6 > b ? "sameElse" : -1 > b ? "lastWeek" : 0 > b ? "lastDay" : 1 > b ? "sameDay" : 2 > b ? "nextDay" : 7 > b ? "nextWeek" : "sameElse";
|
|
return this.format(this.lang().calendar(c, this))
|
|
}, isLeapYear:function() {
|
|
return v(this.year())
|
|
}, isDST:function() {
|
|
return this.zone() < this.clone().month(0).zone() || this.zone() < this.clone().month(5).zone()
|
|
}, day:function(a) {
|
|
var b = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
|
|
return null != a ? (a = V(a, this.lang()), this.add({d: a - b})) : b
|
|
}, month:function(a) {
|
|
var b, c = this._isUTC ? "UTC" : "";
|
|
return null != a ? "string" == typeof a && (a = this.lang().monthsParse(a), "number" != typeof a) ? this : (b = this.date(), this.date(1), this._d["set" + c + "Month"](a), this.date(Math.min(b, this.daysInMonth())), db.updateOffset(this), this) : this._d["get" + c + "Month"]()
|
|
}, startOf:function(a) {
|
|
switch (a = p(a)) {
|
|
case"year":
|
|
this.month(0);
|
|
case"month":
|
|
this.date(1);
|
|
case"week":
|
|
case"isoWeek":
|
|
case"day":
|
|
this.hours(0);
|
|
case"hour":
|
|
this.minutes(0);
|
|
case"minute":
|
|
this.seconds(0);
|
|
case"second":
|
|
this.milliseconds(0)
|
|
}
|
|
return"week" === a ? this.weekday(0) : "isoWeek" === a && this.isoWeekday(1), this
|
|
}, endOf:function(a) {
|
|
return a = p(a), this.startOf(a).add("isoWeek" === a ? "week" : a, 1).subtract("ms", 1)
|
|
}, isAfter:function(a, b) {
|
|
return b = "undefined" != typeof b ? b : "millisecond", +this.clone().startOf(b) > +db(a).startOf(b)
|
|
}, isBefore:function(a, b) {
|
|
return b = "undefined" != typeof b ? b : "millisecond", +this.clone().startOf(b) < +db(a).startOf(b)
|
|
}, isSame:function(a, b) {
|
|
return b = b || "ms", +this.clone().startOf(b) === +z(a, this).startOf(b)
|
|
}, min:function(a) {
|
|
return a = db.apply(null, arguments), this > a ? this : a
|
|
}, max:function(a) {
|
|
return a = db.apply(null, arguments), a > this ? this : a
|
|
}, zone:function(a) {
|
|
var b = this._offset || 0;
|
|
return null == a ? this._isUTC ? b : this._d.getTimezoneOffset() : ("string" == typeof a && (a = I(a)), Math.abs(a) < 16 && (a = 60 * a), this._offset = a, this._isUTC = !0, b !== a && l(this, db.duration(b - a, "m"), 1, !0), this)
|
|
}, zoneAbbr:function() {
|
|
return this._isUTC ? "UTC" : ""
|
|
}, zoneName:function() {
|
|
return this._isUTC ? "Coordinated Universal Time" : ""
|
|
}, parseZone:function() {
|
|
return this._tzm ? this.zone(this._tzm) : "string" == typeof this._i && this.zone(this._i), this
|
|
}, hasAlignedHourOffset:function(a) {
|
|
return a = a ? db(a).zone() : 0, (this.zone() - a) % 60 === 0
|
|
}, daysInMonth:function() {
|
|
return t(this.year(), this.month())
|
|
}, dayOfYear:function(a) {
|
|
var b = hb((db(this).startOf("day") - db(this).startOf("year")) / 864e5) + 1;
|
|
return null == a ? b : this.add("d", a - b)
|
|
}, quarter:function() {
|
|
return Math.ceil((this.month() + 1) / 3)
|
|
}, weekYear:function(a) {
|
|
var b = Y(this, this.lang()._week.dow, this.lang()._week.doy).year;
|
|
return null == a ? b : this.add("y", a - b)
|
|
}, isoWeekYear:function(a) {
|
|
var b = Y(this, 1, 4).year;
|
|
return null == a ? b : this.add("y", a - b)
|
|
}, week:function(a) {
|
|
var b = this.lang().week(this);
|
|
return null == a ? b : this.add("d", 7 * (a - b))
|
|
}, isoWeek:function(a) {
|
|
var b = Y(this, 1, 4).week;
|
|
return null == a ? b : this.add("d", 7 * (a - b))
|
|
}, weekday:function(a) {
|
|
var b = (this.day() + 7 - this.lang()._week.dow) % 7;
|
|
return null == a ? b : this.add("d", a - b)
|
|
}, isoWeekday:function(a) {
|
|
return null == a ? this.day() || 7 : this.day(this.day() % 7 ? a : a - 7)
|
|
}, get:function(a) {
|
|
return a = p(a), this[a]()
|
|
}, set:function(a, b) {
|
|
return a = p(a), "function" == typeof this[a] && this[a](b), this
|
|
}, lang:function(b) {
|
|
return b === a ? this._lang : (this._lang = C(b), this)
|
|
}}), eb = 0; eb < Rb.length; eb++)
|
|
_(Rb[eb].toLowerCase().replace(/s$/, ""), Rb[eb]);
|
|
_("year", "FullYear"), db.fn.days = db.fn.day, db.fn.months = db.fn.month, db.fn.weeks = db.fn.week, db.fn.isoWeeks = db.fn.isoWeek, db.fn.toJSON = db.fn.toISOString, h(db.duration.fn = g.prototype, {_bubble: function() {
|
|
var a, b, c, d, e = this._milliseconds, f = this._days, g = this._months, h = this._data;
|
|
h.milliseconds = e % 1e3, a = j(e / 1e3), h.seconds = a % 60, b = j(a / 60), h.minutes = b % 60, c = j(b / 60), h.hours = c % 24, f += j(c / 24), h.days = f % 30, g += j(f / 30), h.months = g % 12, d = j(g / 12), h.years = d
|
|
}, weeks: function() {
|
|
return j(this.days() / 7)
|
|
}, valueOf: function() {
|
|
return this._milliseconds + 864e5 * this._days + this._months % 12 * 2592e6 + 31536e6 * s(this._months / 12)
|
|
}, humanize: function(a) {
|
|
var b = +this, c = X(b, !a, this.lang());
|
|
return a && (c = this.lang().pastFuture(b, c)), this.lang().postformat(c)
|
|
}, add: function(a, b) {
|
|
var c = db.duration(a, b);
|
|
return this._milliseconds += c._milliseconds, this._days += c._days, this._months += c._months, this._bubble(), this
|
|
}, subtract: function(a, b) {
|
|
var c = db.duration(a, b);
|
|
return this._milliseconds -= c._milliseconds, this._days -= c._days, this._months -= c._months, this._bubble(), this
|
|
}, get: function(a) {
|
|
return a = p(a), this[a.toLowerCase() + "s"]()
|
|
}, as: function(a) {
|
|
return a = p(a), this["as" + a.charAt(0).toUpperCase() + a.slice(1) + "s"]()
|
|
}, lang: db.fn.lang, toIsoString: function() {
|
|
var a = Math.abs(this.years()), b = Math.abs(this.months()), c = Math.abs(this.days()), d = Math.abs(this.hours()), e = Math.abs(this.minutes()), f = Math.abs(this.seconds() + this.milliseconds() / 1e3);
|
|
return this.asSeconds() ? (this.asSeconds() < 0 ? "-" : "") + "P" + (a ? a + "Y" : "") + (b ? b + "M" : "") + (c ? c + "D" : "") + (d || e || f ? "T" : "") + (d ? d + "H" : "") + (e ? e + "M" : "") + (f ? f + "S" : "") : "P0D"
|
|
}});
|
|
for (eb in Sb)
|
|
Sb.hasOwnProperty(eb) && (bb(eb, Sb[eb]), ab(eb.toLowerCase()));
|
|
bb("Weeks", 6048e5), db.duration.fn.asMonths = function() {
|
|
return(+this - 31536e6 * this.years()) / 2592e6 + 12 * this.years()
|
|
}, db.lang("en", {ordinal: function(a) {
|
|
var b = a % 10, c = 1 === s(a % 100 / 10) ? "th" : 1 === b ? "st" : 2 === b ? "nd" : 3 === b ? "rd" : "th";
|
|
return a + c
|
|
}}), rb ? (module.exports = db, cb(!0)) : "function" == typeof define && define.amd ? define("moment", function(b, c, d) {
|
|
return d.config && d.config() && d.config().noGlobal !== !0 && cb(d.config().noGlobal === a), db
|
|
}) : cb()
|
|
}).call(this); |