26495 lines
1.4 MiB
26495 lines
1.4 MiB
!function (e, t) {
|
||
if ("object" == typeof exports && "object" == typeof module) module.exports = t(); else if ("function" == typeof define && define.amd) define([], t); else {
|
||
var n, i = t();
|
||
for (n in i) ("object" == typeof exports ? exports : e)[n] = i[n]
|
||
}
|
||
}(window, function () {
|
||
return n = [function (e, t, hs) {
|
||
!function (ds) {
|
||
var ls;//! moment.js
|
||
//! version : 2.29.4
|
||
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
|
||
//! license : MIT
|
||
//! momentjs.com
|
||
ds.exports = function () {
|
||
"use strict";
|
||
var I, W;
|
||
|
||
function h() {
|
||
return I.apply(null, arguments)
|
||
}
|
||
|
||
function H(e) {
|
||
I = e
|
||
}
|
||
|
||
function s(e) {
|
||
return e instanceof Array || Object.prototype.toString.call(e) === "[object Array]"
|
||
}
|
||
|
||
function j(e) {
|
||
return e != null && Object.prototype.toString.call(e) === "[object Object]"
|
||
}
|
||
|
||
function u(e, t) {
|
||
return Object.prototype.hasOwnProperty.call(e, t)
|
||
}
|
||
|
||
function F(e) {
|
||
if (Object.getOwnPropertyNames) return Object.getOwnPropertyNames(e).length === 0; else {
|
||
var t;
|
||
for (t in e) if (u(e, t)) return false;
|
||
return true
|
||
}
|
||
}
|
||
|
||
function o(e) {
|
||
return e === void 0
|
||
}
|
||
|
||
function d(e) {
|
||
return typeof e === "number" || Object.prototype.toString.call(e) === "[object Number]"
|
||
}
|
||
|
||
function B(e) {
|
||
return e instanceof Date || Object.prototype.toString.call(e) === "[object Date]"
|
||
}
|
||
|
||
function N(e, t) {
|
||
var n = [], i, r = e.length;
|
||
for (i = 0; i < r; ++i) n.push(t(e[i], i));
|
||
return n
|
||
}
|
||
|
||
function z(e, t) {
|
||
for (var n in t) if (u(t, n)) e[n] = t[n];
|
||
if (u(t, "toString")) e.toString = t.toString;
|
||
if (u(t, "valueOf")) e.valueOf = t.valueOf;
|
||
return e
|
||
}
|
||
|
||
function l(e, t, n, i) {
|
||
return $n(e, t, n, i, true).utc()
|
||
}
|
||
|
||
function U() {
|
||
return {
|
||
empty: false,
|
||
unusedTokens: [],
|
||
unusedInput: [],
|
||
overflow: -2,
|
||
charsLeftOver: 0,
|
||
nullInput: false,
|
||
invalidEra: null,
|
||
invalidMonth: null,
|
||
invalidFormat: false,
|
||
userInvalidated: false,
|
||
iso: false,
|
||
parsedDateParts: [],
|
||
era: null,
|
||
meridiem: null,
|
||
rfc2822: false,
|
||
weekdayMismatch: false
|
||
}
|
||
}
|
||
|
||
function c(e) {
|
||
if (e._pf == null) e._pf = U();
|
||
return e._pf
|
||
}
|
||
|
||
if (Array.prototype.some) W = Array.prototype.some; else W = function (e) {
|
||
var t = Object(this), n = t.length >>> 0, i;
|
||
for (i = 0; i < n; i++) if (i in t && e.call(this, t[i], i, t)) return true;
|
||
return false
|
||
};
|
||
|
||
function V(e) {
|
||
if (e._isValid == null) {
|
||
var t = c(e), n = W.call(t.parsedDateParts, function (e) {
|
||
return e != null
|
||
}),
|
||
i = !isNaN(e._d.getTime()) && t.overflow < 0 && !t.empty && !t.invalidEra && !t.invalidMonth && !t.invalidWeekday && !t.weekdayMismatch && !t.nullInput && !t.invalidFormat && !t.userInvalidated && (!t.meridiem || t.meridiem && n);
|
||
if (e._strict) i = i && t.charsLeftOver === 0 && t.unusedTokens.length === 0 && t.bigHour === undefined;
|
||
if (Object.isFrozen == null || !Object.isFrozen(e)) e._isValid = i; else return i
|
||
}
|
||
return e._isValid
|
||
}
|
||
|
||
function G(e) {
|
||
var t = l(NaN);
|
||
if (e != null) z(c(t), e); else c(t).userInvalidated = true;
|
||
return t
|
||
}
|
||
|
||
var J = h.momentProperties = [], q = false;
|
||
|
||
function K(e, t) {
|
||
var n, i, r, a = J.length;
|
||
if (!o(t._isAMomentObject)) e._isAMomentObject = t._isAMomentObject;
|
||
if (!o(t._i)) e._i = t._i;
|
||
if (!o(t._f)) e._f = t._f;
|
||
if (!o(t._l)) e._l = t._l;
|
||
if (!o(t._strict)) e._strict = t._strict;
|
||
if (!o(t._tzm)) e._tzm = t._tzm;
|
||
if (!o(t._isUTC)) e._isUTC = t._isUTC;
|
||
if (!o(t._offset)) e._offset = t._offset;
|
||
if (!o(t._pf)) e._pf = c(t);
|
||
if (!o(t._locale)) e._locale = t._locale;
|
||
if (a > 0) for (n = 0; n < a; n++) {
|
||
i = J[n];
|
||
r = t[i];
|
||
if (!o(r)) e[i] = r
|
||
}
|
||
return e
|
||
}
|
||
|
||
function X(e) {
|
||
K(this, e);
|
||
this._d = new Date(e._d != null ? e._d.getTime() : NaN);
|
||
if (!this.isValid()) this._d = new Date(NaN);
|
||
if (q === false) {
|
||
q = true;
|
||
h.updateOffset(this);
|
||
q = false
|
||
}
|
||
}
|
||
|
||
function _(e) {
|
||
return e instanceof X || e != null && e._isAMomentObject != null
|
||
}
|
||
|
||
function Z(e) {
|
||
if (h.suppressDeprecationWarnings === false && typeof console !== "undefined" && console.warn) console.warn("Deprecation warning: " + e)
|
||
}
|
||
|
||
function e(a, s) {
|
||
var o = true;
|
||
return z(function () {
|
||
if (h.deprecationHandler != null) h.deprecationHandler(null, a);
|
||
if (o) {
|
||
var e = [], t, n, i, r = arguments.length;
|
||
for (n = 0; n < r; n++) {
|
||
t = "";
|
||
if (typeof arguments[n] === "object") {
|
||
t += "\n[" + n + "] ";
|
||
for (i in arguments[0]) if (u(arguments[0], i)) t += i + ": " + arguments[0][i] + ", ";
|
||
t = t.slice(0, -2)
|
||
} else t = arguments[n];
|
||
e.push(t)
|
||
}
|
||
Z(a + "\nArguments: " + Array.prototype.slice.call(e).join("") + "\n" + (new Error).stack);
|
||
o = false
|
||
}
|
||
return s.apply(this, arguments)
|
||
}, s)
|
||
}
|
||
|
||
var $ = {}, Q;
|
||
|
||
function ee(e, t) {
|
||
if (h.deprecationHandler != null) h.deprecationHandler(e, t);
|
||
if (!$[e]) {
|
||
Z(t);
|
||
$[e] = true
|
||
}
|
||
}
|
||
|
||
function f(e) {
|
||
return typeof Function !== "undefined" && e instanceof Function || Object.prototype.toString.call(e) === "[object Function]"
|
||
}
|
||
|
||
function te(e) {
|
||
var t, n;
|
||
for (n in e) if (u(e, n)) {
|
||
t = e[n];
|
||
if (f(t)) this[n] = t; else this["_" + n] = t
|
||
}
|
||
this._config = e;
|
||
this._dayOfMonthOrdinalParseLenient = new RegExp((this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + "|" + /\d{1,2}/.source)
|
||
}
|
||
|
||
function ne(e, t) {
|
||
var n = z({}, e), i;
|
||
for (i in t) if (u(t, i)) if (j(e[i]) && j(t[i])) {
|
||
n[i] = {};
|
||
z(n[i], e[i]);
|
||
z(n[i], t[i])
|
||
} else if (t[i] != null) n[i] = t[i]; else delete n[i];
|
||
for (i in e) if (u(e, i) && !u(t, i) && j(e[i])) n[i] = z({}, n[i]);
|
||
return n
|
||
}
|
||
|
||
function ie(e) {
|
||
if (e != null) this.set(e)
|
||
}
|
||
|
||
if (h.suppressDeprecationWarnings = false, h.deprecationHandler = null, Object.keys) Q = Object.keys; else Q = function (e) {
|
||
var t, n = [];
|
||
for (t in e) if (u(e, t)) n.push(t);
|
||
return n
|
||
};
|
||
var re = {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
};
|
||
|
||
function ae(e, t, n) {
|
||
var i = this._calendar[e] || this._calendar["sameElse"];
|
||
return f(i) ? i.call(t, n) : i
|
||
}
|
||
|
||
function a(e, t, n) {
|
||
var i = "" + Math.abs(e), r = t - i.length, a = e >= 0;
|
||
return (a ? n ? "+" : "" : "-") + Math.pow(10, Math.max(0, r)).toString().substr(1) + i
|
||
}
|
||
|
||
var se = /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,
|
||
oe = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, ue = {}, de = {};
|
||
|
||
function i(e, t, n, i) {
|
||
var r = i;
|
||
if (typeof i === "string") r = function () {
|
||
return this[i]()
|
||
};
|
||
if (e) de[e] = r;
|
||
if (t) de[t[0]] = function () {
|
||
return a(r.apply(this, arguments), t[1], t[2])
|
||
};
|
||
if (n) de[n] = function () {
|
||
return this.localeData().ordinal(r.apply(this, arguments), e)
|
||
}
|
||
}
|
||
|
||
function le(e) {
|
||
if (e.match(/\[[\s\S]/)) return e.replace(/^\[|\]$/g, "");
|
||
return e.replace(/\\/g, "")
|
||
}
|
||
|
||
function he(i) {
|
||
var r = i.match(se), e, a;
|
||
for (e = 0, a = r.length; e < a; e++) if (de[r[e]]) r[e] = de[r[e]]; else r[e] = le(r[e]);
|
||
return function (e) {
|
||
var t = "", n;
|
||
for (n = 0; n < a; n++) t += f(r[n]) ? r[n].call(e, i) : r[n];
|
||
return t
|
||
}
|
||
}
|
||
|
||
function ce(e, t) {
|
||
if (!e.isValid()) return e.localeData().invalidDate();
|
||
t = _e(t, e.localeData());
|
||
ue[t] = ue[t] || he(t);
|
||
return ue[t](e)
|
||
}
|
||
|
||
function _e(e, t) {
|
||
var n = 5;
|
||
|
||
function i(e) {
|
||
return t.longDateFormat(e) || e
|
||
}
|
||
|
||
oe.lastIndex = 0;
|
||
while (n >= 0 && oe.test(e)) {
|
||
e = e.replace(oe, i);
|
||
oe.lastIndex = 0;
|
||
n -= 1
|
||
}
|
||
return e
|
||
}
|
||
|
||
var fe = {
|
||
LTS: "h:mm:ss A",
|
||
LT: "h:mm A",
|
||
L: "MM/DD/YYYY",
|
||
LL: "MMMM D, YYYY",
|
||
LLL: "MMMM D, YYYY h:mm A",
|
||
LLLL: "dddd, MMMM D, YYYY h:mm A"
|
||
};
|
||
|
||
function me(e) {
|
||
var t = this._longDateFormat[e], n = this._longDateFormat[e.toUpperCase()];
|
||
if (t || !n) return t;
|
||
this._longDateFormat[e] = n.match(se).map(function (e) {
|
||
if (e === "MMMM" || e === "MM" || e === "DD" || e === "dddd") return e.slice(1);
|
||
return e
|
||
}).join("");
|
||
return this._longDateFormat[e]
|
||
}
|
||
|
||
var pe = "Invalid date";
|
||
|
||
function ye() {
|
||
return this._invalidDate
|
||
}
|
||
|
||
var ve = "%d", ge = /\d{1,2}/;
|
||
|
||
function Me(e) {
|
||
return this._ordinal.replace("%d", e)
|
||
}
|
||
|
||
var Le = {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d seconds",
|
||
m: "a minute",
|
||
mm: "%d minutes",
|
||
h: "an hour",
|
||
hh: "%d hours",
|
||
d: "a day",
|
||
dd: "%d days",
|
||
w: "a week",
|
||
ww: "%d weeks",
|
||
M: "a month",
|
||
MM: "%d months",
|
||
y: "a year",
|
||
yy: "%d years"
|
||
};
|
||
|
||
function Se(e, t, n, i) {
|
||
var r = this._relativeTime[n];
|
||
return f(r) ? r(e, t, n, i) : r.replace(/%d/i, e)
|
||
}
|
||
|
||
function ke(e, t) {
|
||
var n = this._relativeTime[e > 0 ? "future" : "past"];
|
||
return f(n) ? n(t) : n.replace(/%s/i, t)
|
||
}
|
||
|
||
var be = {};
|
||
|
||
function t(e, t) {
|
||
var n = e.toLowerCase();
|
||
be[n] = be[n + "s"] = be[t] = e
|
||
}
|
||
|
||
function m(e) {
|
||
return typeof e === "string" ? be[e] || be[e.toLowerCase()] : undefined
|
||
}
|
||
|
||
function we(e) {
|
||
var t = {}, n, i;
|
||
for (i in e) if (u(e, i)) {
|
||
n = m(i);
|
||
if (n) t[n] = e[i]
|
||
}
|
||
return t
|
||
}
|
||
|
||
var De = {};
|
||
|
||
function n(e, t) {
|
||
De[e] = t
|
||
}
|
||
|
||
function Te(e) {
|
||
var t = [], n;
|
||
for (n in e) if (u(e, n)) t.push({unit: n, priority: De[n]});
|
||
t.sort(function (e, t) {
|
||
return e.priority - t.priority
|
||
});
|
||
return t
|
||
}
|
||
|
||
function Ee(e) {
|
||
return e % 4 === 0 && e % 100 !== 0 || e % 400 === 0
|
||
}
|
||
|
||
function p(e) {
|
||
if (e < 0) return Math.ceil(e) || 0; else return Math.floor(e)
|
||
}
|
||
|
||
function y(e) {
|
||
var t = +e, n = 0;
|
||
if (t !== 0 && isFinite(t)) n = p(t);
|
||
return n
|
||
}
|
||
|
||
function Ye(t, n) {
|
||
return function (e) {
|
||
if (e != null) {
|
||
Ce(this, t, e);
|
||
h.updateOffset(this, n);
|
||
return this
|
||
} else return Pe(this, t)
|
||
}
|
||
}
|
||
|
||
function Pe(e, t) {
|
||
return e.isValid() ? e._d["get" + (e._isUTC ? "UTC" : "") + t]() : NaN
|
||
}
|
||
|
||
function Ce(e, t, n) {
|
||
if (e.isValid() && !isNaN(n)) if (t === "FullYear" && Ee(e.year()) && e.month() === 1 && e.date() === 29) {
|
||
n = y(n);
|
||
e._d["set" + (e._isUTC ? "UTC" : "") + t](n, e.month(), at(n, e.month()))
|
||
} else e._d["set" + (e._isUTC ? "UTC" : "") + t](n)
|
||
}
|
||
|
||
function Re(e) {
|
||
e = m(e);
|
||
if (f(this[e])) return this[e]();
|
||
return this
|
||
}
|
||
|
||
function Ae(e, t) {
|
||
if (typeof e === "object") {
|
||
e = we(e);
|
||
var n = Te(e), i, r = n.length;
|
||
for (i = 0; i < r; i++) this[n[i].unit](e[n[i].unit])
|
||
} else {
|
||
e = m(e);
|
||
if (f(this[e])) return this[e](t)
|
||
}
|
||
return this
|
||
}
|
||
|
||
var xe = /\d/, r = /\d\d/, Oe = /\d{3}/, Ie = /\d{4}/, We = /[+-]?\d{6}/, v = /\d\d?/, He = /\d\d\d\d?/,
|
||
je = /\d\d\d\d\d\d?/, Fe = /\d{1,3}/, Be = /\d{1,4}/, Ne = /[+-]?\d{1,6}/, ze = /\d+/,
|
||
Ue = /[+-]?\d+/, Ve = /Z|[+-]\d\d:?\d\d/gi, Ge = /Z|[+-]\d\d(?::?\d\d)?/gi,
|
||
Je = /[+-]?\d+(\.\d{1,3})?/,
|
||
qe = /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,
|
||
Ke;
|
||
|
||
function g(e, n, i) {
|
||
Ke[e] = f(n) ? n : function (e, t) {
|
||
return e && i ? i : n
|
||
}
|
||
}
|
||
|
||
function Xe(e, t) {
|
||
if (!u(Ke, e)) return new RegExp(Ze(e));
|
||
return Ke[e](t._strict, t._locale)
|
||
}
|
||
|
||
function Ze(e) {
|
||
return M(e.replace("\\", "").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, function (e, t, n, i, r) {
|
||
return t || n || i || r
|
||
}))
|
||
}
|
||
|
||
function M(e) {
|
||
return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&")
|
||
}
|
||
|
||
var Ke = {}, $e = {};
|
||
|
||
function L(e, n) {
|
||
var t, i = n, r;
|
||
if (typeof e === "string") e = [e];
|
||
if (d(n)) i = function (e, t) {
|
||
t[n] = y(e)
|
||
};
|
||
r = e.length;
|
||
for (t = 0; t < r; t++) $e[e[t]] = i
|
||
}
|
||
|
||
function Qe(e, r) {
|
||
L(e, function (e, t, n, i) {
|
||
n._w = n._w || {};
|
||
r(e, n._w, n, i)
|
||
})
|
||
}
|
||
|
||
function et(e, t, n) {
|
||
if (t != null && u($e, e)) $e[e](t, n._a, n, e)
|
||
}
|
||
|
||
var S = 0, k = 1, b = 2, w = 3, D = 4, T = 5, tt = 6, nt = 7, it = 8, E;
|
||
|
||
function rt(e, t) {
|
||
return (e % t + t) % t
|
||
}
|
||
|
||
if (Array.prototype.indexOf) E = Array.prototype.indexOf; else E = function (e) {
|
||
var t;
|
||
for (t = 0; t < this.length; ++t) if (this[t] === e) return t;
|
||
return -1
|
||
};
|
||
|
||
function at(e, t) {
|
||
if (isNaN(e) || isNaN(t)) return NaN;
|
||
var n = rt(t, 12);
|
||
e += (t - n) / 12;
|
||
return n === 1 ? Ee(e) ? 29 : 28 : 31 - n % 7 % 2
|
||
}
|
||
|
||
i("M", ["MM", 2], "Mo", function () {
|
||
return this.month() + 1
|
||
}), i("MMM", 0, 0, function (e) {
|
||
return this.localeData().monthsShort(this, e)
|
||
}), i("MMMM", 0, 0, function (e) {
|
||
return this.localeData().months(this, e)
|
||
}), t("month", "M"), n("month", 8), g("M", v), g("MM", v, r), g("MMM", function (e, t) {
|
||
return t.monthsShortRegex(e)
|
||
}), g("MMMM", function (e, t) {
|
||
return t.monthsRegex(e)
|
||
}), L(["M", "MM"], function (e, t) {
|
||
t[k] = y(e) - 1
|
||
}), L(["MMM", "MMMM"], function (e, t, n, i) {
|
||
var r = n._locale.monthsParse(e, i, n._strict);
|
||
if (r != null) t[k] = r; else c(n).invalidMonth = e
|
||
});
|
||
var st = "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
ot = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
ut = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, dt = qe, lt = qe;
|
||
|
||
function ht(e, t) {
|
||
if (!e) return s(this._months) ? this._months : this._months["standalone"];
|
||
return s(this._months) ? this._months[e.month()] : this._months[(this._months.isFormat || ut).test(t) ? "format" : "standalone"][e.month()]
|
||
}
|
||
|
||
function ct(e, t) {
|
||
if (!e) return s(this._monthsShort) ? this._monthsShort : this._monthsShort["standalone"];
|
||
return s(this._monthsShort) ? this._monthsShort[e.month()] : this._monthsShort[ut.test(t) ? "format" : "standalone"][e.month()]
|
||
}
|
||
|
||
function _t(e, t, n) {
|
||
var i, r, a, s = e.toLocaleLowerCase();
|
||
if (!this._monthsParse) {
|
||
this._monthsParse = [];
|
||
this._longMonthsParse = [];
|
||
this._shortMonthsParse = [];
|
||
for (i = 0; i < 12; ++i) {
|
||
a = l([2e3, i]);
|
||
this._shortMonthsParse[i] = this.monthsShort(a, "").toLocaleLowerCase();
|
||
this._longMonthsParse[i] = this.months(a, "").toLocaleLowerCase()
|
||
}
|
||
}
|
||
if (n) if (t === "MMM") {
|
||
r = E.call(this._shortMonthsParse, s);
|
||
return r !== -1 ? r : null
|
||
} else {
|
||
r = E.call(this._longMonthsParse, s);
|
||
return r !== -1 ? r : null
|
||
} else if (t === "MMM") {
|
||
r = E.call(this._shortMonthsParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._longMonthsParse, s);
|
||
return r !== -1 ? r : null
|
||
} else {
|
||
r = E.call(this._longMonthsParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._shortMonthsParse, s);
|
||
return r !== -1 ? r : null
|
||
}
|
||
}
|
||
|
||
function ft(e, t, n) {
|
||
var i, r, a;
|
||
if (this._monthsParseExact) return _t.call(this, e, t, n);
|
||
if (!this._monthsParse) {
|
||
this._monthsParse = [];
|
||
this._longMonthsParse = [];
|
||
this._shortMonthsParse = []
|
||
}
|
||
for (i = 0; i < 12; i++) {
|
||
r = l([2e3, i]);
|
||
if (n && !this._longMonthsParse[i]) {
|
||
this._longMonthsParse[i] = new RegExp("^" + this.months(r, "").replace(".", "") + "$", "i");
|
||
this._shortMonthsParse[i] = new RegExp("^" + this.monthsShort(r, "").replace(".", "") + "$", "i")
|
||
}
|
||
if (!n && !this._monthsParse[i]) {
|
||
a = "^" + this.months(r, "") + "|^" + this.monthsShort(r, "");
|
||
this._monthsParse[i] = new RegExp(a.replace(".", ""), "i")
|
||
}
|
||
if (n && t === "MMMM" && this._longMonthsParse[i].test(e)) return i; else if (n && t === "MMM" && this._shortMonthsParse[i].test(e)) return i; else if (!n && this._monthsParse[i].test(e)) return i
|
||
}
|
||
}
|
||
|
||
function mt(e, t) {
|
||
var n;
|
||
if (!e.isValid()) return e;
|
||
if (typeof t === "string") if (/^\d+$/.test(t)) t = y(t); else {
|
||
t = e.localeData().monthsParse(t);
|
||
if (!d(t)) return e
|
||
}
|
||
n = Math.min(e.date(), at(e.year(), t));
|
||
e._d["set" + (e._isUTC ? "UTC" : "") + "Month"](t, n);
|
||
return e
|
||
}
|
||
|
||
function pt(e) {
|
||
if (e != null) {
|
||
mt(this, e);
|
||
h.updateOffset(this, true);
|
||
return this
|
||
} else return Pe(this, "Month")
|
||
}
|
||
|
||
function yt() {
|
||
return at(this.year(), this.month())
|
||
}
|
||
|
||
function vt(e) {
|
||
if (this._monthsParseExact) {
|
||
if (!u(this, "_monthsRegex")) Mt.call(this);
|
||
if (e) return this._monthsShortStrictRegex; else return this._monthsShortRegex
|
||
} else {
|
||
if (!u(this, "_monthsShortRegex")) this._monthsShortRegex = dt;
|
||
return this._monthsShortStrictRegex && e ? this._monthsShortStrictRegex : this._monthsShortRegex
|
||
}
|
||
}
|
||
|
||
function gt(e) {
|
||
if (this._monthsParseExact) {
|
||
if (!u(this, "_monthsRegex")) Mt.call(this);
|
||
if (e) return this._monthsStrictRegex; else return this._monthsRegex
|
||
} else {
|
||
if (!u(this, "_monthsRegex")) this._monthsRegex = lt;
|
||
return this._monthsStrictRegex && e ? this._monthsStrictRegex : this._monthsRegex
|
||
}
|
||
}
|
||
|
||
function Mt() {
|
||
function e(e, t) {
|
||
return t.length - e.length
|
||
}
|
||
|
||
var t = [], n = [], i = [], r, a;
|
||
for (r = 0; r < 12; r++) {
|
||
a = l([2e3, r]);
|
||
t.push(this.monthsShort(a, ""));
|
||
n.push(this.months(a, ""));
|
||
i.push(this.months(a, ""));
|
||
i.push(this.monthsShort(a, ""))
|
||
}
|
||
t.sort(e);
|
||
n.sort(e);
|
||
i.sort(e);
|
||
for (r = 0; r < 12; r++) {
|
||
t[r] = M(t[r]);
|
||
n[r] = M(n[r])
|
||
}
|
||
for (r = 0; r < 24; r++) i[r] = M(i[r]);
|
||
this._monthsRegex = new RegExp("^(" + i.join("|") + ")", "i");
|
||
this._monthsShortRegex = this._monthsRegex;
|
||
this._monthsStrictRegex = new RegExp("^(" + n.join("|") + ")", "i");
|
||
this._monthsShortStrictRegex = new RegExp("^(" + t.join("|") + ")", "i")
|
||
}
|
||
|
||
function Lt(e) {
|
||
return Ee(e) ? 366 : 365
|
||
}
|
||
|
||
i("Y", 0, 0, function () {
|
||
var e = this.year();
|
||
return e <= 9999 ? a(e, 4) : "+" + e
|
||
}), i(0, ["YY", 2], 0, function () {
|
||
return this.year() % 100
|
||
}), i(0, ["YYYY", 4], 0, "year"), i(0, ["YYYYY", 5], 0, "year"), i(0, ["YYYYYY", 6, true], 0, "year"), t("year", "y"), n("year", 1), g("Y", Ue), g("YY", v, r), g("YYYY", Be, Ie), g("YYYYY", Ne, We), g("YYYYYY", Ne, We), L(["YYYYY", "YYYYYY"], S), L("YYYY", function (e, t) {
|
||
t[S] = e.length === 2 ? h.parseTwoDigitYear(e) : y(e)
|
||
}), L("YY", function (e, t) {
|
||
t[S] = h.parseTwoDigitYear(e)
|
||
}), L("Y", function (e, t) {
|
||
t[S] = parseInt(e, 10)
|
||
}), h.parseTwoDigitYear = function (e) {
|
||
return y(e) + (y(e) > 68 ? 1900 : 2e3)
|
||
};
|
||
var St = Ye("FullYear", true);
|
||
|
||
function kt() {
|
||
return Ee(this.year())
|
||
}
|
||
|
||
function bt(e, t, n, i, r, a, s) {
|
||
var o;
|
||
if (e < 100 && e >= 0) {
|
||
o = new Date(e + 400, t, n, i, r, a, s);
|
||
if (isFinite(o.getFullYear())) o.setFullYear(e)
|
||
} else o = new Date(e, t, n, i, r, a, s);
|
||
return o
|
||
}
|
||
|
||
function wt(e) {
|
||
var t, n;
|
||
if (e < 100 && e >= 0) {
|
||
n = Array.prototype.slice.call(arguments);
|
||
n[0] = e + 400;
|
||
t = new Date(Date.UTC.apply(null, n));
|
||
if (isFinite(t.getUTCFullYear())) t.setUTCFullYear(e)
|
||
} else t = new Date(Date.UTC.apply(null, arguments));
|
||
return t
|
||
}
|
||
|
||
function Dt(e, t, n) {
|
||
var i = 7 + t - n, r = (7 + wt(e, 0, i).getUTCDay() - t) % 7;
|
||
return -r + i - 1
|
||
}
|
||
|
||
function Tt(e, t, n, i, r) {
|
||
var a = (7 + n - i) % 7, s = Dt(e, i, r), o = 1 + 7 * (t - 1) + a + s, u, d;
|
||
if (o <= 0) {
|
||
u = e - 1;
|
||
d = Lt(u) + o
|
||
} else if (o > Lt(e)) {
|
||
u = e + 1;
|
||
d = o - Lt(e)
|
||
} else {
|
||
u = e;
|
||
d = o
|
||
}
|
||
return {year: u, dayOfYear: d}
|
||
}
|
||
|
||
function Et(e, t, n) {
|
||
var i = Dt(e.year(), t, n), r = Math.floor((e.dayOfYear() - i - 1) / 7) + 1, a, s;
|
||
if (r < 1) {
|
||
s = e.year() - 1;
|
||
a = r + Y(s, t, n)
|
||
} else if (r > Y(e.year(), t, n)) {
|
||
a = r - Y(e.year(), t, n);
|
||
s = e.year() + 1
|
||
} else {
|
||
s = e.year();
|
||
a = r
|
||
}
|
||
return {week: a, year: s}
|
||
}
|
||
|
||
function Y(e, t, n) {
|
||
var i = Dt(e, t, n), r = Dt(e + 1, t, n);
|
||
return (Lt(e) - i + r) / 7
|
||
}
|
||
|
||
function Yt(e) {
|
||
return Et(e, this._week.dow, this._week.doy).week
|
||
}
|
||
|
||
i("w", ["ww", 2], "wo", "week"), i("W", ["WW", 2], "Wo", "isoWeek"), t("week", "w"), t("isoWeek", "W"), n("week", 5), n("isoWeek", 5), g("w", v), g("ww", v, r), g("W", v), g("WW", v, r), Qe(["w", "ww", "W", "WW"], function (e, t, n, i) {
|
||
t[i.substr(0, 1)] = y(e)
|
||
});
|
||
var Pt = {dow: 0, doy: 6};
|
||
|
||
function Ct() {
|
||
return this._week.dow
|
||
}
|
||
|
||
function Rt() {
|
||
return this._week.doy
|
||
}
|
||
|
||
function At(e) {
|
||
var t = this.localeData().week(this);
|
||
return e == null ? t : this.add((e - t) * 7, "d")
|
||
}
|
||
|
||
function xt(e) {
|
||
var t = Et(this, 1, 4).week;
|
||
return e == null ? t : this.add((e - t) * 7, "d")
|
||
}
|
||
|
||
function Ot(e, t) {
|
||
if (typeof e !== "string") return e;
|
||
if (!isNaN(e)) return parseInt(e, 10);
|
||
e = t.weekdaysParse(e);
|
||
if (typeof e === "number") return e;
|
||
return null
|
||
}
|
||
|
||
function It(e, t) {
|
||
if (typeof e === "string") return t.weekdaysParse(e) % 7 || 7;
|
||
return isNaN(e) ? null : e
|
||
}
|
||
|
||
function Wt(e, t) {
|
||
return e.slice(t, 7).concat(e.slice(0, t))
|
||
}
|
||
|
||
i("d", 0, "do", "day"), i("dd", 0, 0, function (e) {
|
||
return this.localeData().weekdaysMin(this, e)
|
||
}), i("ddd", 0, 0, function (e) {
|
||
return this.localeData().weekdaysShort(this, e)
|
||
}), i("dddd", 0, 0, function (e) {
|
||
return this.localeData().weekdays(this, e)
|
||
}), i("e", 0, 0, "weekday"), i("E", 0, 0, "isoWeekday"), t("day", "d"), t("weekday", "e"), t("isoWeekday", "E"), n("day", 11), n("weekday", 11), n("isoWeekday", 11), g("d", v), g("e", v), g("E", v), g("dd", function (e, t) {
|
||
return t.weekdaysMinRegex(e)
|
||
}), g("ddd", function (e, t) {
|
||
return t.weekdaysShortRegex(e)
|
||
}), g("dddd", function (e, t) {
|
||
return t.weekdaysRegex(e)
|
||
}), Qe(["dd", "ddd", "dddd"], function (e, t, n, i) {
|
||
var r = n._locale.weekdaysParse(e, i, n._strict);
|
||
if (r != null) t.d = r; else c(n).invalidWeekday = e
|
||
}), Qe(["d", "e", "E"], function (e, t, n, i) {
|
||
t[i] = y(e)
|
||
});
|
||
var Ht = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
jt = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), Ft = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), Bt = qe,
|
||
Nt = qe, zt = qe;
|
||
|
||
function Ut(e, t) {
|
||
var n = s(this._weekdays) ? this._weekdays : this._weekdays[e && e !== true && this._weekdays.isFormat.test(t) ? "format" : "standalone"];
|
||
return e === true ? Wt(n, this._week.dow) : e ? n[e.day()] : n
|
||
}
|
||
|
||
function Vt(e) {
|
||
return e === true ? Wt(this._weekdaysShort, this._week.dow) : e ? this._weekdaysShort[e.day()] : this._weekdaysShort
|
||
}
|
||
|
||
function Gt(e) {
|
||
return e === true ? Wt(this._weekdaysMin, this._week.dow) : e ? this._weekdaysMin[e.day()] : this._weekdaysMin
|
||
}
|
||
|
||
function Jt(e, t, n) {
|
||
var i, r, a, s = e.toLocaleLowerCase();
|
||
if (!this._weekdaysParse) {
|
||
this._weekdaysParse = [];
|
||
this._shortWeekdaysParse = [];
|
||
this._minWeekdaysParse = [];
|
||
for (i = 0; i < 7; ++i) {
|
||
a = l([2e3, 1]).day(i);
|
||
this._minWeekdaysParse[i] = this.weekdaysMin(a, "").toLocaleLowerCase();
|
||
this._shortWeekdaysParse[i] = this.weekdaysShort(a, "").toLocaleLowerCase();
|
||
this._weekdaysParse[i] = this.weekdays(a, "").toLocaleLowerCase()
|
||
}
|
||
}
|
||
if (n) if (t === "dddd") {
|
||
r = E.call(this._weekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
} else if (t === "ddd") {
|
||
r = E.call(this._shortWeekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
} else {
|
||
r = E.call(this._minWeekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
} else if (t === "dddd") {
|
||
r = E.call(this._weekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._shortWeekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._minWeekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
} else if (t === "ddd") {
|
||
r = E.call(this._shortWeekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._weekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._minWeekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
} else {
|
||
r = E.call(this._minWeekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._weekdaysParse, s);
|
||
if (r !== -1) return r;
|
||
r = E.call(this._shortWeekdaysParse, s);
|
||
return r !== -1 ? r : null
|
||
}
|
||
}
|
||
|
||
function qt(e, t, n) {
|
||
var i, r, a;
|
||
if (this._weekdaysParseExact) return Jt.call(this, e, t, n);
|
||
if (!this._weekdaysParse) {
|
||
this._weekdaysParse = [];
|
||
this._minWeekdaysParse = [];
|
||
this._shortWeekdaysParse = [];
|
||
this._fullWeekdaysParse = []
|
||
}
|
||
for (i = 0; i < 7; i++) {
|
||
r = l([2e3, 1]).day(i);
|
||
if (n && !this._fullWeekdaysParse[i]) {
|
||
this._fullWeekdaysParse[i] = new RegExp("^" + this.weekdays(r, "").replace(".", "\\.?") + "$", "i");
|
||
this._shortWeekdaysParse[i] = new RegExp("^" + this.weekdaysShort(r, "").replace(".", "\\.?") + "$", "i");
|
||
this._minWeekdaysParse[i] = new RegExp("^" + this.weekdaysMin(r, "").replace(".", "\\.?") + "$", "i")
|
||
}
|
||
if (!this._weekdaysParse[i]) {
|
||
a = "^" + this.weekdays(r, "") + "|^" + this.weekdaysShort(r, "") + "|^" + this.weekdaysMin(r, "");
|
||
this._weekdaysParse[i] = new RegExp(a.replace(".", ""), "i")
|
||
}
|
||
if (n && t === "dddd" && this._fullWeekdaysParse[i].test(e)) return i; else if (n && t === "ddd" && this._shortWeekdaysParse[i].test(e)) return i; else if (n && t === "dd" && this._minWeekdaysParse[i].test(e)) return i; else if (!n && this._weekdaysParse[i].test(e)) return i
|
||
}
|
||
}
|
||
|
||
function Kt(e) {
|
||
if (!this.isValid()) return e != null ? this : NaN;
|
||
var t = this._isUTC ? this._d.getUTCDay() : this._d.getDay();
|
||
if (e != null) {
|
||
e = Ot(e, this.localeData());
|
||
return this.add(e - t, "d")
|
||
} else return t
|
||
}
|
||
|
||
function Xt(e) {
|
||
if (!this.isValid()) return e != null ? this : NaN;
|
||
var t = (this.day() + 7 - this.localeData()._week.dow) % 7;
|
||
return e == null ? t : this.add(e - t, "d")
|
||
}
|
||
|
||
function Zt(e) {
|
||
if (!this.isValid()) return e != null ? this : NaN;
|
||
if (e != null) {
|
||
var t = It(e, this.localeData());
|
||
return this.day(this.day() % 7 ? t : t - 7)
|
||
} else return this.day() || 7
|
||
}
|
||
|
||
function $t(e) {
|
||
if (this._weekdaysParseExact) {
|
||
if (!u(this, "_weekdaysRegex")) tn.call(this);
|
||
if (e) return this._weekdaysStrictRegex; else return this._weekdaysRegex
|
||
} else {
|
||
if (!u(this, "_weekdaysRegex")) this._weekdaysRegex = Bt;
|
||
return this._weekdaysStrictRegex && e ? this._weekdaysStrictRegex : this._weekdaysRegex
|
||
}
|
||
}
|
||
|
||
function Qt(e) {
|
||
if (this._weekdaysParseExact) {
|
||
if (!u(this, "_weekdaysRegex")) tn.call(this);
|
||
if (e) return this._weekdaysShortStrictRegex; else return this._weekdaysShortRegex
|
||
} else {
|
||
if (!u(this, "_weekdaysShortRegex")) this._weekdaysShortRegex = Nt;
|
||
return this._weekdaysShortStrictRegex && e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex
|
||
}
|
||
}
|
||
|
||
function en(e) {
|
||
if (this._weekdaysParseExact) {
|
||
if (!u(this, "_weekdaysRegex")) tn.call(this);
|
||
if (e) return this._weekdaysMinStrictRegex; else return this._weekdaysMinRegex
|
||
} else {
|
||
if (!u(this, "_weekdaysMinRegex")) this._weekdaysMinRegex = zt;
|
||
return this._weekdaysMinStrictRegex && e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex
|
||
}
|
||
}
|
||
|
||
function tn() {
|
||
function e(e, t) {
|
||
return t.length - e.length
|
||
}
|
||
|
||
var t = [], n = [], i = [], r = [], a, s, o, u, d;
|
||
for (a = 0; a < 7; a++) {
|
||
s = l([2e3, 1]).day(a);
|
||
o = M(this.weekdaysMin(s, ""));
|
||
u = M(this.weekdaysShort(s, ""));
|
||
d = M(this.weekdays(s, ""));
|
||
t.push(o);
|
||
n.push(u);
|
||
i.push(d);
|
||
r.push(o);
|
||
r.push(u);
|
||
r.push(d)
|
||
}
|
||
t.sort(e);
|
||
n.sort(e);
|
||
i.sort(e);
|
||
r.sort(e);
|
||
this._weekdaysRegex = new RegExp("^(" + r.join("|") + ")", "i");
|
||
this._weekdaysShortRegex = this._weekdaysRegex;
|
||
this._weekdaysMinRegex = this._weekdaysRegex;
|
||
this._weekdaysStrictRegex = new RegExp("^(" + i.join("|") + ")", "i");
|
||
this._weekdaysShortStrictRegex = new RegExp("^(" + n.join("|") + ")", "i");
|
||
this._weekdaysMinStrictRegex = new RegExp("^(" + t.join("|") + ")", "i")
|
||
}
|
||
|
||
function nn() {
|
||
return this.hours() % 12 || 12
|
||
}
|
||
|
||
function rn() {
|
||
return this.hours() || 24
|
||
}
|
||
|
||
function an(e, t) {
|
||
i(e, 0, 0, function () {
|
||
return this.localeData().meridiem(this.hours(), this.minutes(), t)
|
||
})
|
||
}
|
||
|
||
function sn(e, t) {
|
||
return t._meridiemParse
|
||
}
|
||
|
||
function on(e) {
|
||
return (e + "").toLowerCase().charAt(0) === "p"
|
||
}
|
||
|
||
i("H", ["HH", 2], 0, "hour"), i("h", ["hh", 2], 0, nn), i("k", ["kk", 2], 0, rn), i("hmm", 0, 0, function () {
|
||
return "" + nn.apply(this) + a(this.minutes(), 2)
|
||
}), i("hmmss", 0, 0, function () {
|
||
return "" + nn.apply(this) + a(this.minutes(), 2) + a(this.seconds(), 2)
|
||
}), i("Hmm", 0, 0, function () {
|
||
return "" + this.hours() + a(this.minutes(), 2)
|
||
}), i("Hmmss", 0, 0, function () {
|
||
return "" + this.hours() + a(this.minutes(), 2) + a(this.seconds(), 2)
|
||
}), an("a", true), an("A", false), t("hour", "h"), n("hour", 13), g("a", sn), g("A", sn), g("H", v), g("h", v), g("k", v), g("HH", v, r), g("hh", v, r), g("kk", v, r), g("hmm", He), g("hmmss", je), g("Hmm", He), g("Hmmss", je), L(["H", "HH"], w), L(["k", "kk"], function (e, t, n) {
|
||
var i = y(e);
|
||
t[w] = i === 24 ? 0 : i
|
||
}), L(["a", "A"], function (e, t, n) {
|
||
n._isPm = n._locale.isPM(e);
|
||
n._meridiem = e
|
||
}), L(["h", "hh"], function (e, t, n) {
|
||
t[w] = y(e);
|
||
c(n).bigHour = true
|
||
}), L("hmm", function (e, t, n) {
|
||
var i = e.length - 2;
|
||
t[w] = y(e.substr(0, i));
|
||
t[D] = y(e.substr(i));
|
||
c(n).bigHour = true
|
||
}), L("hmmss", function (e, t, n) {
|
||
var i = e.length - 4, r = e.length - 2;
|
||
t[w] = y(e.substr(0, i));
|
||
t[D] = y(e.substr(i, 2));
|
||
t[T] = y(e.substr(r));
|
||
c(n).bigHour = true
|
||
}), L("Hmm", function (e, t, n) {
|
||
var i = e.length - 2;
|
||
t[w] = y(e.substr(0, i));
|
||
t[D] = y(e.substr(i))
|
||
}), L("Hmmss", function (e, t, n) {
|
||
var i = e.length - 4, r = e.length - 2;
|
||
t[w] = y(e.substr(0, i));
|
||
t[D] = y(e.substr(i, 2));
|
||
t[T] = y(e.substr(r))
|
||
});
|
||
var un, dn = Ye("Hours", true);
|
||
|
||
function ln(e, t, n) {
|
||
if (e > 11) return n ? "pm" : "PM"; else return n ? "am" : "AM"
|
||
}
|
||
|
||
var hn = {
|
||
calendar: re,
|
||
longDateFormat: fe,
|
||
invalidDate: pe,
|
||
ordinal: ve,
|
||
dayOfMonthOrdinalParse: ge,
|
||
relativeTime: Le,
|
||
months: st,
|
||
monthsShort: ot,
|
||
week: Pt,
|
||
weekdays: Ht,
|
||
weekdaysMin: Ft,
|
||
weekdaysShort: jt,
|
||
meridiemParse: /[ap]\.?m?\.?/i
|
||
}, P = {}, cn = {}, _n;
|
||
|
||
function fn(e, t) {
|
||
var n, i = Math.min(e.length, t.length);
|
||
for (n = 0; n < i; n += 1) if (e[n] !== t[n]) return n;
|
||
return i
|
||
}
|
||
|
||
function mn(e) {
|
||
return e ? e.toLowerCase().replace("_", "-") : e
|
||
}
|
||
|
||
function pn(e) {
|
||
var t = 0, n, i, r, a;
|
||
while (t < e.length) {
|
||
a = mn(e[t]).split("-");
|
||
n = a.length;
|
||
i = mn(e[t + 1]);
|
||
i = i ? i.split("-") : null;
|
||
while (n > 0) {
|
||
r = vn(a.slice(0, n).join("-"));
|
||
if (r) return r;
|
||
if (i && i.length >= n && fn(a, i) >= n - 1) break;
|
||
n--
|
||
}
|
||
t++
|
||
}
|
||
return _n
|
||
}
|
||
|
||
function yn(e) {
|
||
return e.match("^[^/\\\\]*$") != null
|
||
}
|
||
|
||
function vn(t) {
|
||
var e = null, n;
|
||
if (P[t] === undefined && typeof ds !== "undefined" && ds && ds.exports && yn(t)) try {
|
||
e = _n._abbr;
|
||
n = ls;
|
||
hs(284)("./" + t);
|
||
gn(e)
|
||
} catch (e) {
|
||
P[t] = null
|
||
}
|
||
return P[t]
|
||
}
|
||
|
||
function gn(e, t) {
|
||
var n;
|
||
if (e) {
|
||
if (o(t)) n = Sn(e); else n = Mn(e, t);
|
||
if (n) _n = n; else if (typeof console !== "undefined" && console.warn) console.warn("Locale " + e + " not found. Did you forget to load it?")
|
||
}
|
||
return _n._abbr
|
||
}
|
||
|
||
function Mn(e, t) {
|
||
if (t !== null) {
|
||
var n, i = hn;
|
||
t.abbr = e;
|
||
if (P[e] != null) {
|
||
ee("defineLocaleOverride", "use moment.updateLocale(localeName, config) to change " + "an existing locale. moment.defineLocale(localeName, " + "config) should only be used for creating a new locale " + "See http://momentjs.com/guides/#/warnings/define-locale/ for more info.");
|
||
i = P[e]._config
|
||
} else if (t.parentLocale != null) if (P[t.parentLocale] != null) i = P[t.parentLocale]._config; else {
|
||
n = vn(t.parentLocale);
|
||
if (n != null) i = n._config; else {
|
||
if (!cn[t.parentLocale]) cn[t.parentLocale] = [];
|
||
cn[t.parentLocale].push({name: e, config: t});
|
||
return null
|
||
}
|
||
}
|
||
P[e] = new ie(ne(i, t));
|
||
if (cn[e]) cn[e].forEach(function (e) {
|
||
Mn(e.name, e.config)
|
||
});
|
||
gn(e);
|
||
return P[e]
|
||
} else {
|
||
delete P[e];
|
||
return null
|
||
}
|
||
}
|
||
|
||
function Ln(e, t) {
|
||
if (t != null) {
|
||
var n, i, r = hn;
|
||
if (P[e] != null && P[e].parentLocale != null) P[e].set(ne(P[e]._config, t)); else {
|
||
i = vn(e);
|
||
if (i != null) r = i._config;
|
||
t = ne(r, t);
|
||
if (i == null) t.abbr = e;
|
||
n = new ie(t);
|
||
n.parentLocale = P[e];
|
||
P[e] = n
|
||
}
|
||
gn(e)
|
||
} else if (P[e] != null) if (P[e].parentLocale != null) {
|
||
P[e] = P[e].parentLocale;
|
||
if (e === gn()) gn(e)
|
||
} else if (P[e] != null) delete P[e];
|
||
return P[e]
|
||
}
|
||
|
||
function Sn(e) {
|
||
var t;
|
||
if (e && e._locale && e._locale._abbr) e = e._locale._abbr;
|
||
if (!e) return _n;
|
||
if (!s(e)) {
|
||
t = vn(e);
|
||
if (t) return t;
|
||
e = [e]
|
||
}
|
||
return pn(e)
|
||
}
|
||
|
||
function kn() {
|
||
return Q(P)
|
||
}
|
||
|
||
function bn(e) {
|
||
var t, n = e._a;
|
||
if (n && c(e).overflow === -2) {
|
||
t = n[k] < 0 || n[k] > 11 ? k : n[b] < 1 || n[b] > at(n[S], n[k]) ? b : n[w] < 0 || n[w] > 24 || n[w] === 24 && (n[D] !== 0 || n[T] !== 0 || n[tt] !== 0) ? w : n[D] < 0 || n[D] > 59 ? D : n[T] < 0 || n[T] > 59 ? T : n[tt] < 0 || n[tt] > 999 ? tt : -1;
|
||
if (c(e)._overflowDayOfYear && (t < S || t > b)) t = b;
|
||
if (c(e)._overflowWeeks && t === -1) t = nt;
|
||
if (c(e)._overflowWeekday && t === -1) t = it;
|
||
c(e).overflow = t
|
||
}
|
||
return e
|
||
}
|
||
|
||
var wn = /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
|
||
Dn = /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
|
||
Tn = /Z|[+-]\d\d(?::?\d\d)?/,
|
||
En = [["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], ["GGGG-[W]WW", /\d{4}-W\d\d/, false], ["YYYY-DDD", /\d{4}-\d{3}/], ["YYYY-MM", /\d{4}-\d\d/, false], ["YYYYYYMMDD", /[+-]\d{10}/], ["YYYYMMDD", /\d{8}/], ["GGGG[W]WWE", /\d{4}W\d{3}/], ["GGGG[W]WW", /\d{4}W\d{2}/, false], ["YYYYDDD", /\d{7}/], ["YYYYMM", /\d{6}/, false], ["YYYY", /\d{4}/, false]],
|
||
Yn = [["HH:mm:ss.SSSS", /\d\d:\d\d:\d\d\.\d+/], ["HH:mm:ss,SSSS", /\d\d:\d\d:\d\d,\d+/], ["HH:mm:ss", /\d\d:\d\d:\d\d/], ["HH:mm", /\d\d:\d\d/], ["HHmmss.SSSS", /\d\d\d\d\d\d\.\d+/], ["HHmmss,SSSS", /\d\d\d\d\d\d,\d+/], ["HHmmss", /\d\d\d\d\d\d/], ["HHmm", /\d\d\d\d/], ["HH", /\d\d/]],
|
||
Pn = /^\/?Date\((-?\d+)/i,
|
||
Cn = /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,
|
||
Rn = {
|
||
UT: 0,
|
||
GMT: 0,
|
||
EDT: -4 * 60,
|
||
EST: -5 * 60,
|
||
CDT: -5 * 60,
|
||
CST: -6 * 60,
|
||
MDT: -6 * 60,
|
||
MST: -7 * 60,
|
||
PDT: -7 * 60,
|
||
PST: -8 * 60
|
||
};
|
||
|
||
function An(e) {
|
||
var t, n, i = e._i, r = wn.exec(i) || Dn.exec(i), a, s, o, u, d = En.length, l = Yn.length;
|
||
if (r) {
|
||
c(e).iso = true;
|
||
for (t = 0, n = d; t < n; t++) if (En[t][1].exec(r[1])) {
|
||
s = En[t][0];
|
||
a = En[t][2] !== false;
|
||
break
|
||
}
|
||
if (s == null) {
|
||
e._isValid = false;
|
||
return
|
||
}
|
||
if (r[3]) {
|
||
for (t = 0, n = l; t < n; t++) if (Yn[t][1].exec(r[3])) {
|
||
o = (r[2] || " ") + Yn[t][0];
|
||
break
|
||
}
|
||
if (o == null) {
|
||
e._isValid = false;
|
||
return
|
||
}
|
||
}
|
||
if (!a && o != null) {
|
||
e._isValid = false;
|
||
return
|
||
}
|
||
if (r[4]) if (Tn.exec(r[4])) u = "Z"; else {
|
||
e._isValid = false;
|
||
return
|
||
}
|
||
e._f = s + (o || "") + (u || "");
|
||
Vn(e)
|
||
} else e._isValid = false
|
||
}
|
||
|
||
function xn(e, t, n, i, r, a) {
|
||
var s = [On(e), ot.indexOf(t), parseInt(n, 10), parseInt(i, 10), parseInt(r, 10)];
|
||
if (a) s.push(parseInt(a, 10));
|
||
return s
|
||
}
|
||
|
||
function On(e) {
|
||
var t = parseInt(e, 10);
|
||
if (t <= 49) return 2e3 + t; else if (t <= 999) return 1900 + t;
|
||
return t
|
||
}
|
||
|
||
function In(e) {
|
||
return e.replace(/\([^()]*\)|[\n\t]/g, " ").replace(/(\s\s+)/g, " ").replace(/^\s\s*/, "").replace(/\s\s*$/, "")
|
||
}
|
||
|
||
function Wn(e, t, n) {
|
||
if (e) {
|
||
var i = jt.indexOf(e), r = new Date(t[0], t[1], t[2]).getDay();
|
||
if (i !== r) {
|
||
c(n).weekdayMismatch = true;
|
||
n._isValid = false;
|
||
return false
|
||
}
|
||
}
|
||
return true
|
||
}
|
||
|
||
function Hn(e, t, n) {
|
||
if (e) return Rn[e]; else if (t) return 0; else {
|
||
var i = parseInt(n, 10), r = i % 100, a = (i - r) / 100;
|
||
return a * 60 + r
|
||
}
|
||
}
|
||
|
||
function jn(e) {
|
||
var t = Cn.exec(In(e._i)), n;
|
||
if (t) {
|
||
n = xn(t[4], t[3], t[2], t[5], t[6], t[7]);
|
||
if (!Wn(t[1], n, e)) return;
|
||
e._a = n;
|
||
e._tzm = Hn(t[8], t[9], t[10]);
|
||
e._d = wt.apply(null, e._a);
|
||
e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm);
|
||
c(e).rfc2822 = true
|
||
} else e._isValid = false
|
||
}
|
||
|
||
function Fn(e) {
|
||
var t = Pn.exec(e._i);
|
||
if (t !== null) {
|
||
e._d = new Date(+t[1]);
|
||
return
|
||
}
|
||
An(e);
|
||
if (e._isValid === false) delete e._isValid; else return;
|
||
jn(e);
|
||
if (e._isValid === false) delete e._isValid; else return;
|
||
if (e._strict) e._isValid = false; else h.createFromInputFallback(e)
|
||
}
|
||
|
||
function Bn(e, t, n) {
|
||
if (e != null) return e;
|
||
if (t != null) return t;
|
||
return n
|
||
}
|
||
|
||
function Nn(e) {
|
||
var t = new Date(h.now());
|
||
if (e._useUTC) return [t.getUTCFullYear(), t.getUTCMonth(), t.getUTCDate()];
|
||
return [t.getFullYear(), t.getMonth(), t.getDate()]
|
||
}
|
||
|
||
function zn(e) {
|
||
var t, n, i = [], r, a, s;
|
||
if (e._d) return;
|
||
r = Nn(e);
|
||
if (e._w && e._a[b] == null && e._a[k] == null) Un(e);
|
||
if (e._dayOfYear != null) {
|
||
s = Bn(e._a[S], r[S]);
|
||
if (e._dayOfYear > Lt(s) || e._dayOfYear === 0) c(e)._overflowDayOfYear = true;
|
||
n = wt(s, 0, e._dayOfYear);
|
||
e._a[k] = n.getUTCMonth();
|
||
e._a[b] = n.getUTCDate()
|
||
}
|
||
for (t = 0; t < 3 && e._a[t] == null; ++t) e._a[t] = i[t] = r[t];
|
||
for (; t < 7; t++) e._a[t] = i[t] = e._a[t] == null ? t === 2 ? 1 : 0 : e._a[t];
|
||
if (e._a[w] === 24 && e._a[D] === 0 && e._a[T] === 0 && e._a[tt] === 0) {
|
||
e._nextDay = true;
|
||
e._a[w] = 0
|
||
}
|
||
e._d = (e._useUTC ? wt : bt).apply(null, i);
|
||
a = e._useUTC ? e._d.getUTCDay() : e._d.getDay();
|
||
if (e._tzm != null) e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm);
|
||
if (e._nextDay) e._a[w] = 24;
|
||
if (e._w && typeof e._w.d !== "undefined" && e._w.d !== a) c(e).weekdayMismatch = true
|
||
}
|
||
|
||
function Un(e) {
|
||
var t, n, i, r, a, s, o, u, d;
|
||
t = e._w;
|
||
if (t.GG != null || t.W != null || t.E != null) {
|
||
a = 1;
|
||
s = 4;
|
||
n = Bn(t.GG, e._a[S], Et(C(), 1, 4).year);
|
||
i = Bn(t.W, 1);
|
||
r = Bn(t.E, 1);
|
||
if (r < 1 || r > 7) u = true
|
||
} else {
|
||
a = e._locale._week.dow;
|
||
s = e._locale._week.doy;
|
||
d = Et(C(), a, s);
|
||
n = Bn(t.gg, e._a[S], d.year);
|
||
i = Bn(t.w, d.week);
|
||
if (t.d != null) {
|
||
r = t.d;
|
||
if (r < 0 || r > 6) u = true
|
||
} else if (t.e != null) {
|
||
r = t.e + a;
|
||
if (t.e < 0 || t.e > 6) u = true
|
||
} else r = a
|
||
}
|
||
if (i < 1 || i > Y(n, a, s)) c(e)._overflowWeeks = true; else if (u != null) c(e)._overflowWeekday = true; else {
|
||
o = Tt(n, i, r, a, s);
|
||
e._a[S] = o.year;
|
||
e._dayOfYear = o.dayOfYear
|
||
}
|
||
}
|
||
|
||
function Vn(e) {
|
||
if (e._f === h.ISO_8601) {
|
||
An(e);
|
||
return
|
||
}
|
||
if (e._f === h.RFC_2822) {
|
||
jn(e);
|
||
return
|
||
}
|
||
e._a = [];
|
||
c(e).empty = true;
|
||
var t = "" + e._i, n, i, r, a, s, o = t.length, u = 0, d, l;
|
||
r = _e(e._f, e._locale).match(se) || [];
|
||
l = r.length;
|
||
for (n = 0; n < l; n++) {
|
||
a = r[n];
|
||
i = (t.match(Xe(a, e)) || [])[0];
|
||
if (i) {
|
||
s = t.substr(0, t.indexOf(i));
|
||
if (s.length > 0) c(e).unusedInput.push(s);
|
||
t = t.slice(t.indexOf(i) + i.length);
|
||
u += i.length
|
||
}
|
||
if (de[a]) {
|
||
if (i) c(e).empty = false; else c(e).unusedTokens.push(a);
|
||
et(a, i, e)
|
||
} else if (e._strict && !i) c(e).unusedTokens.push(a)
|
||
}
|
||
c(e).charsLeftOver = o - u;
|
||
if (t.length > 0) c(e).unusedInput.push(t);
|
||
if (e._a[w] <= 12 && c(e).bigHour === true && e._a[w] > 0) c(e).bigHour = undefined;
|
||
c(e).parsedDateParts = e._a.slice(0);
|
||
c(e).meridiem = e._meridiem;
|
||
e._a[w] = Gn(e._locale, e._a[w], e._meridiem);
|
||
d = c(e).era;
|
||
if (d !== null) e._a[S] = e._locale.erasConvertYear(d, e._a[S]);
|
||
zn(e);
|
||
bn(e)
|
||
}
|
||
|
||
function Gn(e, t, n) {
|
||
var i;
|
||
if (n == null) return t;
|
||
if (e.meridiemHour != null) return e.meridiemHour(t, n); else if (e.isPM != null) {
|
||
i = e.isPM(n);
|
||
if (i && t < 12) t += 12;
|
||
if (!i && t === 12) t = 0;
|
||
return t
|
||
} else return t
|
||
}
|
||
|
||
function Jn(e) {
|
||
var t, n, i, r, a, s, o = false, u = e._f.length;
|
||
if (u === 0) {
|
||
c(e).invalidFormat = true;
|
||
e._d = new Date(NaN);
|
||
return
|
||
}
|
||
for (r = 0; r < u; r++) {
|
||
a = 0;
|
||
s = false;
|
||
t = K({}, e);
|
||
if (e._useUTC != null) t._useUTC = e._useUTC;
|
||
t._f = e._f[r];
|
||
Vn(t);
|
||
if (V(t)) s = true;
|
||
a += c(t).charsLeftOver;
|
||
a += c(t).unusedTokens.length * 10;
|
||
c(t).score = a;
|
||
if (!o) {
|
||
if (i == null || a < i || s) {
|
||
i = a;
|
||
n = t;
|
||
if (s) o = true
|
||
}
|
||
} else if (a < i) {
|
||
i = a;
|
||
n = t
|
||
}
|
||
}
|
||
z(e, n || t)
|
||
}
|
||
|
||
function qn(e) {
|
||
if (e._d) return;
|
||
var t = we(e._i), n = t.day === undefined ? t.date : t.day;
|
||
e._a = N([t.year, t.month, n, t.hour, t.minute, t.second, t.millisecond], function (e) {
|
||
return e && parseInt(e, 10)
|
||
});
|
||
zn(e)
|
||
}
|
||
|
||
function Kn(e) {
|
||
var t = new X(bn(Xn(e)));
|
||
if (t._nextDay) {
|
||
t.add(1, "d");
|
||
t._nextDay = undefined
|
||
}
|
||
return t
|
||
}
|
||
|
||
function Xn(e) {
|
||
var t = e._i, n = e._f;
|
||
e._locale = e._locale || Sn(e._l);
|
||
if (t === null || n === undefined && t === "") return G({nullInput: true});
|
||
if (typeof t === "string") e._i = t = e._locale.preparse(t);
|
||
if (_(t)) return new X(bn(t)); else if (B(t)) e._d = t; else if (s(n)) Jn(e); else if (n) Vn(e); else Zn(e);
|
||
if (!V(e)) e._d = null;
|
||
return e
|
||
}
|
||
|
||
function Zn(e) {
|
||
var t = e._i;
|
||
if (o(t)) e._d = new Date(h.now()); else if (B(t)) e._d = new Date(t.valueOf()); else if (typeof t === "string") Fn(e); else if (s(t)) {
|
||
e._a = N(t.slice(0), function (e) {
|
||
return parseInt(e, 10)
|
||
});
|
||
zn(e)
|
||
} else if (j(t)) qn(e); else if (d(t)) e._d = new Date(t); else h.createFromInputFallback(e)
|
||
}
|
||
|
||
function $n(e, t, n, i, r) {
|
||
var a = {};
|
||
if (t === true || t === false) {
|
||
i = t;
|
||
t = undefined
|
||
}
|
||
if (n === true || n === false) {
|
||
i = n;
|
||
n = undefined
|
||
}
|
||
if (j(e) && F(e) || s(e) && e.length === 0) e = undefined;
|
||
a._isAMomentObject = true;
|
||
a._useUTC = a._isUTC = r;
|
||
a._l = n;
|
||
a._i = e;
|
||
a._f = t;
|
||
a._strict = i;
|
||
return Kn(a)
|
||
}
|
||
|
||
function C(e, t, n, i) {
|
||
return $n(e, t, n, i, false)
|
||
}
|
||
|
||
h.createFromInputFallback = e("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), " + "which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are " + "discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", function (e) {
|
||
e._d = new Date(e._i + (e._useUTC ? " UTC" : ""))
|
||
}), h.ISO_8601 = function () {
|
||
}, h.RFC_2822 = function () {
|
||
};
|
||
var Qn = e("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", function () {
|
||
var e = C.apply(null, arguments);
|
||
if (this.isValid() && e.isValid()) return e < this ? this : e; else return G()
|
||
}),
|
||
ei = e("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", function () {
|
||
var e = C.apply(null, arguments);
|
||
if (this.isValid() && e.isValid()) return e > this ? this : e; else return G()
|
||
});
|
||
|
||
function ti(e, t) {
|
||
var n, i;
|
||
if (t.length === 1 && s(t[0])) t = t[0];
|
||
if (!t.length) return C();
|
||
n = t[0];
|
||
for (i = 1; i < t.length; ++i) if (!t[i].isValid() || t[i][e](n)) n = t[i];
|
||
return n
|
||
}
|
||
|
||
function ni() {
|
||
var e = [].slice.call(arguments, 0);
|
||
return ti("isBefore", e)
|
||
}
|
||
|
||
function ii() {
|
||
var e = [].slice.call(arguments, 0);
|
||
return ti("isAfter", e)
|
||
}
|
||
|
||
var ri = function () {
|
||
return Date.now ? Date.now() : +new Date
|
||
}, ai = ["year", "quarter", "month", "week", "day", "hour", "minute", "second", "millisecond"];
|
||
|
||
function si(e) {
|
||
var t, n = false, i, r = ai.length;
|
||
for (t in e) if (u(e, t) && !(E.call(ai, t) !== -1 && (e[t] == null || !isNaN(e[t])))) return false;
|
||
for (i = 0; i < r; ++i) if (e[ai[i]]) {
|
||
if (n) return false;
|
||
if (parseFloat(e[ai[i]]) !== y(e[ai[i]])) n = true
|
||
}
|
||
return true
|
||
}
|
||
|
||
function oi() {
|
||
return this._isValid
|
||
}
|
||
|
||
function ui() {
|
||
return R(NaN)
|
||
}
|
||
|
||
function di(e) {
|
||
var t = we(e), n = t.year || 0, i = t.quarter || 0, r = t.month || 0, a = t.week || t.isoWeek || 0,
|
||
s = t.day || 0, o = t.hour || 0, u = t.minute || 0, d = t.second || 0, l = t.millisecond || 0;
|
||
this._isValid = si(t);
|
||
this._milliseconds = +l + d * 1e3 + u * 6e4 + o * 1e3 * 60 * 60;
|
||
this._days = +s + a * 7;
|
||
this._months = +r + i * 3 + n * 12;
|
||
this._data = {};
|
||
this._locale = Sn();
|
||
this._bubble()
|
||
}
|
||
|
||
function li(e) {
|
||
return e instanceof di
|
||
}
|
||
|
||
function hi(e) {
|
||
if (e < 0) return Math.round(-1 * e) * -1; else return Math.round(e)
|
||
}
|
||
|
||
function ci(e, t, n) {
|
||
var i = Math.min(e.length, t.length), r = Math.abs(e.length - t.length), a = 0, s;
|
||
for (s = 0; s < i; s++) if (n && e[s] !== t[s] || !n && y(e[s]) !== y(t[s])) a++;
|
||
return a + r
|
||
}
|
||
|
||
function _i(e, n) {
|
||
i(e, 0, 0, function () {
|
||
var e = this.utcOffset(), t = "+";
|
||
if (e < 0) {
|
||
e = -e;
|
||
t = "-"
|
||
}
|
||
return t + a(~~(e / 60), 2) + n + a(~~e % 60, 2)
|
||
})
|
||
}
|
||
|
||
_i("Z", ":"), _i("ZZ", ""), g("Z", Ge), g("ZZ", Ge), L(["Z", "ZZ"], function (e, t, n) {
|
||
n._useUTC = true;
|
||
n._tzm = mi(Ge, e)
|
||
});
|
||
var fi = /([\+\-]|\d\d)/gi;
|
||
|
||
function mi(e, t) {
|
||
var n = (t || "").match(e), i, r, a;
|
||
if (n === null) return null;
|
||
i = n[n.length - 1] || [];
|
||
r = (i + "").match(fi) || ["-", 0, 0];
|
||
a = +(r[1] * 60) + y(r[2]);
|
||
return a === 0 ? 0 : r[0] === "+" ? a : -a
|
||
}
|
||
|
||
function pi(e, t) {
|
||
var n, i;
|
||
if (t._isUTC) {
|
||
n = t.clone();
|
||
i = (_(e) || B(e) ? e.valueOf() : C(e).valueOf()) - n.valueOf();
|
||
n._d.setTime(n._d.valueOf() + i);
|
||
h.updateOffset(n, false);
|
||
return n
|
||
} else return C(e).local()
|
||
}
|
||
|
||
function yi(e) {
|
||
return -Math.round(e._d.getTimezoneOffset())
|
||
}
|
||
|
||
function vi(e, t, n) {
|
||
var i = this._offset || 0, r;
|
||
if (!this.isValid()) return e != null ? this : NaN;
|
||
if (e != null) {
|
||
if (typeof e === "string") {
|
||
e = mi(Ge, e);
|
||
if (e === null) return this
|
||
} else if (Math.abs(e) < 16 && !n) e = e * 60;
|
||
if (!this._isUTC && t) r = yi(this);
|
||
this._offset = e;
|
||
this._isUTC = true;
|
||
if (r != null) this.add(r, "m");
|
||
if (i !== e) if (!t || this._changeInProgress) Oi(this, R(e - i, "m"), 1, false); else if (!this._changeInProgress) {
|
||
this._changeInProgress = true;
|
||
h.updateOffset(this, true);
|
||
this._changeInProgress = null
|
||
}
|
||
return this
|
||
} else return this._isUTC ? i : yi(this)
|
||
}
|
||
|
||
function gi(e, t) {
|
||
if (e != null) {
|
||
if (typeof e !== "string") e = -e;
|
||
this.utcOffset(e, t);
|
||
return this
|
||
} else return -this.utcOffset()
|
||
}
|
||
|
||
function Mi(e) {
|
||
return this.utcOffset(0, e)
|
||
}
|
||
|
||
function Li(e) {
|
||
if (this._isUTC) {
|
||
this.utcOffset(0, e);
|
||
this._isUTC = false;
|
||
if (e) this.subtract(yi(this), "m")
|
||
}
|
||
return this
|
||
}
|
||
|
||
function Si() {
|
||
if (this._tzm != null) this.utcOffset(this._tzm, false, true); else if (typeof this._i === "string") {
|
||
var e = mi(Ve, this._i);
|
||
if (e != null) this.utcOffset(e); else this.utcOffset(0, true)
|
||
}
|
||
return this
|
||
}
|
||
|
||
function ki(e) {
|
||
if (!this.isValid()) return false;
|
||
e = e ? C(e).utcOffset() : 0;
|
||
return (this.utcOffset() - e) % 60 === 0
|
||
}
|
||
|
||
function bi() {
|
||
return this.utcOffset() > this.clone().month(0).utcOffset() || this.utcOffset() > this.clone().month(5).utcOffset()
|
||
}
|
||
|
||
function wi() {
|
||
if (!o(this._isDSTShifted)) return this._isDSTShifted;
|
||
var e = {}, t;
|
||
K(e, this);
|
||
e = Xn(e);
|
||
if (e._a) {
|
||
t = e._isUTC ? l(e._a) : C(e._a);
|
||
this._isDSTShifted = this.isValid() && ci(e._a, t.toArray()) > 0
|
||
} else this._isDSTShifted = false;
|
||
return this._isDSTShifted
|
||
}
|
||
|
||
function Di() {
|
||
return this.isValid() ? !this._isUTC : false
|
||
}
|
||
|
||
function Ti() {
|
||
return this.isValid() ? this._isUTC : false
|
||
}
|
||
|
||
function Ei() {
|
||
return this.isValid() ? this._isUTC && this._offset === 0 : false
|
||
}
|
||
|
||
h.updateOffset = function () {
|
||
};
|
||
var Yi = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,
|
||
Pi = /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;
|
||
|
||
function R(e, t) {
|
||
var n = e, i = null, r, a, s;
|
||
if (li(e)) n = {ms: e._milliseconds, d: e._days, M: e._months}; else if (d(e) || !isNaN(+e)) {
|
||
n = {};
|
||
if (t) n[t] = +e; else n.milliseconds = +e
|
||
} else if (i = Yi.exec(e)) {
|
||
r = i[1] === "-" ? -1 : 1;
|
||
n = {
|
||
y: 0,
|
||
d: y(i[b]) * r,
|
||
h: y(i[w]) * r,
|
||
m: y(i[D]) * r,
|
||
s: y(i[T]) * r,
|
||
ms: y(hi(i[tt] * 1e3)) * r
|
||
}
|
||
} else if (i = Pi.exec(e)) {
|
||
r = i[1] === "-" ? -1 : 1;
|
||
n = {
|
||
y: Ci(i[2], r),
|
||
M: Ci(i[3], r),
|
||
w: Ci(i[4], r),
|
||
d: Ci(i[5], r),
|
||
h: Ci(i[6], r),
|
||
m: Ci(i[7], r),
|
||
s: Ci(i[8], r)
|
||
}
|
||
} else if (n == null) n = {}; else if (typeof n === "object" && ("from" in n || "to" in n)) {
|
||
s = Ai(C(n.from), C(n.to));
|
||
n = {};
|
||
n.ms = s.milliseconds;
|
||
n.M = s.months
|
||
}
|
||
a = new di(n);
|
||
if (li(e) && u(e, "_locale")) a._locale = e._locale;
|
||
if (li(e) && u(e, "_isValid")) a._isValid = e._isValid;
|
||
return a
|
||
}
|
||
|
||
function Ci(e, t) {
|
||
var n = e && parseFloat(e.replace(",", "."));
|
||
return (isNaN(n) ? 0 : n) * t
|
||
}
|
||
|
||
function Ri(e, t) {
|
||
var n = {};
|
||
n.months = t.month() - e.month() + (t.year() - e.year()) * 12;
|
||
if (e.clone().add(n.months, "M").isAfter(t)) --n.months;
|
||
n.milliseconds = +t - +e.clone().add(n.months, "M");
|
||
return n
|
||
}
|
||
|
||
function Ai(e, t) {
|
||
var n;
|
||
if (!(e.isValid() && t.isValid())) return {milliseconds: 0, months: 0};
|
||
t = pi(t, e);
|
||
if (e.isBefore(t)) n = Ri(e, t); else {
|
||
n = Ri(t, e);
|
||
n.milliseconds = -n.milliseconds;
|
||
n.months = -n.months
|
||
}
|
||
return n
|
||
}
|
||
|
||
function xi(r, a) {
|
||
return function (e, t) {
|
||
var n, i;
|
||
if (t !== null && !isNaN(+t)) {
|
||
ee(a, "moment()." + a + "(period, number) is deprecated. Please use moment()." + a + "(number, period). " + "See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.");
|
||
i = e;
|
||
e = t;
|
||
t = i
|
||
}
|
||
n = R(e, t);
|
||
Oi(this, n, r);
|
||
return this
|
||
}
|
||
}
|
||
|
||
function Oi(e, t, n, i) {
|
||
var r = t._milliseconds, a = hi(t._days), s = hi(t._months);
|
||
if (!e.isValid()) return;
|
||
i = i == null ? true : i;
|
||
if (s) mt(e, Pe(e, "Month") + s * n);
|
||
if (a) Ce(e, "Date", Pe(e, "Date") + a * n);
|
||
if (r) e._d.setTime(e._d.valueOf() + r * n);
|
||
if (i) h.updateOffset(e, a || s)
|
||
}
|
||
|
||
R.fn = di.prototype, R.invalid = ui;
|
||
var Ii = xi(1, "add"), Wi = xi(-1, "subtract");
|
||
|
||
function Hi(e) {
|
||
return typeof e === "string" || e instanceof String
|
||
}
|
||
|
||
function ji(e) {
|
||
return _(e) || B(e) || Hi(e) || d(e) || Bi(e) || Fi(e) || e === null || e === undefined
|
||
}
|
||
|
||
function Fi(e) {
|
||
var t = j(e) && !F(e), n = false,
|
||
i = ["years", "year", "y", "months", "month", "M", "days", "day", "d", "dates", "date", "D", "hours", "hour", "h", "minutes", "minute", "m", "seconds", "second", "s", "milliseconds", "millisecond", "ms"],
|
||
r, a, s = i.length;
|
||
for (r = 0; r < s; r += 1) {
|
||
a = i[r];
|
||
n = n || u(e, a)
|
||
}
|
||
return t && n
|
||
}
|
||
|
||
function Bi(t) {
|
||
var e = s(t), n = false;
|
||
if (e) n = t.filter(function (e) {
|
||
return !d(e) && Hi(t)
|
||
}).length === 0;
|
||
return e && n
|
||
}
|
||
|
||
function Ni(e) {
|
||
var t = j(e) && !F(e), n = false,
|
||
i = ["sameDay", "nextDay", "lastDay", "nextWeek", "lastWeek", "sameElse"], r, a;
|
||
for (r = 0; r < i.length; r += 1) {
|
||
a = i[r];
|
||
n = n || u(e, a)
|
||
}
|
||
return t && n
|
||
}
|
||
|
||
function zi(e, t) {
|
||
var n = e.diff(t, "days", true);
|
||
return n < -6 ? "sameElse" : n < -1 ? "lastWeek" : n < 0 ? "lastDay" : n < 1 ? "sameDay" : n < 2 ? "nextDay" : n < 7 ? "nextWeek" : "sameElse"
|
||
}
|
||
|
||
function Ui(e, t) {
|
||
if (arguments.length === 1) if (!arguments[0]) {
|
||
e = undefined;
|
||
t = undefined
|
||
} else if (ji(arguments[0])) {
|
||
e = arguments[0];
|
||
t = undefined
|
||
} else if (Ni(arguments[0])) {
|
||
t = arguments[0];
|
||
e = undefined
|
||
}
|
||
var n = e || C(), i = pi(n, this).startOf("day"), r = h.calendarFormat(this, i) || "sameElse",
|
||
a = t && (f(t[r]) ? t[r].call(this, n) : t[r]);
|
||
return this.format(a || this.localeData().calendar(r, this, C(n)))
|
||
}
|
||
|
||
function Vi() {
|
||
return new X(this)
|
||
}
|
||
|
||
function Gi(e, t) {
|
||
var n = _(e) ? e : C(e);
|
||
if (!(this.isValid() && n.isValid())) return false;
|
||
t = m(t) || "millisecond";
|
||
if (t === "millisecond") return this.valueOf() > n.valueOf(); else return n.valueOf() < this.clone().startOf(t).valueOf()
|
||
}
|
||
|
||
function Ji(e, t) {
|
||
var n = _(e) ? e : C(e);
|
||
if (!(this.isValid() && n.isValid())) return false;
|
||
t = m(t) || "millisecond";
|
||
if (t === "millisecond") return this.valueOf() < n.valueOf(); else return this.clone().endOf(t).valueOf() < n.valueOf()
|
||
}
|
||
|
||
function qi(e, t, n, i) {
|
||
var r = _(e) ? e : C(e), a = _(t) ? t : C(t);
|
||
if (!(this.isValid() && r.isValid() && a.isValid())) return false;
|
||
i = i || "()";
|
||
return (i[0] === "(" ? this.isAfter(r, n) : !this.isBefore(r, n)) && (i[1] === ")" ? this.isBefore(a, n) : !this.isAfter(a, n))
|
||
}
|
||
|
||
function Ki(e, t) {
|
||
var n = _(e) ? e : C(e), i;
|
||
if (!(this.isValid() && n.isValid())) return false;
|
||
t = m(t) || "millisecond";
|
||
if (t === "millisecond") return this.valueOf() === n.valueOf(); else {
|
||
i = n.valueOf();
|
||
return this.clone().startOf(t).valueOf() <= i && i <= this.clone().endOf(t).valueOf()
|
||
}
|
||
}
|
||
|
||
function Xi(e, t) {
|
||
return this.isSame(e, t) || this.isAfter(e, t)
|
||
}
|
||
|
||
function Zi(e, t) {
|
||
return this.isSame(e, t) || this.isBefore(e, t)
|
||
}
|
||
|
||
function $i(e, t, n) {
|
||
var i, r, a;
|
||
if (!this.isValid()) return NaN;
|
||
i = pi(e, this);
|
||
if (!i.isValid()) return NaN;
|
||
r = (i.utcOffset() - this.utcOffset()) * 6e4;
|
||
t = m(t);
|
||
switch (t) {
|
||
case"year":
|
||
a = Qi(this, i) / 12;
|
||
break;
|
||
case"month":
|
||
a = Qi(this, i);
|
||
break;
|
||
case"quarter":
|
||
a = Qi(this, i) / 3;
|
||
break;
|
||
case"second":
|
||
a = (this - i) / 1e3;
|
||
break;
|
||
case"minute":
|
||
a = (this - i) / 6e4;
|
||
break;
|
||
case"hour":
|
||
a = (this - i) / 36e5;
|
||
break;
|
||
case"day":
|
||
a = (this - i - r) / 864e5;
|
||
break;
|
||
case"week":
|
||
a = (this - i - r) / 6048e5;
|
||
break;
|
||
default:
|
||
a = this - i
|
||
}
|
||
return n ? a : p(a)
|
||
}
|
||
|
||
function Qi(e, t) {
|
||
if (e.date() < t.date()) return -Qi(t, e);
|
||
var n = (t.year() - e.year()) * 12 + (t.month() - e.month()), i = e.clone().add(n, "months"), r, a;
|
||
if (t - i < 0) {
|
||
r = e.clone().add(n - 1, "months");
|
||
a = (t - i) / (i - r)
|
||
} else {
|
||
r = e.clone().add(n + 1, "months");
|
||
a = (t - i) / (r - i)
|
||
}
|
||
return -(n + a) || 0
|
||
}
|
||
|
||
function er() {
|
||
return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")
|
||
}
|
||
|
||
function tr(e) {
|
||
if (!this.isValid()) return null;
|
||
var t = e !== true, n = t ? this.clone().utc() : this;
|
||
if (n.year() < 0 || n.year() > 9999) return ce(n, t ? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ");
|
||
if (f(Date.prototype.toISOString)) if (t) return this.toDate().toISOString(); else return new Date(this.valueOf() + this.utcOffset() * 60 * 1e3).toISOString().replace("Z", ce(n, "Z"));
|
||
return ce(n, t ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" : "YYYY-MM-DD[T]HH:mm:ss.SSSZ")
|
||
}
|
||
|
||
function nr() {
|
||
if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)";
|
||
var e = "moment", t = "", n, i, r, a;
|
||
if (!this.isLocal()) {
|
||
e = this.utcOffset() === 0 ? "moment.utc" : "moment.parseZone";
|
||
t = "Z"
|
||
}
|
||
n = "[" + e + '("]';
|
||
i = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY";
|
||
r = "-MM-DD[T]HH:mm:ss.SSS";
|
||
a = t + '[")]';
|
||
return this.format(n + i + r + a)
|
||
}
|
||
|
||
function ir(e) {
|
||
if (!e) e = this.isUtc() ? h.defaultFormatUtc : h.defaultFormat;
|
||
var t = ce(this, e);
|
||
return this.localeData().postformat(t)
|
||
}
|
||
|
||
function rr(e, t) {
|
||
if (this.isValid() && (_(e) && e.isValid() || C(e).isValid())) return R({
|
||
to: this,
|
||
from: e
|
||
}).locale(this.locale()).humanize(!t); else return this.localeData().invalidDate()
|
||
}
|
||
|
||
function ar(e) {
|
||
return this.from(C(), e)
|
||
}
|
||
|
||
function sr(e, t) {
|
||
if (this.isValid() && (_(e) && e.isValid() || C(e).isValid())) return R({
|
||
from: this,
|
||
to: e
|
||
}).locale(this.locale()).humanize(!t); else return this.localeData().invalidDate()
|
||
}
|
||
|
||
function or(e) {
|
||
return this.to(C(), e)
|
||
}
|
||
|
||
function ur(e) {
|
||
var t;
|
||
if (e === undefined) return this._locale._abbr; else {
|
||
t = Sn(e);
|
||
if (t != null) this._locale = t;
|
||
return this
|
||
}
|
||
}
|
||
|
||
h.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ", h.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]";
|
||
var dr = e("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", function (e) {
|
||
if (e === undefined) return this.localeData(); else return this.locale(e)
|
||
});
|
||
|
||
function lr() {
|
||
return this._locale
|
||
}
|
||
|
||
var hr = 1e3, cr = 60 * hr, _r = 60 * cr, fr = (365 * 400 + 97) * 24 * _r;
|
||
|
||
function mr(e, t) {
|
||
return (e % t + t) % t
|
||
}
|
||
|
||
function pr(e, t, n) {
|
||
if (e < 100 && e >= 0) return new Date(e + 400, t, n) - fr; else return new Date(e, t, n).valueOf()
|
||
}
|
||
|
||
function yr(e, t, n) {
|
||
if (e < 100 && e >= 0) return Date.UTC(e + 400, t, n) - fr; else return Date.UTC(e, t, n)
|
||
}
|
||
|
||
function vr(e) {
|
||
var t, n;
|
||
e = m(e);
|
||
if (e === undefined || e === "millisecond" || !this.isValid()) return this;
|
||
n = this._isUTC ? yr : pr;
|
||
switch (e) {
|
||
case"year":
|
||
t = n(this.year(), 0, 1);
|
||
break;
|
||
case"quarter":
|
||
t = n(this.year(), this.month() - this.month() % 3, 1);
|
||
break;
|
||
case"month":
|
||
t = n(this.year(), this.month(), 1);
|
||
break;
|
||
case"week":
|
||
t = n(this.year(), this.month(), this.date() - this.weekday());
|
||
break;
|
||
case"isoWeek":
|
||
t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1));
|
||
break;
|
||
case"day":
|
||
case"date":
|
||
t = n(this.year(), this.month(), this.date());
|
||
break;
|
||
case"hour":
|
||
t = this._d.valueOf();
|
||
t -= mr(t + (this._isUTC ? 0 : this.utcOffset() * cr), _r);
|
||
break;
|
||
case"minute":
|
||
t = this._d.valueOf();
|
||
t -= mr(t, cr);
|
||
break;
|
||
case"second":
|
||
t = this._d.valueOf();
|
||
t -= mr(t, hr);
|
||
break
|
||
}
|
||
this._d.setTime(t);
|
||
h.updateOffset(this, true);
|
||
return this
|
||
}
|
||
|
||
function gr(e) {
|
||
var t, n;
|
||
e = m(e);
|
||
if (e === undefined || e === "millisecond" || !this.isValid()) return this;
|
||
n = this._isUTC ? yr : pr;
|
||
switch (e) {
|
||
case"year":
|
||
t = n(this.year() + 1, 0, 1) - 1;
|
||
break;
|
||
case"quarter":
|
||
t = n(this.year(), this.month() - this.month() % 3 + 3, 1) - 1;
|
||
break;
|
||
case"month":
|
||
t = n(this.year(), this.month() + 1, 1) - 1;
|
||
break;
|
||
case"week":
|
||
t = n(this.year(), this.month(), this.date() - this.weekday() + 7) - 1;
|
||
break;
|
||
case"isoWeek":
|
||
t = n(this.year(), this.month(), this.date() - (this.isoWeekday() - 1) + 7) - 1;
|
||
break;
|
||
case"day":
|
||
case"date":
|
||
t = n(this.year(), this.month(), this.date() + 1) - 1;
|
||
break;
|
||
case"hour":
|
||
t = this._d.valueOf();
|
||
t += _r - mr(t + (this._isUTC ? 0 : this.utcOffset() * cr), _r) - 1;
|
||
break;
|
||
case"minute":
|
||
t = this._d.valueOf();
|
||
t += cr - mr(t, cr) - 1;
|
||
break;
|
||
case"second":
|
||
t = this._d.valueOf();
|
||
t += hr - mr(t, hr) - 1;
|
||
break
|
||
}
|
||
this._d.setTime(t);
|
||
h.updateOffset(this, true);
|
||
return this
|
||
}
|
||
|
||
function Mr() {
|
||
return this._d.valueOf() - (this._offset || 0) * 6e4
|
||
}
|
||
|
||
function Lr() {
|
||
return Math.floor(this.valueOf() / 1e3)
|
||
}
|
||
|
||
function Sr() {
|
||
return new Date(this.valueOf())
|
||
}
|
||
|
||
function kr() {
|
||
var e = this;
|
||
return [e.year(), e.month(), e.date(), e.hour(), e.minute(), e.second(), e.millisecond()]
|
||
}
|
||
|
||
function br() {
|
||
var e = this;
|
||
return {
|
||
years: e.year(),
|
||
months: e.month(),
|
||
date: e.date(),
|
||
hours: e.hours(),
|
||
minutes: e.minutes(),
|
||
seconds: e.seconds(),
|
||
milliseconds: e.milliseconds()
|
||
}
|
||
}
|
||
|
||
function wr() {
|
||
return this.isValid() ? this.toISOString() : null
|
||
}
|
||
|
||
function Dr() {
|
||
return V(this)
|
||
}
|
||
|
||
function Tr() {
|
||
return z({}, c(this))
|
||
}
|
||
|
||
function Er() {
|
||
return c(this).overflow
|
||
}
|
||
|
||
function Yr() {
|
||
return {
|
||
input: this._i,
|
||
format: this._f,
|
||
locale: this._locale,
|
||
isUTC: this._isUTC,
|
||
strict: this._strict
|
||
}
|
||
}
|
||
|
||
function Pr(e, t) {
|
||
var n, i, r, a = this._eras || Sn("en")._eras;
|
||
for (n = 0, i = a.length; n < i; ++n) {
|
||
switch (typeof a[n].since) {
|
||
case"string":
|
||
r = h(a[n].since).startOf("day");
|
||
a[n].since = r.valueOf();
|
||
break
|
||
}
|
||
switch (typeof a[n].until) {
|
||
case"undefined":
|
||
a[n].until = +Infinity;
|
||
break;
|
||
case"string":
|
||
r = h(a[n].until).startOf("day").valueOf();
|
||
a[n].until = r.valueOf();
|
||
break
|
||
}
|
||
}
|
||
return a
|
||
}
|
||
|
||
function Cr(e, t, n) {
|
||
var i, r, a = this.eras(), s, o, u;
|
||
e = e.toUpperCase();
|
||
for (i = 0, r = a.length; i < r; ++i) {
|
||
s = a[i].name.toUpperCase();
|
||
o = a[i].abbr.toUpperCase();
|
||
u = a[i].narrow.toUpperCase();
|
||
if (n) switch (t) {
|
||
case"N":
|
||
case"NN":
|
||
case"NNN":
|
||
if (o === e) return a[i];
|
||
break;
|
||
case"NNNN":
|
||
if (s === e) return a[i];
|
||
break;
|
||
case"NNNNN":
|
||
if (u === e) return a[i];
|
||
break
|
||
} else if ([s, o, u].indexOf(e) >= 0) return a[i]
|
||
}
|
||
}
|
||
|
||
function Rr(e, t) {
|
||
var n = e.since <= e.until ? +1 : -1;
|
||
if (t === undefined) return h(e.since).year(); else return h(e.since).year() + (t - e.offset) * n
|
||
}
|
||
|
||
function Ar() {
|
||
var e, t, n, i = this.localeData().eras();
|
||
for (e = 0, t = i.length; e < t; ++e) {
|
||
n = this.clone().startOf("day").valueOf();
|
||
if (i[e].since <= n && n <= i[e].until) return i[e].name;
|
||
if (i[e].until <= n && n <= i[e].since) return i[e].name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
function xr() {
|
||
var e, t, n, i = this.localeData().eras();
|
||
for (e = 0, t = i.length; e < t; ++e) {
|
||
n = this.clone().startOf("day").valueOf();
|
||
if (i[e].since <= n && n <= i[e].until) return i[e].narrow;
|
||
if (i[e].until <= n && n <= i[e].since) return i[e].narrow
|
||
}
|
||
return ""
|
||
}
|
||
|
||
function Or() {
|
||
var e, t, n, i = this.localeData().eras();
|
||
for (e = 0, t = i.length; e < t; ++e) {
|
||
n = this.clone().startOf("day").valueOf();
|
||
if (i[e].since <= n && n <= i[e].until) return i[e].abbr;
|
||
if (i[e].until <= n && n <= i[e].since) return i[e].abbr
|
||
}
|
||
return ""
|
||
}
|
||
|
||
function Ir() {
|
||
var e, t, n, i, r = this.localeData().eras();
|
||
for (e = 0, t = r.length; e < t; ++e) {
|
||
n = r[e].since <= r[e].until ? +1 : -1;
|
||
i = this.clone().startOf("day").valueOf();
|
||
if (r[e].since <= i && i <= r[e].until || r[e].until <= i && i <= r[e].since) return (this.year() - h(r[e].since).year()) * n + r[e].offset
|
||
}
|
||
return this.year()
|
||
}
|
||
|
||
function Wr(e) {
|
||
if (!u(this, "_erasNameRegex")) Ur.call(this);
|
||
return e ? this._erasNameRegex : this._erasRegex
|
||
}
|
||
|
||
function Hr(e) {
|
||
if (!u(this, "_erasAbbrRegex")) Ur.call(this);
|
||
return e ? this._erasAbbrRegex : this._erasRegex
|
||
}
|
||
|
||
function jr(e) {
|
||
if (!u(this, "_erasNarrowRegex")) Ur.call(this);
|
||
return e ? this._erasNarrowRegex : this._erasRegex
|
||
}
|
||
|
||
function Fr(e, t) {
|
||
return t.erasAbbrRegex(e)
|
||
}
|
||
|
||
function Br(e, t) {
|
||
return t.erasNameRegex(e)
|
||
}
|
||
|
||
function Nr(e, t) {
|
||
return t.erasNarrowRegex(e)
|
||
}
|
||
|
||
function zr(e, t) {
|
||
return t._eraYearOrdinalRegex || ze
|
||
}
|
||
|
||
function Ur() {
|
||
var e = [], t = [], n = [], i = [], r, a, s = this.eras();
|
||
for (r = 0, a = s.length; r < a; ++r) {
|
||
t.push(M(s[r].name));
|
||
e.push(M(s[r].abbr));
|
||
n.push(M(s[r].narrow));
|
||
i.push(M(s[r].name));
|
||
i.push(M(s[r].abbr));
|
||
i.push(M(s[r].narrow))
|
||
}
|
||
this._erasRegex = new RegExp("^(" + i.join("|") + ")", "i");
|
||
this._erasNameRegex = new RegExp("^(" + t.join("|") + ")", "i");
|
||
this._erasAbbrRegex = new RegExp("^(" + e.join("|") + ")", "i");
|
||
this._erasNarrowRegex = new RegExp("^(" + n.join("|") + ")", "i")
|
||
}
|
||
|
||
function Vr(e, t) {
|
||
i(0, [e, e.length], 0, t)
|
||
}
|
||
|
||
function Gr(e) {
|
||
return $r.call(this, e, this.week(), this.weekday(), this.localeData()._week.dow, this.localeData()._week.doy)
|
||
}
|
||
|
||
function Jr(e) {
|
||
return $r.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4)
|
||
}
|
||
|
||
function qr() {
|
||
return Y(this.year(), 1, 4)
|
||
}
|
||
|
||
function Kr() {
|
||
return Y(this.isoWeekYear(), 1, 4)
|
||
}
|
||
|
||
function Xr() {
|
||
var e = this.localeData()._week;
|
||
return Y(this.year(), e.dow, e.doy)
|
||
}
|
||
|
||
function Zr() {
|
||
var e = this.localeData()._week;
|
||
return Y(this.weekYear(), e.dow, e.doy)
|
||
}
|
||
|
||
function $r(e, t, n, i, r) {
|
||
var a;
|
||
if (e == null) return Et(this, i, r).year; else {
|
||
a = Y(e, i, r);
|
||
if (t > a) t = a;
|
||
return Qr.call(this, e, t, n, i, r)
|
||
}
|
||
}
|
||
|
||
function Qr(e, t, n, i, r) {
|
||
var a = Tt(e, t, n, i, r), s = wt(a.year, 0, a.dayOfYear);
|
||
this.year(s.getUTCFullYear());
|
||
this.month(s.getUTCMonth());
|
||
this.date(s.getUTCDate());
|
||
return this
|
||
}
|
||
|
||
function ea(e) {
|
||
return e == null ? Math.ceil((this.month() + 1) / 3) : this.month((e - 1) * 3 + this.month() % 3)
|
||
}
|
||
|
||
i("N", 0, 0, "eraAbbr"), i("NN", 0, 0, "eraAbbr"), i("NNN", 0, 0, "eraAbbr"), i("NNNN", 0, 0, "eraName"), i("NNNNN", 0, 0, "eraNarrow"), i("y", ["y", 1], "yo", "eraYear"), i("y", ["yy", 2], 0, "eraYear"), i("y", ["yyy", 3], 0, "eraYear"), i("y", ["yyyy", 4], 0, "eraYear"), g("N", Fr), g("NN", Fr), g("NNN", Fr), g("NNNN", Br), g("NNNNN", Nr), L(["N", "NN", "NNN", "NNNN", "NNNNN"], function (e, t, n, i) {
|
||
var r = n._locale.erasParse(e, i, n._strict);
|
||
if (r) c(n).era = r; else c(n).invalidEra = e
|
||
}), g("y", ze), g("yy", ze), g("yyy", ze), g("yyyy", ze), g("yo", zr), L(["y", "yy", "yyy", "yyyy"], S), L(["yo"], function (e, t, n, i) {
|
||
var r;
|
||
if (n._locale._eraYearOrdinalRegex) r = e.match(n._locale._eraYearOrdinalRegex);
|
||
if (n._locale.eraYearOrdinalParse) t[S] = n._locale.eraYearOrdinalParse(e, r); else t[S] = parseInt(e, 10)
|
||
}), i(0, ["gg", 2], 0, function () {
|
||
return this.weekYear() % 100
|
||
}), i(0, ["GG", 2], 0, function () {
|
||
return this.isoWeekYear() % 100
|
||
}), Vr("gggg", "weekYear"), Vr("ggggg", "weekYear"), Vr("GGGG", "isoWeekYear"), Vr("GGGGG", "isoWeekYear"), t("weekYear", "gg"), t("isoWeekYear", "GG"), n("weekYear", 1), n("isoWeekYear", 1), g("G", Ue), g("g", Ue), g("GG", v, r), g("gg", v, r), g("GGGG", Be, Ie), g("gggg", Be, Ie), g("GGGGG", Ne, We), g("ggggg", Ne, We), Qe(["gggg", "ggggg", "GGGG", "GGGGG"], function (e, t, n, i) {
|
||
t[i.substr(0, 2)] = y(e)
|
||
}), Qe(["gg", "GG"], function (e, t, n, i) {
|
||
t[i] = h.parseTwoDigitYear(e)
|
||
}), i("Q", 0, "Qo", "quarter"), t("quarter", "Q"), n("quarter", 7), g("Q", xe), L("Q", function (e, t) {
|
||
t[k] = (y(e) - 1) * 3
|
||
}), i("D", ["DD", 2], "Do", "date"), t("date", "D"), n("date", 9), g("D", v), g("DD", v, r), g("Do", function (e, t) {
|
||
return e ? t._dayOfMonthOrdinalParse || t._ordinalParse : t._dayOfMonthOrdinalParseLenient
|
||
}), L(["D", "DD"], b), L("Do", function (e, t) {
|
||
t[b] = y(e.match(v)[0])
|
||
});
|
||
var ta = Ye("Date", true);
|
||
|
||
function na(e) {
|
||
var t = Math.round((this.clone().startOf("day") - this.clone().startOf("year")) / 864e5) + 1;
|
||
return e == null ? t : this.add(e - t, "d")
|
||
}
|
||
|
||
i("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), t("dayOfYear", "DDD"), n("dayOfYear", 4), g("DDD", Fe), g("DDDD", Oe), L(["DDD", "DDDD"], function (e, t, n) {
|
||
n._dayOfYear = y(e)
|
||
}), i("m", ["mm", 2], 0, "minute"), t("minute", "m"), n("minute", 14), g("m", v), g("mm", v, r), L(["m", "mm"], D);
|
||
var ia = Ye("Minutes", false),
|
||
ra = (i("s", ["ss", 2], 0, "second"), t("second", "s"), n("second", 15), g("s", v), g("ss", v, r), L(["s", "ss"], T), Ye("Seconds", false)),
|
||
aa, sa;
|
||
for (i("S", 0, 0, function () {
|
||
return ~~(this.millisecond() / 100)
|
||
}), i(0, ["SS", 2], 0, function () {
|
||
return ~~(this.millisecond() / 10)
|
||
}), i(0, ["SSS", 3], 0, "millisecond"), i(0, ["SSSS", 4], 0, function () {
|
||
return this.millisecond() * 10
|
||
}), i(0, ["SSSSS", 5], 0, function () {
|
||
return this.millisecond() * 100
|
||
}), i(0, ["SSSSSS", 6], 0, function () {
|
||
return this.millisecond() * 1e3
|
||
}), i(0, ["SSSSSSS", 7], 0, function () {
|
||
return this.millisecond() * 1e4
|
||
}), i(0, ["SSSSSSSS", 8], 0, function () {
|
||
return this.millisecond() * 1e5
|
||
}), i(0, ["SSSSSSSSS", 9], 0, function () {
|
||
return this.millisecond() * 1e6
|
||
}), t("millisecond", "ms"), n("millisecond", 16), g("S", Fe, xe), g("SS", Fe, r), g("SSS", Fe, Oe), aa = "SSSS"; aa.length <= 9; aa += "S") g(aa, ze);
|
||
|
||
function oa(e, t) {
|
||
t[tt] = y(("0." + e) * 1e3)
|
||
}
|
||
|
||
for (aa = "S"; aa.length <= 9; aa += "S") L(aa, oa);
|
||
|
||
function ua() {
|
||
return this._isUTC ? "UTC" : ""
|
||
}
|
||
|
||
function da() {
|
||
return this._isUTC ? "Coordinated Universal Time" : ""
|
||
}
|
||
|
||
sa = Ye("Milliseconds", false), i("z", 0, 0, "zoneAbbr"), i("zz", 0, 0, "zoneName");
|
||
var A = X.prototype;
|
||
if (A.add = Ii, A.calendar = Ui, A.clone = Vi, A.diff = $i, A.endOf = gr, A.format = ir, A.from = rr, A.fromNow = ar, A.to = sr, A.toNow = or, A.get = Re, A.invalidAt = Er, A.isAfter = Gi, A.isBefore = Ji, A.isBetween = qi, A.isSame = Ki, A.isSameOrAfter = Xi, A.isSameOrBefore = Zi, A.isValid = Dr, A.lang = dr, A.locale = ur, A.localeData = lr, A.max = ei, A.min = Qn, A.parsingFlags = Tr, A.set = Ae, A.startOf = vr, A.subtract = Wi, A.toArray = kr, A.toObject = br, A.toDate = Sr, A.toISOString = tr, A.inspect = nr, typeof Symbol !== "undefined" && Symbol.for != null) A[Symbol.for("nodejs.util.inspect.custom")] = function () {
|
||
return "Moment<" + this.format() + ">"
|
||
};
|
||
|
||
function la(e) {
|
||
return C(e * 1e3)
|
||
}
|
||
|
||
function ha() {
|
||
return C.apply(null, arguments).parseZone()
|
||
}
|
||
|
||
function ca(e) {
|
||
return e
|
||
}
|
||
|
||
A.toJSON = wr, A.toString = er, A.unix = Lr, A.valueOf = Mr, A.creationData = Yr, A.eraName = Ar, A.eraNarrow = xr, A.eraAbbr = Or, A.eraYear = Ir, A.year = St, A.isLeapYear = kt, A.weekYear = Gr, A.isoWeekYear = Jr, A.quarter = A.quarters = ea, A.month = pt, A.daysInMonth = yt, A.week = A.weeks = At, A.isoWeek = A.isoWeeks = xt, A.weeksInYear = Xr, A.weeksInWeekYear = Zr, A.isoWeeksInYear = qr, A.isoWeeksInISOWeekYear = Kr, A.date = ta, A.day = A.days = Kt, A.weekday = Xt, A.isoWeekday = Zt, A.dayOfYear = na, A.hour = A.hours = dn, A.minute = A.minutes = ia, A.second = A.seconds = ra, A.millisecond = A.milliseconds = sa, A.utcOffset = vi, A.utc = Mi, A.local = Li, A.parseZone = Si, A.hasAlignedHourOffset = ki, A.isDST = bi, A.isLocal = Di, A.isUtcOffset = Ti, A.isUtc = Ei, A.isUTC = Ei, A.zoneAbbr = ua, A.zoneName = da, A.dates = e("dates accessor is deprecated. Use date instead.", ta), A.months = e("months accessor is deprecated. Use month instead", pt), A.years = e("years accessor is deprecated. Use year instead", St), A.zone = e("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", gi), A.isDSTShifted = e("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", wi);
|
||
var x = ie.prototype;
|
||
|
||
function _a(e, t, n, i) {
|
||
var r = Sn(), a = l().set(i, t);
|
||
return r[n](a, e)
|
||
}
|
||
|
||
function fa(e, t, n) {
|
||
if (d(e)) {
|
||
t = e;
|
||
e = undefined
|
||
}
|
||
e = e || "";
|
||
if (t != null) return _a(e, t, n, "month");
|
||
var i, r = [];
|
||
for (i = 0; i < 12; i++) r[i] = _a(e, i, n, "month");
|
||
return r
|
||
}
|
||
|
||
function ma(e, t, n, i) {
|
||
if (typeof e === "boolean") {
|
||
if (d(t)) {
|
||
n = t;
|
||
t = undefined
|
||
}
|
||
t = t || ""
|
||
} else {
|
||
t = e;
|
||
n = t;
|
||
e = false;
|
||
if (d(t)) {
|
||
n = t;
|
||
t = undefined
|
||
}
|
||
t = t || ""
|
||
}
|
||
var r = Sn(), a = e ? r._week.dow : 0, s, o = [];
|
||
if (n != null) return _a(t, (n + a) % 7, i, "day");
|
||
for (s = 0; s < 7; s++) o[s] = _a(t, (s + a) % 7, i, "day");
|
||
return o
|
||
}
|
||
|
||
function pa(e, t) {
|
||
return fa(e, t, "months")
|
||
}
|
||
|
||
function ya(e, t) {
|
||
return fa(e, t, "monthsShort")
|
||
}
|
||
|
||
function va(e, t, n) {
|
||
return ma(e, t, n, "weekdays")
|
||
}
|
||
|
||
function ga(e, t, n) {
|
||
return ma(e, t, n, "weekdaysShort")
|
||
}
|
||
|
||
function Ma(e, t, n) {
|
||
return ma(e, t, n, "weekdaysMin")
|
||
}
|
||
|
||
x.calendar = ae, x.longDateFormat = me, x.invalidDate = ye, x.ordinal = Me, x.preparse = ca, x.postformat = ca, x.relativeTime = Se, x.pastFuture = ke, x.set = te, x.eras = Pr, x.erasParse = Cr, x.erasConvertYear = Rr, x.erasAbbrRegex = Hr, x.erasNameRegex = Wr, x.erasNarrowRegex = jr, x.months = ht, x.monthsShort = ct, x.monthsParse = ft, x.monthsRegex = gt, x.monthsShortRegex = vt, x.week = Yt, x.firstDayOfYear = Rt, x.firstDayOfWeek = Ct, x.weekdays = Ut, x.weekdaysMin = Gt, x.weekdaysShort = Vt, x.weekdaysParse = qt, x.weekdaysRegex = $t, x.weekdaysShortRegex = Qt, x.weekdaysMinRegex = en, x.isPM = on, x.meridiem = ln, gn("en", {
|
||
eras: [{
|
||
since: "0001-01-01",
|
||
until: +Infinity,
|
||
offset: 1,
|
||
name: "Anno Domini",
|
||
narrow: "AD",
|
||
abbr: "AD"
|
||
}, {
|
||
since: "0000-12-31",
|
||
until: -Infinity,
|
||
offset: 1,
|
||
name: "Before Christ",
|
||
narrow: "BC",
|
||
abbr: "BC"
|
||
}], dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = y(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
}
|
||
}), h.lang = e("moment.lang is deprecated. Use moment.locale instead.", gn), h.langData = e("moment.langData is deprecated. Use moment.localeData instead.", Sn);
|
||
var La = Math.abs;
|
||
|
||
function Sa() {
|
||
var e = this._data;
|
||
this._milliseconds = La(this._milliseconds);
|
||
this._days = La(this._days);
|
||
this._months = La(this._months);
|
||
e.milliseconds = La(e.milliseconds);
|
||
e.seconds = La(e.seconds);
|
||
e.minutes = La(e.minutes);
|
||
e.hours = La(e.hours);
|
||
e.months = La(e.months);
|
||
e.years = La(e.years);
|
||
return this
|
||
}
|
||
|
||
function ka(e, t, n, i) {
|
||
var r = R(t, n);
|
||
e._milliseconds += i * r._milliseconds;
|
||
e._days += i * r._days;
|
||
e._months += i * r._months;
|
||
return e._bubble()
|
||
}
|
||
|
||
function ba(e, t) {
|
||
return ka(this, e, t, 1)
|
||
}
|
||
|
||
function wa(e, t) {
|
||
return ka(this, e, t, -1)
|
||
}
|
||
|
||
function Da(e) {
|
||
if (e < 0) return Math.floor(e); else return Math.ceil(e)
|
||
}
|
||
|
||
function Ta() {
|
||
var e = this._milliseconds, t = this._days, n = this._months, i = this._data, r, a, s, o, u;
|
||
if (!(e >= 0 && t >= 0 && n >= 0 || e <= 0 && t <= 0 && n <= 0)) {
|
||
e += Da(Ya(n) + t) * 864e5;
|
||
t = 0;
|
||
n = 0
|
||
}
|
||
i.milliseconds = e % 1e3;
|
||
r = p(e / 1e3);
|
||
i.seconds = r % 60;
|
||
a = p(r / 60);
|
||
i.minutes = a % 60;
|
||
s = p(a / 60);
|
||
i.hours = s % 24;
|
||
t += p(s / 24);
|
||
u = p(Ea(t));
|
||
n += u;
|
||
t -= Da(Ya(u));
|
||
o = p(n / 12);
|
||
n %= 12;
|
||
i.days = t;
|
||
i.months = n;
|
||
i.years = o;
|
||
return this
|
||
}
|
||
|
||
function Ea(e) {
|
||
return e * 4800 / 146097
|
||
}
|
||
|
||
function Ya(e) {
|
||
return e * 146097 / 4800
|
||
}
|
||
|
||
function Pa(e) {
|
||
if (!this.isValid()) return NaN;
|
||
var t, n, i = this._milliseconds;
|
||
e = m(e);
|
||
if (e === "month" || e === "quarter" || e === "year") {
|
||
t = this._days + i / 864e5;
|
||
n = this._months + Ea(t);
|
||
switch (e) {
|
||
case"month":
|
||
return n;
|
||
case"quarter":
|
||
return n / 3;
|
||
case"year":
|
||
return n / 12
|
||
}
|
||
} else {
|
||
t = this._days + Math.round(Ya(this._months));
|
||
switch (e) {
|
||
case"week":
|
||
return t / 7 + i / 6048e5;
|
||
case"day":
|
||
return t + i / 864e5;
|
||
case"hour":
|
||
return t * 24 + i / 36e5;
|
||
case"minute":
|
||
return t * 1440 + i / 6e4;
|
||
case"second":
|
||
return t * 86400 + i / 1e3;
|
||
case"millisecond":
|
||
return Math.floor(t * 864e5) + i;
|
||
default:
|
||
throw new Error("Unknown unit " + e)
|
||
}
|
||
}
|
||
}
|
||
|
||
function Ca() {
|
||
if (!this.isValid()) return NaN;
|
||
return this._milliseconds + this._days * 864e5 + this._months % 12 * 2592e6 + y(this._months / 12) * 31536e6
|
||
}
|
||
|
||
function Ra(e) {
|
||
return function () {
|
||
return this.as(e)
|
||
}
|
||
}
|
||
|
||
var Aa = Ra("ms"), xa = Ra("s"), Oa = Ra("m"), Ia = Ra("h"), Wa = Ra("d"), Ha = Ra("w"), ja = Ra("M"),
|
||
Fa = Ra("Q"), Ba = Ra("y");
|
||
|
||
function Na() {
|
||
return R(this)
|
||
}
|
||
|
||
function za(e) {
|
||
e = m(e);
|
||
return this.isValid() ? this[e + "s"]() : NaN
|
||
}
|
||
|
||
function Ua(e) {
|
||
return function () {
|
||
return this.isValid() ? this._data[e] : NaN
|
||
}
|
||
}
|
||
|
||
var Va = Ua("milliseconds"), Ga = Ua("seconds"), Ja = Ua("minutes"), qa = Ua("hours"), Ka = Ua("days"),
|
||
Xa = Ua("months"), Za = Ua("years");
|
||
|
||
function $a() {
|
||
return p(this.days() / 7)
|
||
}
|
||
|
||
var Qa = Math.round, es = {ss: 44, s: 45, m: 45, h: 22, d: 26, w: null, M: 11};
|
||
|
||
function ts(e, t, n, i, r) {
|
||
return r.relativeTime(t || 1, !!n, e, i)
|
||
}
|
||
|
||
function ns(e, t, n, i) {
|
||
var r = R(e).abs(), a = Qa(r.as("s")), s = Qa(r.as("m")), o = Qa(r.as("h")), u = Qa(r.as("d")),
|
||
d = Qa(r.as("M")), l = Qa(r.as("w")), h = Qa(r.as("y")),
|
||
c = a <= n.ss && ["s", a] || a < n.s && ["ss", a] || s <= 1 && ["m"] || s < n.m && ["mm", s] || o <= 1 && ["h"] || o < n.h && ["hh", o] || u <= 1 && ["d"] || u < n.d && ["dd", u];
|
||
if (n.w != null) c = c || l <= 1 && ["w"] || l < n.w && ["ww", l];
|
||
c = c || d <= 1 && ["M"] || d < n.M && ["MM", d] || h <= 1 && ["y"] || ["yy", h];
|
||
c[2] = t;
|
||
c[3] = +e > 0;
|
||
c[4] = i;
|
||
return ts.apply(null, c)
|
||
}
|
||
|
||
function is(e) {
|
||
if (e === undefined) return Qa;
|
||
if (typeof e === "function") {
|
||
Qa = e;
|
||
return true
|
||
}
|
||
return false
|
||
}
|
||
|
||
function rs(e, t) {
|
||
if (es[e] === undefined) return false;
|
||
if (t === undefined) return es[e];
|
||
es[e] = t;
|
||
if (e === "s") es.ss = t - 1;
|
||
return true
|
||
}
|
||
|
||
function as(e, t) {
|
||
if (!this.isValid()) return this.localeData().invalidDate();
|
||
var n = false, i = es, r, a;
|
||
if (typeof e === "object") {
|
||
t = e;
|
||
e = false
|
||
}
|
||
if (typeof e === "boolean") n = e;
|
||
if (typeof t === "object") {
|
||
i = Object.assign({}, es, t);
|
||
if (t.s != null && t.ss == null) i.ss = t.s - 1
|
||
}
|
||
r = this.localeData();
|
||
a = ns(this, !n, i, r);
|
||
if (n) a = r.pastFuture(+this, a);
|
||
return r.postformat(a)
|
||
}
|
||
|
||
var ss = Math.abs;
|
||
|
||
function os(e) {
|
||
return (e > 0) - (e < 0) || +e
|
||
}
|
||
|
||
function us() {
|
||
if (!this.isValid()) return this.localeData().invalidDate();
|
||
var e = ss(this._milliseconds) / 1e3, t = ss(this._days), n = ss(this._months), i, r, a, s,
|
||
o = this.asSeconds(), u, d, l, h;
|
||
if (!o) return "P0D";
|
||
i = p(e / 60);
|
||
r = p(i / 60);
|
||
e %= 60;
|
||
i %= 60;
|
||
a = p(n / 12);
|
||
n %= 12;
|
||
s = e ? e.toFixed(3).replace(/\.?0+$/, "") : "";
|
||
u = o < 0 ? "-" : "";
|
||
d = os(this._months) !== os(o) ? "-" : "";
|
||
l = os(this._days) !== os(o) ? "-" : "";
|
||
h = os(this._milliseconds) !== os(o) ? "-" : "";
|
||
return u + "P" + (a ? d + a + "Y" : "") + (n ? d + n + "M" : "") + (t ? l + t + "D" : "") + (r || i || e ? "T" : "") + (r ? h + r + "H" : "") + (i ? h + i + "M" : "") + (e ? h + s + "S" : "")
|
||
}
|
||
|
||
var O = di.prototype;
|
||
return O.isValid = oi, O.abs = Sa, O.add = ba, O.subtract = wa, O.as = Pa, O.asMilliseconds = Aa, O.asSeconds = xa, O.asMinutes = Oa, O.asHours = Ia, O.asDays = Wa, O.asWeeks = Ha, O.asMonths = ja, O.asQuarters = Fa, O.asYears = Ba, O.valueOf = Ca, O._bubble = Ta, O.clone = Na, O.get = za, O.milliseconds = Va, O.seconds = Ga, O.minutes = Ja, O.hours = qa, O.days = Ka, O.weeks = $a, O.months = Xa, O.years = Za, O.humanize = as, O.toISOString = us, O.toString = us, O.toJSON = us, O.locale = ur, O.localeData = lr, O.toIsoString = e("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", us), O.lang = dr, i("X", 0, 0, "unix"), i("x", 0, 0, "valueOf"), g("x", Ue), g("X", Je), L("X", function (e, t, n) {
|
||
n._d = new Date(parseFloat(e) * 1e3)
|
||
}), L("x", function (e, t, n) {
|
||
n._d = new Date(y(e))
|
||
}),
|
||
//! moment.js
|
||
h.version = "2.29.4", H(C), h.fn = A, h.min = ni, h.max = ii, h.now = ri, h.utc = l, h.unix = la, h.months = pa, h.isDate = B, h.locale = gn, h.invalid = G, h.duration = R, h.isMoment = _, h.weekdays = va, h.parseZone = ha, h.localeData = Sn, h.isDuration = li, h.monthsShort = ya, h.weekdaysMin = Ma, h.defineLocale = Mn, h.updateLocale = Ln, h.locales = kn, h.weekdaysShort = ga, h.normalizeUnits = m, h.relativeTimeRounding = is, h.relativeTimeThreshold = rs, h.calendarFormat = zi, h.prototype = A, h.HTML5_FMT = {
|
||
DATETIME_LOCAL: "YYYY-MM-DDTHH:mm",
|
||
DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss",
|
||
DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS",
|
||
DATE: "YYYY-MM-DD",
|
||
TIME: "HH:mm",
|
||
TIME_SECONDS: "HH:mm:ss",
|
||
TIME_MS: "HH:mm:ss.SSS",
|
||
WEEK: "GGGG-[W]WW",
|
||
MONTH: "YYYY-MM"
|
||
}, h
|
||
}()
|
||
}.call(this, hs(283)(e))
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0, t.default = function (e, t) {
|
||
if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var n = n(259), r = (n = n) && n.__esModule ? n : {default: n};
|
||
|
||
function i(e, t) {
|
||
for (var n = 0; n < t.length; n++) {
|
||
var i = t[n];
|
||
i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), (0, r.default)(e, i.key, i)
|
||
}
|
||
}
|
||
|
||
t.default = function (e, t, n) {
|
||
return t && i(e.prototype, t), n && i(e, n), e
|
||
}
|
||
}, function (e, t) {
|
||
e = e.exports = {version: "2.6.12"};
|
||
"number" == typeof __e && (__e = e)
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = a(n(1)), r = a(n(2)), n = a(n(10));
|
||
|
||
function a(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(s, null, [{
|
||
key: "e", value: function (e, t) {
|
||
e = "[" + (e = e && !s.FORCE_GLOBAL_TAG ? e : s.GLOBAL_TAG) + "] > " + t;
|
||
s.ENABLE_CALLBACK && s.emitter.emit("log", "error", e), s.ENABLE_ERROR && (console.error ? console.error(e) : console.warn ? console.warn(e) : console.log(e))
|
||
}
|
||
}, {
|
||
key: "i", value: function (e, t) {
|
||
e = "[" + (e = e && !s.FORCE_GLOBAL_TAG ? e : s.GLOBAL_TAG) + "] > " + t;
|
||
s.ENABLE_CALLBACK && s.emitter.emit("log", "info", e), s.ENABLE_INFO && (console.info ? console.info(e) : console.log(e))
|
||
}
|
||
}, {
|
||
key: "w", value: function (e, t) {
|
||
e = "[" + (e = e && !s.FORCE_GLOBAL_TAG ? e : s.GLOBAL_TAG) + "] > " + t;
|
||
s.ENABLE_CALLBACK && s.emitter.emit("log", "warn", e), s.ENABLE_WARN && (console.warn ? console.warn(e) : console.log(e))
|
||
}
|
||
}, {
|
||
key: "d", value: function (e, t) {
|
||
e = "[" + (e = e && !s.FORCE_GLOBAL_TAG ? e : s.GLOBAL_TAG) + "] > " + t;
|
||
s.ENABLE_CALLBACK && s.emitter.emit("log", "debug", e), s.ENABLE_DEBUG && (console.debug ? console.debug(e) : console.log(e))
|
||
}
|
||
}, {
|
||
key: "v", value: function (e, t) {
|
||
e = "[" + (e = e && !s.FORCE_GLOBAL_TAG ? e : s.GLOBAL_TAG) + "] > " + t;
|
||
s.ENABLE_CALLBACK && s.emitter.emit("log", "verbose", e), s.ENABLE_VERBOSE && console.log(e)
|
||
}
|
||
}]);
|
||
r = s;
|
||
|
||
function s() {
|
||
(0, i.default)(this, s)
|
||
}
|
||
|
||
r.GLOBAL_TAG = "flv.js", r.FORCE_GLOBAL_TAG = !1, r.ENABLE_ERROR = !0, r.ENABLE_INFO = !0, r.ENABLE_WARN = !0, r.ENABLE_DEBUG = !0, r.ENABLE_VERBOSE = !0, r.ENABLE_CALLBACK = !1, r.emitter = new n.default, t.default = r
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.NotImplementedException = t.InvalidArgumentException = t.IllegalStateException = t.RuntimeException = void 0;
|
||
var i = o(n(21)), r = o(n(25)), a = o(n(26)), s = o(n(1)), n = o(n(2));
|
||
|
||
function o(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var u = t.RuntimeException = ((0, n.default)(d, [{
|
||
key: "toString", value: function () {
|
||
return this.name + ": " + this.message
|
||
}
|
||
}, {
|
||
key: "name", get: function () {
|
||
return "RuntimeException"
|
||
}
|
||
}, {
|
||
key: "message", get: function () {
|
||
return this._message
|
||
}
|
||
}]), d);
|
||
|
||
function d(e) {
|
||
(0, s.default)(this, d), this._message = e
|
||
}
|
||
|
||
t.IllegalStateException = ((0, a.default)(l, u), (0, n.default)(l, [{
|
||
key: "name", get: function () {
|
||
return "IllegalStateException"
|
||
}
|
||
}]), l);
|
||
|
||
function l(e) {
|
||
return (0, s.default)(this, l), (0, r.default)(this, (l.__proto__ || (0, i.default)(l)).call(this, e))
|
||
}
|
||
|
||
t.InvalidArgumentException = ((0, a.default)(h, u), (0, n.default)(h, [{
|
||
key: "name", get: function () {
|
||
return "InvalidArgumentException"
|
||
}
|
||
}]), h);
|
||
|
||
function h(e) {
|
||
return (0, s.default)(this, h), (0, r.default)(this, (h.__proto__ || (0, i.default)(h)).call(this, e))
|
||
}
|
||
|
||
t.NotImplementedException = ((0, a.default)(c, u), (0, n.default)(c, [{
|
||
key: "name", get: function () {
|
||
return "NotImplementedException"
|
||
}
|
||
}]), c);
|
||
|
||
function c(e) {
|
||
return (0, s.default)(this, c), (0, r.default)(this, (c.__proto__ || (0, i.default)(c)).call(this, e))
|
||
}
|
||
}, function (e, t) {
|
||
e = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
|
||
"number" == typeof __g && (__g = e)
|
||
}, function (e, t, n) {
|
||
var i = n(49)("wks"), r = n(35), a = n(6).Symbol, s = "function" == typeof a;
|
||
(e.exports = function (e) {
|
||
return i[e] || (i[e] = s && a[e] || (s ? a : r)("Symbol." + e))
|
||
}).store = i
|
||
}, function (e, t, n) {
|
||
function m(e, t, n) {
|
||
var i, r, a, s = e & m.F, o = e & m.G, u = e & m.S, d = e & m.P, l = e & m.B, h = e & m.W,
|
||
c = o ? y : y[t] || (y[t] = {}), _ = c[L], f = o ? p : u ? p[t] : (p[t] || {})[L];
|
||
for (i in n = o ? t : n) (r = !s && f && void 0 !== f[i]) && M(c, i) || (a = (r ? f : n)[i], c[i] = o && "function" != typeof f[i] ? n[i] : l && r ? v(a, p) : h && f[i] == a ? function (i) {
|
||
function e(e, t, n) {
|
||
if (this instanceof i) {
|
||
switch (arguments.length) {
|
||
case 0:
|
||
return new i;
|
||
case 1:
|
||
return new i(e);
|
||
case 2:
|
||
return new i(e, t)
|
||
}
|
||
return new i(e, t, n)
|
||
}
|
||
return i.apply(this, arguments)
|
||
}
|
||
|
||
return e[L] = i[L], e
|
||
}(a) : d && "function" == typeof a ? v(Function.call, a) : a, d && ((c.virtual || (c.virtual = {}))[i] = a, e & m.R && _ && !_[i] && g(_, i, a)))
|
||
}
|
||
|
||
var p = n(6), y = n(3), v = n(22), g = n(17), M = n(18), L = "prototype";
|
||
m.F = 1, m.G = 2, m.S = 4, m.P = 8, m.B = 16, m.W = 32, m.U = 64, m.R = 128, e.exports = m
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var i = s(n(270)), r = s(n(272)),
|
||
a = "function" == typeof r.default && "symbol" == typeof i.default ? function (e) {
|
||
return typeof e
|
||
} : function (e) {
|
||
return e && "function" == typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : typeof e
|
||
};
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
t.default = "function" == typeof r.default && "symbol" === a(i.default) ? function (e) {
|
||
return void 0 === e ? "undefined" : a(e)
|
||
} : function (e) {
|
||
return e && "function" == typeof r.default && e.constructor === r.default && e !== r.default.prototype ? "symbol" : void 0 === e ? "undefined" : a(e)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = "object" == typeof Reflect ? Reflect : null,
|
||
u = i && "function" == typeof i.apply ? i.apply : function (e, t, n) {
|
||
return Function.prototype.apply.call(e, t, n)
|
||
};
|
||
var r = i && "function" == typeof i.ownKeys ? i.ownKeys : Object.getOwnPropertySymbols ? function (e) {
|
||
return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))
|
||
} : function (e) {
|
||
return Object.getOwnPropertyNames(e)
|
||
}, a = Number.isNaN || function (e) {
|
||
return e != e
|
||
};
|
||
|
||
function s() {
|
||
s.init.call(this)
|
||
}
|
||
|
||
e.exports = s, e.exports.once = function (o, u) {
|
||
return new Promise(function (e, t) {
|
||
function n(e) {
|
||
o.removeListener(u, i), t(e)
|
||
}
|
||
|
||
function i() {
|
||
"function" == typeof o.removeListener && o.removeListener("error", n), e([].slice.call(arguments))
|
||
}
|
||
|
||
var r, a, s;
|
||
p(o, u, i, {once: !0}), "error" !== u && (a = n, s = {once: !0}, "function" == typeof (r = o).on && p(r, "error", a, s))
|
||
})
|
||
}, (s.EventEmitter = s).prototype._events = void 0, s.prototype._eventsCount = 0, s.prototype._maxListeners = void 0;
|
||
var o = 10;
|
||
|
||
function d(e) {
|
||
if ("function" != typeof e) throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof e)
|
||
}
|
||
|
||
function l(e) {
|
||
return void 0 === e._maxListeners ? s.defaultMaxListeners : e._maxListeners
|
||
}
|
||
|
||
function h(e, t, n, i) {
|
||
var r, a;
|
||
return d(n), void 0 === (r = e._events) ? (r = e._events = Object.create(null), e._eventsCount = 0) : (void 0 !== r.newListener && (e.emit("newListener", t, n.listener || n), r = e._events), a = r[t]), void 0 === a ? (a = r[t] = n, ++e._eventsCount) : ("function" == typeof a ? a = r[t] = i ? [n, a] : [a, n] : i ? a.unshift(n) : a.push(n), 0 < (r = l(e)) && a.length > r && !a.warned && (a.warned = !0, (i = new Error("Possible EventEmitter memory leak detected. " + a.length + " " + String(t) + " listeners added. Use emitter.setMaxListeners() to increase limit")).name = "MaxListenersExceededWarning", i.emitter = e, i.type = t, i.count = a.length, n = i, console && console.warn && console.warn(n))), e
|
||
}
|
||
|
||
function c(e, t, n) {
|
||
e = {fired: !1, wrapFn: void 0, target: e, type: t, listener: n}, t = function () {
|
||
if (!this.fired) return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, 0 === arguments.length ? this.listener.call(this.target) : this.listener.apply(this.target, arguments)
|
||
}.bind(e);
|
||
return t.listener = n, e.wrapFn = t
|
||
}
|
||
|
||
function _(e, t, n) {
|
||
e = e._events;
|
||
if (void 0 === e) return [];
|
||
e = e[t];
|
||
{
|
||
if (void 0 === e) return [];
|
||
if ("function" == typeof e) return n ? [e.listener || e] : [e];
|
||
if (n) {
|
||
for (var i = e, r = new Array(i.length), a = 0; a < r.length; ++a) r[a] = i[a].listener || i[a];
|
||
return r
|
||
}
|
||
return m(e, e.length)
|
||
}
|
||
}
|
||
|
||
function f(e) {
|
||
var t = this._events;
|
||
if (void 0 !== t) {
|
||
t = t[e];
|
||
if ("function" == typeof t) return 1;
|
||
if (void 0 !== t) return t.length
|
||
}
|
||
return 0
|
||
}
|
||
|
||
function m(e, t) {
|
||
for (var n = new Array(t), i = 0; i < t; ++i) n[i] = e[i];
|
||
return n
|
||
}
|
||
|
||
function p(n, i, r, a) {
|
||
if ("function" == typeof n.on) a.once ? n.once(i, r) : n.on(i, r); else {
|
||
if ("function" != typeof n.addEventListener) throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof n);
|
||
n.addEventListener(i, function e(t) {
|
||
a.once && n.removeEventListener(i, e), r(t)
|
||
})
|
||
}
|
||
}
|
||
|
||
Object.defineProperty(s, "defaultMaxListeners", {
|
||
enumerable: !0, get: function () {
|
||
return o
|
||
}, set: function (e) {
|
||
if ("number" != typeof e || e < 0 || a(e)) throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + e + ".");
|
||
o = e
|
||
}
|
||
}), s.init = function () {
|
||
void 0 !== this._events && this._events !== Object.getPrototypeOf(this)._events || (this._events = Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0
|
||
}, s.prototype.setMaxListeners = function (e) {
|
||
if ("number" != typeof e || e < 0 || a(e)) throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + e + ".");
|
||
return this._maxListeners = e, this
|
||
}, s.prototype.getMaxListeners = function () {
|
||
return l(this)
|
||
}, s.prototype.emit = function (e) {
|
||
for (var t = [], n = 1; n < arguments.length; n++) t.push(arguments[n]);
|
||
var i = "error" === e, r = this._events;
|
||
if (void 0 !== r) i = i && void 0 === r.error; else if (!i) return !1;
|
||
if (i) {
|
||
if ((a = 0 < t.length ? t[0] : a) instanceof Error) throw a;
|
||
i = new Error("Unhandled error." + (a ? " (" + a.message + ")" : ""));
|
||
throw i.context = a, i
|
||
}
|
||
var a = r[e];
|
||
if (void 0 === a) return !1;
|
||
if ("function" == typeof a) u(a, this, t); else for (var s = a.length, o = m(a, s), n = 0; n < s; ++n) u(o[n], this, t);
|
||
return !0
|
||
}, s.prototype.on = s.prototype.addListener = function (e, t) {
|
||
return h(this, e, t, !1)
|
||
}, s.prototype.prependListener = function (e, t) {
|
||
return h(this, e, t, !0)
|
||
}, s.prototype.once = function (e, t) {
|
||
return d(t), this.on(e, c(this, e, t)), this
|
||
}, s.prototype.prependOnceListener = function (e, t) {
|
||
return d(t), this.prependListener(e, c(this, e, t)), this
|
||
}, s.prototype.off = s.prototype.removeListener = function (e, t) {
|
||
var n, i, r, a, s;
|
||
if (d(t), void 0 !== (i = this._events) && void 0 !== (n = i[e])) if (n === t || n.listener === t) 0 == --this._eventsCount ? this._events = Object.create(null) : (delete i[e], i.removeListener && this.emit("removeListener", e, n.listener || t)); else if ("function" != typeof n) {
|
||
for (r = -1, a = n.length - 1; 0 <= a; a--) if (n[a] === t || n[a].listener === t) {
|
||
s = n[a].listener, r = a;
|
||
break
|
||
}
|
||
if (r < 0) return this;
|
||
if (0 === r) n.shift(); else {
|
||
for (var o = n, u = r; u + 1 < o.length; u++) o[u] = o[u + 1];
|
||
o.pop()
|
||
}
|
||
1 === n.length && (i[e] = n[0]), void 0 !== i.removeListener && this.emit("removeListener", e, s || t)
|
||
}
|
||
return this
|
||
}, s.prototype.removeAllListeners = function (e) {
|
||
var t, n = this._events;
|
||
if (void 0 !== n) {
|
||
if (void 0 === n.removeListener) return 0 === arguments.length ? (this._events = Object.create(null), this._eventsCount = 0) : void 0 !== n[e] && (0 == --this._eventsCount ? this._events = Object.create(null) : delete n[e]), this;
|
||
if (0 === arguments.length) {
|
||
for (var i, r = Object.keys(n), a = 0; a < r.length; ++a) "removeListener" !== (i = r[a]) && this.removeAllListeners(i);
|
||
return this.removeAllListeners("removeListener"), this._events = Object.create(null), this._eventsCount = 0, this
|
||
}
|
||
if ("function" == typeof (t = n[e])) this.removeListener(e, t); else if (void 0 !== t) for (a = t.length - 1; 0 <= a; a--) this.removeListener(e, t[a])
|
||
}
|
||
return this
|
||
}, s.prototype.listeners = function (e) {
|
||
return _(this, e, !0)
|
||
}, s.prototype.rawListeners = function (e) {
|
||
return _(this, e, !1)
|
||
}, s.listenerCount = function (e, t) {
|
||
return "function" == typeof e.listenerCount ? e.listenerCount(t) : f.call(e, t)
|
||
}, s.prototype.listenerCount = f, s.prototype.eventNames = function () {
|
||
return 0 < this._eventsCount ? r(this._events) : []
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(236), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
var i = n(13), r = n(69), a = n(45), s = Object.defineProperty;
|
||
t.f = n(14) ? Object.defineProperty : function (e, t, n) {
|
||
if (i(e), t = a(t, !0), i(n), r) try {
|
||
return s(e, t, n)
|
||
} catch (e) {
|
||
}
|
||
if ("get" in n || "set" in n) throw TypeError("Accessors not supported!");
|
||
return "value" in n && (e[t] = n.value), e
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(16);
|
||
e.exports = function (e) {
|
||
if (i(e)) return e;
|
||
throw TypeError(e + " is not an object!")
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = !n(23)(function () {
|
||
return 7 != Object.defineProperty({}, "a", {
|
||
get: function () {
|
||
return 7
|
||
}
|
||
}).a
|
||
})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.BaseLoader = t.LoaderErrors = t.LoaderStatus = void 0;
|
||
var i = s(n(1)), r = s(n(2)), a = n(5);
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var o = t.LoaderStatus = {kIdle: 0, kConnecting: 1, kBuffering: 2, kError: 3, kComplete: 4};
|
||
t.LoaderErrors = {
|
||
OK: "OK",
|
||
EXCEPTION: "Exception",
|
||
HTTP_STATUS_CODE_INVALID: "HttpStatusCodeInvalid",
|
||
CONNECTING_TIMEOUT: "ConnectingTimeout",
|
||
EARLY_EOF: "EarlyEof",
|
||
UNRECOVERABLE_EARLY_EOF: "UnrecoverableEarlyEof"
|
||
}, t.BaseLoader = ((0, r.default)(u, [{
|
||
key: "destroy", value: function () {
|
||
this._status = o.kIdle, this._onContentLengthKnown = null, this._onURLRedirect = null, this._onDataArrival = null, this._onError = null, this._onComplete = null
|
||
}
|
||
}, {
|
||
key: "isWorking", value: function () {
|
||
return this._status === o.kConnecting || this._status === o.kBuffering
|
||
}
|
||
}, {
|
||
key: "open", value: function (e, t) {
|
||
throw new a.NotImplementedException("Unimplemented abstract function!")
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
throw new a.NotImplementedException("Unimplemented abstract function!")
|
||
}
|
||
}, {
|
||
key: "type", get: function () {
|
||
return this._type
|
||
}
|
||
}, {
|
||
key: "status", get: function () {
|
||
return this._status
|
||
}
|
||
}, {
|
||
key: "needStashBuffer", get: function () {
|
||
return this._needStash
|
||
}
|
||
}, {
|
||
key: "onContentLengthKnown", get: function () {
|
||
return this._onContentLengthKnown
|
||
}, set: function (e) {
|
||
this._onContentLengthKnown = e
|
||
}
|
||
}, {
|
||
key: "onURLRedirect", get: function () {
|
||
return this._onURLRedirect
|
||
}, set: function (e) {
|
||
this._onURLRedirect = e
|
||
}
|
||
}, {
|
||
key: "onDataArrival", get: function () {
|
||
return this._onDataArrival
|
||
}, set: function (e) {
|
||
this._onDataArrival = e
|
||
}
|
||
}, {
|
||
key: "onError", get: function () {
|
||
return this._onError
|
||
}, set: function (e) {
|
||
this._onError = e
|
||
}
|
||
}, {
|
||
key: "onComplete", get: function () {
|
||
return this._onComplete
|
||
}, set: function (e) {
|
||
this._onComplete = e
|
||
}
|
||
}]), u);
|
||
|
||
function u(e) {
|
||
(0, i.default)(this, u), this._type = e || "undefined", this._status = o.kIdle, this._needStash = !1, this._onContentLengthKnown = null, this._onURLRedirect = null, this._onDataArrival = null, this._onError = null, this._onComplete = null
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
return "object" == typeof e ? null !== e : "function" == typeof e
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(12), r = n(28);
|
||
e.exports = n(14) ? function (e, t, n) {
|
||
return i.f(e, t, r(1, n))
|
||
} : function (e, t, n) {
|
||
return e[t] = n, e
|
||
}
|
||
}, function (e, t) {
|
||
var n = {}.hasOwnProperty;
|
||
e.exports = function (e, t) {
|
||
return n.call(e, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(72), r = n(43);
|
||
e.exports = function (e) {
|
||
return i(r(e))
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(292), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(302), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
var a = n(34);
|
||
e.exports = function (i, r, e) {
|
||
if (a(i), void 0 === r) return i;
|
||
switch (e) {
|
||
case 1:
|
||
return function (e) {
|
||
return i.call(r, e)
|
||
};
|
||
case 2:
|
||
return function (e, t) {
|
||
return i.call(r, e, t)
|
||
};
|
||
case 3:
|
||
return function (e, t, n) {
|
||
return i.call(r, e, t, n)
|
||
}
|
||
}
|
||
return function () {
|
||
return i.apply(r, arguments)
|
||
}
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
try {
|
||
return !!e()
|
||
} catch (e) {
|
||
return !0
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(43);
|
||
e.exports = function (e) {
|
||
return Object(i(e))
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var n = n(9), i = (n = n) && n.__esModule ? n : {default: n};
|
||
t.default = function (e, t) {
|
||
if (e) return !t || "object" !== (void 0 === t ? "undefined" : (0, i.default)(t)) && "function" != typeof t ? e : t;
|
||
throw new ReferenceError("this hasn't been initialised - super() hasn't been called")
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var i = s(n(38)), r = s(n(304)), a = s(n(9));
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
t.default = function (e, t) {
|
||
if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + (void 0 === t ? "undefined" : (0, a.default)(t)));
|
||
e.prototype = (0, r.default)(t && t.prototype, {
|
||
constructor: {
|
||
value: e,
|
||
enumerable: !1,
|
||
writable: !0,
|
||
configurable: !0
|
||
}
|
||
}), t && (i.default ? (0, i.default)(e, t) : e.__proto__ = t)
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = !0
|
||
}, function (e, t) {
|
||
e.exports = function (e, t) {
|
||
return {enumerable: !(1 & e), configurable: !(2 & e), writable: !(4 & e), value: t}
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = {}
|
||
}, function (e, t, n) {
|
||
var i = n(71), r = n(50);
|
||
e.exports = Object.keys || function (e) {
|
||
return i(e, r)
|
||
}
|
||
}, function (e, t) {
|
||
var n = {}.toString;
|
||
e.exports = function (e) {
|
||
return n.call(e).slice(8, -1)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var a = i(n(21)), s = i(n(308));
|
||
|
||
function i(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
t.default = function e(t, n, i) {
|
||
null === t && (t = Function.prototype);
|
||
var r = (0, s.default)(t, n);
|
||
if (void 0 !== r) {
|
||
if ("value" in r) return r.value;
|
||
r = r.get;
|
||
return void 0 !== r ? r.call(i) : void 0
|
||
}
|
||
r = (0, a.default)(t);
|
||
if (null !== r) return e(r, n, i)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var n = n(20), n = (n = n) && n.__esModule ? n : {default: n};
|
||
var i = {};
|
||
var r, a, s = self.navigator.userAgent.toLowerCase(),
|
||
o = /(edge)\/([\w.]+)/.exec(s) || /(opr)[\/]([\w.]+)/.exec(s) || /(chrome)[ \/]([\w.]+)/.exec(s) || /(iemobile)[\/]([\w.]+)/.exec(s) || /(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(s) || /(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(s) || /(webkit)[ \/]([\w.]+)/.exec(s) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(s) || /(msie) ([\w.]+)/.exec(s) || 0 <= s.indexOf("trident") && /(rv)(?::| )([\w.]+)/.exec(s) || s.indexOf("compatible") < 0 && /(firefox)[ \/]([\w.]+)/.exec(s) || [],
|
||
s = /(ipad)/.exec(s) || /(ipod)/.exec(s) || /(windows phone)/.exec(s) || /(iphone)/.exec(s) || /(kindle)/.exec(s) || /(android)/.exec(s) || /(windows)/.exec(s) || /(mac)/.exec(s) || /(linux)/.exec(s) || /(cros)/.exec(s) || [],
|
||
o = {
|
||
browser: o[5] || o[3] || o[1] || "",
|
||
version: o[2] || o[4] || "0",
|
||
majorVersion: o[4] || o[2] || "0",
|
||
platform: s[0] || ""
|
||
}, s = {};
|
||
for (a in o.browser && (s[o.browser] = !0, r = o.majorVersion.split("."), s.version = {
|
||
major: parseInt(o.majorVersion, 10),
|
||
string: o.version
|
||
}, 1 < r.length && (s.version.minor = parseInt(r[1], 10)), 2 < r.length && (s.version.build = parseInt(r[2], 10))), o.platform && (s[o.platform] = !0), (s.chrome || s.opr || s.safari) && (s.webkit = !0), (s.rv || s.iemobile) && (s.rv && delete s.rv, o.browser = "msie", s.msie = !0), s.edge && (delete s.edge, o.browser = "msedge", s.msedge = !0), s.opr && (o.browser = "opera", s.opera = !0), s.safari && s.android && (s[o.browser = "android"] = !0), s.name = o.browser, s.platform = o.platform, i) i.hasOwnProperty(a) && delete i[a];
|
||
(0, n.default)(i, s), t.default = i
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
if ("function" != typeof e) throw TypeError(e + " is not a function!");
|
||
return e
|
||
}
|
||
}, function (e, t) {
|
||
var n = 0, i = Math.random();
|
||
e.exports = function (e) {
|
||
return "Symbol(".concat(void 0 === e ? "" : e, ")_", (++n + i).toString(36))
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(12).f, r = n(18), a = n(7)("toStringTag");
|
||
e.exports = function (e, t, n) {
|
||
e && !r(e = n ? e : e.prototype, a) && i(e, a, {configurable: !0, value: t})
|
||
}
|
||
}, function (e, t) {
|
||
t.f = {}.propertyIsEnumerable
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(295), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
t.default = {
|
||
ERROR: "error",
|
||
LOADING_COMPLETE: "loading_complete",
|
||
RECOVERED_EARLY_EOF: "recovered_early_eof",
|
||
MEDIA_INFO: "media_info",
|
||
METADATA_ARRIVED: "metadata_arrived",
|
||
SCRIPTDATA_ARRIVED: "scriptdata_arrived",
|
||
STATISTICS_INFO: "statistics_info",
|
||
VIDEO_RESOLUTION_CHANGED: "video_resolution_changed",
|
||
MEDIA_SOURCE_ENDED: "media_source_ended",
|
||
MEDIA_SOURCE_CLOSE: "media_source_close",
|
||
VIDEO_FROZEN: "video_decoded_frame_frozen",
|
||
MS_BUFFER_FULL: "media_source_buffer_full",
|
||
LOADED_META_DATA: "loaded_meta_data"
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
t.default = {
|
||
IO_ERROR: "io_error",
|
||
DEMUX_ERROR: "demux_error",
|
||
INIT_SEGMENT: "init_segment",
|
||
MEDIA_SEGMENT: "media_segment",
|
||
LOADING_COMPLETE: "loading_complete",
|
||
RECOVERED_EARLY_EOF: "recovered_early_eof",
|
||
MEDIA_INFO: "media_info",
|
||
METADATA_ARRIVED: "metadata_arrived",
|
||
SCRIPTDATA_ARRIVED: "scriptdata_arrived",
|
||
STATISTICS_INFO: "statistics_info",
|
||
RECOMMEND_SEEKPOINT: "recommend_seekpoint",
|
||
VIDEO_RESOLUTION_CHANGED: "video_resolution_changed",
|
||
PARSEDDATA_ARRIVED: "parseddata_arrived"
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(237)(!0);
|
||
n(68)(String, "String", function (e) {
|
||
this._t = String(e), this._i = 0
|
||
}, function () {
|
||
var e = this._t, t = this._i;
|
||
return t >= e.length ? {value: void 0, done: !0} : (e = i(e, t), this._i += e.length, {value: e, done: !1})
|
||
})
|
||
}, function (e, t) {
|
||
var n = Math.ceil, i = Math.floor;
|
||
e.exports = function (e) {
|
||
return isNaN(e = +e) ? 0 : (0 < e ? i : n)(e)
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
if (null == e) throw TypeError("Can't call method on " + e);
|
||
return e
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(16), r = n(6).document, a = i(r) && i(r.createElement);
|
||
e.exports = function (e) {
|
||
return a ? r.createElement(e) : {}
|
||
}
|
||
}, function (e, t, n) {
|
||
var r = n(16);
|
||
e.exports = function (e, t) {
|
||
if (!r(e)) return e;
|
||
var n, i;
|
||
if (t && "function" == typeof (n = e.toString) && !r(i = n.call(e)) || "function" == typeof (n = e.valueOf) && !r(i = n.call(e)) || !t && "function" == typeof (n = e.toString) && !r(i = n.call(e))) return i;
|
||
throw TypeError("Can't convert object to primitive value")
|
||
}
|
||
}, function (e, t, n) {
|
||
function i() {
|
||
}
|
||
|
||
var r = n(13), a = n(239), s = n(50), o = n(48)("IE_PROTO"), u = "prototype", d = function () {
|
||
var e = n(44)("iframe"), t = s.length;
|
||
for (e.style.display = "none", n(73).appendChild(e), e.src = "javascript:", (e = e.contentWindow.document).open(), e.write("<script>document.F=Object<\/script>"), e.close(), d = e.F; t--;) delete d[u][s[t]];
|
||
return d()
|
||
};
|
||
e.exports = Object.create || function (e, t) {
|
||
var n;
|
||
return null !== e ? (i[u] = r(e), n = new i, i[u] = null, n[o] = e) : n = d(), void 0 === t ? n : a(n, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(42), r = Math.min;
|
||
e.exports = function (e) {
|
||
return 0 < e ? r(i(e), 9007199254740991) : 0
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(49)("keys"), r = n(35);
|
||
e.exports = function (e) {
|
||
return i[e] || (i[e] = r(e))
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(3), r = n(6), a = "__core-js_shared__", s = r[a] || (r[a] = {});
|
||
(e.exports = function (e, t) {
|
||
return s[e] || (s[e] = void 0 !== t ? t : {})
|
||
})("versions", []).push({
|
||
version: i.version,
|
||
mode: n(27) ? "pure" : "global",
|
||
copyright: "© 2020 Denis Pushkarev (zloirock.ru)"
|
||
})
|
||
}, function (e, t) {
|
||
e.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var r = n(34);
|
||
|
||
function i(e) {
|
||
var n, i;
|
||
this.promise = new e(function (e, t) {
|
||
if (void 0 !== n || void 0 !== i) throw TypeError("Bad Promise constructor");
|
||
n = e, i = t
|
||
}), this.resolve = r(n), this.reject = r(i)
|
||
}
|
||
|
||
e.exports.f = function (e) {
|
||
return new i(e)
|
||
}
|
||
}, function (e, t, n) {
|
||
var r = n(8), a = n(3), s = n(23);
|
||
e.exports = function (e, t) {
|
||
var n = (a.Object || {})[e] || Object[e], i = {};
|
||
i[e] = t(n), r(r.S + r.F * s(function () {
|
||
n(1)
|
||
}), "Object", i)
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = n(257)
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
t.__esModule = !0;
|
||
var n = n(11), u = (n = n) && n.__esModule ? n : {default: n};
|
||
t.default = function (e) {
|
||
return function () {
|
||
var o = e.apply(this, arguments);
|
||
return new u.default(function (a, s) {
|
||
return function t(e, n) {
|
||
try {
|
||
var i = o[e](n), r = i.value
|
||
} catch (e) {
|
||
return void s(e)
|
||
}
|
||
if (!i.done) return u.default.resolve(r).then(function (e) {
|
||
t("next", e)
|
||
}, function (e) {
|
||
t("throw", e)
|
||
});
|
||
a(r)
|
||
}("next")
|
||
})
|
||
}
|
||
}
|
||
}, function (Qt, en, e) {
|
||
var tn;
|
||
/*!
|
||
* jQuery JavaScript Library v3.6.0
|
||
* https://jquery.com/
|
||
*
|
||
* Includes Sizzle.js
|
||
* https://sizzlejs.com/
|
||
*
|
||
* Copyright OpenJS Foundation and other contributors
|
||
* Released under the MIT license
|
||
* https://jquery.org/license
|
||
*
|
||
* Date: 2021-03-02T17:08Z
|
||
*/
|
||
!function (e, t) {
|
||
"use strict";
|
||
"object" == typeof Qt.exports ? Qt.exports = e.document ? t(e, !0) : function (e) {
|
||
if (e.document) return t(e);
|
||
throw new Error("jQuery requires a window with a document")
|
||
} : t(e)
|
||
}("undefined" != typeof window ? window : this, function (L, I) {
|
||
"use strict";
|
||
|
||
function v(e) {
|
||
return "function" == typeof e && "number" != typeof e.nodeType && "function" != typeof e.item
|
||
}
|
||
|
||
function m(e) {
|
||
return null != e && e === e.window
|
||
}
|
||
|
||
var t = [], W = Object.getPrototypeOf, o = t.slice, H = t.flat ? function (e) {
|
||
return t.flat.call(e)
|
||
} : function (e) {
|
||
return t.concat.apply([], e)
|
||
}, j = t.push, F = t.indexOf, B = {}, N = B.toString, z = B.hasOwnProperty, U = z.toString,
|
||
V = U.call(Object), p = {}, S = L.document, G = {type: !0, src: !0, nonce: !0, noModule: !0};
|
||
|
||
function J(e, t, n) {
|
||
var i, r, a = (n = n || S).createElement("script");
|
||
if (a.text = e, t) for (i in G) (r = t[i] || t.getAttribute && t.getAttribute(i)) && a.setAttribute(i, r);
|
||
n.head.appendChild(a).parentNode.removeChild(a)
|
||
}
|
||
|
||
function f(e) {
|
||
return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? B[N.call(e)] || "object" : typeof e
|
||
}
|
||
|
||
var k = function (e, t) {
|
||
return new k.fn.init(e, t)
|
||
};
|
||
|
||
function q(e) {
|
||
var t = !!e && "length" in e && e.length, n = f(e);
|
||
return !v(e) && !m(e) && ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e)
|
||
}
|
||
|
||
k.fn = k.prototype = {
|
||
jquery: "3.6.0", constructor: k, length: 0, toArray: function () {
|
||
return o.call(this)
|
||
}, get: function (e) {
|
||
return null == e ? o.call(this) : e < 0 ? this[e + this.length] : this[e]
|
||
}, pushStack: function (e) {
|
||
e = k.merge(this.constructor(), e);
|
||
return e.prevObject = this, e
|
||
}, each: function (e) {
|
||
return k.each(this, e)
|
||
}, map: function (n) {
|
||
return this.pushStack(k.map(this, function (e, t) {
|
||
return n.call(e, t, e)
|
||
}))
|
||
}, slice: function () {
|
||
return this.pushStack(o.apply(this, arguments))
|
||
}, first: function () {
|
||
return this.eq(0)
|
||
}, last: function () {
|
||
return this.eq(-1)
|
||
}, even: function () {
|
||
return this.pushStack(k.grep(this, function (e, t) {
|
||
return (t + 1) % 2
|
||
}))
|
||
}, odd: function () {
|
||
return this.pushStack(k.grep(this, function (e, t) {
|
||
return t % 2
|
||
}))
|
||
}, eq: function (e) {
|
||
var t = this.length, e = +e + (e < 0 ? t : 0);
|
||
return this.pushStack(0 <= e && e < t ? [this[e]] : [])
|
||
}, end: function () {
|
||
return this.prevObject || this.constructor()
|
||
}, push: j, sort: t.sort, splice: t.splice
|
||
}, k.extend = k.fn.extend = function () {
|
||
var e, t, n, i, r, a = arguments[0] || {}, s = 1, o = arguments.length, u = !1;
|
||
for ("boolean" == typeof a && (u = a, a = arguments[s] || {}, s++), "object" == typeof a || v(a) || (a = {}), s === o && (a = this, s--); s < o; s++) if (null != (e = arguments[s])) for (t in e) n = e[t], "__proto__" !== t && a !== n && (u && n && (k.isPlainObject(n) || (i = Array.isArray(n))) ? (r = a[t], r = i && !Array.isArray(r) ? [] : i || k.isPlainObject(r) ? r : {}, i = !1, a[t] = k.extend(u, r, n)) : void 0 !== n && (a[t] = n));
|
||
return a
|
||
}, k.extend({
|
||
expando: "jQuery" + ("3.6.0" + Math.random()).replace(/\D/g, ""), isReady: !0, error: function (e) {
|
||
throw new Error(e)
|
||
}, noop: function () {
|
||
}, isPlainObject: function (e) {
|
||
return !(!e || "[object Object]" !== N.call(e)) && (!(e = W(e)) || "function" == typeof (e = z.call(e, "constructor") && e.constructor) && U.call(e) === V)
|
||
}, isEmptyObject: function (e) {
|
||
for (var t in e) return !1;
|
||
return !0
|
||
}, globalEval: function (e, t, n) {
|
||
J(e, {nonce: t && t.nonce}, n)
|
||
}, each: function (e, t) {
|
||
var n, i = 0;
|
||
if (q(e)) for (n = e.length; i < n && !1 !== t.call(e[i], i, e[i]); i++) ; else for (i in e) if (!1 === t.call(e[i], i, e[i])) break;
|
||
return e
|
||
}, makeArray: function (e, t) {
|
||
t = t || [];
|
||
return null != e && (q(Object(e)) ? k.merge(t, "string" == typeof e ? [e] : e) : j.call(t, e)), t
|
||
}, inArray: function (e, t, n) {
|
||
return null == t ? -1 : F.call(t, e, n)
|
||
}, merge: function (e, t) {
|
||
for (var n = +t.length, i = 0, r = e.length; i < n; i++) e[r++] = t[i];
|
||
return e.length = r, e
|
||
}, grep: function (e, t, n) {
|
||
for (var i = [], r = 0, a = e.length, s = !n; r < a; r++) !t(e[r], r) != s && i.push(e[r]);
|
||
return i
|
||
}, map: function (e, t, n) {
|
||
var i, r, a = 0, s = [];
|
||
if (q(e)) for (i = e.length; a < i; a++) null != (r = t(e[a], a, n)) && s.push(r); else for (a in e) null != (r = t(e[a], a, n)) && s.push(r);
|
||
return H(s)
|
||
}, guid: 1, support: p
|
||
}), "function" == typeof Symbol && (k.fn[Symbol.iterator] = t[Symbol.iterator]), k.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (e, t) {
|
||
B["[object " + t + "]"] = t.toLowerCase()
|
||
});
|
||
|
||
function i(e, t, n) {
|
||
for (var i = [], r = void 0 !== n; (e = e[t]) && 9 !== e.nodeType;) if (1 === e.nodeType) {
|
||
if (r && k(e).is(n)) break;
|
||
i.push(e)
|
||
}
|
||
return i
|
||
}
|
||
|
||
function K(e, t) {
|
||
for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
|
||
return n
|
||
}
|
||
|
||
var e =
|
||
/*!
|
||
* Sizzle CSS Selector Engine v2.3.6
|
||
* https://sizzlejs.com/
|
||
*
|
||
* Copyright JS Foundation and other contributors
|
||
* Released under the MIT license
|
||
* https://js.foundation/
|
||
*
|
||
* Date: 2021-02-16
|
||
*/
|
||
function (I) {
|
||
function h(e, t) {
|
||
return e = "0x" + e.slice(1) - 65536, t || (e < 0 ? String.fromCharCode(65536 + e) : String.fromCharCode(e >> 10 | 55296, 1023 & e | 56320))
|
||
}
|
||
|
||
function W(e, t) {
|
||
return t ? "\0" === e ? "<22>" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e
|
||
}
|
||
|
||
function H() {
|
||
S()
|
||
}
|
||
|
||
var e, c, M, a, j, _, F, B, L, u, d, S, k, n, b, f, i, r, m, w = "sizzle" + +new Date,
|
||
l = I.document, D = 0, N = 0, z = C(), U = C(), V = C(), p = C(), G = function (e, t) {
|
||
return e === t && (d = !0), 0
|
||
}, J = {}.hasOwnProperty, t = [], q = t.pop, K = t.push, T = t.push, X = t.slice,
|
||
v = function (e, t) {
|
||
for (var n = 0, i = e.length; n < i; n++) if (e[n] === t) return n;
|
||
return -1
|
||
},
|
||
Z = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
|
||
s = "[\\x20\\t\\r\\n\\f]",
|
||
o = "(?:\\\\[\\da-fA-F]{1,6}" + s + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+",
|
||
$ = "\\[" + s + "*(" + o + ")(?:" + s + "*([*^$|!~]?=)" + s + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + o + "))|)" + s + "*\\]",
|
||
Q = ":(" + o + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + $ + ")*)|.*)\\)|)",
|
||
ee = new RegExp(s + "+", "g"),
|
||
y = new RegExp("^" + s + "+|((?:^|[^\\\\])(?:\\\\.)*)" + s + "+$", "g"),
|
||
te = new RegExp("^" + s + "*," + s + "*"),
|
||
ne = new RegExp("^" + s + "*([>+~]|" + s + ")" + s + "*"), ie = new RegExp(s + "|>"),
|
||
re = new RegExp(Q), ae = new RegExp("^" + o + "$"), g = {
|
||
ID: new RegExp("^#(" + o + ")"),
|
||
CLASS: new RegExp("^\\.(" + o + ")"),
|
||
TAG: new RegExp("^(" + o + "|[*])"),
|
||
ATTR: new RegExp("^" + $),
|
||
PSEUDO: new RegExp("^" + Q),
|
||
CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + s + "*(even|odd|(([+-]|)(\\d*)n|)" + s + "*(?:([+-]|)" + s + "*(\\d+)|))" + s + "*\\)|)", "i"),
|
||
bool: new RegExp("^(?:" + Z + ")$", "i"),
|
||
needsContext: new RegExp("^" + s + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + s + "*((?:-\\d)?\\d*)" + s + "*\\)|)(?=[^-]|$)", "i")
|
||
}, se = /HTML$/i, oe = /^(?:input|select|textarea|button)$/i, ue = /^h\d$/i,
|
||
E = /^[^{]+\{\s*\[native \w/, de = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, le = /[+~]/,
|
||
Y = new RegExp("\\\\[\\da-fA-F]{1,6}" + s + "?|\\\\([^\\r\\n\\f])", "g"),
|
||
he = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, ce = ve(function (e) {
|
||
return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase()
|
||
}, {dir: "parentNode", next: "legend"});
|
||
try {
|
||
T.apply(t = X.call(l.childNodes), l.childNodes), t[l.childNodes.length].nodeType
|
||
} catch (e) {
|
||
T = {
|
||
apply: t.length ? function (e, t) {
|
||
K.apply(e, X.call(t))
|
||
} : function (e, t) {
|
||
for (var n = e.length, i = 0; e[n++] = t[i++];) ;
|
||
e.length = n - 1
|
||
}
|
||
}
|
||
}
|
||
|
||
function P(t, e, n, i) {
|
||
var r, a, s, o, u, d, l = e && e.ownerDocument, h = e ? e.nodeType : 9;
|
||
if (n = n || [], "string" != typeof t || !t || 1 !== h && 9 !== h && 11 !== h) return n;
|
||
if (!i && (S(e), e = e || k, b)) {
|
||
if (11 !== h && (o = de.exec(t))) if (r = o[1]) {
|
||
if (9 === h) {
|
||
if (!(d = e.getElementById(r))) return n;
|
||
if (d.id === r) return n.push(d), n
|
||
} else if (l && (d = l.getElementById(r)) && m(e, d) && d.id === r) return n.push(d), n
|
||
} else {
|
||
if (o[2]) return T.apply(n, e.getElementsByTagName(t)), n;
|
||
if ((r = o[3]) && c.getElementsByClassName && e.getElementsByClassName) return T.apply(n, e.getElementsByClassName(r)), n
|
||
}
|
||
if (c.qsa && !p[t + " "] && (!f || !f.test(t)) && (1 !== h || "object" !== e.nodeName.toLowerCase())) {
|
||
if (d = t, l = e, 1 === h && (ie.test(t) || ne.test(t))) {
|
||
for ((l = le.test(t) && pe(e.parentNode) || e) === e && c.scope || ((s = e.getAttribute("id")) ? s = s.replace(he, W) : e.setAttribute("id", s = w)), a = (u = _(t)).length; a--;) u[a] = (s ? "#" + s : ":scope") + " " + O(u[a]);
|
||
d = u.join(",")
|
||
}
|
||
try {
|
||
return T.apply(n, l.querySelectorAll(d)), n
|
||
} catch (e) {
|
||
p(t, !0)
|
||
} finally {
|
||
s === w && e.removeAttribute("id")
|
||
}
|
||
}
|
||
}
|
||
return B(t.replace(y, "$1"), e, n, i)
|
||
}
|
||
|
||
function C() {
|
||
var n = [];
|
||
|
||
function i(e, t) {
|
||
return n.push(e + " ") > M.cacheLength && delete i[n.shift()], i[e + " "] = t
|
||
}
|
||
|
||
return i
|
||
}
|
||
|
||
function R(e) {
|
||
return e[w] = !0, e
|
||
}
|
||
|
||
function A(e) {
|
||
var t = k.createElement("fieldset");
|
||
try {
|
||
return !!e(t)
|
||
} catch (e) {
|
||
return !1
|
||
} finally {
|
||
t.parentNode && t.parentNode.removeChild(t)
|
||
}
|
||
}
|
||
|
||
function _e(e, t) {
|
||
for (var n = e.split("|"), i = n.length; i--;) M.attrHandle[n[i]] = t
|
||
}
|
||
|
||
function fe(e, t) {
|
||
var n = t && e, i = n && 1 === e.nodeType && 1 === t.nodeType && e.sourceIndex - t.sourceIndex;
|
||
if (i) return i;
|
||
if (n) for (; n = n.nextSibling;) if (n === t) return -1;
|
||
return e ? 1 : -1
|
||
}
|
||
|
||
function me(t) {
|
||
return function (e) {
|
||
return "form" in e ? e.parentNode && !1 === e.disabled ? "label" in e ? "label" in e.parentNode ? e.parentNode.disabled === t : e.disabled === t : e.isDisabled === t || e.isDisabled !== !t && ce(e) === t : e.disabled === t : "label" in e && e.disabled === t
|
||
}
|
||
}
|
||
|
||
function x(s) {
|
||
return R(function (a) {
|
||
return a = +a, R(function (e, t) {
|
||
for (var n, i = s([], e.length, a), r = i.length; r--;) e[n = i[r]] && (e[n] = !(t[n] = e[n]))
|
||
})
|
||
})
|
||
}
|
||
|
||
function pe(e) {
|
||
return e && void 0 !== e.getElementsByTagName && e
|
||
}
|
||
|
||
for (e in c = P.support = {}, j = P.isXML = function (e) {
|
||
var t = e && e.namespaceURI, e = e && (e.ownerDocument || e).documentElement;
|
||
return !se.test(t || e && e.nodeName || "HTML")
|
||
}, S = P.setDocument = function (e) {
|
||
var e = e ? e.ownerDocument || e : l;
|
||
return e != k && 9 === e.nodeType && e.documentElement && (n = (k = e).documentElement, b = !j(k), l != k && (e = k.defaultView) && e.top !== e && (e.addEventListener ? e.addEventListener("unload", H, !1) : e.attachEvent && e.attachEvent("onunload", H)), c.scope = A(function (e) {
|
||
return n.appendChild(e).appendChild(k.createElement("div")), void 0 !== e.querySelectorAll && !e.querySelectorAll(":scope fieldset div").length
|
||
}), c.attributes = A(function (e) {
|
||
return e.className = "i", !e.getAttribute("className")
|
||
}), c.getElementsByTagName = A(function (e) {
|
||
return e.appendChild(k.createComment("")), !e.getElementsByTagName("*").length
|
||
}), c.getElementsByClassName = E.test(k.getElementsByClassName), c.getById = A(function (e) {
|
||
return n.appendChild(e).id = w, !k.getElementsByName || !k.getElementsByName(w).length
|
||
}), c.getById ? (M.filter.ID = function (e) {
|
||
var t = e.replace(Y, h);
|
||
return function (e) {
|
||
return e.getAttribute("id") === t
|
||
}
|
||
}, M.find.ID = function (e, t) {
|
||
if (void 0 !== t.getElementById && b) return (t = t.getElementById(e)) ? [t] : []
|
||
}) : (M.filter.ID = function (e) {
|
||
var t = e.replace(Y, h);
|
||
return function (e) {
|
||
e = void 0 !== e.getAttributeNode && e.getAttributeNode("id");
|
||
return e && e.value === t
|
||
}
|
||
}, M.find.ID = function (e, t) {
|
||
if (void 0 !== t.getElementById && b) {
|
||
var n, i, r, a = t.getElementById(e);
|
||
if (a) {
|
||
if ((n = a.getAttributeNode("id")) && n.value === e) return [a];
|
||
for (r = t.getElementsByName(e), i = 0; a = r[i++];) if ((n = a.getAttributeNode("id")) && n.value === e) return [a]
|
||
}
|
||
return []
|
||
}
|
||
}), M.find.TAG = c.getElementsByTagName ? function (e, t) {
|
||
return void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e) : c.qsa ? t.querySelectorAll(e) : void 0
|
||
} : function (e, t) {
|
||
var n, i = [], r = 0, a = t.getElementsByTagName(e);
|
||
if ("*" !== e) return a;
|
||
for (; n = a[r++];) 1 === n.nodeType && i.push(n);
|
||
return i
|
||
}, M.find.CLASS = c.getElementsByClassName && function (e, t) {
|
||
if (void 0 !== t.getElementsByClassName && b) return t.getElementsByClassName(e)
|
||
}, i = [], f = [], (c.qsa = E.test(k.querySelectorAll)) && (A(function (e) {
|
||
var t;
|
||
n.appendChild(e).innerHTML = "<a id='" + w + "'></a><select id='" + w + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && f.push("[*^$]=" + s + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || f.push("\\[" + s + "*(?:value|" + Z + ")"), e.querySelectorAll("[id~=" + w + "-]").length || f.push("~="), (t = k.createElement("input")).setAttribute("name", ""), e.appendChild(t), e.querySelectorAll("[name='']").length || f.push("\\[" + s + "*name" + s + "*=" + s + "*(?:''|\"\")"), e.querySelectorAll(":checked").length || f.push(":checked"), e.querySelectorAll("a#" + w + "+*").length || f.push(".#.+[+~]"), e.querySelectorAll("\\\f"), f.push("[\\r\\n\\f]")
|
||
}), A(function (e) {
|
||
e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
|
||
var t = k.createElement("input");
|
||
t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && f.push("name" + s + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && f.push(":enabled", ":disabled"), n.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && f.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), f.push(",.*:")
|
||
})), (c.matchesSelector = E.test(r = n.matches || n.webkitMatchesSelector || n.mozMatchesSelector || n.oMatchesSelector || n.msMatchesSelector)) && A(function (e) {
|
||
c.disconnectedMatch = r.call(e, "*"), r.call(e, "[s!='']:x"), i.push("!=", Q)
|
||
}), f = f.length && new RegExp(f.join("|")), i = i.length && new RegExp(i.join("|")), e = E.test(n.compareDocumentPosition), m = e || E.test(n.contains) ? function (e, t) {
|
||
var n = 9 === e.nodeType ? e.documentElement : e, t = t && t.parentNode;
|
||
return e === t || !(!t || 1 !== t.nodeType || !(n.contains ? n.contains(t) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(t)))
|
||
} : function (e, t) {
|
||
if (t) for (; t = t.parentNode;) if (t === e) return !0;
|
||
return !1
|
||
}, G = e ? function (e, t) {
|
||
if (e === t) return d = !0, 0;
|
||
var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
|
||
return n || (1 & (n = (e.ownerDocument || e) == (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !c.sortDetached && t.compareDocumentPosition(e) === n ? e == k || e.ownerDocument == l && m(l, e) ? -1 : t == k || t.ownerDocument == l && m(l, t) ? 1 : u ? v(u, e) - v(u, t) : 0 : 4 & n ? -1 : 1)
|
||
} : function (e, t) {
|
||
if (e === t) return d = !0, 0;
|
||
var n, i = 0, r = e.parentNode, a = t.parentNode, s = [e], o = [t];
|
||
if (!r || !a) return e == k ? -1 : t == k ? 1 : r ? -1 : a ? 1 : u ? v(u, e) - v(u, t) : 0;
|
||
if (r === a) return fe(e, t);
|
||
for (n = e; n = n.parentNode;) s.unshift(n);
|
||
for (n = t; n = n.parentNode;) o.unshift(n);
|
||
for (; s[i] === o[i];) i++;
|
||
return i ? fe(s[i], o[i]) : s[i] == l ? -1 : o[i] == l ? 1 : 0
|
||
}), k
|
||
}, P.matches = function (e, t) {
|
||
return P(e, null, null, t)
|
||
}, P.matchesSelector = function (e, t) {
|
||
if (S(e), c.matchesSelector && b && !p[t + " "] && (!i || !i.test(t)) && (!f || !f.test(t))) try {
|
||
var n = r.call(e, t);
|
||
if (n || c.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n
|
||
} catch (e) {
|
||
p(t, !0)
|
||
}
|
||
return 0 < P(t, k, null, [e]).length
|
||
}, P.contains = function (e, t) {
|
||
return (e.ownerDocument || e) != k && S(e), m(e, t)
|
||
}, P.attr = function (e, t) {
|
||
(e.ownerDocument || e) != k && S(e);
|
||
var n = M.attrHandle[t.toLowerCase()],
|
||
n = n && J.call(M.attrHandle, t.toLowerCase()) ? n(e, t, !b) : void 0;
|
||
return void 0 !== n ? n : c.attributes || !b ? e.getAttribute(t) : (n = e.getAttributeNode(t)) && n.specified ? n.value : null
|
||
}, P.escape = function (e) {
|
||
return (e + "").replace(he, W)
|
||
}, P.error = function (e) {
|
||
throw new Error("Syntax error, unrecognized expression: " + e)
|
||
}, P.uniqueSort = function (e) {
|
||
var t, n = [], i = 0, r = 0;
|
||
if (d = !c.detectDuplicates, u = !c.sortStable && e.slice(0), e.sort(G), d) {
|
||
for (; t = e[r++];) t === e[r] && (i = n.push(r));
|
||
for (; i--;) e.splice(n[i], 1)
|
||
}
|
||
return u = null, e
|
||
}, a = P.getText = function (e) {
|
||
var t, n = "", i = 0, r = e.nodeType;
|
||
if (r) {
|
||
if (1 === r || 9 === r || 11 === r) {
|
||
if ("string" == typeof e.textContent) return e.textContent;
|
||
for (e = e.firstChild; e; e = e.nextSibling) n += a(e)
|
||
} else if (3 === r || 4 === r) return e.nodeValue
|
||
} else for (; t = e[i++];) n += a(t);
|
||
return n
|
||
}, (M = P.selectors = {
|
||
cacheLength: 50,
|
||
createPseudo: R,
|
||
match: g,
|
||
attrHandle: {},
|
||
find: {},
|
||
relative: {
|
||
">": {dir: "parentNode", first: !0},
|
||
" ": {dir: "parentNode"},
|
||
"+": {dir: "previousSibling", first: !0},
|
||
"~": {dir: "previousSibling"}
|
||
},
|
||
preFilter: {
|
||
ATTR: function (e) {
|
||
return e[1] = e[1].replace(Y, h), e[3] = (e[3] || e[4] || e[5] || "").replace(Y, h), "~=" === e[2] && (e[3] = " " + e[3] + " "), e.slice(0, 4)
|
||
}, CHILD: function (e) {
|
||
return e[1] = e[1].toLowerCase(), "nth" === e[1].slice(0, 3) ? (e[3] || P.error(e[0]), e[4] = +(e[4] ? e[5] + (e[6] || 1) : 2 * ("even" === e[3] || "odd" === e[3])), e[5] = +(e[7] + e[8] || "odd" === e[3])) : e[3] && P.error(e[0]), e
|
||
}, PSEUDO: function (e) {
|
||
var t, n = !e[6] && e[2];
|
||
return g.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && re.test(n) && (t = _(n, !0)) && (t = n.indexOf(")", n.length - t) - n.length) && (e[0] = e[0].slice(0, t), e[2] = n.slice(0, t)), e.slice(0, 3))
|
||
}
|
||
},
|
||
filter: {
|
||
TAG: function (e) {
|
||
var t = e.replace(Y, h).toLowerCase();
|
||
return "*" === e ? function () {
|
||
return !0
|
||
} : function (e) {
|
||
return e.nodeName && e.nodeName.toLowerCase() === t
|
||
}
|
||
}, CLASS: function (e) {
|
||
var t = z[e + " "];
|
||
return t || (t = new RegExp("(^|" + s + ")" + e + "(" + s + "|$)")) && z(e, function (e) {
|
||
return t.test("string" == typeof e.className && e.className || void 0 !== e.getAttribute && e.getAttribute("class") || "")
|
||
})
|
||
}, ATTR: function (t, n, i) {
|
||
return function (e) {
|
||
e = P.attr(e, t);
|
||
return null == e ? "!=" === n : !n || (e += "", "=" === n ? e === i : "!=" === n ? e !== i : "^=" === n ? i && 0 === e.indexOf(i) : "*=" === n ? i && -1 < e.indexOf(i) : "$=" === n ? i && e.slice(-i.length) === i : "~=" === n ? -1 < (" " + e.replace(ee, " ") + " ").indexOf(i) : "|=" === n && (e === i || e.slice(0, i.length + 1) === i + "-"))
|
||
}
|
||
}, CHILD: function (f, e, t, m, p) {
|
||
var y = "nth" !== f.slice(0, 3), v = "last" !== f.slice(-4), g = "of-type" === e;
|
||
return 1 === m && 0 === p ? function (e) {
|
||
return !!e.parentNode
|
||
} : function (e, t, n) {
|
||
var i, r, a, s, o, u, d = y != v ? "nextSibling" : "previousSibling",
|
||
l = e.parentNode, h = g && e.nodeName.toLowerCase(), c = !n && !g, _ = !1;
|
||
if (l) {
|
||
if (y) {
|
||
for (; d;) {
|
||
for (s = e; s = s[d];) if (g ? s.nodeName.toLowerCase() === h : 1 === s.nodeType) return !1;
|
||
u = d = "only" === f && !u && "nextSibling"
|
||
}
|
||
return !0
|
||
}
|
||
if (u = [v ? l.firstChild : l.lastChild], v && c) {
|
||
for (_ = (o = (i = (r = (a = (s = l)[w] || (s[w] = {}))[s.uniqueID] || (a[s.uniqueID] = {}))[f] || [])[0] === D && i[1]) && i[2], s = o && l.childNodes[o]; s = ++o && s && s[d] || (_ = o = 0) || u.pop();) if (1 === s.nodeType && ++_ && s === e) {
|
||
r[f] = [D, o, _];
|
||
break
|
||
}
|
||
} else if (!1 === (_ = c ? o = (i = (r = (a = (s = e)[w] || (s[w] = {}))[s.uniqueID] || (a[s.uniqueID] = {}))[f] || [])[0] === D && i[1] : _)) for (; (s = ++o && s && s[d] || (_ = o = 0) || u.pop()) && ((g ? s.nodeName.toLowerCase() !== h : 1 !== s.nodeType) || !++_ || (c && ((r = (a = s[w] || (s[w] = {}))[s.uniqueID] || (a[s.uniqueID] = {}))[f] = [D, _]), s !== e));) ;
|
||
return (_ -= p) === m || _ % m == 0 && 0 <= _ / m
|
||
}
|
||
}
|
||
}, PSEUDO: function (e, a) {
|
||
var t,
|
||
s = M.pseudos[e] || M.setFilters[e.toLowerCase()] || P.error("unsupported pseudo: " + e);
|
||
return s[w] ? s(a) : 1 < s.length ? (t = [e, e, "", a], M.setFilters.hasOwnProperty(e.toLowerCase()) ? R(function (e, t) {
|
||
for (var n, i = s(e, a), r = i.length; r--;) e[n = v(e, i[r])] = !(t[n] = i[r])
|
||
}) : function (e) {
|
||
return s(e, 0, t)
|
||
}) : s
|
||
}
|
||
},
|
||
pseudos: {
|
||
not: R(function (e) {
|
||
var i = [], r = [], o = F(e.replace(y, "$1"));
|
||
return o[w] ? R(function (e, t, n, i) {
|
||
for (var r, a = o(e, null, i, []), s = e.length; s--;) (r = a[s]) && (e[s] = !(t[s] = r))
|
||
}) : function (e, t, n) {
|
||
return i[0] = e, o(i, null, n, r), i[0] = null, !r.pop()
|
||
}
|
||
}), has: R(function (t) {
|
||
return function (e) {
|
||
return 0 < P(t, e).length
|
||
}
|
||
}), contains: R(function (t) {
|
||
return t = t.replace(Y, h), function (e) {
|
||
return -1 < (e.textContent || a(e)).indexOf(t)
|
||
}
|
||
}), lang: R(function (n) {
|
||
return ae.test(n || "") || P.error("unsupported lang: " + n), n = n.replace(Y, h).toLowerCase(), function (e) {
|
||
var t;
|
||
do {
|
||
if (t = b ? e.lang : e.getAttribute("xml:lang") || e.getAttribute("lang")) return (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-")
|
||
} while ((e = e.parentNode) && 1 === e.nodeType);
|
||
return !1
|
||
}
|
||
}), target: function (e) {
|
||
var t = I.location && I.location.hash;
|
||
return t && t.slice(1) === e.id
|
||
}, root: function (e) {
|
||
return e === n
|
||
}, focus: function (e) {
|
||
return e === k.activeElement && (!k.hasFocus || k.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
|
||
}, enabled: me(!1), disabled: me(!0), checked: function (e) {
|
||
var t = e.nodeName.toLowerCase();
|
||
return "input" === t && !!e.checked || "option" === t && !!e.selected
|
||
}, selected: function (e) {
|
||
return e.parentNode && e.parentNode.selectedIndex, !0 === e.selected
|
||
}, empty: function (e) {
|
||
for (e = e.firstChild; e; e = e.nextSibling) if (e.nodeType < 6) return !1;
|
||
return !0
|
||
}, parent: function (e) {
|
||
return !M.pseudos.empty(e)
|
||
}, header: function (e) {
|
||
return ue.test(e.nodeName)
|
||
}, input: function (e) {
|
||
return oe.test(e.nodeName)
|
||
}, button: function (e) {
|
||
var t = e.nodeName.toLowerCase();
|
||
return "input" === t && "button" === e.type || "button" === t
|
||
}, text: function (e) {
|
||
return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (e = e.getAttribute("type")) || "text" === e.toLowerCase())
|
||
}, first: x(function () {
|
||
return [0]
|
||
}), last: x(function (e, t) {
|
||
return [t - 1]
|
||
}), eq: x(function (e, t, n) {
|
||
return [n < 0 ? n + t : n]
|
||
}), even: x(function (e, t) {
|
||
for (var n = 0; n < t; n += 2) e.push(n);
|
||
return e
|
||
}), odd: x(function (e, t) {
|
||
for (var n = 1; n < t; n += 2) e.push(n);
|
||
return e
|
||
}), lt: x(function (e, t, n) {
|
||
for (var i = n < 0 ? n + t : t < n ? t : n; 0 <= --i;) e.push(i);
|
||
return e
|
||
}), gt: x(function (e, t, n) {
|
||
for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i);
|
||
return e
|
||
})
|
||
}
|
||
}).pseudos.nth = M.pseudos.eq, {
|
||
radio: !0,
|
||
checkbox: !0,
|
||
file: !0,
|
||
password: !0,
|
||
image: !0
|
||
}) M.pseudos[e] = function (t) {
|
||
return function (e) {
|
||
return "input" === e.nodeName.toLowerCase() && e.type === t
|
||
}
|
||
}(e);
|
||
for (e in {submit: !0, reset: !0}) M.pseudos[e] = function (n) {
|
||
return function (e) {
|
||
var t = e.nodeName.toLowerCase();
|
||
return ("input" === t || "button" === t) && e.type === n
|
||
}
|
||
}(e);
|
||
|
||
function ye() {
|
||
}
|
||
|
||
function O(e) {
|
||
for (var t = 0, n = e.length, i = ""; t < n; t++) i += e[t].value;
|
||
return i
|
||
}
|
||
|
||
function ve(s, e, t) {
|
||
var o = e.dir, u = e.next, d = u || o, l = t && "parentNode" === d, h = N++;
|
||
return e.first ? function (e, t, n) {
|
||
for (; e = e[o];) if (1 === e.nodeType || l) return s(e, t, n);
|
||
return !1
|
||
} : function (e, t, n) {
|
||
var i, r, a = [D, h];
|
||
if (n) {
|
||
for (; e = e[o];) if ((1 === e.nodeType || l) && s(e, t, n)) return !0
|
||
} else for (; e = e[o];) if (1 === e.nodeType || l) if (r = (r = e[w] || (e[w] = {}))[e.uniqueID] || (r[e.uniqueID] = {}), u && u === e.nodeName.toLowerCase()) e = e[o] || e; else {
|
||
if ((i = r[d]) && i[0] === D && i[1] === h) return a[2] = i[2];
|
||
if ((r[d] = a)[2] = s(e, t, n)) return !0
|
||
}
|
||
return !1
|
||
}
|
||
}
|
||
|
||
function ge(r) {
|
||
return 1 < r.length ? function (e, t, n) {
|
||
for (var i = r.length; i--;) if (!r[i](e, t, n)) return !1;
|
||
return !0
|
||
} : r[0]
|
||
}
|
||
|
||
function Me(e, t, n, i, r) {
|
||
for (var a, s = [], o = 0, u = e.length, d = null != t; o < u; o++) !(a = e[o]) || n && !n(a, i, r) || (s.push(a), d && t.push(o));
|
||
return s
|
||
}
|
||
|
||
function Le(_, f, m, p, y, e) {
|
||
return p && !p[w] && (p = Le(p)), y && !y[w] && (y = Le(y, e)), R(function (e, t, n, i) {
|
||
var r, a, s, o = [], u = [], d = t.length, l = e || function (e, t, n) {
|
||
for (var i = 0, r = t.length; i < r; i++) P(e, t[i], n);
|
||
return n
|
||
}(f || "*", n.nodeType ? [n] : n, []), h = !_ || !e && f ? l : Me(l, o, _, n, i),
|
||
c = m ? y || (e ? _ : d || p) ? [] : t : h;
|
||
if (m && m(h, c, n, i), p) for (r = Me(c, u), p(r, [], n, i), a = r.length; a--;) (s = r[a]) && (c[u[a]] = !(h[u[a]] = s));
|
||
if (e) {
|
||
if (y || _) {
|
||
if (y) {
|
||
for (r = [], a = c.length; a--;) (s = c[a]) && r.push(h[a] = s);
|
||
y(null, c = [], r, i)
|
||
}
|
||
for (a = c.length; a--;) (s = c[a]) && -1 < (r = y ? v(e, s) : o[a]) && (e[r] = !(t[r] = s))
|
||
}
|
||
} else c = Me(c === t ? c.splice(d, c.length) : c), y ? y(null, t, c, i) : T.apply(t, c)
|
||
})
|
||
}
|
||
|
||
function Se(p, y) {
|
||
function e(e, t, n, i, r) {
|
||
var a, s, o, u = 0, d = "0", l = e && [], h = [], c = L, _ = e || g && M.find.TAG("*", r),
|
||
f = D += null == c ? 1 : Math.random() || .1, m = _.length;
|
||
for (r && (L = t == k || t || r); d !== m && null != (a = _[d]); d++) {
|
||
if (g && a) {
|
||
for (s = 0, t || a.ownerDocument == k || (S(a), n = !b); o = p[s++];) if (o(a, t || k, n)) {
|
||
i.push(a);
|
||
break
|
||
}
|
||
r && (D = f)
|
||
}
|
||
v && ((a = !o && a) && u--, e && l.push(a))
|
||
}
|
||
if (u += d, v && d !== u) {
|
||
for (s = 0; o = y[s++];) o(l, h, t, n);
|
||
if (e) {
|
||
if (0 < u) for (; d--;) l[d] || h[d] || (h[d] = q.call(i));
|
||
h = Me(h)
|
||
}
|
||
T.apply(i, h), r && !e && 0 < h.length && 1 < u + y.length && P.uniqueSort(i)
|
||
}
|
||
return r && (D = f, L = c), l
|
||
}
|
||
|
||
var v = 0 < y.length, g = 0 < p.length;
|
||
return v ? R(e) : e
|
||
}
|
||
|
||
return ye.prototype = M.filters = M.pseudos, M.setFilters = new ye, _ = P.tokenize = function (e, t) {
|
||
var n, i, r, a, s, o, u, d = U[e + " "];
|
||
if (d) return t ? 0 : d.slice(0);
|
||
for (s = e, o = [], u = M.preFilter; s;) {
|
||
for (a in n && !(i = te.exec(s)) || (i && (s = s.slice(i[0].length) || s), o.push(r = [])), n = !1, (i = ne.exec(s)) && (n = i.shift(), r.push({
|
||
value: n,
|
||
type: i[0].replace(y, " ")
|
||
}), s = s.slice(n.length)), M.filter) !(i = g[a].exec(s)) || u[a] && !(i = u[a](i)) || (n = i.shift(), r.push({
|
||
value: n,
|
||
type: a,
|
||
matches: i
|
||
}), s = s.slice(n.length));
|
||
if (!n) break
|
||
}
|
||
return t ? s.length : s ? P.error(e) : U(e, o).slice(0)
|
||
}, F = P.compile = function (e, t) {
|
||
var n, i = [], r = [], a = V[e + " "];
|
||
if (!a) {
|
||
for (n = (t = t || _(e)).length; n--;) ((a = function e(t) {
|
||
for (var i, n, r, a = t.length, s = M.relative[t[0].type], o = s || M.relative[" "], u = s ? 1 : 0, d = ve(function (e) {
|
||
return e === i
|
||
}, o, !0), l = ve(function (e) {
|
||
return -1 < v(i, e)
|
||
}, o, !0), h = [function (e, t, n) {
|
||
return e = !s && (n || t !== L) || ((i = t).nodeType ? d : l)(e, t, n), i = null, e
|
||
}]; u < a; u++) if (n = M.relative[t[u].type]) h = [ve(ge(h), n)]; else {
|
||
if ((n = M.filter[t[u].type].apply(null, t[u].matches))[w]) {
|
||
for (r = ++u; r < a && !M.relative[t[r].type]; r++) ;
|
||
return Le(1 < u && ge(h), 1 < u && O(t.slice(0, u - 1).concat({value: " " === t[u - 2].type ? "*" : ""})).replace(y, "$1"), n, u < r && e(t.slice(u, r)), r < a && e(t = t.slice(r)), r < a && O(t))
|
||
}
|
||
h.push(n)
|
||
}
|
||
return ge(h)
|
||
}(t[n]))[w] ? i : r).push(a);
|
||
(a = V(e, Se(r, i))).selector = e
|
||
}
|
||
return a
|
||
}, B = P.select = function (e, t, n, i) {
|
||
var r, a, s, o, u, d = "function" == typeof e && e, l = !i && _(e = d.selector || e);
|
||
if (n = n || [], 1 === l.length) {
|
||
if (2 < (a = l[0] = l[0].slice(0)).length && "ID" === (s = a[0]).type && 9 === t.nodeType && b && M.relative[a[1].type]) {
|
||
if (!(t = (M.find.ID(s.matches[0].replace(Y, h), t) || [])[0])) return n;
|
||
d && (t = t.parentNode), e = e.slice(a.shift().value.length)
|
||
}
|
||
for (r = g.needsContext.test(e) ? 0 : a.length; r-- && (s = a[r], !M.relative[o = s.type]);) if ((u = M.find[o]) && (i = u(s.matches[0].replace(Y, h), le.test(a[0].type) && pe(t.parentNode) || t))) {
|
||
if (a.splice(r, 1), e = i.length && O(a)) break;
|
||
return T.apply(n, i), n
|
||
}
|
||
}
|
||
return (d || F(e, l))(i, t, !b, n, !t || le.test(e) && pe(t.parentNode) || t), n
|
||
}, c.sortStable = w.split("").sort(G).join("") === w, c.detectDuplicates = !!d, S(), c.sortDetached = A(function (e) {
|
||
return 1 & e.compareDocumentPosition(k.createElement("fieldset"))
|
||
}), A(function (e) {
|
||
return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
|
||
}) || _e("type|href|height|width", function (e, t, n) {
|
||
if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
|
||
}), c.attributes && A(function (e) {
|
||
return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
|
||
}) || _e("value", function (e, t, n) {
|
||
if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue
|
||
}), A(function (e) {
|
||
return null == e.getAttribute("disabled")
|
||
}) || _e(Z, function (e, t, n) {
|
||
if (!n) return !0 === e[t] ? t.toLowerCase() : (n = e.getAttributeNode(t)) && n.specified ? n.value : null
|
||
}), P
|
||
}(L),
|
||
X = (k.find = e, k.expr = e.selectors, k.expr[":"] = k.expr.pseudos, k.uniqueSort = k.unique = e.uniqueSort, k.text = e.getText, k.isXMLDoc = e.isXML, k.contains = e.contains, k.escapeSelector = e.escape, k.expr.match.needsContext);
|
||
|
||
function u(e, t) {
|
||
return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
|
||
}
|
||
|
||
var Z = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
|
||
|
||
function $(e, n, i) {
|
||
return v(n) ? k.grep(e, function (e, t) {
|
||
return !!n.call(e, t, e) !== i
|
||
}) : n.nodeType ? k.grep(e, function (e) {
|
||
return e === n !== i
|
||
}) : "string" != typeof n ? k.grep(e, function (e) {
|
||
return -1 < F.call(n, e) !== i
|
||
}) : k.filter(n, e, i)
|
||
}
|
||
|
||
k.filter = function (e, t, n) {
|
||
var i = t[0];
|
||
return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === i.nodeType ? k.find.matchesSelector(i, e) ? [i] : [] : k.find.matches(e, k.grep(t, function (e) {
|
||
return 1 === e.nodeType
|
||
}))
|
||
}, k.fn.extend({
|
||
find: function (e) {
|
||
var t, n, i = this.length, r = this;
|
||
if ("string" != typeof e) return this.pushStack(k(e).filter(function () {
|
||
for (t = 0; t < i; t++) if (k.contains(r[t], this)) return !0
|
||
}));
|
||
for (n = this.pushStack([]), t = 0; t < i; t++) k.find(e, r[t], n);
|
||
return 1 < i ? k.uniqueSort(n) : n
|
||
}, filter: function (e) {
|
||
return this.pushStack($(this, e || [], !1))
|
||
}, not: function (e) {
|
||
return this.pushStack($(this, e || [], !0))
|
||
}, is: function (e) {
|
||
return !!$(this, "string" == typeof e && X.test(e) ? k(e) : e || [], !1).length
|
||
}
|
||
});
|
||
var Q, ee = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, te = ((k.fn.init = function (e, t, n) {
|
||
if (!e) return this;
|
||
if (n = n || Q, "string" != typeof e) return e.nodeType ? (this[0] = e, this.length = 1, this) : v(e) ? void 0 !== n.ready ? n.ready(e) : e(k) : k.makeArray(e, this);
|
||
if (!(i = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : ee.exec(e)) || !i[1] && t) return (!t || t.jquery ? t || n : this.constructor(t)).find(e);
|
||
if (i[1]) {
|
||
if (t = t instanceof k ? t[0] : t, k.merge(this, k.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : S, !0)), Z.test(i[1]) && k.isPlainObject(t)) for (var i in t) v(this[i]) ? this[i](t[i]) : this.attr(i, t[i]);
|
||
return this
|
||
}
|
||
return (n = S.getElementById(i[2])) && (this[0] = n, this.length = 1), this
|
||
}).prototype = k.fn, Q = k(S), /^(?:parents|prev(?:Until|All))/),
|
||
ne = {children: !0, contents: !0, next: !0, prev: !0};
|
||
|
||
function ie(e, t) {
|
||
for (; (e = e[t]) && 1 !== e.nodeType;) ;
|
||
return e
|
||
}
|
||
|
||
k.fn.extend({
|
||
has: function (e) {
|
||
var t = k(e, this), n = t.length;
|
||
return this.filter(function () {
|
||
for (var e = 0; e < n; e++) if (k.contains(this, t[e])) return !0
|
||
})
|
||
}, closest: function (e, t) {
|
||
var n, i = 0, r = this.length, a = [], s = "string" != typeof e && k(e);
|
||
if (!X.test(e)) for (; i < r; i++) for (n = this[i]; n && n !== t; n = n.parentNode) if (n.nodeType < 11 && (s ? -1 < s.index(n) : 1 === n.nodeType && k.find.matchesSelector(n, e))) {
|
||
a.push(n);
|
||
break
|
||
}
|
||
return this.pushStack(1 < a.length ? k.uniqueSort(a) : a)
|
||
}, index: function (e) {
|
||
return e ? "string" == typeof e ? F.call(k(e), this[0]) : F.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
|
||
}, add: function (e, t) {
|
||
return this.pushStack(k.uniqueSort(k.merge(this.get(), k(e, t))))
|
||
}, addBack: function (e) {
|
||
return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
|
||
}
|
||
}), k.each({
|
||
parent: function (e) {
|
||
e = e.parentNode;
|
||
return e && 11 !== e.nodeType ? e : null
|
||
}, parents: function (e) {
|
||
return i(e, "parentNode")
|
||
}, parentsUntil: function (e, t, n) {
|
||
return i(e, "parentNode", n)
|
||
}, next: function (e) {
|
||
return ie(e, "nextSibling")
|
||
}, prev: function (e) {
|
||
return ie(e, "previousSibling")
|
||
}, nextAll: function (e) {
|
||
return i(e, "nextSibling")
|
||
}, prevAll: function (e) {
|
||
return i(e, "previousSibling")
|
||
}, nextUntil: function (e, t, n) {
|
||
return i(e, "nextSibling", n)
|
||
}, prevUntil: function (e, t, n) {
|
||
return i(e, "previousSibling", n)
|
||
}, siblings: function (e) {
|
||
return K((e.parentNode || {}).firstChild, e)
|
||
}, children: function (e) {
|
||
return K(e.firstChild)
|
||
}, contents: function (e) {
|
||
return null != e.contentDocument && W(e.contentDocument) ? e.contentDocument : (u(e, "template") && (e = e.content || e), k.merge([], e.childNodes))
|
||
}
|
||
}, function (i, r) {
|
||
k.fn[i] = function (e, t) {
|
||
var n = k.map(this, r, e);
|
||
return (t = "Until" !== i.slice(-5) ? e : t) && "string" == typeof t && (n = k.filter(t, n)), 1 < this.length && (ne[i] || k.uniqueSort(n), te.test(i) && n.reverse()), this.pushStack(n)
|
||
}
|
||
});
|
||
var b = /[^\x20\t\r\n\f]+/g;
|
||
|
||
function l(e) {
|
||
return e
|
||
}
|
||
|
||
function re(e) {
|
||
throw e
|
||
}
|
||
|
||
function ae(e, t, n, i) {
|
||
var r;
|
||
try {
|
||
e && v(r = e.promise) ? r.call(e).done(t).fail(n) : e && v(r = e.then) ? r.call(e, t, n) : t.apply(void 0, [e].slice(i))
|
||
} catch (e) {
|
||
n.apply(void 0, [e])
|
||
}
|
||
}
|
||
|
||
k.Callbacks = function (i) {
|
||
var e, n;
|
||
i = "string" == typeof i ? (e = i, n = {}, k.each(e.match(b) || [], function (e, t) {
|
||
n[t] = !0
|
||
}), n) : k.extend({}, i);
|
||
|
||
function r() {
|
||
for (o = o || i.once, s = a = !0; d.length; l = -1) for (t = d.shift(); ++l < u.length;) !1 === u[l].apply(t[0], t[1]) && i.stopOnFalse && (l = u.length, t = !1);
|
||
i.memory || (t = !1), a = !1, o && (u = t ? [] : "")
|
||
}
|
||
|
||
var a, t, s, o, u = [], d = [], l = -1, h = {
|
||
add: function () {
|
||
return u && (t && !a && (l = u.length - 1, d.push(t)), function n(e) {
|
||
k.each(e, function (e, t) {
|
||
v(t) ? i.unique && h.has(t) || u.push(t) : t && t.length && "string" !== f(t) && n(t)
|
||
})
|
||
}(arguments), t && !a && r()), this
|
||
}, remove: function () {
|
||
return k.each(arguments, function (e, t) {
|
||
for (var n; -1 < (n = k.inArray(t, u, n));) u.splice(n, 1), n <= l && l--
|
||
}), this
|
||
}, has: function (e) {
|
||
return e ? -1 < k.inArray(e, u) : 0 < u.length
|
||
}, empty: function () {
|
||
return u = u && [], this
|
||
}, disable: function () {
|
||
return o = d = [], u = t = "", this
|
||
}, disabled: function () {
|
||
return !u
|
||
}, lock: function () {
|
||
return o = d = [], t || a || (u = t = ""), this
|
||
}, locked: function () {
|
||
return !!o
|
||
}, fireWith: function (e, t) {
|
||
return o || (t = [e, (t = t || []).slice ? t.slice() : t], d.push(t), a || r()), this
|
||
}, fire: function () {
|
||
return h.fireWith(this, arguments), this
|
||
}, fired: function () {
|
||
return !!s
|
||
}
|
||
};
|
||
return h
|
||
}, k.extend({
|
||
Deferred: function (e) {
|
||
var a = [["notify", "progress", k.Callbacks("memory"), k.Callbacks("memory"), 2], ["resolve", "done", k.Callbacks("once memory"), k.Callbacks("once memory"), 0, "resolved"], ["reject", "fail", k.Callbacks("once memory"), k.Callbacks("once memory"), 1, "rejected"]],
|
||
r = "pending", s = {
|
||
state: function () {
|
||
return r
|
||
}, always: function () {
|
||
return o.done(arguments).fail(arguments), this
|
||
}, catch: function (e) {
|
||
return s.then(null, e)
|
||
}, pipe: function () {
|
||
var r = arguments;
|
||
return k.Deferred(function (i) {
|
||
k.each(a, function (e, t) {
|
||
var n = v(r[t[4]]) && r[t[4]];
|
||
o[t[1]](function () {
|
||
var e = n && n.apply(this, arguments);
|
||
e && v(e.promise) ? e.promise().progress(i.notify).done(i.resolve).fail(i.reject) : i[t[0] + "With"](this, n ? [e] : arguments)
|
||
})
|
||
}), r = null
|
||
}).promise()
|
||
}, then: function (t, n, i) {
|
||
var u = 0;
|
||
|
||
function d(r, a, s, o) {
|
||
return function () {
|
||
function e() {
|
||
var e, t;
|
||
if (!(r < u)) {
|
||
if ((e = s.apply(n, i)) === a.promise()) throw new TypeError("Thenable self-resolution");
|
||
t = e && ("object" == typeof e || "function" == typeof e) && e.then, v(t) ? o ? t.call(e, d(u, a, l, o), d(u, a, re, o)) : (u++, t.call(e, d(u, a, l, o), d(u, a, re, o), d(u, a, l, a.notifyWith))) : (s !== l && (n = void 0, i = [e]), (o || a.resolveWith)(n, i))
|
||
}
|
||
}
|
||
|
||
var n = this, i = arguments, t = o ? e : function () {
|
||
try {
|
||
e()
|
||
} catch (e) {
|
||
k.Deferred.exceptionHook && k.Deferred.exceptionHook(e, t.stackTrace), u <= r + 1 && (s !== re && (n = void 0, i = [e]), a.rejectWith(n, i))
|
||
}
|
||
};
|
||
r ? t() : (k.Deferred.getStackHook && (t.stackTrace = k.Deferred.getStackHook()), L.setTimeout(t))
|
||
}
|
||
}
|
||
|
||
return k.Deferred(function (e) {
|
||
a[0][3].add(d(0, e, v(i) ? i : l, e.notifyWith)), a[1][3].add(d(0, e, v(t) ? t : l)), a[2][3].add(d(0, e, v(n) ? n : re))
|
||
}).promise()
|
||
}, promise: function (e) {
|
||
return null != e ? k.extend(e, s) : s
|
||
}
|
||
}, o = {};
|
||
return k.each(a, function (e, t) {
|
||
var n = t[2], i = t[5];
|
||
s[t[1]] = n.add, i && n.add(function () {
|
||
r = i
|
||
}, a[3 - e][2].disable, a[3 - e][3].disable, a[0][2].lock, a[0][3].lock), n.add(t[3].fire), o[t[0]] = function () {
|
||
return o[t[0] + "With"](this === o ? void 0 : this, arguments), this
|
||
}, o[t[0] + "With"] = n.fireWith
|
||
}), s.promise(o), e && e.call(o, o), o
|
||
}, when: function (e) {
|
||
function t(t) {
|
||
return function (e) {
|
||
r[t] = this, a[t] = 1 < arguments.length ? o.call(arguments) : e, --n || s.resolveWith(r, a)
|
||
}
|
||
}
|
||
|
||
var n = arguments.length, i = n, r = Array(i), a = o.call(arguments), s = k.Deferred();
|
||
if (n <= 1 && (ae(e, s.done(t(i)).resolve, s.reject, !n), "pending" === s.state() || v(a[i] && a[i].then))) return s.then();
|
||
for (; i--;) ae(a[i], t(i), s.reject);
|
||
return s.promise()
|
||
}
|
||
});
|
||
var se = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/,
|
||
oe = (k.Deferred.exceptionHook = function (e, t) {
|
||
L.console && L.console.warn && e && se.test(e.name) && L.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t)
|
||
}, k.readyException = function (e) {
|
||
L.setTimeout(function () {
|
||
throw e
|
||
})
|
||
}, k.Deferred());
|
||
|
||
function ue() {
|
||
S.removeEventListener("DOMContentLoaded", ue), L.removeEventListener("load", ue), k.ready()
|
||
}
|
||
|
||
k.fn.ready = function (e) {
|
||
return oe.then(e).catch(function (e) {
|
||
k.readyException(e)
|
||
}), this
|
||
}, k.extend({
|
||
isReady: !1, readyWait: 1, ready: function (e) {
|
||
(!0 === e ? --k.readyWait : k.isReady) || (k.isReady = !0) !== e && 0 < --k.readyWait || oe.resolveWith(S, [k])
|
||
}
|
||
}), k.ready.then = oe.then, "complete" === S.readyState || "loading" !== S.readyState && !S.documentElement.doScroll ? L.setTimeout(k.ready) : (S.addEventListener("DOMContentLoaded", ue), L.addEventListener("load", ue));
|
||
|
||
function h(e, t, n, i, r, a, s) {
|
||
var o = 0, u = e.length, d = null == n;
|
||
if ("object" === f(n)) for (o in r = !0, n) h(e, t, o, n[o], !0, a, s); else if (void 0 !== i && (r = !0, v(i) || (s = !0), t = d ? s ? (t.call(e, i), null) : (d = t, function (e, t, n) {
|
||
return d.call(k(e), n)
|
||
}) : t)) for (; o < u; o++) t(e[o], n, s ? i : i.call(e[o], o, t(e[o], n)));
|
||
return r ? e : d ? t.call(e) : u ? t(e[0], n) : a
|
||
}
|
||
|
||
var de = /^-ms-/, le = /-([a-z])/g;
|
||
|
||
function he(e, t) {
|
||
return t.toUpperCase()
|
||
}
|
||
|
||
function g(e) {
|
||
return e.replace(de, "ms-").replace(le, he)
|
||
}
|
||
|
||
function y(e) {
|
||
return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType
|
||
}
|
||
|
||
function ce() {
|
||
this.expando = k.expando + ce.uid++
|
||
}
|
||
|
||
ce.uid = 1, ce.prototype = {
|
||
cache: function (e) {
|
||
var t = e[this.expando];
|
||
return t || (t = {}, y(e) && (e.nodeType ? e[this.expando] = t : Object.defineProperty(e, this.expando, {
|
||
value: t,
|
||
configurable: !0
|
||
}))), t
|
||
}, set: function (e, t, n) {
|
||
var i, r = this.cache(e);
|
||
if ("string" == typeof t) r[g(t)] = n; else for (i in t) r[g(i)] = t[i];
|
||
return r
|
||
}, get: function (e, t) {
|
||
return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][g(t)]
|
||
}, access: function (e, t, n) {
|
||
return void 0 === t || t && "string" == typeof t && void 0 === n ? this.get(e, t) : (this.set(e, t, n), void 0 !== n ? n : t)
|
||
}, remove: function (e, t) {
|
||
var n, i = e[this.expando];
|
||
if (void 0 !== i) {
|
||
if (void 0 !== t) {
|
||
n = (t = Array.isArray(t) ? t.map(g) : (t = g(t)) in i ? [t] : t.match(b) || []).length;
|
||
for (; n--;) delete i[t[n]]
|
||
}
|
||
void 0 !== t && !k.isEmptyObject(i) || (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando])
|
||
}
|
||
}, hasData: function (e) {
|
||
e = e[this.expando];
|
||
return void 0 !== e && !k.isEmptyObject(e)
|
||
}
|
||
};
|
||
var M = new ce, d = new ce, _e = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, fe = /[A-Z]/g;
|
||
|
||
function me(e, t, n) {
|
||
var i, r;
|
||
if (void 0 === n && 1 === e.nodeType) if (i = "data-" + t.replace(fe, "-$&").toLowerCase(), "string" == typeof (n = e.getAttribute(i))) {
|
||
try {
|
||
n = "true" === (r = n) || "false" !== r && ("null" === r ? null : r === +r + "" ? +r : _e.test(r) ? JSON.parse(r) : r)
|
||
} catch (e) {
|
||
}
|
||
d.set(e, t, n)
|
||
} else n = void 0;
|
||
return n
|
||
}
|
||
|
||
k.extend({
|
||
hasData: function (e) {
|
||
return d.hasData(e) || M.hasData(e)
|
||
}, data: function (e, t, n) {
|
||
return d.access(e, t, n)
|
||
}, removeData: function (e, t) {
|
||
d.remove(e, t)
|
||
}, _data: function (e, t, n) {
|
||
return M.access(e, t, n)
|
||
}, _removeData: function (e, t) {
|
||
M.remove(e, t)
|
||
}
|
||
}), k.fn.extend({
|
||
data: function (n, e) {
|
||
var t, i, r, a = this[0], s = a && a.attributes;
|
||
if (void 0 !== n) return "object" == typeof n ? this.each(function () {
|
||
d.set(this, n)
|
||
}) : h(this, function (e) {
|
||
var t;
|
||
if (a && void 0 === e) return void 0 !== (t = d.get(a, n)) || void 0 !== (t = me(a, n)) ? t : void 0;
|
||
this.each(function () {
|
||
d.set(this, n, e)
|
||
})
|
||
}, null, e, 1 < arguments.length, null, !0);
|
||
if (this.length && (r = d.get(a), 1 === a.nodeType && !M.get(a, "hasDataAttrs"))) {
|
||
for (t = s.length; t--;) s[t] && 0 === (i = s[t].name).indexOf("data-") && (i = g(i.slice(5)), me(a, i, r[i]));
|
||
M.set(a, "hasDataAttrs", !0)
|
||
}
|
||
return r
|
||
}, removeData: function (e) {
|
||
return this.each(function () {
|
||
d.remove(this, e)
|
||
})
|
||
}
|
||
}), k.extend({
|
||
queue: function (e, t, n) {
|
||
var i;
|
||
if (e) return i = M.get(e, t = (t || "fx") + "queue"), n && (!i || Array.isArray(n) ? i = M.access(e, t, k.makeArray(n)) : i.push(n)), i || []
|
||
}, dequeue: function (e, t) {
|
||
t = t || "fx";
|
||
var n = k.queue(e, t), i = n.length, r = n.shift(), a = k._queueHooks(e, t);
|
||
"inprogress" === r && (r = n.shift(), i--), r && ("fx" === t && n.unshift("inprogress"), delete a.stop, r.call(e, function () {
|
||
k.dequeue(e, t)
|
||
}, a)), !i && a && a.empty.fire()
|
||
}, _queueHooks: function (e, t) {
|
||
var n = t + "queueHooks";
|
||
return M.get(e, n) || M.access(e, n, {
|
||
empty: k.Callbacks("once memory").add(function () {
|
||
M.remove(e, [t + "queue", n])
|
||
})
|
||
})
|
||
}
|
||
}), k.fn.extend({
|
||
queue: function (t, n) {
|
||
var e = 2;
|
||
return "string" != typeof t && (n = t, t = "fx", e--), arguments.length < e ? k.queue(this[0], t) : void 0 === n ? this : this.each(function () {
|
||
var e = k.queue(this, t, n);
|
||
k._queueHooks(this, t), "fx" === t && "inprogress" !== e[0] && k.dequeue(this, t)
|
||
})
|
||
}, dequeue: function (e) {
|
||
return this.each(function () {
|
||
k.dequeue(this, e)
|
||
})
|
||
}, clearQueue: function (e) {
|
||
return this.queue(e || "fx", [])
|
||
}, promise: function (e, t) {
|
||
function n() {
|
||
--r || a.resolveWith(s, [s])
|
||
}
|
||
|
||
var i, r = 1, a = k.Deferred(), s = this, o = this.length;
|
||
for ("string" != typeof e && (t = e, e = void 0), e = e || "fx"; o--;) (i = M.get(s[o], e + "queueHooks")) && i.empty && (r++, i.empty.add(n));
|
||
return n(), a.promise(t)
|
||
}
|
||
});
|
||
|
||
function pe(e, t) {
|
||
return "none" === (e = t || e).style.display || "" === e.style.display && D(e) && "none" === k.css(e, "display")
|
||
}
|
||
|
||
var e = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
|
||
ye = new RegExp("^(?:([+-])=|)(" + e + ")([a-z%]*)$", "i"), c = ["Top", "Right", "Bottom", "Left"],
|
||
w = S.documentElement, D = function (e) {
|
||
return k.contains(e.ownerDocument, e)
|
||
}, ve = {composed: !0};
|
||
w.getRootNode && (D = function (e) {
|
||
return k.contains(e.ownerDocument, e) || e.getRootNode(ve) === e.ownerDocument
|
||
});
|
||
|
||
function ge(e, t, n, i) {
|
||
var r, a, s = 20, o = i ? function () {
|
||
return i.cur()
|
||
} : function () {
|
||
return k.css(e, t, "")
|
||
}, u = o(), d = n && n[3] || (k.cssNumber[t] ? "" : "px"),
|
||
l = e.nodeType && (k.cssNumber[t] || "px" !== d && +u) && ye.exec(k.css(e, t));
|
||
if (l && l[3] !== d) {
|
||
for (d = d || l[3], l = +(u /= 2) || 1; s--;) k.style(e, t, l + d), (1 - a) * (1 - (a = o() / u || .5)) <= 0 && (s = 0), l /= a;
|
||
k.style(e, t, (l *= 2) + d), n = n || []
|
||
}
|
||
return n && (l = +l || +u || 0, r = n[1] ? l + (n[1] + 1) * n[2] : +n[2], i && (i.unit = d, i.start = l, i.end = r)), r
|
||
}
|
||
|
||
var Me = {};
|
||
|
||
function T(e, t) {
|
||
for (var n, i, r, a, s, o = [], u = 0, d = e.length; u < d; u++) (i = e[u]).style && (n = i.style.display, t ? ("none" === n && (o[u] = M.get(i, "display") || null, o[u] || (i.style.display = "")), "" === i.style.display && pe(i) && (o[u] = (s = a = void 0, a = (r = i).ownerDocument, r = r.nodeName, (s = Me[r]) || (a = a.body.appendChild(a.createElement(r)), s = k.css(a, "display"), a.parentNode.removeChild(a), Me[r] = s = "none" === s ? "block" : s), s))) : "none" !== n && (o[u] = "none", M.set(i, "display", n)));
|
||
for (u = 0; u < d; u++) null != o[u] && (e[u].style.display = o[u]);
|
||
return e
|
||
}
|
||
|
||
k.fn.extend({
|
||
show: function () {
|
||
return T(this, !0)
|
||
}, hide: function () {
|
||
return T(this)
|
||
}, toggle: function (e) {
|
||
return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () {
|
||
pe(this) ? k(this).show() : k(this).hide()
|
||
})
|
||
}
|
||
});
|
||
var Le = /^(?:checkbox|radio)$/i, Se = /<([a-z][^\/\0>\x20\t\r\n\f]*)/i,
|
||
ke = /^$|^module$|\/(?:java|ecma)script/i,
|
||
E = (R = S.createDocumentFragment().appendChild(S.createElement("div")), (s = S.createElement("input")).setAttribute("type", "radio"), s.setAttribute("checked", "checked"), s.setAttribute("name", "t"), R.appendChild(s), p.checkClone = R.cloneNode(!0).cloneNode(!0).lastChild.checked, R.innerHTML = "<textarea>x</textarea>", p.noCloneChecked = !!R.cloneNode(!0).lastChild.defaultValue, R.innerHTML = "<option></option>", p.option = !!R.lastChild, {
|
||
thead: [1, "<table>", "</table>"],
|
||
col: [2, "<table><colgroup>", "</colgroup></table>"],
|
||
tr: [2, "<table><tbody>", "</tbody></table>"],
|
||
td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
|
||
_default: [0, "", ""]
|
||
});
|
||
|
||
function Y(e, t) {
|
||
var n = void 0 !== e.getElementsByTagName ? e.getElementsByTagName(t || "*") : void 0 !== e.querySelectorAll ? e.querySelectorAll(t || "*") : [];
|
||
return void 0 === t || t && u(e, t) ? k.merge([e], n) : n
|
||
}
|
||
|
||
function be(e, t) {
|
||
for (var n = 0, i = e.length; n < i; n++) M.set(e[n], "globalEval", !t || M.get(t[n], "globalEval"))
|
||
}
|
||
|
||
E.tbody = E.tfoot = E.colgroup = E.caption = E.thead, E.th = E.td, p.option || (E.optgroup = E.option = [1, "<select multiple='multiple'>", "</select>"]);
|
||
var we = /<|&#?\w+;/;
|
||
|
||
function De(e, t, n, i, r) {
|
||
for (var a, s, o, u, d, l = t.createDocumentFragment(), h = [], c = 0, _ = e.length; c < _; c++) if ((a = e[c]) || 0 === a) if ("object" === f(a)) k.merge(h, a.nodeType ? [a] : a); else if (we.test(a)) {
|
||
for (s = s || l.appendChild(t.createElement("div")), o = (Se.exec(a) || ["", ""])[1].toLowerCase(), o = E[o] || E._default, s.innerHTML = o[1] + k.htmlPrefilter(a) + o[2], d = o[0]; d--;) s = s.lastChild;
|
||
k.merge(h, s.childNodes), (s = l.firstChild).textContent = ""
|
||
} else h.push(t.createTextNode(a));
|
||
for (l.textContent = "", c = 0; a = h[c++];) if (i && -1 < k.inArray(a, i)) r && r.push(a); else if (u = D(a), s = Y(l.appendChild(a), "script"), u && be(s), n) for (d = 0; a = s[d++];) ke.test(a.type || "") && n.push(a);
|
||
return l
|
||
}
|
||
|
||
var Te = /^([^.]*)(?:\.(.+)|)/;
|
||
|
||
function n() {
|
||
return !0
|
||
}
|
||
|
||
function _() {
|
||
return !1
|
||
}
|
||
|
||
function Ee(e, t) {
|
||
return e === function () {
|
||
try {
|
||
return S.activeElement
|
||
} catch (e) {
|
||
}
|
||
}() == ("focus" === t)
|
||
}
|
||
|
||
function Ye(e, t, n, i, r, a) {
|
||
var s, o;
|
||
if ("object" == typeof t) {
|
||
for (o in "string" != typeof n && (i = i || n, n = void 0), t) Ye(e, o, n, i, t[o], a);
|
||
return e
|
||
}
|
||
if (null == i && null == r ? (r = n, i = n = void 0) : null == r && ("string" == typeof n ? (r = i, i = void 0) : (r = i, i = n, n = void 0)), !1 === r) r = _; else if (!r) return e;
|
||
return 1 === a && (s = r, (r = function (e) {
|
||
return k().off(e), s.apply(this, arguments)
|
||
}).guid = s.guid || (s.guid = k.guid++)), e.each(function () {
|
||
k.event.add(this, t, r, i, n)
|
||
})
|
||
}
|
||
|
||
function Pe(e, r, a) {
|
||
a ? (M.set(e, r, !1), k.event.add(e, r, {
|
||
namespace: !1, handler: function (e) {
|
||
var t, n, i = M.get(this, r);
|
||
if (1 & e.isTrigger && this[r]) {
|
||
if (i.length) (k.event.special[r] || {}).delegateType && e.stopPropagation(); else if (i = o.call(arguments), M.set(this, r, i), t = a(this, r), this[r](), i !== (n = M.get(this, r)) || t ? M.set(this, r, !1) : n = {}, i !== n) return e.stopImmediatePropagation(), e.preventDefault(), n && n.value
|
||
} else i.length && (M.set(this, r, {value: k.event.trigger(k.extend(i[0], k.Event.prototype), i.slice(1), this)}), e.stopImmediatePropagation())
|
||
}
|
||
})) : void 0 === M.get(e, r) && k.event.add(e, r, n)
|
||
}
|
||
|
||
k.event = {
|
||
global: {}, add: function (t, e, n, i, r) {
|
||
var a, s, o, u, d, l, h, c, _, f = M.get(t);
|
||
if (y(t)) for (n.handler && (n = (a = n).handler, r = a.selector), r && k.find.matchesSelector(w, r), n.guid || (n.guid = k.guid++), (o = f.events) || (o = f.events = Object.create(null)), (s = f.handle) || (s = f.handle = function (e) {
|
||
return void 0 !== k && k.event.triggered !== e.type ? k.event.dispatch.apply(t, arguments) : void 0
|
||
}), u = (e = (e || "").match(b) || [""]).length; u--;) h = _ = (c = Te.exec(e[u]) || [])[1], c = (c[2] || "").split(".").sort(), h && (d = k.event.special[h] || {}, h = (r ? d.delegateType : d.bindType) || h, d = k.event.special[h] || {}, _ = k.extend({
|
||
type: h,
|
||
origType: _,
|
||
data: i,
|
||
handler: n,
|
||
guid: n.guid,
|
||
selector: r,
|
||
needsContext: r && k.expr.match.needsContext.test(r),
|
||
namespace: c.join(".")
|
||
}, a), (l = o[h]) || ((l = o[h] = []).delegateCount = 0, d.setup && !1 !== d.setup.call(t, i, c, s) || t.addEventListener && t.addEventListener(h, s)), d.add && (d.add.call(t, _), _.handler.guid || (_.handler.guid = n.guid)), r ? l.splice(l.delegateCount++, 0, _) : l.push(_), k.event.global[h] = !0)
|
||
}, remove: function (e, t, n, i, r) {
|
||
var a, s, o, u, d, l, h, c, _, f, m, p = M.hasData(e) && M.get(e);
|
||
if (p && (u = p.events)) {
|
||
for (d = (t = (t || "").match(b) || [""]).length; d--;) if (_ = m = (o = Te.exec(t[d]) || [])[1], f = (o[2] || "").split(".").sort(), _) {
|
||
for (h = k.event.special[_] || {}, c = u[_ = (i ? h.delegateType : h.bindType) || _] || [], o = o[2] && new RegExp("(^|\\.)" + f.join("\\.(?:.*\\.|)") + "(\\.|$)"), s = a = c.length; a--;) l = c[a], !r && m !== l.origType || n && n.guid !== l.guid || o && !o.test(l.namespace) || i && i !== l.selector && ("**" !== i || !l.selector) || (c.splice(a, 1), l.selector && c.delegateCount--, h.remove && h.remove.call(e, l));
|
||
s && !c.length && (h.teardown && !1 !== h.teardown.call(e, f, p.handle) || k.removeEvent(e, _, p.handle), delete u[_])
|
||
} else for (_ in u) k.event.remove(e, _ + t[d], n, i, !0);
|
||
k.isEmptyObject(u) && M.remove(e, "handle events")
|
||
}
|
||
}, dispatch: function (e) {
|
||
var t, n, i, r, a, s = new Array(arguments.length), o = k.event.fix(e),
|
||
e = (M.get(this, "events") || Object.create(null))[o.type] || [],
|
||
u = k.event.special[o.type] || {};
|
||
for (s[0] = o, t = 1; t < arguments.length; t++) s[t] = arguments[t];
|
||
if (o.delegateTarget = this, !u.preDispatch || !1 !== u.preDispatch.call(this, o)) {
|
||
for (a = k.event.handlers.call(this, o, e), t = 0; (i = a[t++]) && !o.isPropagationStopped();) for (o.currentTarget = i.elem, n = 0; (r = i.handlers[n++]) && !o.isImmediatePropagationStopped();) o.rnamespace && !1 !== r.namespace && !o.rnamespace.test(r.namespace) || (o.handleObj = r, o.data = r.data, void 0 !== (r = ((k.event.special[r.origType] || {}).handle || r.handler).apply(i.elem, s)) && !1 === (o.result = r) && (o.preventDefault(), o.stopPropagation()));
|
||
return u.postDispatch && u.postDispatch.call(this, o), o.result
|
||
}
|
||
}, handlers: function (e, t) {
|
||
var n, i, r, a, s, o = [], u = t.delegateCount, d = e.target;
|
||
if (u && d.nodeType && !("click" === e.type && 1 <= e.button)) for (; d !== this; d = d.parentNode || this) if (1 === d.nodeType && ("click" !== e.type || !0 !== d.disabled)) {
|
||
for (a = [], s = {}, n = 0; n < u; n++) void 0 === s[r = (i = t[n]).selector + " "] && (s[r] = i.needsContext ? -1 < k(r, this).index(d) : k.find(r, this, null, [d]).length), s[r] && a.push(i);
|
||
a.length && o.push({elem: d, handlers: a})
|
||
}
|
||
return d = this, u < t.length && o.push({elem: d, handlers: t.slice(u)}), o
|
||
}, addProp: function (t, e) {
|
||
Object.defineProperty(k.Event.prototype, t, {
|
||
enumerable: !0,
|
||
configurable: !0,
|
||
get: v(e) ? function () {
|
||
if (this.originalEvent) return e(this.originalEvent)
|
||
} : function () {
|
||
if (this.originalEvent) return this.originalEvent[t]
|
||
},
|
||
set: function (e) {
|
||
Object.defineProperty(this, t, {enumerable: !0, configurable: !0, writable: !0, value: e})
|
||
}
|
||
})
|
||
}, fix: function (e) {
|
||
return e[k.expando] ? e : new k.Event(e)
|
||
}, special: {
|
||
load: {noBubble: !0}, click: {
|
||
setup: function (e) {
|
||
e = this || e;
|
||
return Le.test(e.type) && e.click && u(e, "input") && Pe(e, "click", n), !1
|
||
}, trigger: function (e) {
|
||
e = this || e;
|
||
return Le.test(e.type) && e.click && u(e, "input") && Pe(e, "click"), !0
|
||
}, _default: function (e) {
|
||
e = e.target;
|
||
return Le.test(e.type) && e.click && u(e, "input") && M.get(e, "click") || u(e, "a")
|
||
}
|
||
}, beforeunload: {
|
||
postDispatch: function (e) {
|
||
void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
|
||
}
|
||
}
|
||
}
|
||
}, k.removeEvent = function (e, t, n) {
|
||
e.removeEventListener && e.removeEventListener(t, n)
|
||
}, k.Event = function (e, t) {
|
||
if (!(this instanceof k.Event)) return new k.Event(e, t);
|
||
e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? n : _, this.target = e.target && 3 === e.target.nodeType ? e.target.parentNode : e.target, this.currentTarget = e.currentTarget, this.relatedTarget = e.relatedTarget) : this.type = e, t && k.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[k.expando] = !0
|
||
}, k.Event.prototype = {
|
||
constructor: k.Event,
|
||
isDefaultPrevented: _,
|
||
isPropagationStopped: _,
|
||
isImmediatePropagationStopped: _,
|
||
isSimulated: !1,
|
||
preventDefault: function () {
|
||
var e = this.originalEvent;
|
||
this.isDefaultPrevented = n, e && !this.isSimulated && e.preventDefault()
|
||
},
|
||
stopPropagation: function () {
|
||
var e = this.originalEvent;
|
||
this.isPropagationStopped = n, e && !this.isSimulated && e.stopPropagation()
|
||
},
|
||
stopImmediatePropagation: function () {
|
||
var e = this.originalEvent;
|
||
this.isImmediatePropagationStopped = n, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation()
|
||
}
|
||
}, k.each({
|
||
altKey: !0,
|
||
bubbles: !0,
|
||
cancelable: !0,
|
||
changedTouches: !0,
|
||
ctrlKey: !0,
|
||
detail: !0,
|
||
eventPhase: !0,
|
||
metaKey: !0,
|
||
pageX: !0,
|
||
pageY: !0,
|
||
shiftKey: !0,
|
||
view: !0,
|
||
char: !0,
|
||
code: !0,
|
||
charCode: !0,
|
||
key: !0,
|
||
keyCode: !0,
|
||
button: !0,
|
||
buttons: !0,
|
||
clientX: !0,
|
||
clientY: !0,
|
||
offsetX: !0,
|
||
offsetY: !0,
|
||
pointerId: !0,
|
||
pointerType: !0,
|
||
screenX: !0,
|
||
screenY: !0,
|
||
targetTouches: !0,
|
||
toElement: !0,
|
||
touches: !0,
|
||
which: !0
|
||
}, k.event.addProp), k.each({focus: "focusin", blur: "focusout"}, function (e, t) {
|
||
k.event.special[e] = {
|
||
setup: function () {
|
||
return Pe(this, e, Ee), !1
|
||
}, trigger: function () {
|
||
return Pe(this, e), !0
|
||
}, _default: function () {
|
||
return !0
|
||
}, delegateType: t
|
||
}
|
||
}), k.each({
|
||
mouseenter: "mouseover",
|
||
mouseleave: "mouseout",
|
||
pointerenter: "pointerover",
|
||
pointerleave: "pointerout"
|
||
}, function (e, r) {
|
||
k.event.special[e] = {
|
||
delegateType: r, bindType: r, handle: function (e) {
|
||
var t, n = e.relatedTarget, i = e.handleObj;
|
||
return n && (n === this || k.contains(this, n)) || (e.type = i.origType, t = i.handler.apply(this, arguments), e.type = r), t
|
||
}
|
||
}
|
||
}), k.fn.extend({
|
||
on: function (e, t, n, i) {
|
||
return Ye(this, e, t, n, i)
|
||
}, one: function (e, t, n, i) {
|
||
return Ye(this, e, t, n, i, 1)
|
||
}, off: function (e, t, n) {
|
||
var i, r;
|
||
if (e && e.preventDefault && e.handleObj) return i = e.handleObj, k(e.delegateTarget).off(i.namespace ? i.origType + "." + i.namespace : i.origType, i.selector, i.handler), this;
|
||
if ("object" != typeof e) return !1 !== t && "function" != typeof t || (n = t, t = void 0), !1 === n && (n = _), this.each(function () {
|
||
k.event.remove(this, e, n, t)
|
||
});
|
||
for (r in e) this.off(r, t, e[r]);
|
||
return this
|
||
}
|
||
});
|
||
var Ce = /<script|<style|<link/i, Re = /checked\s*(?:[^=]|=\s*.checked.)/i,
|
||
Ae = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
|
||
|
||
function xe(e, t) {
|
||
return u(e, "table") && u(11 !== t.nodeType ? t : t.firstChild, "tr") && k(e).children("tbody")[0] || e
|
||
}
|
||
|
||
function Oe(e) {
|
||
return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e
|
||
}
|
||
|
||
function Ie(e) {
|
||
return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e
|
||
}
|
||
|
||
function We(e, t) {
|
||
var n, i, r, a;
|
||
if (1 === t.nodeType) {
|
||
if (M.hasData(e) && (a = M.get(e).events)) for (r in M.remove(t, "handle events"), a) for (n = 0, i = a[r].length; n < i; n++) k.event.add(t, r, a[r][n]);
|
||
d.hasData(e) && (e = d.access(e), e = k.extend({}, e), d.set(t, e))
|
||
}
|
||
}
|
||
|
||
function P(n, i, r, a) {
|
||
i = H(i);
|
||
var e, t, s, o, u, d, l = 0, h = n.length, c = h - 1, _ = i[0], f = v(_);
|
||
if (f || 1 < h && "string" == typeof _ && !p.checkClone && Re.test(_)) return n.each(function (e) {
|
||
var t = n.eq(e);
|
||
f && (i[0] = _.call(this, e, t.html())), P(t, i, r, a)
|
||
});
|
||
if (h && (t = (e = De(i, n[0].ownerDocument, !1, n, a)).firstChild, 1 === e.childNodes.length && (e = t), t || a)) {
|
||
for (o = (s = k.map(Y(e, "script"), Oe)).length; l < h; l++) u = e, l !== c && (u = k.clone(u, !0, !0), o && k.merge(s, Y(u, "script"))), r.call(n[l], u, l);
|
||
if (o) for (d = s[s.length - 1].ownerDocument, k.map(s, Ie), l = 0; l < o; l++) u = s[l], ke.test(u.type || "") && !M.access(u, "globalEval") && k.contains(d, u) && (u.src && "module" !== (u.type || "").toLowerCase() ? k._evalUrl && !u.noModule && k._evalUrl(u.src, {nonce: u.nonce || u.getAttribute("nonce")}, d) : J(u.textContent.replace(Ae, ""), u, d))
|
||
}
|
||
return n
|
||
}
|
||
|
||
function He(e, t, n) {
|
||
for (var i, r = t ? k.filter(t, e) : e, a = 0; null != (i = r[a]); a++) n || 1 !== i.nodeType || k.cleanData(Y(i)), i.parentNode && (n && D(i) && be(Y(i, "script")), i.parentNode.removeChild(i));
|
||
return e
|
||
}
|
||
|
||
k.extend({
|
||
htmlPrefilter: function (e) {
|
||
return e
|
||
}, clone: function (e, t, n) {
|
||
var i, r, a, s, o, u, d, l = e.cloneNode(!0), h = D(e);
|
||
if (!(p.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || k.isXMLDoc(e))) for (s = Y(l), i = 0, r = (a = Y(e)).length; i < r; i++) o = a[i], u = s[i], d = void 0, "input" === (d = u.nodeName.toLowerCase()) && Le.test(o.type) ? u.checked = o.checked : "input" !== d && "textarea" !== d || (u.defaultValue = o.defaultValue);
|
||
if (t) if (n) for (a = a || Y(e), s = s || Y(l), i = 0, r = a.length; i < r; i++) We(a[i], s[i]); else We(e, l);
|
||
return 0 < (s = Y(l, "script")).length && be(s, !h && Y(e, "script")), l
|
||
}, cleanData: function (e) {
|
||
for (var t, n, i, r = k.event.special, a = 0; void 0 !== (n = e[a]); a++) if (y(n)) {
|
||
if (t = n[M.expando]) {
|
||
if (t.events) for (i in t.events) r[i] ? k.event.remove(n, i) : k.removeEvent(n, i, t.handle);
|
||
n[M.expando] = void 0
|
||
}
|
||
n[d.expando] && (n[d.expando] = void 0)
|
||
}
|
||
}
|
||
}), k.fn.extend({
|
||
detach: function (e) {
|
||
return He(this, e, !0)
|
||
}, remove: function (e) {
|
||
return He(this, e)
|
||
}, text: function (e) {
|
||
return h(this, function (e) {
|
||
return void 0 === e ? k.text(this) : this.empty().each(function () {
|
||
1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (this.textContent = e)
|
||
})
|
||
}, null, e, arguments.length)
|
||
}, append: function () {
|
||
return P(this, arguments, function (e) {
|
||
1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || xe(this, e).appendChild(e)
|
||
})
|
||
}, prepend: function () {
|
||
return P(this, arguments, function (e) {
|
||
var t;
|
||
1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || (t = xe(this, e)).insertBefore(e, t.firstChild)
|
||
})
|
||
}, before: function () {
|
||
return P(this, arguments, function (e) {
|
||
this.parentNode && this.parentNode.insertBefore(e, this)
|
||
})
|
||
}, after: function () {
|
||
return P(this, arguments, function (e) {
|
||
this.parentNode && this.parentNode.insertBefore(e, this.nextSibling)
|
||
})
|
||
}, empty: function () {
|
||
for (var e, t = 0; null != (e = this[t]); t++) 1 === e.nodeType && (k.cleanData(Y(e, !1)), e.textContent = "");
|
||
return this
|
||
}, clone: function (e, t) {
|
||
return e = null != e && e, t = null == t ? e : t, this.map(function () {
|
||
return k.clone(this, e, t)
|
||
})
|
||
}, html: function (e) {
|
||
return h(this, function (e) {
|
||
var t = this[0] || {}, n = 0, i = this.length;
|
||
if (void 0 === e && 1 === t.nodeType) return t.innerHTML;
|
||
if ("string" == typeof e && !Ce.test(e) && !E[(Se.exec(e) || ["", ""])[1].toLowerCase()]) {
|
||
e = k.htmlPrefilter(e);
|
||
try {
|
||
for (; n < i; n++) 1 === (t = this[n] || {}).nodeType && (k.cleanData(Y(t, !1)), t.innerHTML = e);
|
||
t = 0
|
||
} catch (e) {
|
||
}
|
||
}
|
||
t && this.empty().append(e)
|
||
}, null, e, arguments.length)
|
||
}, replaceWith: function () {
|
||
var n = [];
|
||
return P(this, arguments, function (e) {
|
||
var t = this.parentNode;
|
||
k.inArray(this, n) < 0 && (k.cleanData(Y(this)), t && t.replaceChild(e, this))
|
||
}, n)
|
||
}
|
||
}), k.each({
|
||
appendTo: "append",
|
||
prependTo: "prepend",
|
||
insertBefore: "before",
|
||
insertAfter: "after",
|
||
replaceAll: "replaceWith"
|
||
}, function (e, s) {
|
||
k.fn[e] = function (e) {
|
||
for (var t, n = [], i = k(e), r = i.length - 1, a = 0; a <= r; a++) t = a === r ? this : this.clone(!0), k(i[a])[s](t), j.apply(n, t.get());
|
||
return this.pushStack(n)
|
||
}
|
||
});
|
||
|
||
function je(e) {
|
||
var t = e.ownerDocument.defaultView;
|
||
return (t = t && t.opener ? t : L).getComputedStyle(e)
|
||
}
|
||
|
||
function Fe(e, t, n) {
|
||
var i, r = {};
|
||
for (i in t) r[i] = e.style[i], e.style[i] = t[i];
|
||
for (i in n = n.call(e), t) e.style[i] = r[i];
|
||
return n
|
||
}
|
||
|
||
var Be, Ne, ze, Ue, Ve, Ge, Je, r, qe = new RegExp("^(" + e + ")(?!px)[a-z%]+$", "i"),
|
||
Ke = new RegExp(c.join("|"), "i");
|
||
|
||
function Xe() {
|
||
var e;
|
||
r && (Je.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", r.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", w.appendChild(Je).appendChild(r), e = L.getComputedStyle(r), Be = "1%" !== e.top, Ge = 12 === Ze(e.marginLeft), r.style.right = "60%", Ue = 36 === Ze(e.right), Ne = 36 === Ze(e.width), r.style.position = "absolute", ze = 12 === Ze(r.offsetWidth / 3), w.removeChild(Je), r = null)
|
||
}
|
||
|
||
function Ze(e) {
|
||
return Math.round(parseFloat(e))
|
||
}
|
||
|
||
function $e(e, t, n) {
|
||
var i, r, a = e.style;
|
||
return (n = n || je(e)) && ("" !== (r = n.getPropertyValue(t) || n[t]) || D(e) || (r = k.style(e, t)), !p.pixelBoxStyles() && qe.test(r) && Ke.test(t) && (e = a.width, t = a.minWidth, i = a.maxWidth, a.minWidth = a.maxWidth = a.width = r, r = n.width, a.width = e, a.minWidth = t, a.maxWidth = i)), void 0 !== r ? r + "" : r
|
||
}
|
||
|
||
function Qe(e, t) {
|
||
return {
|
||
get: function () {
|
||
if (!e()) return (this.get = t).apply(this, arguments);
|
||
delete this.get
|
||
}
|
||
}
|
||
}
|
||
|
||
Je = S.createElement("div"), (r = S.createElement("div")).style && (r.style.backgroundClip = "content-box", r.cloneNode(!0).style.backgroundClip = "", p.clearCloneStyle = "content-box" === r.style.backgroundClip, k.extend(p, {
|
||
boxSizingReliable: function () {
|
||
return Xe(), Ne
|
||
}, pixelBoxStyles: function () {
|
||
return Xe(), Ue
|
||
}, pixelPosition: function () {
|
||
return Xe(), Be
|
||
}, reliableMarginLeft: function () {
|
||
return Xe(), Ge
|
||
}, scrollboxSize: function () {
|
||
return Xe(), ze
|
||
}, reliableTrDimensions: function () {
|
||
var e, t, n;
|
||
return null == Ve && (e = S.createElement("table"), t = S.createElement("tr"), n = S.createElement("div"), e.style.cssText = "position:absolute;left:-11111px;border-collapse:separate", t.style.cssText = "border:1px solid", t.style.height = "1px", n.style.height = "9px", n.style.display = "block", w.appendChild(e).appendChild(t).appendChild(n), n = L.getComputedStyle(t), Ve = parseInt(n.height, 10) + parseInt(n.borderTopWidth, 10) + parseInt(n.borderBottomWidth, 10) === t.offsetHeight, w.removeChild(e)), Ve
|
||
}
|
||
}));
|
||
var et = ["Webkit", "Moz", "ms"], tt = S.createElement("div").style, nt = {};
|
||
|
||
function it(e) {
|
||
var t = k.cssProps[e] || nt[e];
|
||
return t || (e in tt ? e : nt[e] = function (e) {
|
||
for (var t = e[0].toUpperCase() + e.slice(1), n = et.length; n--;) if ((e = et[n] + t) in tt) return e
|
||
}(e) || e)
|
||
}
|
||
|
||
var rt = /^(none|table(?!-c[ea]).+)/, at = /^--/,
|
||
st = {position: "absolute", visibility: "hidden", display: "block"},
|
||
ot = {letterSpacing: "0", fontWeight: "400"};
|
||
|
||
function ut(e, t, n) {
|
||
var i = ye.exec(t);
|
||
return i ? Math.max(0, i[2] - (n || 0)) + (i[3] || "px") : t
|
||
}
|
||
|
||
function dt(e, t, n, i, r, a) {
|
||
var s = "width" === t ? 1 : 0, o = 0, u = 0;
|
||
if (n === (i ? "border" : "content")) return 0;
|
||
for (; s < 4; s += 2) "margin" === n && (u += k.css(e, n + c[s], !0, r)), i ? ("content" === n && (u -= k.css(e, "padding" + c[s], !0, r)), "margin" !== n && (u -= k.css(e, "border" + c[s] + "Width", !0, r))) : (u += k.css(e, "padding" + c[s], !0, r), "padding" !== n ? u += k.css(e, "border" + c[s] + "Width", !0, r) : o += k.css(e, "border" + c[s] + "Width", !0, r));
|
||
return !i && 0 <= a && (u += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - a - u - o - .5)) || 0), u
|
||
}
|
||
|
||
function lt(e, t, n) {
|
||
var i = je(e), r = (!p.boxSizingReliable() || n) && "border-box" === k.css(e, "boxSizing", !1, i),
|
||
a = r, s = $e(e, t, i), o = "offset" + t[0].toUpperCase() + t.slice(1);
|
||
if (qe.test(s)) {
|
||
if (!n) return s;
|
||
s = "auto"
|
||
}
|
||
return (!p.boxSizingReliable() && r || !p.reliableTrDimensions() && u(e, "tr") || "auto" === s || !parseFloat(s) && "inline" === k.css(e, "display", !1, i)) && e.getClientRects().length && (r = "border-box" === k.css(e, "boxSizing", !1, i), (a = o in e) && (s = e[o])), (s = parseFloat(s) || 0) + dt(e, t, n || (r ? "border" : "content"), a, i, s) + "px"
|
||
}
|
||
|
||
function a(e, t, n, i, r) {
|
||
return new a.prototype.init(e, t, n, i, r)
|
||
}
|
||
|
||
k.extend({
|
||
cssHooks: {
|
||
opacity: {
|
||
get: function (e, t) {
|
||
if (t) return "" === (t = $e(e, "opacity")) ? "1" : t
|
||
}
|
||
}
|
||
},
|
||
cssNumber: {
|
||
animationIterationCount: !0,
|
||
columnCount: !0,
|
||
fillOpacity: !0,
|
||
flexGrow: !0,
|
||
flexShrink: !0,
|
||
fontWeight: !0,
|
||
gridArea: !0,
|
||
gridColumn: !0,
|
||
gridColumnEnd: !0,
|
||
gridColumnStart: !0,
|
||
gridRow: !0,
|
||
gridRowEnd: !0,
|
||
gridRowStart: !0,
|
||
lineHeight: !0,
|
||
opacity: !0,
|
||
order: !0,
|
||
orphans: !0,
|
||
widows: !0,
|
||
zIndex: !0,
|
||
zoom: !0
|
||
},
|
||
cssProps: {},
|
||
style: function (e, t, n, i) {
|
||
if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) {
|
||
var r, a, s, o = g(t), u = at.test(t), d = e.style;
|
||
if (u || (t = it(o)), s = k.cssHooks[t] || k.cssHooks[o], void 0 === n) return s && "get" in s && void 0 !== (r = s.get(e, !1, i)) ? r : d[t];
|
||
"string" === (a = typeof n) && (r = ye.exec(n)) && r[1] && (n = ge(e, t, r), a = "number"), null != n && n == n && ("number" !== a || u || (n += r && r[3] || (k.cssNumber[o] ? "" : "px")), p.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (d[t] = "inherit"), s && "set" in s && void 0 === (n = s.set(e, n, i)) || (u ? d.setProperty(t, n) : d[t] = n))
|
||
}
|
||
},
|
||
css: function (e, t, n, i) {
|
||
var r, a = g(t);
|
||
return at.test(t) || (t = it(a)), "normal" === (r = void 0 === (r = (a = k.cssHooks[t] || k.cssHooks[a]) && "get" in a ? a.get(e, !0, n) : r) ? $e(e, t, i) : r) && t in ot && (r = ot[t]), "" === n || n ? (a = parseFloat(r), !0 === n || isFinite(a) ? a || 0 : r) : r
|
||
}
|
||
}), k.each(["height", "width"], function (e, s) {
|
||
k.cssHooks[s] = {
|
||
get: function (e, t, n) {
|
||
if (t) return !rt.test(k.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? lt(e, s, n) : Fe(e, st, function () {
|
||
return lt(e, s, n)
|
||
})
|
||
}, set: function (e, t, n) {
|
||
var i = je(e), r = !p.scrollboxSize() && "absolute" === i.position,
|
||
a = (r || n) && "border-box" === k.css(e, "boxSizing", !1, i),
|
||
n = n ? dt(e, s, n, a, i) : 0;
|
||
return a && r && (n -= Math.ceil(e["offset" + s[0].toUpperCase() + s.slice(1)] - parseFloat(i[s]) - dt(e, s, "border", !1, i) - .5)), n && (a = ye.exec(t)) && "px" !== (a[3] || "px") && (e.style[s] = t, t = k.css(e, s)), ut(0, t, n)
|
||
}
|
||
}
|
||
}), k.cssHooks.marginLeft = Qe(p.reliableMarginLeft, function (e, t) {
|
||
if (t) return (parseFloat($e(e, "marginLeft")) || e.getBoundingClientRect().left - Fe(e, {marginLeft: 0}, function () {
|
||
return e.getBoundingClientRect().left
|
||
})) + "px"
|
||
}), k.each({margin: "", padding: "", border: "Width"}, function (r, a) {
|
||
k.cssHooks[r + a] = {
|
||
expand: function (e) {
|
||
for (var t = 0, n = {}, i = "string" == typeof e ? e.split(" ") : [e]; t < 4; t++) n[r + c[t] + a] = i[t] || i[t - 2] || i[0];
|
||
return n
|
||
}
|
||
}, "margin" !== r && (k.cssHooks[r + a].set = ut)
|
||
}), k.fn.extend({
|
||
css: function (e, t) {
|
||
return h(this, function (e, t, n) {
|
||
var i, r, a = {}, s = 0;
|
||
if (Array.isArray(t)) {
|
||
for (i = je(e), r = t.length; s < r; s++) a[t[s]] = k.css(e, t[s], !1, i);
|
||
return a
|
||
}
|
||
return void 0 !== n ? k.style(e, t, n) : k.css(e, t)
|
||
}, e, t, 1 < arguments.length)
|
||
}
|
||
}), ((k.Tween = a).prototype = {
|
||
constructor: a, init: function (e, t, n, i, r, a) {
|
||
this.elem = e, this.prop = n, this.easing = r || k.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = a || (k.cssNumber[n] ? "" : "px")
|
||
}, cur: function () {
|
||
var e = a.propHooks[this.prop];
|
||
return (e && e.get ? e : a.propHooks._default).get(this)
|
||
}, run: function (e) {
|
||
var t, n = a.propHooks[this.prop];
|
||
return this.options.duration ? this.pos = t = k.easing[this.easing](e, this.options.duration * e, 0, 1, this.options.duration) : this.pos = t = e, this.now = (this.end - this.start) * t + this.start, this.options.step && this.options.step.call(this.elem, this.now, this), (n && n.set ? n : a.propHooks._default).set(this), this
|
||
}
|
||
}).init.prototype = a.prototype, (a.propHooks = {
|
||
_default: {
|
||
get: function (e) {
|
||
return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (e = k.css(e.elem, e.prop, "")) && "auto" !== e ? e : 0
|
||
}, set: function (e) {
|
||
k.fx.step[e.prop] ? k.fx.step[e.prop](e) : 1 !== e.elem.nodeType || !k.cssHooks[e.prop] && null == e.elem.style[it(e.prop)] ? e.elem[e.prop] = e.now : k.style(e.elem, e.prop, e.now + e.unit)
|
||
}
|
||
}
|
||
}).scrollTop = a.propHooks.scrollLeft = {
|
||
set: function (e) {
|
||
e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
|
||
}
|
||
}, k.easing = {
|
||
linear: function (e) {
|
||
return e
|
||
}, swing: function (e) {
|
||
return .5 - Math.cos(e * Math.PI) / 2
|
||
}, _default: "swing"
|
||
}, k.fx = a.prototype.init, k.fx.step = {};
|
||
var C, ht, s, R, ct = /^(?:toggle|show|hide)$/, _t = /queueHooks$/;
|
||
|
||
function ft() {
|
||
ht && (!1 === S.hidden && L.requestAnimationFrame ? L.requestAnimationFrame(ft) : L.setTimeout(ft, k.fx.interval), k.fx.tick())
|
||
}
|
||
|
||
function mt() {
|
||
return L.setTimeout(function () {
|
||
C = void 0
|
||
}), C = Date.now()
|
||
}
|
||
|
||
function pt(e, t) {
|
||
var n, i = 0, r = {height: e};
|
||
for (t = t ? 1 : 0; i < 4; i += 2 - t) r["margin" + (n = c[i])] = r["padding" + n] = e;
|
||
return t && (r.opacity = r.width = e), r
|
||
}
|
||
|
||
function yt(e, t, n) {
|
||
for (var i, r = (A.tweeners[t] || []).concat(A.tweeners["*"]), a = 0, s = r.length; a < s; a++) if (i = r[a].call(n, t, e)) return i
|
||
}
|
||
|
||
function A(r, e, t) {
|
||
var n, a, i, s, o, u, d, l = 0, h = A.prefilters.length, c = k.Deferred().always(function () {
|
||
delete _.elem
|
||
}), _ = function () {
|
||
if (!a) {
|
||
for (var e = C || mt(), e = Math.max(0, f.startTime + f.duration - e), t = 1 - (e / f.duration || 0), n = 0, i = f.tweens.length; n < i; n++) f.tweens[n].run(t);
|
||
if (c.notifyWith(r, [f, t, e]), t < 1 && i) return e;
|
||
i || c.notifyWith(r, [f, 1, 0]), c.resolveWith(r, [f])
|
||
}
|
||
return !1
|
||
}, f = c.promise({
|
||
elem: r,
|
||
props: k.extend({}, e),
|
||
opts: k.extend(!0, {specialEasing: {}, easing: k.easing._default}, t),
|
||
originalProperties: e,
|
||
originalOptions: t,
|
||
startTime: C || mt(),
|
||
duration: t.duration,
|
||
tweens: [],
|
||
createTween: function (e, t) {
|
||
t = k.Tween(r, f.opts, e, t, f.opts.specialEasing[e] || f.opts.easing);
|
||
return f.tweens.push(t), t
|
||
},
|
||
stop: function (e) {
|
||
var t = 0, n = e ? f.tweens.length : 0;
|
||
if (!a) {
|
||
for (a = !0; t < n; t++) f.tweens[t].run(1);
|
||
e ? (c.notifyWith(r, [f, 1, 0]), c.resolveWith(r, [f, e])) : c.rejectWith(r, [f, e])
|
||
}
|
||
return this
|
||
}
|
||
}), m = f.props, p = m, y = f.opts.specialEasing;
|
||
for (i in p) if (o = y[s = g(i)], u = p[i], Array.isArray(u) && (o = u[1], u = p[i] = u[0]), i !== s && (p[s] = u, delete p[i]), (d = k.cssHooks[s]) && "expand" in d) for (i in u = d.expand(u), delete p[s], u) i in p || (p[i] = u[i], y[i] = o); else y[s] = o;
|
||
for (; l < h; l++) if (n = A.prefilters[l].call(f, r, m, f.opts)) return v(n.stop) && (k._queueHooks(f.elem, f.opts.queue).stop = n.stop.bind(n)), n;
|
||
return k.map(m, yt, f), v(f.opts.start) && f.opts.start.call(r, f), f.progress(f.opts.progress).done(f.opts.done, f.opts.complete).fail(f.opts.fail).always(f.opts.always), k.fx.timer(k.extend(_, {
|
||
elem: r,
|
||
anim: f,
|
||
queue: f.opts.queue
|
||
})), f
|
||
}
|
||
|
||
k.Animation = k.extend(A, {
|
||
tweeners: {
|
||
"*": [function (e, t) {
|
||
var n = this.createTween(e, t);
|
||
return ge(n.elem, e, ye.exec(t), n), n
|
||
}]
|
||
}, tweener: function (e, t) {
|
||
for (var n, i = 0, r = (e = v(e) ? (t = e, ["*"]) : e.match(b)).length; i < r; i++) n = e[i], A.tweeners[n] = A.tweeners[n] || [], A.tweeners[n].unshift(t)
|
||
}, prefilters: [function (e, t, n) {
|
||
var i, r, a, s, o, u, d, l = "width" in t || "height" in t, h = this, c = {}, _ = e.style,
|
||
f = e.nodeType && pe(e), m = M.get(e, "fxshow");
|
||
for (i in n.queue || (null == (s = k._queueHooks(e, "fx")).unqueued && (s.unqueued = 0, o = s.empty.fire, s.empty.fire = function () {
|
||
s.unqueued || o()
|
||
}), s.unqueued++, h.always(function () {
|
||
h.always(function () {
|
||
s.unqueued--, k.queue(e, "fx").length || s.empty.fire()
|
||
})
|
||
})), t) if (r = t[i], ct.test(r)) {
|
||
if (delete t[i], a = a || "toggle" === r, r === (f ? "hide" : "show")) {
|
||
if ("show" !== r || !m || void 0 === m[i]) continue;
|
||
f = !0
|
||
}
|
||
c[i] = m && m[i] || k.style(e, i)
|
||
}
|
||
if ((u = !k.isEmptyObject(t)) || !k.isEmptyObject(c)) for (i in l && 1 === e.nodeType && (n.overflow = [_.overflow, _.overflowX, _.overflowY], null == (d = m && m.display) && (d = M.get(e, "display")), "none" === (l = k.css(e, "display")) && (d ? l = d : (T([e], !0), d = e.style.display || d, l = k.css(e, "display"), T([e]))), ("inline" === l || "inline-block" === l && null != d) && "none" === k.css(e, "float") && (u || (h.done(function () {
|
||
_.display = d
|
||
}), null == d && (l = _.display, d = "none" === l ? "" : l)), _.display = "inline-block")), n.overflow && (_.overflow = "hidden", h.always(function () {
|
||
_.overflow = n.overflow[0], _.overflowX = n.overflow[1], _.overflowY = n.overflow[2]
|
||
})), u = !1, c) u || (m ? "hidden" in m && (f = m.hidden) : m = M.access(e, "fxshow", {display: d}), a && (m.hidden = !f), f && T([e], !0), h.done(function () {
|
||
for (i in f || T([e]), M.remove(e, "fxshow"), c) k.style(e, i, c[i])
|
||
})), u = yt(f ? m[i] : 0, i, h), i in m || (m[i] = u.start, f && (u.end = u.start, u.start = 0))
|
||
}], prefilter: function (e, t) {
|
||
t ? A.prefilters.unshift(e) : A.prefilters.push(e)
|
||
}
|
||
}), k.speed = function (e, t, n) {
|
||
var i = e && "object" == typeof e ? k.extend({}, e) : {
|
||
complete: n || !n && t || v(e) && e,
|
||
duration: e,
|
||
easing: n && t || t && !v(t) && t
|
||
};
|
||
return k.fx.off ? i.duration = 0 : "number" != typeof i.duration && (i.duration in k.fx.speeds ? i.duration = k.fx.speeds[i.duration] : i.duration = k.fx.speeds._default), null != i.queue && !0 !== i.queue || (i.queue = "fx"), i.old = i.complete, i.complete = function () {
|
||
v(i.old) && i.old.call(this), i.queue && k.dequeue(this, i.queue)
|
||
}, i
|
||
}, k.fn.extend({
|
||
fadeTo: function (e, t, n, i) {
|
||
return this.filter(pe).css("opacity", 0).show().end().animate({opacity: t}, e, n, i)
|
||
}, animate: function (t, e, n, i) {
|
||
function r() {
|
||
var e = A(this, k.extend({}, t), s);
|
||
(a || M.get(this, "finish")) && e.stop(!0)
|
||
}
|
||
|
||
var a = k.isEmptyObject(t), s = k.speed(e, n, i);
|
||
return r.finish = r, a || !1 === s.queue ? this.each(r) : this.queue(s.queue, r)
|
||
}, stop: function (r, e, a) {
|
||
function s(e) {
|
||
var t = e.stop;
|
||
delete e.stop, t(a)
|
||
}
|
||
|
||
return "string" != typeof r && (a = e, e = r, r = void 0), e && this.queue(r || "fx", []), this.each(function () {
|
||
var e = !0, t = null != r && r + "queueHooks", n = k.timers, i = M.get(this);
|
||
if (t) i[t] && i[t].stop && s(i[t]); else for (t in i) i[t] && i[t].stop && _t.test(t) && s(i[t]);
|
||
for (t = n.length; t--;) n[t].elem !== this || null != r && n[t].queue !== r || (n[t].anim.stop(a), e = !1, n.splice(t, 1));
|
||
!e && a || k.dequeue(this, r)
|
||
})
|
||
}, finish: function (s) {
|
||
return !1 !== s && (s = s || "fx"), this.each(function () {
|
||
var e, t = M.get(this), n = t[s + "queue"], i = t[s + "queueHooks"], r = k.timers,
|
||
a = n ? n.length : 0;
|
||
for (t.finish = !0, k.queue(this, s, []), i && i.stop && i.stop.call(this, !0), e = r.length; e--;) r[e].elem === this && r[e].queue === s && (r[e].anim.stop(!0), r.splice(e, 1));
|
||
for (e = 0; e < a; e++) n[e] && n[e].finish && n[e].finish.call(this);
|
||
delete t.finish
|
||
})
|
||
}
|
||
}), k.each(["toggle", "show", "hide"], function (e, i) {
|
||
var r = k.fn[i];
|
||
k.fn[i] = function (e, t, n) {
|
||
return null == e || "boolean" == typeof e ? r.apply(this, arguments) : this.animate(pt(i, !0), e, t, n)
|
||
}
|
||
}), k.each({
|
||
slideDown: pt("show"),
|
||
slideUp: pt("hide"),
|
||
slideToggle: pt("toggle"),
|
||
fadeIn: {opacity: "show"},
|
||
fadeOut: {opacity: "hide"},
|
||
fadeToggle: {opacity: "toggle"}
|
||
}, function (e, i) {
|
||
k.fn[e] = function (e, t, n) {
|
||
return this.animate(i, e, t, n)
|
||
}
|
||
}), k.timers = [], k.fx.tick = function () {
|
||
var e, t = 0, n = k.timers;
|
||
for (C = Date.now(); t < n.length; t++) (e = n[t])() || n[t] !== e || n.splice(t--, 1);
|
||
n.length || k.fx.stop(), C = void 0
|
||
}, k.fx.timer = function (e) {
|
||
k.timers.push(e), k.fx.start()
|
||
}, k.fx.interval = 13, k.fx.start = function () {
|
||
ht || (ht = !0, ft())
|
||
}, k.fx.stop = function () {
|
||
ht = null
|
||
}, k.fx.speeds = {slow: 600, fast: 200, _default: 400}, k.fn.delay = function (i, e) {
|
||
return i = k.fx && k.fx.speeds[i] || i, this.queue(e = e || "fx", function (e, t) {
|
||
var n = L.setTimeout(e, i);
|
||
t.stop = function () {
|
||
L.clearTimeout(n)
|
||
}
|
||
})
|
||
}, s = S.createElement("input"), R = S.createElement("select").appendChild(S.createElement("option")), s.type = "checkbox", p.checkOn = "" !== s.value, p.optSelected = R.selected, (s = S.createElement("input")).value = "t", s.type = "radio", p.radioValue = "t" === s.value;
|
||
var vt, gt = k.expr.attrHandle, Mt = (k.fn.extend({
|
||
attr: function (e, t) {
|
||
return h(this, k.attr, e, t, 1 < arguments.length)
|
||
}, removeAttr: function (e) {
|
||
return this.each(function () {
|
||
k.removeAttr(this, e)
|
||
})
|
||
}
|
||
}), k.extend({
|
||
attr: function (e, t, n) {
|
||
var i, r, a = e.nodeType;
|
||
if (3 !== a && 8 !== a && 2 !== a) return void 0 === e.getAttribute ? k.prop(e, t, n) : (1 === a && k.isXMLDoc(e) || (r = k.attrHooks[t.toLowerCase()] || (k.expr.match.bool.test(t) ? vt : void 0)), void 0 !== n ? null === n ? void k.removeAttr(e, t) : r && "set" in r && void 0 !== (i = r.set(e, n, t)) ? i : (e.setAttribute(t, n + ""), n) : !(r && "get" in r && null !== (i = r.get(e, t))) && null == (i = k.find.attr(e, t)) ? void 0 : i)
|
||
}, attrHooks: {
|
||
type: {
|
||
set: function (e, t) {
|
||
var n;
|
||
if (!p.radioValue && "radio" === t && u(e, "input")) return n = e.value, e.setAttribute("type", t), n && (e.value = n), t
|
||
}
|
||
}
|
||
}, removeAttr: function (e, t) {
|
||
var n, i = 0, r = t && t.match(b);
|
||
if (r && 1 === e.nodeType) for (; n = r[i++];) e.removeAttribute(n)
|
||
}
|
||
}), vt = {
|
||
set: function (e, t, n) {
|
||
return !1 === t ? k.removeAttr(e, n) : e.setAttribute(n, n), n
|
||
}
|
||
}, k.each(k.expr.match.bool.source.match(/\w+/g), function (e, t) {
|
||
var s = gt[t] || k.find.attr;
|
||
gt[t] = function (e, t, n) {
|
||
var i, r, a = t.toLowerCase();
|
||
return n || (r = gt[a], gt[a] = i, i = null != s(e, t, n) ? a : null, gt[a] = r), i
|
||
}
|
||
}), /^(?:input|select|textarea|button)$/i), Lt = /^(?:a|area)$/i;
|
||
|
||
function x(e) {
|
||
return (e.match(b) || []).join(" ")
|
||
}
|
||
|
||
function O(e) {
|
||
return e.getAttribute && e.getAttribute("class") || ""
|
||
}
|
||
|
||
function St(e) {
|
||
return Array.isArray(e) ? e : "string" == typeof e && e.match(b) || []
|
||
}
|
||
|
||
k.fn.extend({
|
||
prop: function (e, t) {
|
||
return h(this, k.prop, e, t, 1 < arguments.length)
|
||
}, removeProp: function (e) {
|
||
return this.each(function () {
|
||
delete this[k.propFix[e] || e]
|
||
})
|
||
}
|
||
}), k.extend({
|
||
prop: function (e, t, n) {
|
||
var i, r, a = e.nodeType;
|
||
if (3 !== a && 8 !== a && 2 !== a) return 1 === a && k.isXMLDoc(e) || (t = k.propFix[t] || t, r = k.propHooks[t]), void 0 !== n ? r && "set" in r && void 0 !== (i = r.set(e, n, t)) ? i : e[t] = n : r && "get" in r && null !== (i = r.get(e, t)) ? i : e[t]
|
||
}, propHooks: {
|
||
tabIndex: {
|
||
get: function (e) {
|
||
var t = k.find.attr(e, "tabindex");
|
||
return t ? parseInt(t, 10) : Mt.test(e.nodeName) || Lt.test(e.nodeName) && e.href ? 0 : -1
|
||
}
|
||
}
|
||
}, propFix: {for: "htmlFor", class: "className"}
|
||
}), p.optSelected || (k.propHooks.selected = {
|
||
get: function (e) {
|
||
e = e.parentNode;
|
||
return e && e.parentNode && e.parentNode.selectedIndex, null
|
||
}, set: function (e) {
|
||
e = e.parentNode;
|
||
e && (e.selectedIndex, e.parentNode && e.parentNode.selectedIndex)
|
||
}
|
||
}), k.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
|
||
k.propFix[this.toLowerCase()] = this
|
||
}), k.fn.extend({
|
||
addClass: function (t) {
|
||
var e, n, i, r, a, s, o = 0;
|
||
if (v(t)) return this.each(function (e) {
|
||
k(this).addClass(t.call(this, e, O(this)))
|
||
});
|
||
if ((e = St(t)).length) for (; n = this[o++];) if (s = O(n), i = 1 === n.nodeType && " " + x(s) + " ") {
|
||
for (a = 0; r = e[a++];) i.indexOf(" " + r + " ") < 0 && (i += r + " ");
|
||
s !== (s = x(i)) && n.setAttribute("class", s)
|
||
}
|
||
return this
|
||
}, removeClass: function (t) {
|
||
var e, n, i, r, a, s, o = 0;
|
||
if (v(t)) return this.each(function (e) {
|
||
k(this).removeClass(t.call(this, e, O(this)))
|
||
});
|
||
if (!arguments.length) return this.attr("class", "");
|
||
if ((e = St(t)).length) for (; n = this[o++];) if (s = O(n), i = 1 === n.nodeType && " " + x(s) + " ") {
|
||
for (a = 0; r = e[a++];) for (; -1 < i.indexOf(" " + r + " ");) i = i.replace(" " + r + " ", " ");
|
||
s !== (s = x(i)) && n.setAttribute("class", s)
|
||
}
|
||
return this
|
||
}, toggleClass: function (r, t) {
|
||
var a = typeof r, s = "string" == a || Array.isArray(r);
|
||
return "boolean" == typeof t && s ? t ? this.addClass(r) : this.removeClass(r) : v(r) ? this.each(function (e) {
|
||
k(this).toggleClass(r.call(this, e, O(this), t), t)
|
||
}) : this.each(function () {
|
||
var e, t, n, i;
|
||
if (s) for (t = 0, n = k(this), i = St(r); e = i[t++];) n.hasClass(e) ? n.removeClass(e) : n.addClass(e); else void 0 !== r && "boolean" != a || ((e = O(this)) && M.set(this, "__className__", e), this.setAttribute && this.setAttribute("class", !e && !1 !== r && M.get(this, "__className__") || ""))
|
||
})
|
||
}, hasClass: function (e) {
|
||
for (var t, n = 0, i = " " + e + " "; t = this[n++];) if (1 === t.nodeType && -1 < (" " + x(O(t)) + " ").indexOf(i)) return !0;
|
||
return !1
|
||
}
|
||
});
|
||
|
||
function kt(e) {
|
||
e.stopPropagation()
|
||
}
|
||
|
||
var bt = /\r/g, wt = (k.fn.extend({
|
||
val: function (t) {
|
||
var n, e, i, r = this[0];
|
||
return arguments.length ? (i = v(t), this.each(function (e) {
|
||
1 === this.nodeType && (null == (e = i ? t.call(this, e, k(this).val()) : t) ? e = "" : "number" == typeof e ? e += "" : Array.isArray(e) && (e = k.map(e, function (e) {
|
||
return null == e ? "" : e + ""
|
||
})), (n = k.valHooks[this.type] || k.valHooks[this.nodeName.toLowerCase()]) && "set" in n && void 0 !== n.set(this, e, "value") || (this.value = e))
|
||
})) : r ? (n = k.valHooks[r.type] || k.valHooks[r.nodeName.toLowerCase()]) && "get" in n && void 0 !== (e = n.get(r, "value")) ? e : "string" == typeof (e = r.value) ? e.replace(bt, "") : null == e ? "" : e : void 0
|
||
}
|
||
}), k.extend({
|
||
valHooks: {
|
||
option: {
|
||
get: function (e) {
|
||
var t = k.find.attr(e, "value");
|
||
return null != t ? t : x(k.text(e))
|
||
}
|
||
}, select: {
|
||
get: function (e) {
|
||
for (var t, n = e.options, i = e.selectedIndex, r = "select-one" === e.type, a = r ? null : [], s = r ? i + 1 : n.length, o = i < 0 ? s : r ? i : 0; o < s; o++) if (((t = n[o]).selected || o === i) && !t.disabled && (!t.parentNode.disabled || !u(t.parentNode, "optgroup"))) {
|
||
if (t = k(t).val(), r) return t;
|
||
a.push(t)
|
||
}
|
||
return a
|
||
}, set: function (e, t) {
|
||
for (var n, i, r = e.options, a = k.makeArray(t), s = r.length; s--;) ((i = r[s]).selected = -1 < k.inArray(k.valHooks.option.get(i), a)) && (n = !0);
|
||
return n || (e.selectedIndex = -1), a
|
||
}
|
||
}
|
||
}
|
||
}), k.each(["radio", "checkbox"], function () {
|
||
k.valHooks[this] = {
|
||
set: function (e, t) {
|
||
if (Array.isArray(t)) return e.checked = -1 < k.inArray(k(e).val(), t)
|
||
}
|
||
}, p.checkOn || (k.valHooks[this].get = function (e) {
|
||
return null === e.getAttribute("value") ? "on" : e.value
|
||
})
|
||
}), p.focusin = "onfocusin" in L, /^(?:focusinfocus|focusoutblur)$/), Dt = (k.extend(k.event, {
|
||
trigger: function (e, t, n, i) {
|
||
var r, a, s, o, u, d, l, h = [n || S], c = z.call(e, "type") ? e.type : e,
|
||
_ = z.call(e, "namespace") ? e.namespace.split(".") : [], f = l = a = n = n || S;
|
||
if (3 !== n.nodeType && 8 !== n.nodeType && !wt.test(c + k.event.triggered) && (-1 < c.indexOf(".") && (c = (_ = c.split(".")).shift(), _.sort()), o = c.indexOf(":") < 0 && "on" + c, (e = e[k.expando] ? e : new k.Event(c, "object" == typeof e && e)).isTrigger = i ? 2 : 3, e.namespace = _.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + _.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : k.makeArray(t, [e]), d = k.event.special[c] || {}, i || !d.trigger || !1 !== d.trigger.apply(n, t))) {
|
||
if (!i && !d.noBubble && !m(n)) {
|
||
for (s = d.delegateType || c, wt.test(s + c) || (f = f.parentNode); f; f = f.parentNode) h.push(f), a = f;
|
||
a === (n.ownerDocument || S) && h.push(a.defaultView || a.parentWindow || L)
|
||
}
|
||
for (r = 0; (f = h[r++]) && !e.isPropagationStopped();) l = f, e.type = 1 < r ? s : d.bindType || c, (u = (M.get(f, "events") || Object.create(null))[e.type] && M.get(f, "handle")) && u.apply(f, t), (u = o && f[o]) && u.apply && y(f) && (e.result = u.apply(f, t), !1 === e.result && e.preventDefault());
|
||
return e.type = c, i || e.isDefaultPrevented() || d._default && !1 !== d._default.apply(h.pop(), t) || !y(n) || o && v(n[c]) && !m(n) && ((a = n[o]) && (n[o] = null), k.event.triggered = c, e.isPropagationStopped() && l.addEventListener(c, kt), n[c](), e.isPropagationStopped() && l.removeEventListener(c, kt), k.event.triggered = void 0, a && (n[o] = a)), e.result
|
||
}
|
||
}, simulate: function (e, t, n) {
|
||
n = k.extend(new k.Event, n, {type: e, isSimulated: !0});
|
||
k.event.trigger(n, null, t)
|
||
}
|
||
}), k.fn.extend({
|
||
trigger: function (e, t) {
|
||
return this.each(function () {
|
||
k.event.trigger(e, t, this)
|
||
})
|
||
}, triggerHandler: function (e, t) {
|
||
var n = this[0];
|
||
if (n) return k.event.trigger(e, t, n, !0)
|
||
}
|
||
}), p.focusin || k.each({focus: "focusin", blur: "focusout"}, function (n, i) {
|
||
function r(e) {
|
||
k.event.simulate(i, e.target, k.event.fix(e))
|
||
}
|
||
|
||
k.event.special[i] = {
|
||
setup: function () {
|
||
var e = this.ownerDocument || this.document || this, t = M.access(e, i);
|
||
t || e.addEventListener(n, r, !0), M.access(e, i, (t || 0) + 1)
|
||
}, teardown: function () {
|
||
var e = this.ownerDocument || this.document || this, t = M.access(e, i) - 1;
|
||
t ? M.access(e, i, t) : (e.removeEventListener(n, r, !0), M.remove(e, i))
|
||
}
|
||
}
|
||
}), L.location), Tt = {guid: Date.now()}, Et = /\?/, Yt = (k.parseXML = function (e) {
|
||
var t, n;
|
||
if (!e || "string" != typeof e) return null;
|
||
try {
|
||
t = (new L.DOMParser).parseFromString(e, "text/xml")
|
||
} catch (e) {
|
||
}
|
||
return n = t && t.getElementsByTagName("parsererror")[0], t && !n || k.error("Invalid XML: " + (n ? k.map(n.childNodes, function (e) {
|
||
return e.textContent
|
||
}).join("\n") : e)), t
|
||
}, /\[\]$/), Pt = /\r?\n/g, Ct = /^(?:submit|button|image|reset|file)$/i,
|
||
Rt = /^(?:input|select|textarea|keygen)/i;
|
||
k.param = function (e, t) {
|
||
function n(e, t) {
|
||
t = v(t) ? t() : t, r[r.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == t ? "" : t)
|
||
}
|
||
|
||
var i, r = [];
|
||
if (null == e) return "";
|
||
if (Array.isArray(e) || e.jquery && !k.isPlainObject(e)) k.each(e, function () {
|
||
n(this.name, this.value)
|
||
}); else for (i in e) !function n(i, e, r, a) {
|
||
if (Array.isArray(e)) k.each(e, function (e, t) {
|
||
r || Yt.test(i) ? a(i, t) : n(i + "[" + ("object" == typeof t && null != t ? e : "") + "]", t, r, a)
|
||
}); else if (r || "object" !== f(e)) a(i, e); else for (var t in e) n(i + "[" + t + "]", e[t], r, a)
|
||
}(i, e[i], t, n);
|
||
return r.join("&")
|
||
}, k.fn.extend({
|
||
serialize: function () {
|
||
return k.param(this.serializeArray())
|
||
}, serializeArray: function () {
|
||
return this.map(function () {
|
||
var e = k.prop(this, "elements");
|
||
return e ? k.makeArray(e) : this
|
||
}).filter(function () {
|
||
var e = this.type;
|
||
return this.name && !k(this).is(":disabled") && Rt.test(this.nodeName) && !Ct.test(e) && (this.checked || !Le.test(e))
|
||
}).map(function (e, t) {
|
||
var n = k(this).val();
|
||
return null == n ? null : Array.isArray(n) ? k.map(n, function (e) {
|
||
return {name: t.name, value: e.replace(Pt, "\r\n")}
|
||
}) : {name: t.name, value: n.replace(Pt, "\r\n")}
|
||
}).get()
|
||
}
|
||
});
|
||
var At = /%20/g, xt = /#.*$/, Ot = /([?&])_=[^&]*/, It = /^(.*?):[ \t]*([^\r\n]*)$/gm,
|
||
Wt = /^(?:GET|HEAD)$/, Ht = /^\/\//, jt = {}, Ft = {}, Bt = "*/".concat("*"), Nt = S.createElement("a");
|
||
|
||
function zt(a) {
|
||
return function (e, t) {
|
||
"string" != typeof e && (t = e, e = "*");
|
||
var n, i = 0, r = e.toLowerCase().match(b) || [];
|
||
if (v(t)) for (; n = r[i++];) "+" === n[0] ? (n = n.slice(1) || "*", (a[n] = a[n] || []).unshift(t)) : (a[n] = a[n] || []).push(t)
|
||
}
|
||
}
|
||
|
||
function Ut(t, i, r, a) {
|
||
var s = {}, o = t === Ft;
|
||
|
||
function u(e) {
|
||
var n;
|
||
return s[e] = !0, k.each(t[e] || [], function (e, t) {
|
||
t = t(i, r, a);
|
||
return "string" != typeof t || o || s[t] ? o ? !(n = t) : void 0 : (i.dataTypes.unshift(t), u(t), !1)
|
||
}), n
|
||
}
|
||
|
||
return u(i.dataTypes[0]) || !s["*"] && u("*")
|
||
}
|
||
|
||
function Vt(e, t) {
|
||
var n, i, r = k.ajaxSettings.flatOptions || {};
|
||
for (n in t) void 0 !== t[n] && ((r[n] ? e : i = i || {})[n] = t[n]);
|
||
return i && k.extend(!0, e, i), e
|
||
}
|
||
|
||
Nt.href = Dt.href, k.extend({
|
||
active: 0,
|
||
lastModified: {},
|
||
etag: {},
|
||
ajaxSettings: {
|
||
url: Dt.href,
|
||
type: "GET",
|
||
isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Dt.protocol),
|
||
global: !0,
|
||
processData: !0,
|
||
async: !0,
|
||
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
|
||
accepts: {
|
||
"*": Bt,
|
||
text: "text/plain",
|
||
html: "text/html",
|
||
xml: "application/xml, text/xml",
|
||
json: "application/json, text/javascript"
|
||
},
|
||
contents: {xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/},
|
||
responseFields: {xml: "responseXML", text: "responseText", json: "responseJSON"},
|
||
converters: {"* text": String, "text html": !0, "text json": JSON.parse, "text xml": k.parseXML},
|
||
flatOptions: {url: !0, context: !0}
|
||
},
|
||
ajaxSetup: function (e, t) {
|
||
return t ? Vt(Vt(e, k.ajaxSettings), t) : Vt(k.ajaxSettings, e)
|
||
},
|
||
ajaxPrefilter: zt(jt),
|
||
ajaxTransport: zt(Ft),
|
||
ajax: function (e, t) {
|
||
"object" == typeof e && (t = e, e = void 0);
|
||
var u, d, l, n, h, c, _, i, f = k.ajaxSetup({}, t = t || {}), m = f.context || f,
|
||
p = f.context && (m.nodeType || m.jquery) ? k(m) : k.event, y = k.Deferred(),
|
||
v = k.Callbacks("once memory"), g = f.statusCode || {}, r = {}, a = {}, s = "canceled", M = {
|
||
readyState: 0, getResponseHeader: function (e) {
|
||
var t;
|
||
if (c) {
|
||
if (!n) for (n = {}; t = It.exec(l);) n[t[1].toLowerCase() + " "] = (n[t[1].toLowerCase() + " "] || []).concat(t[2]);
|
||
t = n[e.toLowerCase() + " "]
|
||
}
|
||
return null == t ? null : t.join(", ")
|
||
}, getAllResponseHeaders: function () {
|
||
return c ? l : null
|
||
}, setRequestHeader: function (e, t) {
|
||
return null == c && (e = a[e.toLowerCase()] = a[e.toLowerCase()] || e, r[e] = t), this
|
||
}, overrideMimeType: function (e) {
|
||
return null == c && (f.mimeType = e), this
|
||
}, statusCode: function (e) {
|
||
if (e) if (c) M.always(e[M.status]); else for (var t in e) g[t] = [g[t], e[t]];
|
||
return this
|
||
}, abort: function (e) {
|
||
e = e || s;
|
||
return u && u.abort(e), o(0, e), this
|
||
}
|
||
};
|
||
if (y.promise(M), f.url = ((e || f.url || Dt.href) + "").replace(Ht, Dt.protocol + "//"), f.type = t.method || t.type || f.method || f.type, f.dataTypes = (f.dataType || "*").toLowerCase().match(b) || [""], null == f.crossDomain) {
|
||
e = S.createElement("a");
|
||
try {
|
||
e.href = f.url, e.href = e.href, f.crossDomain = Nt.protocol + "//" + Nt.host != e.protocol + "//" + e.host
|
||
} catch (e) {
|
||
f.crossDomain = !0
|
||
}
|
||
}
|
||
if (f.data && f.processData && "string" != typeof f.data && (f.data = k.param(f.data, f.traditional)), Ut(jt, f, t, M), !c) {
|
||
for (i in (_ = k.event && f.global) && 0 == k.active++ && k.event.trigger("ajaxStart"), f.type = f.type.toUpperCase(), f.hasContent = !Wt.test(f.type), d = f.url.replace(xt, ""), f.hasContent ? f.data && f.processData && 0 === (f.contentType || "").indexOf("application/x-www-form-urlencoded") && (f.data = f.data.replace(At, "+")) : (e = f.url.slice(d.length), f.data && (f.processData || "string" == typeof f.data) && (d += (Et.test(d) ? "&" : "?") + f.data, delete f.data), !1 === f.cache && (d = d.replace(Ot, "$1"), e = (Et.test(d) ? "&" : "?") + "_=" + Tt.guid++ + e), f.url = d + e), f.ifModified && (k.lastModified[d] && M.setRequestHeader("If-Modified-Since", k.lastModified[d]), k.etag[d] && M.setRequestHeader("If-None-Match", k.etag[d])), (f.data && f.hasContent && !1 !== f.contentType || t.contentType) && M.setRequestHeader("Content-Type", f.contentType), M.setRequestHeader("Accept", f.dataTypes[0] && f.accepts[f.dataTypes[0]] ? f.accepts[f.dataTypes[0]] + ("*" !== f.dataTypes[0] ? ", " + Bt + "; q=0.01" : "") : f.accepts["*"]), f.headers) M.setRequestHeader(i, f.headers[i]);
|
||
if (f.beforeSend && (!1 === f.beforeSend.call(m, M, f) || c)) return M.abort();
|
||
if (s = "abort", v.add(f.complete), M.done(f.success), M.fail(f.error), u = Ut(Ft, f, t, M)) {
|
||
if (M.readyState = 1, _ && p.trigger("ajaxSend", [M, f]), c) return M;
|
||
f.async && 0 < f.timeout && (h = L.setTimeout(function () {
|
||
M.abort("timeout")
|
||
}, f.timeout));
|
||
try {
|
||
c = !1, u.send(r, o)
|
||
} catch (e) {
|
||
if (c) throw e;
|
||
o(-1, e)
|
||
}
|
||
} else o(-1, "No Transport")
|
||
}
|
||
return M;
|
||
|
||
function o(e, t, n, i) {
|
||
var r, a, s, o = t;
|
||
c || (c = !0, h && L.clearTimeout(h), u = void 0, l = i || "", M.readyState = 0 < e ? 4 : 0, i = 200 <= e && e < 300 || 304 === e, n && (s = function (e, t, n) {
|
||
for (var i, r, a, s, o = e.contents, u = e.dataTypes; "*" === u[0];) u.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader("Content-Type"));
|
||
if (i) for (r in o) if (o[r] && o[r].test(i)) {
|
||
u.unshift(r);
|
||
break
|
||
}
|
||
if (u[0] in n) a = u[0]; else {
|
||
for (r in n) {
|
||
if (!u[0] || e.converters[r + " " + u[0]]) {
|
||
a = r;
|
||
break
|
||
}
|
||
s = s || r
|
||
}
|
||
a = a || s
|
||
}
|
||
if (a) return a !== u[0] && u.unshift(a), n[a]
|
||
}(f, M, n)), !i && -1 < k.inArray("script", f.dataTypes) && k.inArray("json", f.dataTypes) < 0 && (f.converters["text script"] = function () {
|
||
}), s = function (e, t, n, i) {
|
||
var r, a, s, o, u, d = {}, l = e.dataTypes.slice();
|
||
if (l[1]) for (s in e.converters) d[s.toLowerCase()] = e.converters[s];
|
||
for (a = l.shift(); a;) if (e.responseFields[a] && (n[e.responseFields[a]] = t), !u && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), u = a, a = l.shift()) if ("*" === a) a = u; else if ("*" !== u && u !== a) {
|
||
if (!(s = d[u + " " + a] || d["* " + a])) for (r in d) if ((o = r.split(" "))[1] === a && (s = d[u + " " + o[0]] || d["* " + o[0]])) {
|
||
!0 === s ? s = d[r] : !0 !== d[r] && (a = o[0], l.unshift(o[1]));
|
||
break
|
||
}
|
||
if (!0 !== s) if (s && e.throws) t = s(t); else try {
|
||
t = s(t)
|
||
} catch (e) {
|
||
return {state: "parsererror", error: s ? e : "No conversion from " + u + " to " + a}
|
||
}
|
||
}
|
||
return {state: "success", data: t}
|
||
}(f, s, M, i), i ? (f.ifModified && ((n = M.getResponseHeader("Last-Modified")) && (k.lastModified[d] = n), (n = M.getResponseHeader("etag")) && (k.etag[d] = n)), 204 === e || "HEAD" === f.type ? o = "nocontent" : 304 === e ? o = "notmodified" : (o = s.state, r = s.data, i = !(a = s.error))) : (a = o, !e && o || (o = "error", e < 0 && (e = 0))), M.status = e, M.statusText = (t || o) + "", i ? y.resolveWith(m, [r, o, M]) : y.rejectWith(m, [M, o, a]), M.statusCode(g), g = void 0, _ && p.trigger(i ? "ajaxSuccess" : "ajaxError", [M, f, i ? r : a]), v.fireWith(m, [M, o]), _ && (p.trigger("ajaxComplete", [M, f]), --k.active || k.event.trigger("ajaxStop")))
|
||
}
|
||
},
|
||
getJSON: function (e, t, n) {
|
||
return k.get(e, t, n, "json")
|
||
},
|
||
getScript: function (e, t) {
|
||
return k.get(e, void 0, t, "script")
|
||
}
|
||
}), k.each(["get", "post"], function (e, r) {
|
||
k[r] = function (e, t, n, i) {
|
||
return v(t) && (i = i || n, n = t, t = void 0), k.ajax(k.extend({
|
||
url: e,
|
||
type: r,
|
||
dataType: i,
|
||
data: t,
|
||
success: n
|
||
}, k.isPlainObject(e) && e))
|
||
}
|
||
}), k.ajaxPrefilter(function (e) {
|
||
for (var t in e.headers) "content-type" === t.toLowerCase() && (e.contentType = e.headers[t] || "")
|
||
}), k._evalUrl = function (e, t, n) {
|
||
return k.ajax({
|
||
url: e,
|
||
type: "GET",
|
||
dataType: "script",
|
||
cache: !0,
|
||
async: !1,
|
||
global: !1,
|
||
converters: {
|
||
"text script": function () {
|
||
}
|
||
},
|
||
dataFilter: function (e) {
|
||
k.globalEval(e, t, n)
|
||
}
|
||
})
|
||
}, k.fn.extend({
|
||
wrapAll: function (e) {
|
||
return this[0] && (v(e) && (e = e.call(this[0])), e = k(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && e.insertBefore(this[0]), e.map(function () {
|
||
for (var e = this; e.firstElementChild;) e = e.firstElementChild;
|
||
return e
|
||
}).append(this)), this
|
||
}, wrapInner: function (n) {
|
||
return v(n) ? this.each(function (e) {
|
||
k(this).wrapInner(n.call(this, e))
|
||
}) : this.each(function () {
|
||
var e = k(this), t = e.contents();
|
||
t.length ? t.wrapAll(n) : e.append(n)
|
||
})
|
||
}, wrap: function (t) {
|
||
var n = v(t);
|
||
return this.each(function (e) {
|
||
k(this).wrapAll(n ? t.call(this, e) : t)
|
||
})
|
||
}, unwrap: function (e) {
|
||
return this.parent(e).not("body").each(function () {
|
||
k(this).replaceWith(this.childNodes)
|
||
}), this
|
||
}
|
||
}), k.expr.pseudos.hidden = function (e) {
|
||
return !k.expr.pseudos.visible(e)
|
||
}, k.expr.pseudos.visible = function (e) {
|
||
return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length)
|
||
}, k.ajaxSettings.xhr = function () {
|
||
try {
|
||
return new L.XMLHttpRequest
|
||
} catch (e) {
|
||
}
|
||
};
|
||
var Gt = {0: 200, 1223: 204}, Jt = k.ajaxSettings.xhr(),
|
||
qt = (p.cors = !!Jt && "withCredentials" in Jt, p.ajax = Jt = !!Jt, k.ajaxTransport(function (r) {
|
||
var a, s;
|
||
if (p.cors || Jt && !r.crossDomain) return {
|
||
send: function (e, t) {
|
||
var n, i = r.xhr();
|
||
if (i.open(r.type, r.url, r.async, r.username, r.password), r.xhrFields) for (n in r.xhrFields) i[n] = r.xhrFields[n];
|
||
for (n in r.mimeType && i.overrideMimeType && i.overrideMimeType(r.mimeType), r.crossDomain || e["X-Requested-With"] || (e["X-Requested-With"] = "XMLHttpRequest"), e) i.setRequestHeader(n, e[n]);
|
||
a = function (e) {
|
||
return function () {
|
||
a && (a = s = i.onload = i.onerror = i.onabort = i.ontimeout = i.onreadystatechange = null, "abort" === e ? i.abort() : "error" === e ? "number" != typeof i.status ? t(0, "error") : t(i.status, i.statusText) : t(Gt[i.status] || i.status, i.statusText, "text" !== (i.responseType || "text") || "string" != typeof i.responseText ? {binary: i.response} : {text: i.responseText}, i.getAllResponseHeaders()))
|
||
}
|
||
}, i.onload = a(), s = i.onerror = i.ontimeout = a("error"), void 0 !== i.onabort ? i.onabort = s : i.onreadystatechange = function () {
|
||
4 === i.readyState && L.setTimeout(function () {
|
||
a && s()
|
||
})
|
||
}, a = a("abort");
|
||
try {
|
||
i.send(r.hasContent && r.data || null)
|
||
} catch (e) {
|
||
if (a) throw e
|
||
}
|
||
}, abort: function () {
|
||
a && a()
|
||
}
|
||
}
|
||
}), k.ajaxPrefilter(function (e) {
|
||
e.crossDomain && (e.contents.script = !1)
|
||
}), k.ajaxSetup({
|
||
accepts: {script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},
|
||
contents: {script: /\b(?:java|ecma)script\b/},
|
||
converters: {
|
||
"text script": function (e) {
|
||
return k.globalEval(e), e
|
||
}
|
||
}
|
||
}), k.ajaxPrefilter("script", function (e) {
|
||
void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET")
|
||
}), k.ajaxTransport("script", function (n) {
|
||
var i, r;
|
||
if (n.crossDomain || n.scriptAttrs) return {
|
||
send: function (e, t) {
|
||
i = k("<script>").attr(n.scriptAttrs || {}).prop({
|
||
charset: n.scriptCharset,
|
||
src: n.url
|
||
}).on("load error", r = function (e) {
|
||
i.remove(), r = null, e && t("error" === e.type ? 404 : 200, e.type)
|
||
}), S.head.appendChild(i[0])
|
||
}, abort: function () {
|
||
r && r()
|
||
}
|
||
}
|
||
}), []), Kt = /(=)\?(?=&|$)|\?\?/, Xt = (k.ajaxSetup({
|
||
jsonp: "callback", jsonpCallback: function () {
|
||
var e = qt.pop() || k.expando + "_" + Tt.guid++;
|
||
return this[e] = !0, e
|
||
}
|
||
}), k.ajaxPrefilter("json jsonp", function (e, t, n) {
|
||
var i, r, a,
|
||
s = !1 !== e.jsonp && (Kt.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && Kt.test(e.data) && "data");
|
||
if (s || "jsonp" === e.dataTypes[0]) return i = e.jsonpCallback = v(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, s ? e[s] = e[s].replace(Kt, "$1" + i) : !1 !== e.jsonp && (e.url += (Et.test(e.url) ? "&" : "?") + e.jsonp + "=" + i), e.converters["script json"] = function () {
|
||
return a || k.error(i + " was not called"), a[0]
|
||
}, e.dataTypes[0] = "json", r = L[i], L[i] = function () {
|
||
a = arguments
|
||
}, n.always(function () {
|
||
void 0 === r ? k(L).removeProp(i) : L[i] = r, e[i] && (e.jsonpCallback = t.jsonpCallback, qt.push(i)), a && v(r) && r(a[0]), a = r = void 0
|
||
}), "script"
|
||
}), p.createHTMLDocument = ((e = S.implementation.createHTMLDocument("").body).innerHTML = "<form></form><form></form>", 2 === e.childNodes.length), k.parseHTML = function (e, t, n) {
|
||
return "string" != typeof e ? [] : ("boolean" == typeof t && (n = t, t = !1), t || (p.createHTMLDocument ? ((i = (t = S.implementation.createHTMLDocument("")).createElement("base")).href = S.location.href, t.head.appendChild(i)) : t = S), i = !n && [], (n = Z.exec(e)) ? [t.createElement(n[1])] : (n = De([e], t, i), i && i.length && k(i).remove(), k.merge([], n.childNodes)));
|
||
var i
|
||
}, k.fn.load = function (e, t, n) {
|
||
var i, r, a, s = this, o = e.indexOf(" ");
|
||
return -1 < o && (i = x(e.slice(o)), e = e.slice(0, o)), v(t) ? (n = t, t = void 0) : t && "object" == typeof t && (r = "POST"), 0 < s.length && k.ajax({
|
||
url: e,
|
||
type: r || "GET",
|
||
dataType: "html",
|
||
data: t
|
||
}).done(function (e) {
|
||
a = arguments, s.html(i ? k("<div>").append(k.parseHTML(e)).find(i) : e)
|
||
}).always(n && function (e, t) {
|
||
s.each(function () {
|
||
n.apply(this, a || [e.responseText, t, e])
|
||
})
|
||
}), this
|
||
}, k.expr.pseudos.animated = function (t) {
|
||
return k.grep(k.timers, function (e) {
|
||
return t === e.elem
|
||
}).length
|
||
}, k.offset = {
|
||
setOffset: function (e, t, n) {
|
||
var i, r, a, s, o = k.css(e, "position"), u = k(e), d = {};
|
||
"static" === o && (e.style.position = "relative"), a = u.offset(), i = k.css(e, "top"), s = k.css(e, "left"), o = ("absolute" === o || "fixed" === o) && -1 < (i + s).indexOf("auto") ? (r = (o = u.position()).top, o.left) : (r = parseFloat(i) || 0, parseFloat(s) || 0), null != (t = v(t) ? t.call(e, n, k.extend({}, a)) : t).top && (d.top = t.top - a.top + r), null != t.left && (d.left = t.left - a.left + o), "using" in t ? t.using.call(e, d) : u.css(d)
|
||
}
|
||
}, k.fn.extend({
|
||
offset: function (t) {
|
||
if (arguments.length) return void 0 === t ? this : this.each(function (e) {
|
||
k.offset.setOffset(this, t, e)
|
||
});
|
||
var e, n = this[0];
|
||
return n ? n.getClientRects().length ? (e = n.getBoundingClientRect(), n = n.ownerDocument.defaultView, {
|
||
top: e.top + n.pageYOffset,
|
||
left: e.left + n.pageXOffset
|
||
}) : {top: 0, left: 0} : void 0
|
||
}, position: function () {
|
||
if (this[0]) {
|
||
var e, t, n, i = this[0], r = {top: 0, left: 0};
|
||
if ("fixed" === k.css(i, "position")) t = i.getBoundingClientRect(); else {
|
||
for (t = this.offset(), n = i.ownerDocument, e = i.offsetParent || n.documentElement; e && (e === n.body || e === n.documentElement) && "static" === k.css(e, "position");) e = e.parentNode;
|
||
e && e !== i && 1 === e.nodeType && ((r = k(e).offset()).top += k.css(e, "borderTopWidth", !0), r.left += k.css(e, "borderLeftWidth", !0))
|
||
}
|
||
return {
|
||
top: t.top - r.top - k.css(i, "marginTop", !0),
|
||
left: t.left - r.left - k.css(i, "marginLeft", !0)
|
||
}
|
||
}
|
||
}, offsetParent: function () {
|
||
return this.map(function () {
|
||
for (var e = this.offsetParent; e && "static" === k.css(e, "position");) e = e.offsetParent;
|
||
return e || w
|
||
})
|
||
}
|
||
}), k.each({scrollLeft: "pageXOffset", scrollTop: "pageYOffset"}, function (t, r) {
|
||
var a = "pageYOffset" === r;
|
||
k.fn[t] = function (e) {
|
||
return h(this, function (e, t, n) {
|
||
var i;
|
||
if (m(e) ? i = e : 9 === e.nodeType && (i = e.defaultView), void 0 === n) return i ? i[r] : e[t];
|
||
i ? i.scrollTo(a ? i.pageXOffset : n, a ? n : i.pageYOffset) : e[t] = n
|
||
}, t, e, arguments.length)
|
||
}
|
||
}), k.each(["top", "left"], function (e, n) {
|
||
k.cssHooks[n] = Qe(p.pixelPosition, function (e, t) {
|
||
if (t) return t = $e(e, n), qe.test(t) ? k(e).position()[n] + "px" : t
|
||
})
|
||
}), k.each({Height: "height", Width: "width"}, function (s, o) {
|
||
k.each({padding: "inner" + s, content: o, "": "outer" + s}, function (i, a) {
|
||
k.fn[a] = function (e, t) {
|
||
var n = arguments.length && (i || "boolean" != typeof e),
|
||
r = i || (!0 === e || !0 === t ? "margin" : "border");
|
||
return h(this, function (e, t, n) {
|
||
var i;
|
||
return m(e) ? 0 === a.indexOf("outer") ? e["inner" + s] : e.document.documentElement["client" + s] : 9 === e.nodeType ? (i = e.documentElement, Math.max(e.body["scroll" + s], i["scroll" + s], e.body["offset" + s], i["offset" + s], i["client" + s])) : void 0 === n ? k.css(e, t, r) : k.style(e, t, n, r)
|
||
}, o, n ? e : void 0, n)
|
||
}
|
||
})
|
||
}), k.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
|
||
k.fn[t] = function (e) {
|
||
return this.on(t, e)
|
||
}
|
||
}), k.fn.extend({
|
||
bind: function (e, t, n) {
|
||
return this.on(e, null, t, n)
|
||
}, unbind: function (e, t) {
|
||
return this.off(e, null, t)
|
||
}, delegate: function (e, t, n, i) {
|
||
return this.on(t, e, n, i)
|
||
}, undelegate: function (e, t, n) {
|
||
return 1 === arguments.length ? this.off(e, "**") : this.off(t, e || "**", n)
|
||
}, hover: function (e, t) {
|
||
return this.mouseenter(e).mouseleave(t || e)
|
||
}
|
||
}), k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "), function (e, n) {
|
||
k.fn[n] = function (e, t) {
|
||
return 0 < arguments.length ? this.on(n, null, e, t) : this.trigger(n)
|
||
}
|
||
}), /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g), Zt = (k.proxy = function (e, t) {
|
||
var n, i;
|
||
if ("string" == typeof t && (i = e[t], t = e, e = i), v(e)) return n = o.call(arguments, 2), (i = function () {
|
||
return e.apply(t || this, n.concat(o.call(arguments)))
|
||
}).guid = e.guid = e.guid || k.guid++, i
|
||
}, k.holdReady = function (e) {
|
||
e ? k.readyWait++ : k.ready(!0)
|
||
}, k.isArray = Array.isArray, k.parseJSON = JSON.parse, k.nodeName = u, k.isFunction = v, k.isWindow = m, k.camelCase = g, k.type = f, k.now = Date.now, k.isNumeric = function (e) {
|
||
var t = k.type(e);
|
||
return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e))
|
||
}, k.trim = function (e) {
|
||
return null == e ? "" : (e + "").replace(Xt, "")
|
||
}, void 0 !== (tn = function () {
|
||
return k
|
||
}.apply(en, [])) && (Qt.exports = tn), L.jQuery), $t = L.$;
|
||
return k.noConflict = function (e) {
|
||
return L.$ === k && (L.$ = $t), e && L.jQuery === k && (L.jQuery = Zt), k
|
||
}, void 0 === I && (L.jQuery = L.$ = k), k
|
||
})
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(267), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
t.f = n(7)
|
||
}, function (e, t, n) {
|
||
var i = n(6), r = n(3), a = n(27), s = n(57), o = n(12).f;
|
||
e.exports = function (e) {
|
||
var t = r.Symbol || (r.Symbol = !a && i.Symbol || {});
|
||
"_" == e.charAt(0) || e in t || o(t, e, {value: s.f(e)})
|
||
}
|
||
}, function (e, t) {
|
||
t.f = Object.getOwnPropertySymbols
|
||
}, function (e, t, n) {
|
||
var i = n(37), r = n(28), a = n(19), s = n(45), o = n(18), u = n(69), d = Object.getOwnPropertyDescriptor;
|
||
t.f = n(14) ? d : function (e, t) {
|
||
if (e = a(e), t = s(t, !0), u) try {
|
||
return d(e, t)
|
||
} catch (e) {
|
||
}
|
||
if (o(e, t)) return r(!i.f.call(e, t), e[t])
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = "0x12f9", r = i + "0",
|
||
r = (t.ERR_COM_PARAM = r + "0001", t.ERR_COM_NOT_PLAYING = r + "0002", t.ERR_COM_NOT_PLAYBACK = r + "0003", t.ERR_COM_IS_MSE = r + "0004", t.ERR_COM_IS_JSDECODER = r + "0005", t.ERR_COM_LOAD_JSDECODER_ERROR = r + "0006", t.ERR_COM_URL_ERROR = r + "0008", t.ERR_COM_RECV_STREAM_TIMEOUT = r + "0009", t.ERR_COM_SETORGET_VOLUME_ERROR = r + "0010", t.ERR_COM_SETVOLUME_ERROR = r + "0011", t.ERR_COM_OPENSOUND_ERROR = r + "0012", i + "1"),
|
||
r = (t.ERR_STREAM_WS_ERROR = r + "0000", t.ERR_STREAM_OPEN_FAILED = r + "0010", t.ERR_STREAM_INTERRUPT = r + "0011", t.ERR_STREAM_CMD_FAILED = r + "0012", t.ERR_STREAM_SOUND_NOTHAS = r + "0014", t.ERR_STREAM_WS_UNFIND = r + "0015", t.ERR_STREAM_WS_UNCONNECT = r + "0016", t.ERR_STREAM_INTEL_UNSUPPORT = r + "0017", t.ERR_STREAM_TIMEOUT = r + "0018", t.ERR_STREAM_WSS_ERROR = r + "0019", t.ERR_PLAYBACK_FRAMEFORWARD = r + "0020", t.ERR_PLAYBACK_MAX_RATE = r + "0021", t.ERR_PLAYBACK_MIN_RATE = r + "0022", t.ERR_STREAM_WS_TIMEOUT = r + "0023", t.ERR_STREAM_TRANS = r + "0024", t.ERR_STREAM_PLAYBACK_END = r + "0025", t.ERR_STREAM_VIDEO_CODING = r + "0026", t.ERR_STREAM_CONNECT_CLOSED = r + "0027", t.ERR_STREAM_BUFER_ERROR = r + "0028", t.ERR_STREAM_DATA_ERROR = r + "0029", t.ERR_STREAM_LOCK_ERROR = r + "0030", t.ERR_STREAM_MSE_DATA_FULL = r + "0031", t.ERR_STREAM_CODEC_UNSUPPORTED = r + "0032", t.ERR_STREAM_JSDECODER_CODEC_UNSUPPORTED = r + "0033", i + "2");
|
||
t.ERR_PLAY_FILESYS_UNSUPPORT = r + "0000", t.ERR_PLAY_FILESYS_QUOTA = r + "0010", t.ERR_PLAY_FILESYS_REQUEST = r + "0011", t.ERR_PLAY_FILESYS_GETFILE = r + "0012", t.ERR_PLAY_FILESYS_CREATE = r + "0013", t.ERR_PLAY_FILESYS_WRITE = r + "0014", t.ERR_PLAY_FILESYS_ALREADY_WRITING = r + "0015", t.ERR_PLAY_FILESYS_NOT_WRITING = r + "0016", t.ERR_PLAY_FILESYS_NOT_SUPPORT_DSTTYPE = r + "0017", t.ERR_PLAY_FILESYS_FILENAME_ISNULL = r + "0018", t.ERR_CAPTURE_RAM = "0x12f930010", t.ERR_CAPTURE_NO_PREPARED = "0x12f930011", t.ERR_JSDECODER = i + "400", t.ERR_TALK = i + "500", t.ERR_TALK_GETUSERMEDIA_UNDEFINE = "0x12f950000", t.ERR_TALK_UNSUPPORT_AUDIOTYPE = "0x12f950001"
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function a() {
|
||
(0, i.default)(this, a), this._firstCheckpoint = 0, this._lastCheckpoint = 0, this._intervalBytes = 0, this._totalBytes = 0, this._lastSecondBytes = 0, self.performance && self.performance.now ? this._now = self.performance.now.bind(self.performance) : this._now = Date.now
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "reset", value: function () {
|
||
this._firstCheckpoint = this._lastCheckpoint = 0, this._totalBytes = this._intervalBytes = 0, this._lastSecondBytes = 0
|
||
}
|
||
}, {
|
||
key: "addBytes", value: function (e) {
|
||
0 === this._firstCheckpoint ? (this._firstCheckpoint = this._now(), this._lastCheckpoint = this._firstCheckpoint, this._intervalBytes += e, this._totalBytes += e) : this._now() - this._lastCheckpoint < 1e3 ? (this._intervalBytes += e, this._totalBytes += e) : (this._lastSecondBytes = this._intervalBytes, this._intervalBytes = e, this._totalBytes += e, this._lastCheckpoint = this._now())
|
||
}
|
||
}, {
|
||
key: "currentKBps", get: function () {
|
||
this.addBytes(0);
|
||
var e = (this._now() - this._lastCheckpoint) / 1e3;
|
||
return this._intervalBytes / (e = 0 == e ? 1 : e) / 1024
|
||
}
|
||
}, {
|
||
key: "lastSecondKBps", get: function () {
|
||
return this.addBytes(0), 0 !== this._lastSecondBytes ? this._lastSecondBytes / 1024 : 500 <= this._now() - this._lastCheckpoint ? this.currentKBps : 0
|
||
}
|
||
}, {
|
||
key: "averageKBps", get: function () {
|
||
var e = (this._now() - this._firstCheckpoint) / 1e3;
|
||
return this._totalBytes / e / 1024
|
||
}
|
||
}]), t.default = a
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.defaultConfig = void 0;
|
||
var n = n(20), i = (n = n) && n.__esModule ? n : {default: n};
|
||
t.createDefaultConfig = function () {
|
||
return (0, i.default)({}, r)
|
||
};
|
||
var r = t.defaultConfig = {
|
||
enableWorker: !1,
|
||
enableStashBuffer: !1,
|
||
stashInitialSize: void 0,
|
||
isLive: !1,
|
||
lazyLoad: !0,
|
||
lazyLoadMaxDuration: 180,
|
||
lazyLoadRecoverDuration: 30,
|
||
deferLoadAfterSourceOpen: !0,
|
||
autoCleanupMaxBackwardDuration: 180,
|
||
autoCleanupMinBackwardDuration: 120,
|
||
statisticsInfoReportInterval: 600,
|
||
fixAudioTimestampGap: !0,
|
||
accurateSeek: !1,
|
||
seekType: "range",
|
||
seekParamStart: "bstart",
|
||
seekParamEnd: "bend",
|
||
rangeLoadZeroStart: !1,
|
||
customSeekHandler: void 0,
|
||
reuseRedirectedURL: !1,
|
||
headers: void 0,
|
||
customLoader: void 0,
|
||
videoStateMonitorInterval: 1e3,
|
||
enableDurationMonitor: !1,
|
||
lowLatencyThreshold: 1.5,
|
||
highLatencyThreshold: 10,
|
||
decreaseDurationStep: .4,
|
||
enableVideoFrozenMonitor: !1,
|
||
frozenTimesThreshold: 5,
|
||
enableConstVideoViewSize: !1,
|
||
constVideoViewWidth: 1920,
|
||
constVideoViewHeight: 1080,
|
||
latencyDetectInterval: 6e4,
|
||
latencyDetectThreshold: 2,
|
||
latencyDetectAdjustStep: .1,
|
||
enableAudioGain: !0,
|
||
audioGainLevel: 2
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = o(n(1)), r = o(n(2)), a = o(n(10)), s = o(n(4));
|
||
|
||
function o(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(u, null, [{
|
||
key: "getConfig", value: function () {
|
||
return {
|
||
globalTag: s.default.GLOBAL_TAG,
|
||
forceGlobalTag: s.default.FORCE_GLOBAL_TAG,
|
||
enableVerbose: s.default.ENABLE_VERBOSE,
|
||
enableDebug: s.default.ENABLE_DEBUG,
|
||
enableInfo: s.default.ENABLE_INFO,
|
||
enableWarn: s.default.ENABLE_WARN,
|
||
enableError: s.default.ENABLE_ERROR,
|
||
enableCallback: s.default.ENABLE_CALLBACK
|
||
}
|
||
}
|
||
}, {
|
||
key: "applyConfig", value: function (e) {
|
||
s.default.GLOBAL_TAG = e.globalTag, s.default.FORCE_GLOBAL_TAG = e.forceGlobalTag, s.default.ENABLE_VERBOSE = e.enableVerbose, s.default.ENABLE_DEBUG = e.enableDebug, s.default.ENABLE_INFO = e.enableInfo, s.default.ENABLE_WARN = e.enableWarn, s.default.ENABLE_ERROR = e.enableError, s.default.ENABLE_CALLBACK = e.enableCallback
|
||
}
|
||
}, {
|
||
key: "_notifyChange", value: function () {
|
||
var e, t = u.emitter;
|
||
0 < t.listenerCount("change") && (e = u.getConfig(), t.emit("change", e))
|
||
}
|
||
}, {
|
||
key: "registerListener", value: function (e) {
|
||
u.emitter.addListener("change", e)
|
||
}
|
||
}, {
|
||
key: "removeListener", value: function (e) {
|
||
u.emitter.removeListener("change", e)
|
||
}
|
||
}, {
|
||
key: "addLogListener", value: function (e) {
|
||
s.default.emitter.addListener("log", e), 0 < s.default.emitter.listenerCount("log") && (s.default.ENABLE_CALLBACK = !0, u._notifyChange())
|
||
}
|
||
}, {
|
||
key: "removeLogListener", value: function (e) {
|
||
s.default.emitter.removeListener("log", e), 0 === s.default.emitter.listenerCount("log") && (s.default.ENABLE_CALLBACK = !1, u._notifyChange())
|
||
}
|
||
}, {
|
||
key: "forceGlobalTag", get: function () {
|
||
return s.default.FORCE_GLOBAL_TAG
|
||
}, set: function (e) {
|
||
s.default.FORCE_GLOBAL_TAG = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "globalTag", get: function () {
|
||
return s.default.GLOBAL_TAG
|
||
}, set: function (e) {
|
||
s.default.GLOBAL_TAG = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableAll", get: function () {
|
||
return s.default.ENABLE_VERBOSE && s.default.ENABLE_DEBUG && s.default.ENABLE_INFO && s.default.ENABLE_WARN && s.default.ENABLE_ERROR
|
||
}, set: function (e) {
|
||
s.default.ENABLE_VERBOSE = e, s.default.ENABLE_DEBUG = e, s.default.ENABLE_INFO = e, s.default.ENABLE_WARN = e, s.default.ENABLE_ERROR = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableDebug", get: function () {
|
||
return s.default.ENABLE_DEBUG
|
||
}, set: function (e) {
|
||
s.default.ENABLE_DEBUG = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableVerbose", get: function () {
|
||
return s.default.ENABLE_VERBOSE
|
||
}, set: function (e) {
|
||
s.default.ENABLE_VERBOSE = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableInfo", get: function () {
|
||
return s.default.ENABLE_INFO
|
||
}, set: function (e) {
|
||
s.default.ENABLE_INFO = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableWarn", get: function () {
|
||
return s.default.ENABLE_WARN
|
||
}, set: function (e) {
|
||
s.default.ENABLE_WARN = e, u._notifyChange()
|
||
}
|
||
}, {
|
||
key: "enableError", get: function () {
|
||
return s.default.ENABLE_ERROR
|
||
}, set: function (e) {
|
||
s.default.ENABLE_ERROR = e, u._notifyChange()
|
||
}
|
||
}]);
|
||
n = u;
|
||
|
||
function u() {
|
||
(0, i.default)(this, u)
|
||
}
|
||
|
||
n.emitter = new a.default, t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function a() {
|
||
(0, i.default)(this, a), this.mimeType = null, this.duration = null, this.hasAudio = null, this.hasVideo = null, this.audioCodec = null, this.videoCodec = null, this.audioDataRate = null, this.videoDataRate = null, this.audioSampleRate = null, this.audioChannelCount = null, this.width = null, this.height = null, this.fps = null, this.profile = null, this.level = null, this.refFrames = null, this.chromaFormat = null, this.sarNum = null, this.sarDen = null, this.metadata = null, this.segments = null, this.segmentCount = null, this.hasKeyframesIndex = null, this.keyframesIndex = null
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "isComplete", value: function () {
|
||
var e = !1 === this.hasAudio || !0 === this.hasAudio && null != this.audioCodec && null != this.audioSampleRate && null != this.audioChannelCount,
|
||
t = !1 === this.hasVideo || !0 === this.hasVideo && null != this.videoCodec && null != this.width && null != this.height && null != this.fps && null != this.profile && null != this.level && null != this.refFrames && null != this.chromaFormat && null != this.sarNum && null != this.sarDen;
|
||
return null != this.mimeType && null != this.duration && null != this.metadata && null != this.hasKeyframesIndex && e && t
|
||
}
|
||
}, {
|
||
key: "isSeekable", value: function () {
|
||
return !0 === this.hasKeyframesIndex
|
||
}
|
||
}, {
|
||
key: "getNearestKeyframe", value: function (e) {
|
||
if (null == this.keyframesIndex) return null;
|
||
var t = this.keyframesIndex, e = this._search(t.times, e);
|
||
return {index: e, milliseconds: t.times[e], fileposition: t.filepositions[e]}
|
||
}
|
||
}, {
|
||
key: "_search", value: function (e, t) {
|
||
var n, i = 0, r = e.length - 1, a = 0, s = r;
|
||
for (t < e[0] && (i = 0, a = s + 1); a <= s;) {
|
||
if ((n = a + Math.floor((s - a) / 2)) === r || t >= e[n] && t < e[n + 1]) {
|
||
i = n;
|
||
break
|
||
}
|
||
e[n] < t ? a = n + 1 : s = n - 1
|
||
}
|
||
return i
|
||
}
|
||
}]), t.default = a
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
t.default = {
|
||
OK: "OK",
|
||
FORMAT_ERROR: "FormatError",
|
||
FORMAT_UNSUPPORTED: "FormatUnsupported",
|
||
CODEC_UNSUPPORTED: "CodecUnsupported"
|
||
}
|
||
}, function (e, t) {
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
|
||
function y() {
|
||
return this
|
||
}
|
||
|
||
var v = n(27), g = n(8), M = n(70), L = n(17), S = n(29), k = n(238), b = n(36), w = n(74),
|
||
D = n(7)("iterator"), T = !([].keys && "next" in [].keys()), E = "values";
|
||
e.exports = function (e, t, n, i, r, a, s) {
|
||
k(n, t, i);
|
||
|
||
function o(e) {
|
||
if (!T && e in c) return c[e];
|
||
switch (e) {
|
||
case"keys":
|
||
case E:
|
||
return function () {
|
||
return new n(this, e)
|
||
}
|
||
}
|
||
return function () {
|
||
return new n(this, e)
|
||
}
|
||
}
|
||
|
||
var u, d, i = t + " Iterator", l = r == E, h = !1, c = e.prototype,
|
||
_ = c[D] || c["@@iterator"] || r && c[r], f = _ || o(r), m = r ? l ? o("entries") : f : void 0,
|
||
p = "Array" == t && c.entries || _;
|
||
if (p && (p = w(p.call(new e))) !== Object.prototype && p.next && (b(p, i, !0), v || "function" == typeof p[D] || L(p, D, y)), l && _ && _.name !== E && (h = !0, f = function () {
|
||
return _.call(this)
|
||
}), v && !s || !T && !h && c[D] || L(c, D, f), S[t] = f, S[i] = y, r) if (u = {
|
||
values: l ? f : o(E),
|
||
keys: a ? f : o("keys"),
|
||
entries: m
|
||
}, s) for (d in u) d in c || M(c, d, u[d]); else g(g.P + g.F * (T || h), t, u);
|
||
return u
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = !n(14) && !n(23)(function () {
|
||
return 7 != Object.defineProperty(n(44)("div"), "a", {
|
||
get: function () {
|
||
return 7
|
||
}
|
||
}).a
|
||
})
|
||
}, function (e, t, n) {
|
||
e.exports = n(17)
|
||
}, function (e, t, n) {
|
||
var s = n(18), o = n(19), u = n(240)(!1), d = n(48)("IE_PROTO");
|
||
e.exports = function (e, t) {
|
||
var n, i = o(e), r = 0, a = [];
|
||
for (n in i) n != d && s(i, n) && a.push(n);
|
||
for (; t.length > r;) !s(i, n = t[r++]) || ~u(a, n) || a.push(n);
|
||
return a
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(31);
|
||
e.exports = Object("z").propertyIsEnumerable(0) ? Object : function (e) {
|
||
return "String" == i(e) ? e.split("") : Object(e)
|
||
}
|
||
}, function (e, t, n) {
|
||
n = n(6).document;
|
||
e.exports = n && n.documentElement
|
||
}, function (e, t, n) {
|
||
var i = n(18), r = n(24), a = n(48)("IE_PROTO"), s = Object.prototype;
|
||
e.exports = Object.getPrototypeOf || function (e) {
|
||
return e = r(e), i(e, a) ? e[a] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? s : null
|
||
}
|
||
}, function (e, t, n) {
|
||
n(242);
|
||
for (var i = n(6), r = n(17), a = n(29), s = n(7)("toStringTag"), o = "CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","), u = 0; u < o.length; u++) {
|
||
var d = o[u], l = i[d], l = l && l.prototype;
|
||
l && !l[s] && r(l, s, d), a[d] = a.Array
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(31), r = n(7)("toStringTag"), a = "Arguments" == i(function () {
|
||
return arguments
|
||
}());
|
||
e.exports = function (e) {
|
||
var t;
|
||
return void 0 === e ? "Undefined" : null === e ? "Null" : "string" == typeof (t = function (e, t) {
|
||
try {
|
||
return e[t]
|
||
} catch (e) {
|
||
}
|
||
}(e = Object(e), r)) ? t : a ? i(e) : "Object" == (t = i(e)) && "function" == typeof e.callee ? "Arguments" : t
|
||
}
|
||
}, function (e, t, n) {
|
||
var r = n(13);
|
||
e.exports = function (t, e, n, i) {
|
||
try {
|
||
return i ? e(r(n)[0], n[1]) : e(n)
|
||
} catch (e) {
|
||
i = t.return;
|
||
throw void 0 !== i && r(i.call(t)), e
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(29), r = n(7)("iterator"), a = Array.prototype;
|
||
e.exports = function (e) {
|
||
return void 0 !== e && (i.Array === e || a[r] === e)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(76), r = n(7)("iterator"), a = n(29);
|
||
e.exports = n(3).getIteratorMethod = function (e) {
|
||
if (null != e) return e[r] || e["@@iterator"] || a[i(e)]
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(13), r = n(34), a = n(7)("species");
|
||
e.exports = function (e, t) {
|
||
var e = i(e).constructor;
|
||
return void 0 === e || null == (e = i(e)[a]) ? t : r(e)
|
||
}
|
||
}, function (e, t, n) {
|
||
function i() {
|
||
var e, t = +this;
|
||
y.hasOwnProperty(t) && (e = y[t], delete y[t], e())
|
||
}
|
||
|
||
function r(e) {
|
||
i.call(e.data)
|
||
}
|
||
|
||
var a, s = n(22), o = n(248), u = n(73), d = n(44), l = n(6), h = l.process, c = l.setImmediate,
|
||
_ = l.clearImmediate, f = l.MessageChannel, m = l.Dispatch, p = 0, y = {}, v = "onreadystatechange";
|
||
c && _ || (c = function (e) {
|
||
for (var t = [], n = 1; n < arguments.length;) t.push(arguments[n++]);
|
||
return y[++p] = function () {
|
||
o("function" == typeof e ? e : Function(e), t)
|
||
}, a(p), p
|
||
}, _ = function (e) {
|
||
delete y[e]
|
||
}, "process" == n(31)(h) ? a = function (e) {
|
||
h.nextTick(s(i, e, 1))
|
||
} : m && m.now ? a = function (e) {
|
||
m.now(s(i, e, 1))
|
||
} : f ? (f = (n = new f).port2, n.port1.onmessage = r, a = s(f.postMessage, f, 1)) : l.addEventListener && "function" == typeof postMessage && !l.importScripts ? (a = function (e) {
|
||
l.postMessage(e + "", "*")
|
||
}, l.addEventListener("message", r, !1)) : a = v in d("script") ? function (e) {
|
||
u.appendChild(d("script"))[v] = function () {
|
||
u.removeChild(this), i.call(e)
|
||
}
|
||
} : function (e) {
|
||
setTimeout(s(i, e, 1), 0)
|
||
}), e.exports = {set: c, clear: _}
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
try {
|
||
return {e: !1, v: e()}
|
||
} catch (e) {
|
||
return {e: !0, v: e}
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(13), r = n(16), a = n(51);
|
||
e.exports = function (e, t) {
|
||
if (i(e), r(t) && t.constructor === e) return t;
|
||
e = a.f(e);
|
||
return (0, e.resolve)(t), e.promise
|
||
}
|
||
}, function (e, t, n) {
|
||
var a = n(7)("iterator"), s = !1;
|
||
try {
|
||
var i = [7][a]();
|
||
i.return = function () {
|
||
s = !0
|
||
}, Array.from(i, function () {
|
||
throw 2
|
||
})
|
||
} catch (e) {
|
||
}
|
||
e.exports = function (e, t) {
|
||
if (!t && !s) return !1;
|
||
var n = !1;
|
||
try {
|
||
var i = [7], r = i[a]();
|
||
r.next = function () {
|
||
return {done: n = !0}
|
||
}, i[a] = function () {
|
||
return r
|
||
}, e(i)
|
||
} catch (e) {
|
||
}
|
||
return n
|
||
}
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(255), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.oTool = void 0;
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "$", value: function (e) {
|
||
var t = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, n = /^(?:\s*(<[\w\W]+>)[^>]*|.([\w-]*))$/;
|
||
if (t.test(e)) return t = t.exec(e), document.getElementById(t[2]);
|
||
if (n.test(e)) {
|
||
for (var i = n.exec(e), r = document.getElementsByTagName("*"), a = [], s = 0, o = r.length; s < o; s++) r[s].className.match(new RegExp("(\\s|^)" + i[2] + "(\\s|$)")) && a.push(r[s]);
|
||
return a
|
||
}
|
||
}
|
||
}, {
|
||
key: "dateFormat", value: function (e, t) {
|
||
var n, i = {
|
||
"M+": e.getMonth() + 1,
|
||
"d+": e.getDate(),
|
||
"h+": e.getHours(),
|
||
"m+": e.getMinutes(),
|
||
"s+": e.getSeconds(),
|
||
"q+": Math.floor((e.getMonth() + 3) / 3),
|
||
S: e.getMilliseconds()
|
||
};
|
||
for (n in /(y+)/.test(t) && (t = t.replace(RegExp.$1, (e.getFullYear() + "").substr(4 - RegExp.$1.length))), i) new RegExp("(" + n + ")").test(t) && (t = t.replace(RegExp.$1, 1 === RegExp.$1.length ? i[n] : ("00" + i[n]).substr(("" + i[n]).length)));
|
||
return t
|
||
}
|
||
}, {
|
||
key: "downloadFile", value: function (e, t) {
|
||
var n = e,
|
||
e = (e instanceof Blob || e instanceof File || (n = new Blob([e])), window.URL.createObjectURL(n)),
|
||
n = window.document.createElement("a"),
|
||
e = (n.href = e, n.download = t, document.createEvent("MouseEvents"));
|
||
e.initEvent("click", !0, !0), n.dispatchEvent(e)
|
||
}
|
||
}, {
|
||
key: "createxmlDoc", value: function () {
|
||
for (var t, e = ["MSXML2.DOMDocument", "MSXML2.DOMDocument.5.0", "MSXML2.DOMDocument.4.0", "MSXML2.DOMDocument.3.0", "Microsoft.XmlDom"], n = 0, i = e.length; n < i; n++) try {
|
||
t = new ActiveXObject(e[n]);
|
||
break
|
||
} catch (e) {
|
||
t = document.implementation.createDocument("", "", null);
|
||
break
|
||
}
|
||
return t.async = "false", t
|
||
}
|
||
}, {
|
||
key: "parseXmlFromStr", value: function (e) {
|
||
if (null === e || "" === e) return null;
|
||
var t = this.createxmlDoc();
|
||
return "Netscape" === navigator.appName || "Opera" === navigator.appName ? t = (new DOMParser).parseFromString(e, "text/xml") : t.loadXML(e), t
|
||
}
|
||
}, {
|
||
key: "encode", value: function (e) {
|
||
var t, n, i, r, a, s, o = "", u = 0;
|
||
for (e = this._utf8_encode(e); u < e.length;) i = (t = e.charCodeAt(u++)) >> 2, r = (3 & t) << 4 | (t = e.charCodeAt(u++)) >> 4, a = (15 & t) << 2 | (n = e.charCodeAt(u++)) >> 6, s = 63 & n, isNaN(t) ? a = s = 64 : isNaN(n) && (s = 64), o = o + this._keyStr.charAt(i) + this._keyStr.charAt(r) + this._keyStr.charAt(a) + this._keyStr.charAt(s);
|
||
return o
|
||
}
|
||
}, {
|
||
key: "decode", value: function (e) {
|
||
var t, n, i, r, a, s, o = "", u = 0;
|
||
for (e = e.replace(/[^A-Za-z0-9+/=]/g, ""); u < e.length;) i = this._keyStr.indexOf(e.charAt(u++)), t = (15 & (r = this._keyStr.indexOf(e.charAt(u++)))) << 4 | (a = this._keyStr.indexOf(e.charAt(u++))) >> 2, n = (3 & a) << 6 | (s = this._keyStr.indexOf(e.charAt(u++))), o += String.fromCharCode(i << 2 | r >> 4), 64 !== a && (o += String.fromCharCode(t)), 64 !== s && (o += String.fromCharCode(n));
|
||
return o = this._utf8_decode(o)
|
||
}
|
||
}, {
|
||
key: "_utf8_encode", value: function (e) {
|
||
e = e.replace(/\r\n/g, "\n");
|
||
for (var t = "", n = 0; n < e.length; n++) {
|
||
var i = e.charCodeAt(n);
|
||
i < 128 ? t += String.fromCharCode(i) : t = 127 < i && i < 2048 ? (t += String.fromCharCode(i >> 6 | 192)) + String.fromCharCode(63 & i | 128) : (t = (t += String.fromCharCode(i >> 12 | 224)) + String.fromCharCode(i >> 6 & 63 | 128)) + String.fromCharCode(63 & i | 128)
|
||
}
|
||
return t
|
||
}
|
||
}, {
|
||
key: "_utf8_decode", value: function (e) {
|
||
for (var t, n, i = "", r = 0, a = 0; r < e.length;) (n = e.charCodeAt(r)) < 128 ? (i += String.fromCharCode(n), r++) : 191 < n && n < 224 ? (a = e.charCodeAt(r + 1), i += String.fromCharCode((31 & n) << 6 | 63 & a), r += 2) : (a = e.charCodeAt(r + 1), t = e.charCodeAt(r + 2), i += String.fromCharCode((15 & n) << 12 | (63 & a) << 6 | 63 & t), r += 3);
|
||
return i
|
||
}
|
||
}, {
|
||
key: "isFirefox", value: function () {
|
||
var e = !1, t = navigator.userAgent.toLowerCase(), n = "";
|
||
return t.match(/firefox\/([\d.]+)/) && (n = t.match(/firefox\/([\d.]+)/)[1], -1 < parseInt(n.split(".")[0], 10) && (e = !0)), e
|
||
}
|
||
}, {
|
||
key: "isSafari", value: function () {
|
||
var e = !1, t = navigator.userAgent.toLowerCase(), n = "";
|
||
return t.match(/version\/([\d.]+).safari./) && (n = t.match(/version\/([\d.]+).safari./)[1], -1 < parseInt(n.split(".")[0], 10) && (e = !0)), e
|
||
}
|
||
}, {
|
||
key: "isEdge", value: function () {
|
||
return -1 < navigator.userAgent.toLowerCase().indexOf("edge")
|
||
}
|
||
}, {
|
||
key: "dataURLtoBlob", value: function (e) {
|
||
for (var e = e.split(","), t = e[0].match(/:(.*?);/)[1], n = atob(e[1]), i = n.length, r = new Uint8Array(i); i--;) r[i] = n.charCodeAt(i);
|
||
return new Blob([r], {type: t})
|
||
}
|
||
}, {
|
||
key: "intToHexString", value: function (e) {
|
||
e = e.toString(16);
|
||
return e = 1 === e.length ? "0" + e : e
|
||
}
|
||
}]);
|
||
n = a;
|
||
|
||
function a() {
|
||
(0, i.default)(this, a), this._keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
|
||
}
|
||
|
||
t.oTool = new n
|
||
}, function (e, t, n) {
|
||
var i = n(263), n = n(264), r = n;
|
||
r.v1 = i, r.v4 = n, e.exports = r
|
||
}, function (e, t) {
|
||
var n, i,
|
||
r = "undefined" != typeof crypto && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || "undefined" != typeof msCrypto && "function" == typeof window.msCrypto.getRandomValues && msCrypto.getRandomValues.bind(msCrypto);
|
||
r ? (n = new Uint8Array(16), e.exports = function () {
|
||
return r(n), n
|
||
}) : (i = new Array(16), e.exports = function () {
|
||
for (var e, t = 0; t < 16; t++) 0 == (3 & t) && (e = 4294967296 * Math.random()), i[t] = e >>> ((3 & t) << 3) & 255;
|
||
return i
|
||
})
|
||
}, function (e, t) {
|
||
for (var i = [], n = 0; n < 256; ++n) i[n] = (n + 256).toString(16).substr(1);
|
||
e.exports = function (e, t) {
|
||
var t = t || 0, n = i;
|
||
return [n[e[t++]], n[e[t++]], n[e[t++]], n[e[t++]], "-", n[e[t++]], n[e[t++]], "-", n[e[t++]], n[e[t++]], "-", n[e[t++]], n[e[t++]], "-", n[e[t++]], n[e[t++]], n[e[t++]], n[e[t++]], n[e[t++]], n[e[+t]]].join("")
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(71), r = n(50).concat("length", "prototype");
|
||
t.f = Object.getOwnPropertyNames || function (e) {
|
||
return i(e, r)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = s(n(1)), r = s(n(2)), a = s(n(0));
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(o, [{
|
||
key: "D", value: function () {
|
||
var e;
|
||
this._config.openDebug && (e = console).debug.apply(e, ["[" + this.TAG + "] %c" + (0, a.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c", "color: blue", "color: black"].concat(Array.prototype.slice.call(arguments)))
|
||
}
|
||
}, {
|
||
key: "I", value: function () {
|
||
var e;
|
||
(e = console).info.apply(e, ["[" + this.TAG + "] %c" + (0, a.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c", "color: blue", "color: black"].concat(Array.prototype.slice.call(arguments)))
|
||
}
|
||
}, {
|
||
key: "W", value: function () {
|
||
var e;
|
||
(e = console).warm.apply(e, ["[" + this.TAG + "] %c" + (0, a.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c", "color: blue", "color: black"].concat(Array.prototype.slice.call(arguments)))
|
||
}
|
||
}, {
|
||
key: "E", value: function () {
|
||
var e;
|
||
(e = console).error.apply(e, ["[" + this.TAG + "] %c" + (0, a.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c", "color: blue", "color: black"].concat(Array.prototype.slice.call(arguments)))
|
||
}
|
||
}]);
|
||
n = o;
|
||
|
||
function o(e) {
|
||
(0, i.default)(this, o), this._bus = e, this.TAG = e.TAG || "Debug", this._config = e._config || e.options || {}
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("af", {
|
||
months: "Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),
|
||
monthsShort: "Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),
|
||
weekdays: "Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),
|
||
weekdaysShort: "Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),
|
||
weekdaysMin: "So_Ma_Di_Wo_Do_Vr_Sa".split("_"),
|
||
meridiemParse: /vm|nm/i,
|
||
isPM: function (e) {
|
||
return /^nm$/i.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return n ? "vm" : "VM"; else return n ? "nm" : "NM"
|
||
},
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Vandag om] LT",
|
||
nextDay: "[Môre om] LT",
|
||
nextWeek: "dddd [om] LT",
|
||
lastDay: "[Gister om] LT",
|
||
lastWeek: "[Laas] dddd [om] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "oor %s",
|
||
past: "%s gelede",
|
||
s: "'n paar sekondes",
|
||
ss: "%d sekondes",
|
||
m: "'n minuut",
|
||
mm: "%d minute",
|
||
h: "'n uur",
|
||
hh: "%d ure",
|
||
d: "'n dag",
|
||
dd: "%d dae",
|
||
M: "'n maand",
|
||
MM: "%d maande",
|
||
y: "'n jaar",
|
||
yy: "%d jaar"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
|
||
ordinal: function (e) {
|
||
return e + (e === 1 || e === 8 || e >= 20 ? "ste" : "de")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "١", 2: "٢", 3: "٣", 4: "٤", 5: "٥", 6: "٦", 7: "٧", 8: "٨", 9: "٩", 0: "٠"}, n = {
|
||
"١": "1",
|
||
"٢": "2",
|
||
"٣": "3",
|
||
"٤": "4",
|
||
"٥": "5",
|
||
"٦": "6",
|
||
"٧": "7",
|
||
"٨": "8",
|
||
"٩": "9",
|
||
"٠": "0"
|
||
}, o = function (e) {
|
||
return e === 0 ? 0 : e === 1 ? 1 : e === 2 ? 2 : e % 100 >= 3 && e % 100 <= 10 ? 3 : e % 100 >= 11 ? 4 : 5
|
||
}, u = {
|
||
s: ["أقل من ثانية", "ثانية واحدة", ["ثانيتان", "ثانيتين"], "%d ثوان", "%d ثانية", "%d ثانية"],
|
||
m: ["أقل من دقيقة", "دقيقة واحدة", ["دقيقتان", "دقيقتين"], "%d دقائق", "%d دقيقة", "%d دقيقة"],
|
||
h: ["أقل من ساعة", "ساعة واحدة", ["ساعتان", "ساعتين"], "%d ساعات", "%d ساعة", "%d ساعة"],
|
||
d: ["أقل من يوم", "يوم واحد", ["يومان", "يومين"], "%d أيام", "%d يومًا", "%d يوم"],
|
||
M: ["أقل من شهر", "شهر واحد", ["شهران", "شهرين"], "%d أشهر", "%d شهرا", "%d شهر"],
|
||
y: ["أقل من عام", "عام واحد", ["عامان", "عامين"], "%d أعوام", "%d عامًا", "%d عام"]
|
||
}, i = function (s) {
|
||
return function (e, t, n, i) {
|
||
var r = o(e), a = u[s][o(e)];
|
||
if (r === 2) a = a[t ? 0 : 1];
|
||
return a.replace(/%d/i, e)
|
||
}
|
||
},
|
||
r = ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"],
|
||
a;
|
||
e.defineLocale("ar", {
|
||
months: r,
|
||
monthsShort: r,
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "D/M/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ص|م/,
|
||
isPM: function (e) {
|
||
return "م" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ص"; else return "م"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم عند الساعة] LT",
|
||
nextDay: "[غدًا عند الساعة] LT",
|
||
nextWeek: "dddd [عند الساعة] LT",
|
||
lastDay: "[أمس عند الساعة] LT",
|
||
lastWeek: "dddd [عند الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "بعد %s",
|
||
past: "منذ %s",
|
||
s: i("s"),
|
||
ss: i("s"),
|
||
m: i("m"),
|
||
mm: i("m"),
|
||
h: i("h"),
|
||
hh: i("h"),
|
||
d: i("d"),
|
||
dd: i("d"),
|
||
M: i("M"),
|
||
MM: i("M"),
|
||
y: i("y"),
|
||
yy: i("y")
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (e) {
|
||
return n[e]
|
||
}).replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
}).replace(/,/g, "،")
|
||
},
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var o = function (e) {
|
||
return e === 0 ? 0 : e === 1 ? 1 : e === 2 ? 2 : e % 100 >= 3 && e % 100 <= 10 ? 3 : e % 100 >= 11 ? 4 : 5
|
||
}, u = {
|
||
s: ["أقل من ثانية", "ثانية واحدة", ["ثانيتان", "ثانيتين"], "%d ثوان", "%d ثانية", "%d ثانية"],
|
||
m: ["أقل من دقيقة", "دقيقة واحدة", ["دقيقتان", "دقيقتين"], "%d دقائق", "%d دقيقة", "%d دقيقة"],
|
||
h: ["أقل من ساعة", "ساعة واحدة", ["ساعتان", "ساعتين"], "%d ساعات", "%d ساعة", "%d ساعة"],
|
||
d: ["أقل من يوم", "يوم واحد", ["يومان", "يومين"], "%d أيام", "%d يومًا", "%d يوم"],
|
||
M: ["أقل من شهر", "شهر واحد", ["شهران", "شهرين"], "%d أشهر", "%d شهرا", "%d شهر"],
|
||
y: ["أقل من عام", "عام واحد", ["عامان", "عامين"], "%d أعوام", "%d عامًا", "%d عام"]
|
||
}, t = function (s) {
|
||
return function (e, t, n, i) {
|
||
var r = o(e), a = u[s][o(e)];
|
||
if (r === 2) a = a[t ? 0 : 1];
|
||
return a.replace(/%d/i, e)
|
||
}
|
||
},
|
||
n = ["جانفي", "فيفري", "مارس", "أفريل", "ماي", "جوان", "جويلية", "أوت", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"],
|
||
i;
|
||
e.defineLocale("ar-dz", {
|
||
months: n,
|
||
monthsShort: n,
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "D/M/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ص|م/,
|
||
isPM: function (e) {
|
||
return "م" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ص"; else return "م"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم عند الساعة] LT",
|
||
nextDay: "[غدًا عند الساعة] LT",
|
||
nextWeek: "dddd [عند الساعة] LT",
|
||
lastDay: "[أمس عند الساعة] LT",
|
||
lastWeek: "dddd [عند الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "بعد %s",
|
||
past: "منذ %s",
|
||
s: t("s"),
|
||
ss: t("s"),
|
||
m: t("m"),
|
||
mm: t("m"),
|
||
h: t("h"),
|
||
hh: t("h"),
|
||
d: t("d"),
|
||
dd: t("d"),
|
||
M: t("M"),
|
||
MM: t("M"),
|
||
y: t("y"),
|
||
yy: t("y")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/,/g, "،")
|
||
},
|
||
week: {dow: 0, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ar-kw", {
|
||
months: "يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),
|
||
monthsShort: "يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),
|
||
weekdays: "الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم على الساعة] LT",
|
||
nextDay: "[غدا على الساعة] LT",
|
||
nextWeek: "dddd [على الساعة] LT",
|
||
lastDay: "[أمس على الساعة] LT",
|
||
lastWeek: "dddd [على الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "في %s",
|
||
past: "منذ %s",
|
||
s: "ثوان",
|
||
ss: "%d ثانية",
|
||
m: "دقيقة",
|
||
mm: "%d دقائق",
|
||
h: "ساعة",
|
||
hh: "%d ساعات",
|
||
d: "يوم",
|
||
dd: "%d أيام",
|
||
M: "شهر",
|
||
MM: "%d أشهر",
|
||
y: "سنة",
|
||
yy: "%d سنوات"
|
||
},
|
||
week: {dow: 0, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "1", 2: "2", 3: "3", 4: "4", 5: "5", 6: "6", 7: "7", 8: "8", 9: "9", 0: "0"}, o = function (e) {
|
||
return e === 0 ? 0 : e === 1 ? 1 : e === 2 ? 2 : e % 100 >= 3 && e % 100 <= 10 ? 3 : e % 100 >= 11 ? 4 : 5
|
||
}, u = {
|
||
s: ["أقل من ثانية", "ثانية واحدة", ["ثانيتان", "ثانيتين"], "%d ثوان", "%d ثانية", "%d ثانية"],
|
||
m: ["أقل من دقيقة", "دقيقة واحدة", ["دقيقتان", "دقيقتين"], "%d دقائق", "%d دقيقة", "%d دقيقة"],
|
||
h: ["أقل من ساعة", "ساعة واحدة", ["ساعتان", "ساعتين"], "%d ساعات", "%d ساعة", "%d ساعة"],
|
||
d: ["أقل من يوم", "يوم واحد", ["يومان", "يومين"], "%d أيام", "%d يومًا", "%d يوم"],
|
||
M: ["أقل من شهر", "شهر واحد", ["شهران", "شهرين"], "%d أشهر", "%d شهرا", "%d شهر"],
|
||
y: ["أقل من عام", "عام واحد", ["عامان", "عامين"], "%d أعوام", "%d عامًا", "%d عام"]
|
||
}, n = function (s) {
|
||
return function (e, t, n, i) {
|
||
var r = o(e), a = u[s][o(e)];
|
||
if (r === 2) a = a[t ? 0 : 1];
|
||
return a.replace(/%d/i, e)
|
||
}
|
||
},
|
||
i = ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"],
|
||
r;
|
||
e.defineLocale("ar-ly", {
|
||
months: i,
|
||
monthsShort: i,
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "D/M/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ص|م/,
|
||
isPM: function (e) {
|
||
return "م" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ص"; else return "م"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم عند الساعة] LT",
|
||
nextDay: "[غدًا عند الساعة] LT",
|
||
nextWeek: "dddd [عند الساعة] LT",
|
||
lastDay: "[أمس عند الساعة] LT",
|
||
lastWeek: "dddd [عند الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "بعد %s",
|
||
past: "منذ %s",
|
||
s: n("s"),
|
||
ss: n("s"),
|
||
m: n("m"),
|
||
mm: n("m"),
|
||
h: n("h"),
|
||
hh: n("h"),
|
||
d: n("d"),
|
||
dd: n("d"),
|
||
M: n("M"),
|
||
MM: n("M"),
|
||
y: n("y"),
|
||
yy: n("y")
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
}).replace(/,/g, "،")
|
||
},
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ar-ma", {
|
||
months: "يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),
|
||
monthsShort: "يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر".split("_"),
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم على الساعة] LT",
|
||
nextDay: "[غدا على الساعة] LT",
|
||
nextWeek: "dddd [على الساعة] LT",
|
||
lastDay: "[أمس على الساعة] LT",
|
||
lastWeek: "dddd [على الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "في %s",
|
||
past: "منذ %s",
|
||
s: "ثوان",
|
||
ss: "%d ثانية",
|
||
m: "دقيقة",
|
||
mm: "%d دقائق",
|
||
h: "ساعة",
|
||
hh: "%d ساعات",
|
||
d: "يوم",
|
||
dd: "%d أيام",
|
||
M: "شهر",
|
||
MM: "%d أشهر",
|
||
y: "سنة",
|
||
yy: "%d سنوات"
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "١", 2: "٢", 3: "٣", 4: "٤", 5: "٥", 6: "٦", 7: "٧", 8: "٨", 9: "٩", 0: "٠"}, n = {
|
||
"١": "1",
|
||
"٢": "2",
|
||
"٣": "3",
|
||
"٤": "4",
|
||
"٥": "5",
|
||
"٦": "6",
|
||
"٧": "7",
|
||
"٨": "8",
|
||
"٩": "9",
|
||
"٠": "0"
|
||
}, i;
|
||
e.defineLocale("ar-sa", {
|
||
months: "يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),
|
||
monthsShort: "يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ص|م/,
|
||
isPM: function (e) {
|
||
return "م" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ص"; else return "م"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم على الساعة] LT",
|
||
nextDay: "[غدا على الساعة] LT",
|
||
nextWeek: "dddd [على الساعة] LT",
|
||
lastDay: "[أمس على الساعة] LT",
|
||
lastWeek: "dddd [على الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "في %s",
|
||
past: "منذ %s",
|
||
s: "ثوان",
|
||
ss: "%d ثانية",
|
||
m: "دقيقة",
|
||
mm: "%d دقائق",
|
||
h: "ساعة",
|
||
hh: "%d ساعات",
|
||
d: "يوم",
|
||
dd: "%d أيام",
|
||
M: "شهر",
|
||
MM: "%d أشهر",
|
||
y: "سنة",
|
||
yy: "%d سنوات"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (e) {
|
||
return n[e]
|
||
}).replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
}).replace(/,/g, "،")
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ar-tn", {
|
||
months: "جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),
|
||
monthsShort: "جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر".split("_"),
|
||
weekdays: "الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت".split("_"),
|
||
weekdaysShort: "أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت".split("_"),
|
||
weekdaysMin: "ح_ن_ث_ر_خ_ج_س".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اليوم على الساعة] LT",
|
||
nextDay: "[غدا على الساعة] LT",
|
||
nextWeek: "dddd [على الساعة] LT",
|
||
lastDay: "[أمس على الساعة] LT",
|
||
lastWeek: "dddd [على الساعة] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "في %s",
|
||
past: "منذ %s",
|
||
s: "ثوان",
|
||
ss: "%d ثانية",
|
||
m: "دقيقة",
|
||
mm: "%d دقائق",
|
||
h: "ساعة",
|
||
hh: "%d ساعات",
|
||
d: "يوم",
|
||
dd: "%d أيام",
|
||
M: "شهر",
|
||
MM: "%d أشهر",
|
||
y: "سنة",
|
||
yy: "%d سنوات"
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var r = {
|
||
1: "-inci",
|
||
5: "-inci",
|
||
8: "-inci",
|
||
70: "-inci",
|
||
80: "-inci",
|
||
2: "-nci",
|
||
7: "-nci",
|
||
20: "-nci",
|
||
50: "-nci",
|
||
3: "-üncü",
|
||
4: "-üncü",
|
||
100: "-üncü",
|
||
6: "-ncı",
|
||
9: "-uncu",
|
||
10: "-uncu",
|
||
30: "-uncu",
|
||
60: "-ıncı",
|
||
90: "-ıncı"
|
||
}, t;
|
||
e.defineLocale("az", {
|
||
months: "yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),
|
||
monthsShort: "yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),
|
||
weekdays: "Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə".split("_"),
|
||
weekdaysShort: "Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən".split("_"),
|
||
weekdaysMin: "Bz_BE_ÇA_Çə_CA_Cü_Şə".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[bugün saat] LT",
|
||
nextDay: "[sabah saat] LT",
|
||
nextWeek: "[gələn həftə] dddd [saat] LT",
|
||
lastDay: "[dünən] LT",
|
||
lastWeek: "[keçən həftə] dddd [saat] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s sonra",
|
||
past: "%s əvvəl",
|
||
s: "bir neçə saniyə",
|
||
ss: "%d saniyə",
|
||
m: "bir dəqiqə",
|
||
mm: "%d dəqiqə",
|
||
h: "bir saat",
|
||
hh: "%d saat",
|
||
d: "bir gün",
|
||
dd: "%d gün",
|
||
M: "bir ay",
|
||
MM: "%d ay",
|
||
y: "bir il",
|
||
yy: "%d il"
|
||
},
|
||
meridiemParse: /gecə|səhər|gündüz|axşam/,
|
||
isPM: function (e) {
|
||
return /^(gündüz|axşam)$/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "gecə"; else if (e < 12) return "səhər"; else if (e < 17) return "gündüz"; else return "axşam"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/,
|
||
ordinal: function (e) {
|
||
if (e === 0) return e + "-ıncı";
|
||
var t = e % 10, n = e % 100 - t, i = e >= 100 ? 100 : null;
|
||
return e + (r[t] || r[n] || r[i])
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function r(e, t) {
|
||
var n = e.split("_");
|
||
return t % 10 === 1 && t % 100 !== 11 ? n[0] : t % 10 >= 2 && t % 10 <= 4 && (t % 100 < 10 || t % 100 >= 20) ? n[1] : n[2]
|
||
}
|
||
|
||
function t(e, t, n) {
|
||
var i = {
|
||
ss: t ? "секунда_секунды_секунд" : "секунду_секунды_секунд",
|
||
mm: t ? "хвіліна_хвіліны_хвілін" : "хвіліну_хвіліны_хвілін",
|
||
hh: t ? "гадзіна_гадзіны_гадзін" : "гадзіну_гадзіны_гадзін",
|
||
dd: "дзень_дні_дзён",
|
||
MM: "месяц_месяцы_месяцаў",
|
||
yy: "год_гады_гадоў"
|
||
};
|
||
if (n === "m") return t ? "хвіліна" : "хвіліну"; else if (n === "h") return t ? "гадзіна" : "гадзіну"; else return e + " " + r(i[n], +e)
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("be", {
|
||
months: {
|
||
format: "студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня".split("_"),
|
||
standalone: "студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань".split("_")
|
||
},
|
||
monthsShort: "студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж".split("_"),
|
||
weekdays: {
|
||
format: "нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу".split("_"),
|
||
standalone: "нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота".split("_"),
|
||
isFormat: /\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/
|
||
},
|
||
weekdaysShort: "нд_пн_ат_ср_чц_пт_сб".split("_"),
|
||
weekdaysMin: "нд_пн_ат_ср_чц_пт_сб".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY г.",
|
||
LLL: "D MMMM YYYY г., HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY г., HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Сёння ў] LT",
|
||
nextDay: "[Заўтра ў] LT",
|
||
lastDay: "[Учора ў] LT",
|
||
nextWeek: function () {
|
||
return "[У] dddd [ў] LT"
|
||
},
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
case 3:
|
||
case 5:
|
||
case 6:
|
||
return "[У мінулую] dddd [ў] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
return "[У мінулы] dddd [ў] LT"
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "праз %s",
|
||
past: "%s таму",
|
||
s: "некалькі секунд",
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: "дзень",
|
||
dd: t,
|
||
M: "месяц",
|
||
MM: t,
|
||
y: "год",
|
||
yy: t
|
||
},
|
||
meridiemParse: /ночы|раніцы|дня|вечара/,
|
||
isPM: function (e) {
|
||
return /^(дня|вечара)$/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "ночы"; else if (e < 12) return "раніцы"; else if (e < 17) return "дня"; else return "вечара"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(і|ы|га)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"M":
|
||
case"d":
|
||
case"DDD":
|
||
case"w":
|
||
case"W":
|
||
return (e % 10 === 2 || e % 10 === 3) && e % 100 !== 12 && e % 100 !== 13 ? e + "-і" : e + "-ы";
|
||
case"D":
|
||
return e + "-га";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("bg", {
|
||
months: "януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември".split("_"),
|
||
monthsShort: "яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек".split("_"),
|
||
weekdays: "неделя_понеделник_вторник_сряда_четвъртък_петък_събота".split("_"),
|
||
weekdaysShort: "нед_пон_вто_сря_чет_пет_съб".split("_"),
|
||
weekdaysMin: "нд_пн_вт_ср_чт_пт_сб".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "D.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY H:mm",
|
||
LLLL: "dddd, D MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Днес в] LT",
|
||
nextDay: "[Утре в] LT",
|
||
nextWeek: "dddd [в] LT",
|
||
lastDay: "[Вчера в] LT",
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
case 3:
|
||
case 6:
|
||
return "[Миналата] dddd [в] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[Миналия] dddd [в] LT"
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "след %s",
|
||
past: "преди %s",
|
||
s: "няколко секунди",
|
||
ss: "%d секунди",
|
||
m: "минута",
|
||
mm: "%d минути",
|
||
h: "час",
|
||
hh: "%d часа",
|
||
d: "ден",
|
||
dd: "%d дена",
|
||
w: "седмица",
|
||
ww: "%d седмици",
|
||
M: "месец",
|
||
MM: "%d месеца",
|
||
y: "година",
|
||
yy: "%d години"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10, n = e % 100;
|
||
if (e === 0) return e + "-ев"; else if (n === 0) return e + "-ен"; else if (n > 10 && n < 20) return e + "-ти"; else if (t === 1) return e + "-ви"; else if (t === 2) return e + "-ри"; else if (t === 7 || t === 8) return e + "-ми"; else return e + "-ти"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("bm", {
|
||
months: "Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo".split("_"),
|
||
monthsShort: "Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des".split("_"),
|
||
weekdays: "Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),
|
||
weekdaysShort: "Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib".split("_"),
|
||
weekdaysMin: "Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "MMMM [tile] D [san] YYYY",
|
||
LLL: "MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm",
|
||
LLLL: "dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Bi lɛrɛ] LT",
|
||
nextDay: "[Sini lɛrɛ] LT",
|
||
nextWeek: "dddd [don lɛrɛ] LT",
|
||
lastDay: "[Kunu lɛrɛ] LT",
|
||
lastWeek: "dddd [tɛmɛnen lɛrɛ] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s kɔnɔ",
|
||
past: "a bɛ %s bɔ",
|
||
s: "sanga dama dama",
|
||
ss: "sekondi %d",
|
||
m: "miniti kelen",
|
||
mm: "miniti %d",
|
||
h: "lɛrɛ kelen",
|
||
hh: "lɛrɛ %d",
|
||
d: "tile kelen",
|
||
dd: "tile %d",
|
||
M: "kalo kelen",
|
||
MM: "kalo %d",
|
||
y: "san kelen",
|
||
yy: "san %d"
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "১", 2: "২", 3: "৩", 4: "৪", 5: "৫", 6: "৬", 7: "৭", 8: "৮", 9: "৯", 0: "০"}, n = {
|
||
"১": "1",
|
||
"২": "2",
|
||
"৩": "3",
|
||
"৪": "4",
|
||
"৫": "5",
|
||
"৬": "6",
|
||
"৭": "7",
|
||
"৮": "8",
|
||
"৯": "9",
|
||
"০": "0"
|
||
}, i;
|
||
e.defineLocale("bn", {
|
||
months: "জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),
|
||
monthsShort: "জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),
|
||
weekdays: "রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),
|
||
weekdaysShort: "রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),
|
||
weekdaysMin: "রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm সময়",
|
||
LTS: "A h:mm:ss সময়",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm সময়",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm সময়"
|
||
},
|
||
calendar: {
|
||
sameDay: "[আজ] LT",
|
||
nextDay: "[আগামীকাল] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[গতকাল] LT",
|
||
lastWeek: "[গত] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s পরে",
|
||
past: "%s আগে",
|
||
s: "কয়েক সেকেন্ড",
|
||
ss: "%d সেকেন্ড",
|
||
m: "এক মিনিট",
|
||
mm: "%d মিনিট",
|
||
h: "এক ঘন্টা",
|
||
hh: "%d ঘন্টা",
|
||
d: "এক দিন",
|
||
dd: "%d দিন",
|
||
M: "এক মাস",
|
||
MM: "%d মাস",
|
||
y: "এক বছর",
|
||
yy: "%d বছর"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[১২৩৪৫৬৭৮৯০]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "রাত" && e >= 4 || t === "দুপুর" && e < 5 || t === "বিকাল") return e + 12; else return e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "রাত"; else if (e < 10) return "সকাল"; else if (e < 17) return "দুপুর"; else if (e < 20) return "বিকাল"; else return "রাত"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "১", 2: "২", 3: "৩", 4: "৪", 5: "৫", 6: "৬", 7: "৭", 8: "৮", 9: "৯", 0: "০"}, n = {
|
||
"১": "1",
|
||
"২": "2",
|
||
"৩": "3",
|
||
"৪": "4",
|
||
"৫": "5",
|
||
"৬": "6",
|
||
"৭": "7",
|
||
"৮": "8",
|
||
"৯": "9",
|
||
"০": "0"
|
||
}, i;
|
||
e.defineLocale("bn-bd", {
|
||
months: "জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর".split("_"),
|
||
monthsShort: "জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে".split("_"),
|
||
weekdays: "রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার".split("_"),
|
||
weekdaysShort: "রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি".split("_"),
|
||
weekdaysMin: "রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm সময়",
|
||
LTS: "A h:mm:ss সময়",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm সময়",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm সময়"
|
||
},
|
||
calendar: {
|
||
sameDay: "[আজ] LT",
|
||
nextDay: "[আগামীকাল] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[গতকাল] LT",
|
||
lastWeek: "[গত] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s পরে",
|
||
past: "%s আগে",
|
||
s: "কয়েক সেকেন্ড",
|
||
ss: "%d সেকেন্ড",
|
||
m: "এক মিনিট",
|
||
mm: "%d মিনিট",
|
||
h: "এক ঘন্টা",
|
||
hh: "%d ঘন্টা",
|
||
d: "এক দিন",
|
||
dd: "%d দিন",
|
||
M: "এক মাস",
|
||
MM: "%d মাস",
|
||
y: "এক বছর",
|
||
yy: "%d বছর"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[১২৩৪৫৬৭৮৯০]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "রাত") return e < 4 ? e : e + 12; else if (t === "ভোর") return e; else if (t === "সকাল") return e; else if (t === "দুপুর") return e >= 3 ? e : e + 12; else if (t === "বিকাল") return e + 12; else if (t === "সন্ধ্যা") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "রাত"; else if (e < 6) return "ভোর"; else if (e < 12) return "সকাল"; else if (e < 15) return "দুপুর"; else if (e < 18) return "বিকাল"; else if (e < 20) return "সন্ধ্যা"; else return "রাত"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "༡", 2: "༢", 3: "༣", 4: "༤", 5: "༥", 6: "༦", 7: "༧", 8: "༨", 9: "༩", 0: "༠"}, n = {
|
||
"༡": "1",
|
||
"༢": "2",
|
||
"༣": "3",
|
||
"༤": "4",
|
||
"༥": "5",
|
||
"༦": "6",
|
||
"༧": "7",
|
||
"༨": "8",
|
||
"༩": "9",
|
||
"༠": "0"
|
||
}, i;
|
||
e.defineLocale("bo", {
|
||
months: "ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ".split("_"),
|
||
monthsShort: "ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12".split("_"),
|
||
monthsShortRegex: /^(ཟླ་\d{1,2})/,
|
||
monthsParseExact: true,
|
||
weekdays: "གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་".split("_"),
|
||
weekdaysShort: "ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་".split("_"),
|
||
weekdaysMin: "ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm",
|
||
LTS: "A h:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[དི་རིང] LT",
|
||
nextDay: "[སང་ཉིན] LT",
|
||
nextWeek: "[བདུན་ཕྲག་རྗེས་མ], LT",
|
||
lastDay: "[ཁ་སང] LT",
|
||
lastWeek: "[བདུན་ཕྲག་མཐའ་མ] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s ལ་",
|
||
past: "%s སྔན་ལ",
|
||
s: "ལམ་སང",
|
||
ss: "%d སྐར་ཆ།",
|
||
m: "སྐར་མ་གཅིག",
|
||
mm: "%d སྐར་མ",
|
||
h: "ཆུ་ཚོད་གཅིག",
|
||
hh: "%d ཆུ་ཚོད",
|
||
d: "ཉིན་གཅིག",
|
||
dd: "%d ཉིན་",
|
||
M: "ཟླ་བ་གཅིག",
|
||
MM: "%d ཟླ་བ",
|
||
y: "ལོ་གཅིག",
|
||
yy: "%d ལོ"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "མཚན་མོ" && e >= 4 || t === "ཉིན་གུང" && e < 5 || t === "དགོང་དག") return e + 12; else return e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "མཚན་མོ"; else if (e < 10) return "ཞོགས་ཀས"; else if (e < 17) return "ཉིན་གུང"; else if (e < 20) return "དགོང་དག"; else return "མཚན་མོ"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n) {
|
||
var i = {mm: "munutenn", MM: "miz", dd: "devezh"};
|
||
return e + " " + r(i[n], e)
|
||
}
|
||
|
||
function n(e) {
|
||
switch (i(e)) {
|
||
case 1:
|
||
case 3:
|
||
case 4:
|
||
case 5:
|
||
case 9:
|
||
return e + " bloaz";
|
||
default:
|
||
return e + " vloaz"
|
||
}
|
||
}
|
||
|
||
function i(e) {
|
||
if (e > 9) return i(e % 10);
|
||
return e
|
||
}
|
||
|
||
function r(e, t) {
|
||
if (t === 2) return a(e);
|
||
return e
|
||
}
|
||
|
||
function a(e) {
|
||
var t = {m: "v", b: "v", d: "z"};
|
||
if (t[e.charAt(0)] === undefined) return e;
|
||
return t[e.charAt(0)] + e.substring(1)
|
||
}
|
||
|
||
var s = [/^gen/i, /^c[ʼ\']hwe/i, /^meu/i, /^ebr/i, /^mae/i, /^(mez|eve)/i, /^gou/i, /^eos/i, /^gwe/i, /^her/i, /^du/i, /^ker/i],
|
||
o = /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,
|
||
u = /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,
|
||
d = /^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,
|
||
l = [/^sul/i, /^lun/i, /^meurzh/i, /^merc[ʼ\']her/i, /^yaou/i, /^gwener/i, /^sadorn/i],
|
||
h = [/^Sul/i, /^Lun/i, /^Meu/i, /^Mer/i, /^Yao/i, /^Gwe/i, /^Sad/i],
|
||
c = [/^Su/i, /^Lu/i, /^Me([^r]|$)/i, /^Mer/i, /^Ya/i, /^Gw/i, /^Sa/i], _;
|
||
e.defineLocale("br", {
|
||
months: "Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),
|
||
monthsShort: "Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),
|
||
weekdays: "Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn".split("_"),
|
||
weekdaysShort: "Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),
|
||
weekdaysMin: "Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),
|
||
weekdaysParse: c,
|
||
fullWeekdaysParse: l,
|
||
shortWeekdaysParse: h,
|
||
minWeekdaysParse: c,
|
||
monthsRegex: o,
|
||
monthsShortRegex: o,
|
||
monthsStrictRegex: u,
|
||
monthsShortStrictRegex: d,
|
||
monthsParse: s,
|
||
longMonthsParse: s,
|
||
shortMonthsParse: s,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [a viz] MMMM YYYY",
|
||
LLL: "D [a viz] MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D [a viz] MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hiziv da] LT",
|
||
nextDay: "[Warcʼhoazh da] LT",
|
||
nextWeek: "dddd [da] LT",
|
||
lastDay: "[Decʼh da] LT",
|
||
lastWeek: "dddd [paset da] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "a-benn %s",
|
||
past: "%s ʼzo",
|
||
s: "un nebeud segondennoù",
|
||
ss: "%d eilenn",
|
||
m: "ur vunutenn",
|
||
mm: t,
|
||
h: "un eur",
|
||
hh: "%d eur",
|
||
d: "un devezh",
|
||
dd: t,
|
||
M: "ur miz",
|
||
MM: t,
|
||
y: "ur bloaz",
|
||
yy: n
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(añ|vet)/,
|
||
ordinal: function (e) {
|
||
var t = e === 1 ? "añ" : "vet";
|
||
return e + t
|
||
},
|
||
week: {dow: 1, doy: 4},
|
||
meridiemParse: /a.m.|g.m./,
|
||
isPM: function (e) {
|
||
return e === "g.m."
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
return e < 12 ? "a.m." : "g.m."
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n) {
|
||
var i = e + " ";
|
||
switch (n) {
|
||
case"ss":
|
||
if (e === 1) i += "sekunda"; else if (e === 2 || e === 3 || e === 4) i += "sekunde"; else i += "sekundi";
|
||
return i;
|
||
case"m":
|
||
return t ? "jedna minuta" : "jedne minute";
|
||
case"mm":
|
||
if (e === 1) i += "minuta"; else if (e === 2 || e === 3 || e === 4) i += "minute"; else i += "minuta";
|
||
return i;
|
||
case"h":
|
||
return t ? "jedan sat" : "jednog sata";
|
||
case"hh":
|
||
if (e === 1) i += "sat"; else if (e === 2 || e === 3 || e === 4) i += "sata"; else i += "sati";
|
||
return i;
|
||
case"dd":
|
||
if (e === 1) i += "dan"; else i += "dana";
|
||
return i;
|
||
case"MM":
|
||
if (e === 1) i += "mjesec"; else if (e === 2 || e === 3 || e === 4) i += "mjeseca"; else i += "mjeseci";
|
||
return i;
|
||
case"yy":
|
||
if (e === 1) i += "godina"; else if (e === 2 || e === 3 || e === 4) i += "godine"; else i += "godina";
|
||
return i
|
||
}
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("bs", {
|
||
months: "januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar".split("_"),
|
||
monthsShort: "jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),
|
||
weekdaysShort: "ned._pon._uto._sri._čet._pet._sub.".split("_"),
|
||
weekdaysMin: "ne_po_ut_sr_če_pe_su".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[danas u] LT", nextDay: "[sutra u] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[u] [nedjelju] [u] LT";
|
||
case 3:
|
||
return "[u] [srijedu] [u] LT";
|
||
case 6:
|
||
return "[u] [subotu] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[u] dddd [u] LT"
|
||
}
|
||
}, lastDay: "[jučer u] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
case 3:
|
||
return "[prošlu] dddd [u] LT";
|
||
case 6:
|
||
return "[prošle] [subote] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[prošli] dddd [u] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "prije %s",
|
||
s: "par sekundi",
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: "dan",
|
||
dd: t,
|
||
M: "mjesec",
|
||
MM: t,
|
||
y: "godinu",
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ca", {
|
||
months: {
|
||
standalone: "gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),
|
||
format: "de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split("_"),
|
||
isFormat: /D[oD]?(\s)+MMMM/
|
||
},
|
||
monthsShort: "gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),
|
||
weekdaysShort: "dg._dl._dt._dc._dj._dv._ds.".split("_"),
|
||
weekdaysMin: "dg_dl_dt_dc_dj_dv_ds".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM [de] YYYY",
|
||
ll: "D MMM YYYY",
|
||
LLL: "D MMMM [de] YYYY [a les] H:mm",
|
||
lll: "D MMM YYYY, H:mm",
|
||
LLLL: "dddd D MMMM [de] YYYY [a les] H:mm",
|
||
llll: "ddd D MMM YYYY, H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[avui a " + (this.hours() !== 1 ? "les" : "la") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[demà a " + (this.hours() !== 1 ? "les" : "la") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a " + (this.hours() !== 1 ? "les" : "la") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[ahir a " + (this.hours() !== 1 ? "les" : "la") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[el] dddd [passat a " + (this.hours() !== 1 ? "les" : "la") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "d'aquí %s",
|
||
past: "fa %s",
|
||
s: "uns segons",
|
||
ss: "%d segons",
|
||
m: "un minut",
|
||
mm: "%d minuts",
|
||
h: "una hora",
|
||
hh: "%d hores",
|
||
d: "un dia",
|
||
dd: "%d dies",
|
||
M: "un mes",
|
||
MM: "%d mesos",
|
||
y: "un any",
|
||
yy: "%d anys"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/,
|
||
ordinal: function (e, t) {
|
||
var n = e === 1 ? "r" : e === 2 ? "n" : e === 3 ? "r" : e === 4 ? "t" : "è";
|
||
if (t === "w" || t === "W") n = "a";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {
|
||
format: "leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec".split("_"),
|
||
standalone: "ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince".split("_")
|
||
}, n = "led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro".split("_"),
|
||
i = [/^led/i, /^úno/i, /^bře/i, /^dub/i, /^kvě/i, /^(čvn|červen$|června)/i, /^(čvc|červenec|července)/i, /^srp/i, /^zář/i, /^říj/i, /^lis/i, /^pro/i],
|
||
r = /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,
|
||
a;
|
||
|
||
function s(e) {
|
||
return e > 1 && e < 5 && ~~(e / 10) !== 1
|
||
}
|
||
|
||
function o(e, t, n, i) {
|
||
var r = e + " ";
|
||
switch (n) {
|
||
case"s":
|
||
return t || i ? "pár sekund" : "pár sekundami";
|
||
case"ss":
|
||
if (t || i) return r + (s(e) ? "sekundy" : "sekund"); else return r + "sekundami";
|
||
case"m":
|
||
return t ? "minuta" : i ? "minutu" : "minutou";
|
||
case"mm":
|
||
if (t || i) return r + (s(e) ? "minuty" : "minut"); else return r + "minutami";
|
||
case"h":
|
||
return t ? "hodina" : i ? "hodinu" : "hodinou";
|
||
case"hh":
|
||
if (t || i) return r + (s(e) ? "hodiny" : "hodin"); else return r + "hodinami";
|
||
case"d":
|
||
return t || i ? "den" : "dnem";
|
||
case"dd":
|
||
if (t || i) return r + (s(e) ? "dny" : "dní"); else return r + "dny";
|
||
case"M":
|
||
return t || i ? "měsíc" : "měsícem";
|
||
case"MM":
|
||
if (t || i) return r + (s(e) ? "měsíce" : "měsíců"); else return r + "měsíci";
|
||
case"y":
|
||
return t || i ? "rok" : "rokem";
|
||
case"yy":
|
||
if (t || i) return r + (s(e) ? "roky" : "let"); else return r + "lety"
|
||
}
|
||
}
|
||
|
||
e.defineLocale("cs", {
|
||
months: t,
|
||
monthsShort: n,
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i,
|
||
monthsShortStrictRegex: /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i,
|
||
monthsParse: i,
|
||
longMonthsParse: i,
|
||
shortMonthsParse: i,
|
||
weekdays: "neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota".split("_"),
|
||
weekdaysShort: "ne_po_út_st_čt_pá_so".split("_"),
|
||
weekdaysMin: "ne_po_út_st_čt_pá_so".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd D. MMMM YYYY H:mm",
|
||
l: "D. M. YYYY"
|
||
},
|
||
calendar: {
|
||
sameDay: "[dnes v] LT", nextDay: "[zítra v] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[v neděli v] LT";
|
||
case 1:
|
||
case 2:
|
||
return "[v] dddd [v] LT";
|
||
case 3:
|
||
return "[ve středu v] LT";
|
||
case 4:
|
||
return "[ve čtvrtek v] LT";
|
||
case 5:
|
||
return "[v pátek v] LT";
|
||
case 6:
|
||
return "[v sobotu v] LT"
|
||
}
|
||
}, lastDay: "[včera v] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[minulou neděli v] LT";
|
||
case 1:
|
||
case 2:
|
||
return "[minulé] dddd [v] LT";
|
||
case 3:
|
||
return "[minulou středu v] LT";
|
||
case 4:
|
||
case 5:
|
||
return "[minulý] dddd [v] LT";
|
||
case 6:
|
||
return "[minulou sobotu v] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "před %s",
|
||
s: o,
|
||
ss: o,
|
||
m: o,
|
||
mm: o,
|
||
h: o,
|
||
hh: o,
|
||
d: o,
|
||
dd: o,
|
||
M: o,
|
||
MM: o,
|
||
y: o,
|
||
yy: o
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("cv", {
|
||
months: "кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав".split("_"),
|
||
monthsShort: "кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш".split("_"),
|
||
weekdays: "вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун".split("_"),
|
||
weekdaysShort: "выр_тун_ытл_юн_кӗҫ_эрн_шӑм".split("_"),
|
||
weekdaysMin: "вр_тн_ыт_юн_кҫ_эр_шм".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD-MM-YYYY",
|
||
LL: "YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]",
|
||
LLL: "YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm",
|
||
LLLL: "dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Паян] LT [сехетре]",
|
||
nextDay: "[Ыран] LT [сехетре]",
|
||
lastDay: "[Ӗнер] LT [сехетре]",
|
||
nextWeek: "[Ҫитес] dddd LT [сехетре]",
|
||
lastWeek: "[Иртнӗ] dddd LT [сехетре]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: function (e) {
|
||
var t = /сехет$/i.exec(e) ? "рен" : /ҫул$/i.exec(e) ? "тан" : "ран";
|
||
return e + t
|
||
},
|
||
past: "%s каялла",
|
||
s: "пӗр-ик ҫеккунт",
|
||
ss: "%d ҫеккунт",
|
||
m: "пӗр минут",
|
||
mm: "%d минут",
|
||
h: "пӗр сехет",
|
||
hh: "%d сехет",
|
||
d: "пӗр кун",
|
||
dd: "%d кун",
|
||
M: "пӗр уйӑх",
|
||
MM: "%d уйӑх",
|
||
y: "пӗр ҫул",
|
||
yy: "%d ҫул"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-мӗш/,
|
||
ordinal: "%d-мӗш",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("cy", {
|
||
months: "Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr".split("_"),
|
||
monthsShort: "Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag".split("_"),
|
||
weekdays: "Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn".split("_"),
|
||
weekdaysShort: "Sul_Llun_Maw_Mer_Iau_Gwe_Sad".split("_"),
|
||
weekdaysMin: "Su_Ll_Ma_Me_Ia_Gw_Sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Heddiw am] LT",
|
||
nextDay: "[Yfory am] LT",
|
||
nextWeek: "dddd [am] LT",
|
||
lastDay: "[Ddoe am] LT",
|
||
lastWeek: "dddd [diwethaf am] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "mewn %s",
|
||
past: "%s yn ôl",
|
||
s: "ychydig eiliadau",
|
||
ss: "%d eiliad",
|
||
m: "munud",
|
||
mm: "%d munud",
|
||
h: "awr",
|
||
hh: "%d awr",
|
||
d: "diwrnod",
|
||
dd: "%d diwrnod",
|
||
M: "mis",
|
||
MM: "%d mis",
|
||
y: "blwyddyn",
|
||
yy: "%d flynedd"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/,
|
||
ordinal: function (e) {
|
||
var t = e, n = "",
|
||
i = ["", "af", "il", "ydd", "ydd", "ed", "ed", "ed", "fed", "fed", "fed", "eg", "fed", "eg", "eg", "fed", "eg", "eg", "fed", "eg", "fed"];
|
||
if (t > 20) if (t === 40 || t === 50 || t === 60 || t === 80 || t === 100) n = "fed"; else n = "ain"; else if (t > 0) n = i[t];
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("da", {
|
||
months: "januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december".split("_"),
|
||
monthsShort: "jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),
|
||
weekdays: "søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),
|
||
weekdaysShort: "søn_man_tir_ons_tor_fre_lør".split("_"),
|
||
weekdaysMin: "sø_ma_ti_on_to_fr_lø".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY HH:mm",
|
||
LLLL: "dddd [d.] D. MMMM YYYY [kl.] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[i dag kl.] LT",
|
||
nextDay: "[i morgen kl.] LT",
|
||
nextWeek: "på dddd [kl.] LT",
|
||
lastDay: "[i går kl.] LT",
|
||
lastWeek: "[i] dddd[s kl.] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "om %s",
|
||
past: "%s siden",
|
||
s: "få sekunder",
|
||
ss: "%d sekunder",
|
||
m: "et minut",
|
||
mm: "%d minutter",
|
||
h: "en time",
|
||
hh: "%d timer",
|
||
d: "en dag",
|
||
dd: "%d dage",
|
||
M: "en måned",
|
||
MM: "%d måneder",
|
||
y: "et år",
|
||
yy: "%d år"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
m: ["eine Minute", "einer Minute"],
|
||
h: ["eine Stunde", "einer Stunde"],
|
||
d: ["ein Tag", "einem Tag"],
|
||
dd: [e + " Tage", e + " Tagen"],
|
||
w: ["eine Woche", "einer Woche"],
|
||
M: ["ein Monat", "einem Monat"],
|
||
MM: [e + " Monate", e + " Monaten"],
|
||
y: ["ein Jahr", "einem Jahr"],
|
||
yy: [e + " Jahre", e + " Jahren"]
|
||
};
|
||
return t ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("de", {
|
||
months: "Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),
|
||
monthsShort: "Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),
|
||
weekdaysShort: "So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),
|
||
weekdaysMin: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D. MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[heute um] LT [Uhr]",
|
||
sameElse: "L",
|
||
nextDay: "[morgen um] LT [Uhr]",
|
||
nextWeek: "dddd [um] LT [Uhr]",
|
||
lastDay: "[gestern um] LT [Uhr]",
|
||
lastWeek: "[letzten] dddd [um] LT [Uhr]"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "vor %s",
|
||
s: "ein paar Sekunden",
|
||
ss: "%d Sekunden",
|
||
m: t,
|
||
mm: "%d Minuten",
|
||
h: t,
|
||
hh: "%d Stunden",
|
||
d: t,
|
||
dd: t,
|
||
w: t,
|
||
ww: "%d Wochen",
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
m: ["eine Minute", "einer Minute"],
|
||
h: ["eine Stunde", "einer Stunde"],
|
||
d: ["ein Tag", "einem Tag"],
|
||
dd: [e + " Tage", e + " Tagen"],
|
||
w: ["eine Woche", "einer Woche"],
|
||
M: ["ein Monat", "einem Monat"],
|
||
MM: [e + " Monate", e + " Monaten"],
|
||
y: ["ein Jahr", "einem Jahr"],
|
||
yy: [e + " Jahre", e + " Jahren"]
|
||
};
|
||
return t ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("de-at", {
|
||
months: "Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),
|
||
monthsShort: "Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),
|
||
weekdaysShort: "So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),
|
||
weekdaysMin: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D. MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[heute um] LT [Uhr]",
|
||
sameElse: "L",
|
||
nextDay: "[morgen um] LT [Uhr]",
|
||
nextWeek: "dddd [um] LT [Uhr]",
|
||
lastDay: "[gestern um] LT [Uhr]",
|
||
lastWeek: "[letzten] dddd [um] LT [Uhr]"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "vor %s",
|
||
s: "ein paar Sekunden",
|
||
ss: "%d Sekunden",
|
||
m: t,
|
||
mm: "%d Minuten",
|
||
h: t,
|
||
hh: "%d Stunden",
|
||
d: t,
|
||
dd: t,
|
||
w: t,
|
||
ww: "%d Wochen",
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
m: ["eine Minute", "einer Minute"],
|
||
h: ["eine Stunde", "einer Stunde"],
|
||
d: ["ein Tag", "einem Tag"],
|
||
dd: [e + " Tage", e + " Tagen"],
|
||
w: ["eine Woche", "einer Woche"],
|
||
M: ["ein Monat", "einem Monat"],
|
||
MM: [e + " Monate", e + " Monaten"],
|
||
y: ["ein Jahr", "einem Jahr"],
|
||
yy: [e + " Jahre", e + " Jahren"]
|
||
};
|
||
return t ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("de-ch", {
|
||
months: "Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),
|
||
monthsShort: "Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),
|
||
weekdaysShort: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"),
|
||
weekdaysMin: "So_Mo_Di_Mi_Do_Fr_Sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D. MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[heute um] LT [Uhr]",
|
||
sameElse: "L",
|
||
nextDay: "[morgen um] LT [Uhr]",
|
||
nextWeek: "dddd [um] LT [Uhr]",
|
||
lastDay: "[gestern um] LT [Uhr]",
|
||
lastWeek: "[letzten] dddd [um] LT [Uhr]"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "vor %s",
|
||
s: "ein paar Sekunden",
|
||
ss: "%d Sekunden",
|
||
m: t,
|
||
mm: "%d Minuten",
|
||
h: t,
|
||
hh: "%d Stunden",
|
||
d: t,
|
||
dd: t,
|
||
w: t,
|
||
ww: "%d Wochen",
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = ["ޖެނުއަރީ", "ފެބްރުއަރީ", "މާރިޗު", "އޭޕްރީލު", "މޭ", "ޖޫން", "ޖުލައި", "އޯގަސްޓު", "ސެޕްޓެމްބަރު", "އޮކްޓޯބަރު", "ނޮވެމްބަރު", "ޑިސެމްބަރު"],
|
||
n = ["އާދިއްތަ", "ހޯމަ", "އަންގާރަ", "ބުދަ", "ބުރާސްފަތި", "ހުކުރު", "ހޮނިހިރު"], i;
|
||
e.defineLocale("dv", {
|
||
months: t,
|
||
monthsShort: t,
|
||
weekdays: n,
|
||
weekdaysShort: n,
|
||
weekdaysMin: "އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "D/M/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /މކ|މފ/,
|
||
isPM: function (e) {
|
||
return "މފ" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "މކ"; else return "މފ"
|
||
},
|
||
calendar: {
|
||
sameDay: "[މިއަދު] LT",
|
||
nextDay: "[މާދަމާ] LT",
|
||
nextWeek: "dddd LT",
|
||
lastDay: "[އިއްޔެ] LT",
|
||
lastWeek: "[ފާއިތުވި] dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "ތެރޭގައި %s",
|
||
past: "ކުރިން %s",
|
||
s: "ސިކުންތުކޮޅެއް",
|
||
ss: "d% ސިކުންތު",
|
||
m: "މިނިޓެއް",
|
||
mm: "މިނިޓު %d",
|
||
h: "ގަޑިއިރެއް",
|
||
hh: "ގަޑިއިރު %d",
|
||
d: "ދުވަހެއް",
|
||
dd: "ދުވަސް %d",
|
||
M: "މަހެއް",
|
||
MM: "މަސް %d",
|
||
y: "އަހަރެއް",
|
||
yy: "އަހަރު %d"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/,/g, "،")
|
||
},
|
||
week: {dow: 7, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function r(e) {
|
||
return typeof Function !== "undefined" && e instanceof Function || Object.prototype.toString.call(e) === "[object Function]"
|
||
}
|
||
|
||
var t;
|
||
e.defineLocale("el", {
|
||
monthsNominativeEl: "Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος".split("_"),
|
||
monthsGenitiveEl: "Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου".split("_"),
|
||
months: function (e, t) {
|
||
if (!e) return this._monthsNominativeEl; else if (typeof t === "string" && /D/.test(t.substring(0, t.indexOf("MMMM")))) return this._monthsGenitiveEl[e.month()]; else return this._monthsNominativeEl[e.month()]
|
||
},
|
||
monthsShort: "Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ".split("_"),
|
||
weekdays: "Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο".split("_"),
|
||
weekdaysShort: "Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ".split("_"),
|
||
weekdaysMin: "Κυ_Δε_Τρ_Τε_Πε_Πα_Σα".split("_"),
|
||
meridiem: function (e, t, n) {
|
||
if (e > 11) return n ? "μμ" : "ΜΜ"; else return n ? "πμ" : "ΠΜ"
|
||
},
|
||
isPM: function (e) {
|
||
return (e + "").toLowerCase()[0] === "μ"
|
||
},
|
||
meridiemParse: /[ΠΜ]\.?Μ?\.?/i,
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendarEl: {
|
||
sameDay: "[Σήμερα {}] LT",
|
||
nextDay: "[Αύριο {}] LT",
|
||
nextWeek: "dddd [{}] LT",
|
||
lastDay: "[Χθες {}] LT",
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 6:
|
||
return "[το προηγούμενο] dddd [{}] LT";
|
||
default:
|
||
return "[την προηγούμενη] dddd [{}] LT"
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
calendar: function (e, t) {
|
||
var n = this._calendarEl[e], i = t && t.hours();
|
||
if (r(n)) n = n.apply(t);
|
||
return n.replace("{}", i % 12 === 1 ? "στη" : "στις")
|
||
},
|
||
relativeTime: {
|
||
future: "σε %s",
|
||
past: "%s πριν",
|
||
s: "λίγα δευτερόλεπτα",
|
||
ss: "%d δευτερόλεπτα",
|
||
m: "ένα λεπτό",
|
||
mm: "%d λεπτά",
|
||
h: "μία ώρα",
|
||
hh: "%d ώρες",
|
||
d: "μία μέρα",
|
||
dd: "%d μέρες",
|
||
M: "ένας μήνας",
|
||
MM: "%d μήνες",
|
||
y: "ένας χρόνος",
|
||
yy: "%d χρόνια"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}η/,
|
||
ordinal: "%dη",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-au", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 0, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-ca", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "YYYY-MM-DD",
|
||
LL: "MMMM D, YYYY",
|
||
LLL: "MMMM D, YYYY h:mm A",
|
||
LLLL: "dddd, MMMM D, YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-gb", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-ie", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-il", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-in", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-nz", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("en-sg", {
|
||
months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),
|
||
weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
|
||
weekdaysShort: "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),
|
||
weekdaysMin: "Su_Mo_Tu_We_Th_Fr_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Today at] LT",
|
||
nextDay: "[Tomorrow at] LT",
|
||
nextWeek: "dddd [at] LT",
|
||
lastDay: "[Yesterday at] LT",
|
||
lastWeek: "[Last] dddd [at] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "in %s",
|
||
past: "%s ago",
|
||
s: "a few seconds",
|
||
ss: "%d 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"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("eo", {
|
||
months: "januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro".split("_"),
|
||
monthsShort: "jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec".split("_"),
|
||
weekdays: "dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato".split("_"),
|
||
weekdaysShort: "dim_lun_mard_merk_ĵaŭ_ven_sab".split("_"),
|
||
weekdaysMin: "di_lu_ma_me_ĵa_ve_sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "[la] D[-an de] MMMM, YYYY",
|
||
LLL: "[la] D[-an de] MMMM, YYYY HH:mm",
|
||
LLLL: "dddd[n], [la] D[-an de] MMMM, YYYY HH:mm",
|
||
llll: "ddd, [la] D[-an de] MMM, YYYY HH:mm"
|
||
},
|
||
meridiemParse: /[ap]\.t\.m/i,
|
||
isPM: function (e) {
|
||
return e.charAt(0).toLowerCase() === "p"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e > 11) return n ? "p.t.m." : "P.T.M."; else return n ? "a.t.m." : "A.T.M."
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hodiaŭ je] LT",
|
||
nextDay: "[Morgaŭ je] LT",
|
||
nextWeek: "dddd[n je] LT",
|
||
lastDay: "[Hieraŭ je] LT",
|
||
lastWeek: "[pasintan] dddd[n je] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "post %s",
|
||
past: "antaŭ %s",
|
||
s: "kelkaj sekundoj",
|
||
ss: "%d sekundoj",
|
||
m: "unu minuto",
|
||
mm: "%d minutoj",
|
||
h: "unu horo",
|
||
hh: "%d horoj",
|
||
d: "unu tago",
|
||
dd: "%d tagoj",
|
||
M: "unu monato",
|
||
MM: "%d monatoj",
|
||
y: "unu jaro",
|
||
yy: "%d jaroj"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}a/,
|
||
ordinal: "%da",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),
|
||
i = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),
|
||
t = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i],
|
||
r = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
a;
|
||
e.defineLocale("es", {
|
||
months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
|
||
monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),
|
||
weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"),
|
||
weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY H:mm",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[hoy a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[mañana a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[ayer a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[el] dddd [pasado a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "en %s",
|
||
past: "hace %s",
|
||
s: "unos segundos",
|
||
ss: "%d segundos",
|
||
m: "un minuto",
|
||
mm: "%d minutos",
|
||
h: "una hora",
|
||
hh: "%d horas",
|
||
d: "un día",
|
||
dd: "%d días",
|
||
w: "una semana",
|
||
ww: "%d semanas",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un año",
|
||
yy: "%d años"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4},
|
||
invalidDate: "Fecha inválida"
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),
|
||
i = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),
|
||
t = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i],
|
||
r = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
a;
|
||
e.defineLocale("es-do", {
|
||
months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
|
||
monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),
|
||
weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"),
|
||
weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY h:mm A",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[hoy a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[mañana a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[ayer a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[el] dddd [pasado a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "en %s",
|
||
past: "hace %s",
|
||
s: "unos segundos",
|
||
ss: "%d segundos",
|
||
m: "un minuto",
|
||
mm: "%d minutos",
|
||
h: "una hora",
|
||
hh: "%d horas",
|
||
d: "un día",
|
||
dd: "%d días",
|
||
w: "una semana",
|
||
ww: "%d semanas",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un año",
|
||
yy: "%d años"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),
|
||
i = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),
|
||
t = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i],
|
||
r = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
a;
|
||
e.defineLocale("es-mx", {
|
||
months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
|
||
monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),
|
||
weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"),
|
||
weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY H:mm",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[hoy a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[mañana a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[ayer a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[el] dddd [pasado a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "en %s",
|
||
past: "hace %s",
|
||
s: "unos segundos",
|
||
ss: "%d segundos",
|
||
m: "un minuto",
|
||
mm: "%d minutos",
|
||
h: "una hora",
|
||
hh: "%d horas",
|
||
d: "un día",
|
||
dd: "%d días",
|
||
w: "una semana",
|
||
ww: "%d semanas",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un año",
|
||
yy: "%d años"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 0, doy: 4},
|
||
invalidDate: "Fecha inválida"
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),
|
||
i = "ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),
|
||
t = [/^ene/i, /^feb/i, /^mar/i, /^abr/i, /^may/i, /^jun/i, /^jul/i, /^ago/i, /^sep/i, /^oct/i, /^nov/i, /^dic/i],
|
||
r = /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
a;
|
||
e.defineLocale("es-us", {
|
||
months: "enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,
|
||
monthsShortStrictRegex: /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "domingo_lunes_martes_miércoles_jueves_viernes_sábado".split("_"),
|
||
weekdaysShort: "dom._lun._mar._mié._jue._vie._sáb.".split("_"),
|
||
weekdaysMin: "do_lu_ma_mi_ju_vi_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "MM/DD/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY h:mm A",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[hoy a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[mañana a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[ayer a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[el] dddd [pasado a la" + (this.hours() !== 1 ? "s" : "") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "en %s",
|
||
past: "hace %s",
|
||
s: "unos segundos",
|
||
ss: "%d segundos",
|
||
m: "un minuto",
|
||
mm: "%d minutos",
|
||
h: "una hora",
|
||
hh: "%d horas",
|
||
d: "un día",
|
||
dd: "%d días",
|
||
w: "una semana",
|
||
ww: "%d semanas",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un año",
|
||
yy: "%d años"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
s: ["mõne sekundi", "mõni sekund", "paar sekundit"],
|
||
ss: [e + "sekundi", e + "sekundit"],
|
||
m: ["ühe minuti", "üks minut"],
|
||
mm: [e + " minuti", e + " minutit"],
|
||
h: ["ühe tunni", "tund aega", "üks tund"],
|
||
hh: [e + " tunni", e + " tundi"],
|
||
d: ["ühe päeva", "üks päev"],
|
||
M: ["kuu aja", "kuu aega", "üks kuu"],
|
||
MM: [e + " kuu", e + " kuud"],
|
||
y: ["ühe aasta", "aasta", "üks aasta"],
|
||
yy: [e + " aasta", e + " aastat"]
|
||
};
|
||
if (t) return r[n][2] ? r[n][2] : r[n][1];
|
||
return i ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("et", {
|
||
months: "jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),
|
||
monthsShort: "jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),
|
||
weekdays: "pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev".split("_"),
|
||
weekdaysShort: "P_E_T_K_N_R_L".split("_"),
|
||
weekdaysMin: "P_E_T_K_N_R_L".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Täna,] LT",
|
||
nextDay: "[Homme,] LT",
|
||
nextWeek: "[Järgmine] dddd LT",
|
||
lastDay: "[Eile,] LT",
|
||
lastWeek: "[Eelmine] dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s pärast",
|
||
past: "%s tagasi",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: t,
|
||
dd: "%d päeva",
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("eu", {
|
||
months: "urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua".split("_"),
|
||
monthsShort: "urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata".split("_"),
|
||
weekdaysShort: "ig._al._ar._az._og._ol._lr.".split("_"),
|
||
weekdaysMin: "ig_al_ar_az_og_ol_lr".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "YYYY[ko] MMMM[ren] D[a]",
|
||
LLL: "YYYY[ko] MMMM[ren] D[a] HH:mm",
|
||
LLLL: "dddd, YYYY[ko] MMMM[ren] D[a] HH:mm",
|
||
l: "YYYY-M-D",
|
||
ll: "YYYY[ko] MMM D[a]",
|
||
lll: "YYYY[ko] MMM D[a] HH:mm",
|
||
llll: "ddd, YYYY[ko] MMM D[a] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[gaur] LT[etan]",
|
||
nextDay: "[bihar] LT[etan]",
|
||
nextWeek: "dddd LT[etan]",
|
||
lastDay: "[atzo] LT[etan]",
|
||
lastWeek: "[aurreko] dddd LT[etan]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s barru",
|
||
past: "duela %s",
|
||
s: "segundo batzuk",
|
||
ss: "%d segundo",
|
||
m: "minutu bat",
|
||
mm: "%d minutu",
|
||
h: "ordu bat",
|
||
hh: "%d ordu",
|
||
d: "egun bat",
|
||
dd: "%d egun",
|
||
M: "hilabete bat",
|
||
MM: "%d hilabete",
|
||
y: "urte bat",
|
||
yy: "%d urte"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "۱", 2: "۲", 3: "۳", 4: "۴", 5: "۵", 6: "۶", 7: "۷", 8: "۸", 9: "۹", 0: "۰"}, n = {
|
||
"۱": "1",
|
||
"۲": "2",
|
||
"۳": "3",
|
||
"۴": "4",
|
||
"۵": "5",
|
||
"۶": "6",
|
||
"۷": "7",
|
||
"۸": "8",
|
||
"۹": "9",
|
||
"۰": "0"
|
||
}, i;
|
||
e.defineLocale("fa", {
|
||
months: "ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),
|
||
monthsShort: "ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر".split("_"),
|
||
weekdays: "یکشنبه_دوشنبه_سهشنبه_چهارشنبه_پنجشنبه_جمعه_شنبه".split("_"),
|
||
weekdaysShort: "یکشنبه_دوشنبه_سهشنبه_چهارشنبه_پنجشنبه_جمعه_شنبه".split("_"),
|
||
weekdaysMin: "ی_د_س_چ_پ_ج_ش".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /قبل از ظهر|بعد از ظهر/,
|
||
isPM: function (e) {
|
||
return /بعد از ظهر/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "قبل از ظهر"; else return "بعد از ظهر"
|
||
},
|
||
calendar: {
|
||
sameDay: "[امروز ساعت] LT",
|
||
nextDay: "[فردا ساعت] LT",
|
||
nextWeek: "dddd [ساعت] LT",
|
||
lastDay: "[دیروز ساعت] LT",
|
||
lastWeek: "dddd [پیش] [ساعت] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "در %s",
|
||
past: "%s پیش",
|
||
s: "چند ثانیه",
|
||
ss: "%d ثانیه",
|
||
m: "یک دقیقه",
|
||
mm: "%d دقیقه",
|
||
h: "یک ساعت",
|
||
hh: "%d ساعت",
|
||
d: "یک روز",
|
||
dd: "%d روز",
|
||
M: "یک ماه",
|
||
MM: "%d ماه",
|
||
y: "یک سال",
|
||
yy: "%d سال"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[۰-۹]/g, function (e) {
|
||
return n[e]
|
||
}).replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
}).replace(/,/g, "،")
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}م/,
|
||
ordinal: "%dم",
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän".split(" "),
|
||
i = ["nolla", "yhden", "kahden", "kolmen", "neljän", "viiden", "kuuden", n[7], n[8], n[9]], t;
|
||
|
||
function r(e, t, n, i) {
|
||
var r = "";
|
||
switch (n) {
|
||
case"s":
|
||
return i ? "muutaman sekunnin" : "muutama sekunti";
|
||
case"ss":
|
||
r = i ? "sekunnin" : "sekuntia";
|
||
break;
|
||
case"m":
|
||
return i ? "minuutin" : "minuutti";
|
||
case"mm":
|
||
r = i ? "minuutin" : "minuuttia";
|
||
break;
|
||
case"h":
|
||
return i ? "tunnin" : "tunti";
|
||
case"hh":
|
||
r = i ? "tunnin" : "tuntia";
|
||
break;
|
||
case"d":
|
||
return i ? "päivän" : "päivä";
|
||
case"dd":
|
||
r = i ? "päivän" : "päivää";
|
||
break;
|
||
case"M":
|
||
return i ? "kuukauden" : "kuukausi";
|
||
case"MM":
|
||
r = i ? "kuukauden" : "kuukautta";
|
||
break;
|
||
case"y":
|
||
return i ? "vuoden" : "vuosi";
|
||
case"yy":
|
||
r = i ? "vuoden" : "vuotta";
|
||
break
|
||
}
|
||
r = a(e, i) + " " + r;
|
||
return r
|
||
}
|
||
|
||
function a(e, t) {
|
||
return e < 10 ? t ? i[e] : n[e] : e
|
||
}
|
||
|
||
e.defineLocale("fi", {
|
||
months: "tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),
|
||
monthsShort: "tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu".split("_"),
|
||
weekdays: "sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),
|
||
weekdaysShort: "su_ma_ti_ke_to_pe_la".split("_"),
|
||
weekdaysMin: "su_ma_ti_ke_to_pe_la".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "Do MMMM[ta] YYYY",
|
||
LLL: "Do MMMM[ta] YYYY, [klo] HH.mm",
|
||
LLLL: "dddd, Do MMMM[ta] YYYY, [klo] HH.mm",
|
||
l: "D.M.YYYY",
|
||
ll: "Do MMM YYYY",
|
||
lll: "Do MMM YYYY, [klo] HH.mm",
|
||
llll: "ddd, Do MMM YYYY, [klo] HH.mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[tänään] [klo] LT",
|
||
nextDay: "[huomenna] [klo] LT",
|
||
nextWeek: "dddd [klo] LT",
|
||
lastDay: "[eilen] [klo] LT",
|
||
lastWeek: "[viime] dddd[na] [klo] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s päästä",
|
||
past: "%s sitten",
|
||
s: r,
|
||
ss: r,
|
||
m: r,
|
||
mm: r,
|
||
h: r,
|
||
hh: r,
|
||
d: r,
|
||
dd: r,
|
||
M: r,
|
||
MM: r,
|
||
y: r,
|
||
yy: r
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("fil", {
|
||
months: "Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),
|
||
monthsShort: "Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),
|
||
weekdays: "Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),
|
||
weekdaysShort: "Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),
|
||
weekdaysMin: "Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "MM/D/YYYY",
|
||
LL: "MMMM D, YYYY",
|
||
LLL: "MMMM D, YYYY HH:mm",
|
||
LLLL: "dddd, MMMM DD, YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "LT [ngayong araw]",
|
||
nextDay: "[Bukas ng] LT",
|
||
nextWeek: "LT [sa susunod na] dddd",
|
||
lastDay: "LT [kahapon]",
|
||
lastWeek: "LT [noong nakaraang] dddd",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "sa loob ng %s",
|
||
past: "%s ang nakalipas",
|
||
s: "ilang segundo",
|
||
ss: "%d segundo",
|
||
m: "isang minuto",
|
||
mm: "%d minuto",
|
||
h: "isang oras",
|
||
hh: "%d oras",
|
||
d: "isang araw",
|
||
dd: "%d araw",
|
||
M: "isang buwan",
|
||
MM: "%d buwan",
|
||
y: "isang taon",
|
||
yy: "%d taon"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}/,
|
||
ordinal: function (e) {
|
||
return e
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("fo", {
|
||
months: "januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember".split("_"),
|
||
monthsShort: "jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"),
|
||
weekdays: "sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur".split("_"),
|
||
weekdaysShort: "sun_mán_týs_mik_hós_frí_ley".split("_"),
|
||
weekdaysMin: "su_má_tý_mi_hó_fr_le".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D. MMMM, YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Í dag kl.] LT",
|
||
nextDay: "[Í morgin kl.] LT",
|
||
nextWeek: "dddd [kl.] LT",
|
||
lastDay: "[Í gjár kl.] LT",
|
||
lastWeek: "[síðstu] dddd [kl] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "um %s",
|
||
past: "%s síðani",
|
||
s: "fá sekund",
|
||
ss: "%d sekundir",
|
||
m: "ein minuttur",
|
||
mm: "%d minuttir",
|
||
h: "ein tími",
|
||
hh: "%d tímar",
|
||
d: "ein dagur",
|
||
dd: "%d dagar",
|
||
M: "ein mánaður",
|
||
MM: "%d mánaðir",
|
||
y: "eitt ár",
|
||
yy: "%d ár"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,
|
||
n = /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i,
|
||
i = /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i,
|
||
r = [/^janv/i, /^févr/i, /^mars/i, /^avr/i, /^mai/i, /^juin/i, /^juil/i, /^août/i, /^sept/i, /^oct/i, /^nov/i, /^déc/i],
|
||
a;
|
||
e.defineLocale("fr", {
|
||
months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),
|
||
monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),
|
||
monthsRegex: i,
|
||
monthsShortRegex: i,
|
||
monthsStrictRegex: t,
|
||
monthsShortStrictRegex: n,
|
||
monthsParse: r,
|
||
longMonthsParse: r,
|
||
shortMonthsParse: r,
|
||
weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),
|
||
weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"),
|
||
weekdaysMin: "di_lu_ma_me_je_ve_sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Aujourd’hui à] LT",
|
||
nextDay: "[Demain à] LT",
|
||
nextWeek: "dddd [à] LT",
|
||
lastDay: "[Hier à] LT",
|
||
lastWeek: "dddd [dernier à] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dans %s",
|
||
past: "il y a %s",
|
||
s: "quelques secondes",
|
||
ss: "%d secondes",
|
||
m: "une minute",
|
||
mm: "%d minutes",
|
||
h: "une heure",
|
||
hh: "%d heures",
|
||
d: "un jour",
|
||
dd: "%d jours",
|
||
w: "une semaine",
|
||
ww: "%d semaines",
|
||
M: "un mois",
|
||
MM: "%d mois",
|
||
y: "un an",
|
||
yy: "%d ans"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(er|)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"D":
|
||
return e + (e === 1 ? "er" : "");
|
||
default:
|
||
case"M":
|
||
case"Q":
|
||
case"DDD":
|
||
case"d":
|
||
return e + (e === 1 ? "er" : "e");
|
||
case"w":
|
||
case"W":
|
||
return e + (e === 1 ? "re" : "e")
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("fr-ca", {
|
||
months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),
|
||
monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),
|
||
weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"),
|
||
weekdaysMin: "di_lu_ma_me_je_ve_sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Aujourd’hui à] LT",
|
||
nextDay: "[Demain à] LT",
|
||
nextWeek: "dddd [à] LT",
|
||
lastDay: "[Hier à] LT",
|
||
lastWeek: "dddd [dernier à] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dans %s",
|
||
past: "il y a %s",
|
||
s: "quelques secondes",
|
||
ss: "%d secondes",
|
||
m: "une minute",
|
||
mm: "%d minutes",
|
||
h: "une heure",
|
||
hh: "%d heures",
|
||
d: "un jour",
|
||
dd: "%d jours",
|
||
M: "un mois",
|
||
MM: "%d mois",
|
||
y: "un an",
|
||
yy: "%d ans"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(er|e)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
default:
|
||
case"M":
|
||
case"Q":
|
||
case"D":
|
||
case"DDD":
|
||
case"d":
|
||
return e + (e === 1 ? "er" : "e");
|
||
case"w":
|
||
case"W":
|
||
return e + (e === 1 ? "re" : "e")
|
||
}
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("fr-ch", {
|
||
months: "janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre".split("_"),
|
||
monthsShort: "janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),
|
||
weekdaysShort: "dim._lun._mar._mer._jeu._ven._sam.".split("_"),
|
||
weekdaysMin: "di_lu_ma_me_je_ve_sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Aujourd’hui à] LT",
|
||
nextDay: "[Demain à] LT",
|
||
nextWeek: "dddd [à] LT",
|
||
lastDay: "[Hier à] LT",
|
||
lastWeek: "dddd [dernier à] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dans %s",
|
||
past: "il y a %s",
|
||
s: "quelques secondes",
|
||
ss: "%d secondes",
|
||
m: "une minute",
|
||
mm: "%d minutes",
|
||
h: "une heure",
|
||
hh: "%d heures",
|
||
d: "un jour",
|
||
dd: "%d jours",
|
||
M: "un mois",
|
||
MM: "%d mois",
|
||
y: "un an",
|
||
yy: "%d ans"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(er|e)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
default:
|
||
case"M":
|
||
case"Q":
|
||
case"D":
|
||
case"DDD":
|
||
case"d":
|
||
return e + (e === 1 ? "er" : "e");
|
||
case"w":
|
||
case"W":
|
||
return e + (e === 1 ? "re" : "e")
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.".split("_"),
|
||
i = "jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des".split("_"), t;
|
||
e.defineLocale("fy", {
|
||
months: "jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsParseExact: true,
|
||
weekdays: "snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon".split("_"),
|
||
weekdaysShort: "si._mo._ti._wo._to._fr._so.".split("_"),
|
||
weekdaysMin: "Si_Mo_Ti_Wo_To_Fr_So".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD-MM-YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[hjoed om] LT",
|
||
nextDay: "[moarn om] LT",
|
||
nextWeek: "dddd [om] LT",
|
||
lastDay: "[juster om] LT",
|
||
lastWeek: "[ôfrûne] dddd [om] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "oer %s",
|
||
past: "%s lyn",
|
||
s: "in pear sekonden",
|
||
ss: "%d sekonden",
|
||
m: "ien minút",
|
||
mm: "%d minuten",
|
||
h: "ien oere",
|
||
hh: "%d oeren",
|
||
d: "ien dei",
|
||
dd: "%d dagen",
|
||
M: "ien moanne",
|
||
MM: "%d moannen",
|
||
y: "ien jier",
|
||
yy: "%d jierren"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
|
||
ordinal: function (e) {
|
||
return e + (e === 1 || e === 8 || e >= 20 ? "ste" : "de")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t, n, i, r, a, s;
|
||
e.defineLocale("ga", {
|
||
months: ["Eanáir", "Feabhra", "Márta", "Aibreán", "Bealtaine", "Meitheamh", "Iúil", "Lúnasa", "Meán Fómhair", "Deireadh Fómhair", "Samhain", "Nollaig"],
|
||
monthsShort: ["Ean", "Feabh", "Márt", "Aib", "Beal", "Meith", "Iúil", "Lún", "M.F.", "D.F.", "Samh", "Noll"],
|
||
monthsParseExact: true,
|
||
weekdays: ["Dé Domhnaigh", "Dé Luain", "Dé Máirt", "Dé Céadaoin", "Déardaoin", "Dé hAoine", "Dé Sathairn"],
|
||
weekdaysShort: ["Domh", "Luan", "Máirt", "Céad", "Déar", "Aoine", "Sath"],
|
||
weekdaysMin: ["Do", "Lu", "Má", "Cé", "Dé", "A", "Sa"],
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Inniu ag] LT",
|
||
nextDay: "[Amárach ag] LT",
|
||
nextWeek: "dddd [ag] LT",
|
||
lastDay: "[Inné ag] LT",
|
||
lastWeek: "dddd [seo caite] [ag] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "i %s",
|
||
past: "%s ó shin",
|
||
s: "cúpla soicind",
|
||
ss: "%d soicind",
|
||
m: "nóiméad",
|
||
mm: "%d nóiméad",
|
||
h: "uair an chloig",
|
||
hh: "%d uair an chloig",
|
||
d: "lá",
|
||
dd: "%d lá",
|
||
M: "mí",
|
||
MM: "%d míonna",
|
||
y: "bliain",
|
||
yy: "%d bliain"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/,
|
||
ordinal: function (e) {
|
||
var t = e === 1 ? "d" : e % 10 === 2 ? "na" : "mh";
|
||
return e + t
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t, n, i, r, a, s;
|
||
e.defineLocale("gd", {
|
||
months: ["Am Faoilleach", "An Gearran", "Am Màrt", "An Giblean", "An Cèitean", "An t-Ògmhios", "An t-Iuchar", "An Lùnastal", "An t-Sultain", "An Dàmhair", "An t-Samhain", "An Dùbhlachd"],
|
||
monthsShort: ["Faoi", "Gear", "Màrt", "Gibl", "Cèit", "Ògmh", "Iuch", "Lùn", "Sult", "Dàmh", "Samh", "Dùbh"],
|
||
monthsParseExact: true,
|
||
weekdays: ["Didòmhnaich", "Diluain", "Dimàirt", "Diciadain", "Diardaoin", "Dihaoine", "Disathairne"],
|
||
weekdaysShort: ["Did", "Dil", "Dim", "Dic", "Dia", "Dih", "Dis"],
|
||
weekdaysMin: ["Dò", "Lu", "Mà", "Ci", "Ar", "Ha", "Sa"],
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[An-diugh aig] LT",
|
||
nextDay: "[A-màireach aig] LT",
|
||
nextWeek: "dddd [aig] LT",
|
||
lastDay: "[An-dè aig] LT",
|
||
lastWeek: "dddd [seo chaidh] [aig] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "ann an %s",
|
||
past: "bho chionn %s",
|
||
s: "beagan diogan",
|
||
ss: "%d diogan",
|
||
m: "mionaid",
|
||
mm: "%d mionaidean",
|
||
h: "uair",
|
||
hh: "%d uairean",
|
||
d: "latha",
|
||
dd: "%d latha",
|
||
M: "mìos",
|
||
MM: "%d mìosan",
|
||
y: "bliadhna",
|
||
yy: "%d bliadhna"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/,
|
||
ordinal: function (e) {
|
||
var t = e === 1 ? "d" : e % 10 === 2 ? "na" : "mh";
|
||
return e + t
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("gl", {
|
||
months: "xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),
|
||
monthsShort: "xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "domingo_luns_martes_mércores_xoves_venres_sábado".split("_"),
|
||
weekdaysShort: "dom._lun._mar._mér._xov._ven._sáb.".split("_"),
|
||
weekdaysMin: "do_lu_ma_mé_xo_ve_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY H:mm",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[hoxe " + (this.hours() !== 1 ? "ás" : "á") + "] LT"
|
||
}, nextDay: function () {
|
||
return "[mañá " + (this.hours() !== 1 ? "ás" : "á") + "] LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [" + (this.hours() !== 1 ? "ás" : "a") + "] LT"
|
||
}, lastDay: function () {
|
||
return "[onte " + (this.hours() !== 1 ? "á" : "a") + "] LT"
|
||
}, lastWeek: function () {
|
||
return "[o] dddd [pasado " + (this.hours() !== 1 ? "ás" : "a") + "] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: function (e) {
|
||
if (e.indexOf("un") === 0) return "n" + e;
|
||
return "en " + e
|
||
},
|
||
past: "hai %s",
|
||
s: "uns segundos",
|
||
ss: "%d segundos",
|
||
m: "un minuto",
|
||
mm: "%d minutos",
|
||
h: "unha hora",
|
||
hh: "%d horas",
|
||
d: "un día",
|
||
dd: "%d días",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un ano",
|
||
yy: "%d anos"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
s: ["थोडया सॅकंडांनी", "थोडे सॅकंड"],
|
||
ss: [e + " सॅकंडांनी", e + " सॅकंड"],
|
||
m: ["एका मिणटान", "एक मिनूट"],
|
||
mm: [e + " मिणटांनी", e + " मिणटां"],
|
||
h: ["एका वरान", "एक वर"],
|
||
hh: [e + " वरांनी", e + " वरां"],
|
||
d: ["एका दिसान", "एक दीस"],
|
||
dd: [e + " दिसांनी", e + " दीस"],
|
||
M: ["एका म्हयन्यान", "एक म्हयनो"],
|
||
MM: [e + " म्हयन्यानी", e + " म्हयने"],
|
||
y: ["एका वर्सान", "एक वर्स"],
|
||
yy: [e + " वर्सांनी", e + " वर्सां"]
|
||
};
|
||
return i ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("gom-deva", {
|
||
months: {
|
||
standalone: "जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),
|
||
format: "जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या".split("_"),
|
||
isFormat: /MMMM(\s)+D[oD]?/
|
||
},
|
||
monthsShort: "जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार".split("_"),
|
||
weekdaysShort: "आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.".split("_"),
|
||
weekdaysMin: "आ_सो_मं_बु_ब्रे_सु_शे".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "A h:mm [वाजतां]",
|
||
LTS: "A h:mm:ss [वाजतां]",
|
||
L: "DD-MM-YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY A h:mm [वाजतां]",
|
||
LLLL: "dddd, MMMM Do, YYYY, A h:mm [वाजतां]",
|
||
llll: "ddd, D MMM YYYY, A h:mm [वाजतां]"
|
||
},
|
||
calendar: {
|
||
sameDay: "[आयज] LT",
|
||
nextDay: "[फाल्यां] LT",
|
||
nextWeek: "[फुडलो] dddd[,] LT",
|
||
lastDay: "[काल] LT",
|
||
lastWeek: "[फाटलो] dddd[,] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s",
|
||
past: "%s आदीं",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: t,
|
||
dd: t,
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(वेर)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"D":
|
||
return e + "वेर";
|
||
default:
|
||
case"M":
|
||
case"Q":
|
||
case"DDD":
|
||
case"d":
|
||
case"w":
|
||
case"W":
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 0, doy: 3},
|
||
meridiemParse: /राती|सकाळीं|दनपारां|सांजे/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "राती") return e < 4 ? e : e + 12; else if (t === "सकाळीं") return e; else if (t === "दनपारां") return e > 12 ? e : e + 12; else if (t === "सांजे") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "राती"; else if (e < 12) return "सकाळीं"; else if (e < 16) return "दनपारां"; else if (e < 20) return "सांजे"; else return "राती"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
s: ["thoddea sekondamni", "thodde sekond"],
|
||
ss: [e + " sekondamni", e + " sekond"],
|
||
m: ["eka mintan", "ek minut"],
|
||
mm: [e + " mintamni", e + " mintam"],
|
||
h: ["eka voran", "ek vor"],
|
||
hh: [e + " voramni", e + " voram"],
|
||
d: ["eka disan", "ek dis"],
|
||
dd: [e + " disamni", e + " dis"],
|
||
M: ["eka mhoinean", "ek mhoino"],
|
||
MM: [e + " mhoineamni", e + " mhoine"],
|
||
y: ["eka vorsan", "ek voros"],
|
||
yy: [e + " vorsamni", e + " vorsam"]
|
||
};
|
||
return i ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("gom-latn", {
|
||
months: {
|
||
standalone: "Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr".split("_"),
|
||
format: "Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea".split("_"),
|
||
isFormat: /MMMM(\s)+D[oD]?/
|
||
},
|
||
monthsShort: "Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split("_"),
|
||
weekdaysShort: "Ait._Som._Mon._Bud._Bre._Suk._Son.".split("_"),
|
||
weekdaysMin: "Ai_Sm_Mo_Bu_Br_Su_Sn".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "A h:mm [vazta]",
|
||
LTS: "A h:mm:ss [vazta]",
|
||
L: "DD-MM-YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY A h:mm [vazta]",
|
||
LLLL: "dddd, MMMM Do, YYYY, A h:mm [vazta]",
|
||
llll: "ddd, D MMM YYYY, A h:mm [vazta]"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Aiz] LT",
|
||
nextDay: "[Faleam] LT",
|
||
nextWeek: "[Fuddlo] dddd[,] LT",
|
||
lastDay: "[Kal] LT",
|
||
lastWeek: "[Fattlo] dddd[,] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s",
|
||
past: "%s adim",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: t,
|
||
dd: t,
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(er)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"D":
|
||
return e + "er";
|
||
default:
|
||
case"M":
|
||
case"Q":
|
||
case"DDD":
|
||
case"d":
|
||
case"w":
|
||
case"W":
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 0, doy: 3},
|
||
meridiemParse: /rati|sokallim|donparam|sanje/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "rati") return e < 4 ? e : e + 12; else if (t === "sokallim") return e; else if (t === "donparam") return e > 12 ? e : e + 12; else if (t === "sanje") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "rati"; else if (e < 12) return "sokallim"; else if (e < 16) return "donparam"; else if (e < 20) return "sanje"; else return "rati"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "૧", 2: "૨", 3: "૩", 4: "૪", 5: "૫", 6: "૬", 7: "૭", 8: "૮", 9: "૯", 0: "૦"}, n = {
|
||
"૧": "1",
|
||
"૨": "2",
|
||
"૩": "3",
|
||
"૪": "4",
|
||
"૫": "5",
|
||
"૬": "6",
|
||
"૭": "7",
|
||
"૮": "8",
|
||
"૯": "9",
|
||
"૦": "0"
|
||
}, i;
|
||
e.defineLocale("gu", {
|
||
months: "જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર".split("_"),
|
||
monthsShort: "જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર".split("_"),
|
||
weekdaysShort: "રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ".split("_"),
|
||
weekdaysMin: "ર_સો_મં_બુ_ગુ_શુ_શ".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm વાગ્યે",
|
||
LTS: "A h:mm:ss વાગ્યે",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm વાગ્યે",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm વાગ્યે"
|
||
},
|
||
calendar: {
|
||
sameDay: "[આજ] LT",
|
||
nextDay: "[કાલે] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[ગઇકાલે] LT",
|
||
lastWeek: "[પાછલા] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s મા",
|
||
past: "%s પહેલા",
|
||
s: "અમુક પળો",
|
||
ss: "%d સેકંડ",
|
||
m: "એક મિનિટ",
|
||
mm: "%d મિનિટ",
|
||
h: "એક કલાક",
|
||
hh: "%d કલાક",
|
||
d: "એક દિવસ",
|
||
dd: "%d દિવસ",
|
||
M: "એક મહિનો",
|
||
MM: "%d મહિનો",
|
||
y: "એક વર્ષ",
|
||
yy: "%d વર્ષ"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /રાત|બપોર|સવાર|સાંજ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "રાત") return e < 4 ? e : e + 12; else if (t === "સવાર") return e; else if (t === "બપોર") return e >= 10 ? e : e + 12; else if (t === "સાંજ") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "રાત"; else if (e < 10) return "સવાર"; else if (e < 17) return "બપોર"; else if (e < 20) return "સાંજ"; else return "રાત"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("he", {
|
||
months: "ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר".split("_"),
|
||
monthsShort: "ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳".split("_"),
|
||
weekdays: "ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת".split("_"),
|
||
weekdaysShort: "א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳".split("_"),
|
||
weekdaysMin: "א_ב_ג_ד_ה_ו_ש".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [ב]MMMM YYYY",
|
||
LLL: "D [ב]MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D [ב]MMMM YYYY HH:mm",
|
||
l: "D/M/YYYY",
|
||
ll: "D MMM YYYY",
|
||
lll: "D MMM YYYY HH:mm",
|
||
llll: "ddd, D MMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[היום ב־]LT",
|
||
nextDay: "[מחר ב־]LT",
|
||
nextWeek: "dddd [בשעה] LT",
|
||
lastDay: "[אתמול ב־]LT",
|
||
lastWeek: "[ביום] dddd [האחרון בשעה] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "בעוד %s",
|
||
past: "לפני %s",
|
||
s: "מספר שניות",
|
||
ss: "%d שניות",
|
||
m: "דקה",
|
||
mm: "%d דקות",
|
||
h: "שעה",
|
||
hh: function (e) {
|
||
if (e === 2) return "שעתיים";
|
||
return e + " שעות"
|
||
},
|
||
d: "יום",
|
||
dd: function (e) {
|
||
if (e === 2) return "יומיים";
|
||
return e + " ימים"
|
||
},
|
||
M: "חודש",
|
||
MM: function (e) {
|
||
if (e === 2) return "חודשיים";
|
||
return e + " חודשים"
|
||
},
|
||
y: "שנה",
|
||
yy: function (e) {
|
||
if (e === 2) return "שנתיים"; else if (e % 10 === 0 && e !== 10) return e + " שנה";
|
||
return e + " שנים"
|
||
}
|
||
},
|
||
meridiemParse: /אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,
|
||
isPM: function (e) {
|
||
return /^(אחה"צ|אחרי הצהריים|בערב)$/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 5) return "לפנות בוקר"; else if (e < 10) return "בבוקר"; else if (e < 12) return n ? 'לפנה"צ' : "לפני הצהריים"; else if (e < 18) return n ? 'אחה"צ' : "אחרי הצהריים"; else return "בערב"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "१", 2: "२", 3: "३", 4: "४", 5: "५", 6: "६", 7: "७", 8: "८", 9: "९", 0: "०"}, n = {
|
||
"१": "1",
|
||
"२": "2",
|
||
"३": "3",
|
||
"४": "4",
|
||
"५": "5",
|
||
"६": "6",
|
||
"७": "7",
|
||
"८": "8",
|
||
"९": "9",
|
||
"०": "0"
|
||
},
|
||
i = [/^जन/i, /^फ़र|फर/i, /^मार्च/i, /^अप्रै/i, /^मई/i, /^जून/i, /^जुल/i, /^अग/i, /^सितं|सित/i, /^अक्टू/i, /^नव|नवं/i, /^दिसं|दिस/i],
|
||
r = [/^जन/i, /^फ़र/i, /^मार्च/i, /^अप्रै/i, /^मई/i, /^जून/i, /^जुल/i, /^अग/i, /^सित/i, /^अक्टू/i, /^नव/i, /^दिस/i],
|
||
a;
|
||
e.defineLocale("hi", {
|
||
months: {
|
||
format: "जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर".split("_"),
|
||
standalone: "जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर".split("_")
|
||
},
|
||
monthsShort: "जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.".split("_"),
|
||
weekdays: "रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),
|
||
weekdaysShort: "रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि".split("_"),
|
||
weekdaysMin: "र_सो_मं_बु_गु_शु_श".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm बजे",
|
||
LTS: "A h:mm:ss बजे",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm बजे",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm बजे"
|
||
},
|
||
monthsParse: i,
|
||
longMonthsParse: i,
|
||
shortMonthsParse: r,
|
||
monthsRegex: /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,
|
||
monthsShortRegex: /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i,
|
||
monthsStrictRegex: /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i,
|
||
monthsShortStrictRegex: /^(जन\.?|फ़र\.?|मार्च?|अप्रै\.?|मई?|जून?|जुल\.?|अग\.?|सित\.?|अक्टू\.?|नव\.?|दिस\.?)/i,
|
||
calendar: {
|
||
sameDay: "[आज] LT",
|
||
nextDay: "[कल] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[कल] LT",
|
||
lastWeek: "[पिछले] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s में",
|
||
past: "%s पहले",
|
||
s: "कुछ ही क्षण",
|
||
ss: "%d सेकंड",
|
||
m: "एक मिनट",
|
||
mm: "%d मिनट",
|
||
h: "एक घंटा",
|
||
hh: "%d घंटे",
|
||
d: "एक दिन",
|
||
dd: "%d दिन",
|
||
M: "एक महीने",
|
||
MM: "%d महीने",
|
||
y: "एक वर्ष",
|
||
yy: "%d वर्ष"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[१२३४५६७८९०]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /रात|सुबह|दोपहर|शाम/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "रात") return e < 4 ? e : e + 12; else if (t === "सुबह") return e; else if (t === "दोपहर") return e >= 10 ? e : e + 12; else if (t === "शाम") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "रात"; else if (e < 10) return "सुबह"; else if (e < 17) return "दोपहर"; else if (e < 20) return "शाम"; else return "रात"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n) {
|
||
var i = e + " ";
|
||
switch (n) {
|
||
case"ss":
|
||
if (e === 1) i += "sekunda"; else if (e === 2 || e === 3 || e === 4) i += "sekunde"; else i += "sekundi";
|
||
return i;
|
||
case"m":
|
||
return t ? "jedna minuta" : "jedne minute";
|
||
case"mm":
|
||
if (e === 1) i += "minuta"; else if (e === 2 || e === 3 || e === 4) i += "minute"; else i += "minuta";
|
||
return i;
|
||
case"h":
|
||
return t ? "jedan sat" : "jednog sata";
|
||
case"hh":
|
||
if (e === 1) i += "sat"; else if (e === 2 || e === 3 || e === 4) i += "sata"; else i += "sati";
|
||
return i;
|
||
case"dd":
|
||
if (e === 1) i += "dan"; else i += "dana";
|
||
return i;
|
||
case"MM":
|
||
if (e === 1) i += "mjesec"; else if (e === 2 || e === 3 || e === 4) i += "mjeseca"; else i += "mjeseci";
|
||
return i;
|
||
case"yy":
|
||
if (e === 1) i += "godina"; else if (e === 2 || e === 3 || e === 4) i += "godine"; else i += "godina";
|
||
return i
|
||
}
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("hr", {
|
||
months: {
|
||
format: "siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca".split("_"),
|
||
standalone: "siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac".split("_")
|
||
},
|
||
monthsShort: "sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),
|
||
weekdaysShort: "ned._pon._uto._sri._čet._pet._sub.".split("_"),
|
||
weekdaysMin: "ne_po_ut_sr_če_pe_su".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "Do MMMM YYYY",
|
||
LLL: "Do MMMM YYYY H:mm",
|
||
LLLL: "dddd, Do MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[danas u] LT", nextDay: "[sutra u] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[u] [nedjelju] [u] LT";
|
||
case 3:
|
||
return "[u] [srijedu] [u] LT";
|
||
case 6:
|
||
return "[u] [subotu] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[u] dddd [u] LT"
|
||
}
|
||
}, lastDay: "[jučer u] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[prošlu] [nedjelju] [u] LT";
|
||
case 3:
|
||
return "[prošlu] [srijedu] [u] LT";
|
||
case 6:
|
||
return "[prošle] [subote] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[prošli] dddd [u] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "prije %s",
|
||
s: "par sekundi",
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: "dan",
|
||
dd: t,
|
||
M: "mjesec",
|
||
MM: t,
|
||
y: "godinu",
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = "vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton".split(" "), n;
|
||
|
||
function i(e, t, n, i) {
|
||
var r = e;
|
||
switch (n) {
|
||
case"s":
|
||
return i || t ? "néhány másodperc" : "néhány másodperce";
|
||
case"ss":
|
||
return r + (i || t) ? " másodperc" : " másodperce";
|
||
case"m":
|
||
return "egy" + (i || t ? " perc" : " perce");
|
||
case"mm":
|
||
return r + (i || t ? " perc" : " perce");
|
||
case"h":
|
||
return "egy" + (i || t ? " óra" : " órája");
|
||
case"hh":
|
||
return r + (i || t ? " óra" : " órája");
|
||
case"d":
|
||
return "egy" + (i || t ? " nap" : " napja");
|
||
case"dd":
|
||
return r + (i || t ? " nap" : " napja");
|
||
case"M":
|
||
return "egy" + (i || t ? " hónap" : " hónapja");
|
||
case"MM":
|
||
return r + (i || t ? " hónap" : " hónapja");
|
||
case"y":
|
||
return "egy" + (i || t ? " év" : " éve");
|
||
case"yy":
|
||
return r + (i || t ? " év" : " éve")
|
||
}
|
||
return ""
|
||
}
|
||
|
||
function r(e) {
|
||
return (e ? "" : "[múlt] ") + "[" + t[this.day()] + "] LT[-kor]"
|
||
}
|
||
|
||
e.defineLocale("hu", {
|
||
months: "január_február_március_április_május_június_július_augusztus_szeptember_október_november_december".split("_"),
|
||
monthsShort: "jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat".split("_"),
|
||
weekdaysShort: "vas_hét_kedd_sze_csüt_pén_szo".split("_"),
|
||
weekdaysMin: "v_h_k_sze_cs_p_szo".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "YYYY.MM.DD.",
|
||
LL: "YYYY. MMMM D.",
|
||
LLL: "YYYY. MMMM D. H:mm",
|
||
LLLL: "YYYY. MMMM D., dddd H:mm"
|
||
},
|
||
meridiemParse: /de|du/i,
|
||
isPM: function (e) {
|
||
return e.charAt(1).toLowerCase() === "u"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return n === true ? "de" : "DE"; else return n === true ? "du" : "DU"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ma] LT[-kor]", nextDay: "[holnap] LT[-kor]", nextWeek: function () {
|
||
return r.call(this, true)
|
||
}, lastDay: "[tegnap] LT[-kor]", lastWeek: function () {
|
||
return r.call(this, false)
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s múlva",
|
||
past: "%s",
|
||
s: i,
|
||
ss: i,
|
||
m: i,
|
||
mm: i,
|
||
h: i,
|
||
hh: i,
|
||
d: i,
|
||
dd: i,
|
||
M: i,
|
||
MM: i,
|
||
y: i,
|
||
yy: i
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("hy-am", {
|
||
months: {
|
||
format: "հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի".split("_"),
|
||
standalone: "հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր".split("_")
|
||
},
|
||
monthsShort: "հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ".split("_"),
|
||
weekdays: "կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ".split("_"),
|
||
weekdaysShort: "կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),
|
||
weekdaysMin: "կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY թ.",
|
||
LLL: "D MMMM YYYY թ., HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY թ., HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[այսօր] LT", nextDay: "[վաղը] LT", lastDay: "[երեկ] LT", nextWeek: function () {
|
||
return "dddd [օրը ժամը] LT"
|
||
}, lastWeek: function () {
|
||
return "[անցած] dddd [օրը ժամը] LT"
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s հետո",
|
||
past: "%s առաջ",
|
||
s: "մի քանի վայրկյան",
|
||
ss: "%d վայրկյան",
|
||
m: "րոպե",
|
||
mm: "%d րոպե",
|
||
h: "ժամ",
|
||
hh: "%d ժամ",
|
||
d: "օր",
|
||
dd: "%d օր",
|
||
M: "ամիս",
|
||
MM: "%d ամիս",
|
||
y: "տարի",
|
||
yy: "%d տարի"
|
||
},
|
||
meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/,
|
||
isPM: function (e) {
|
||
return /^(ցերեկվա|երեկոյան)$/.test(e)
|
||
},
|
||
meridiem: function (e) {
|
||
if (e < 4) return "գիշերվա"; else if (e < 12) return "առավոտվա"; else if (e < 17) return "ցերեկվա"; else return "երեկոյան"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"DDD":
|
||
case"w":
|
||
case"W":
|
||
case"DDDo":
|
||
if (e === 1) return e + "-ին";
|
||
return e + "-րդ";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("id", {
|
||
months: "Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des".split("_"),
|
||
weekdays: "Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),
|
||
weekdaysShort: "Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),
|
||
weekdaysMin: "Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [pukul] HH.mm",
|
||
LLLL: "dddd, D MMMM YYYY [pukul] HH.mm"
|
||
},
|
||
meridiemParse: /pagi|siang|sore|malam/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "pagi") return e; else if (t === "siang") return e >= 11 ? e : e + 12; else if (t === "sore" || t === "malam") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 11) return "pagi"; else if (e < 15) return "siang"; else if (e < 19) return "sore"; else return "malam"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hari ini pukul] LT",
|
||
nextDay: "[Besok pukul] LT",
|
||
nextWeek: "dddd [pukul] LT",
|
||
lastDay: "[Kemarin pukul] LT",
|
||
lastWeek: "dddd [lalu pukul] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dalam %s",
|
||
past: "%s yang lalu",
|
||
s: "beberapa detik",
|
||
ss: "%d detik",
|
||
m: "semenit",
|
||
mm: "%d menit",
|
||
h: "sejam",
|
||
hh: "%d jam",
|
||
d: "sehari",
|
||
dd: "%d hari",
|
||
M: "sebulan",
|
||
MM: "%d bulan",
|
||
y: "setahun",
|
||
yy: "%d tahun"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function a(e) {
|
||
if (e % 100 === 11) return true; else if (e % 10 === 1) return false;
|
||
return true
|
||
}
|
||
|
||
function t(e, t, n, i) {
|
||
var r = e + " ";
|
||
switch (n) {
|
||
case"s":
|
||
return t || i ? "nokkrar sekúndur" : "nokkrum sekúndum";
|
||
case"ss":
|
||
if (a(e)) return r + (t || i ? "sekúndur" : "sekúndum");
|
||
return r + "sekúnda";
|
||
case"m":
|
||
return t ? "mínúta" : "mínútu";
|
||
case"mm":
|
||
if (a(e)) return r + (t || i ? "mínútur" : "mínútum"); else if (t) return r + "mínúta";
|
||
return r + "mínútu";
|
||
case"hh":
|
||
if (a(e)) return r + (t || i ? "klukkustundir" : "klukkustundum");
|
||
return r + "klukkustund";
|
||
case"d":
|
||
if (t) return "dagur";
|
||
return i ? "dag" : "degi";
|
||
case"dd":
|
||
if (a(e)) {
|
||
if (t) return r + "dagar";
|
||
return r + (i ? "daga" : "dögum")
|
||
} else if (t) return r + "dagur";
|
||
return r + (i ? "dag" : "degi");
|
||
case"M":
|
||
if (t) return "mánuður";
|
||
return i ? "mánuð" : "mánuði";
|
||
case"MM":
|
||
if (a(e)) {
|
||
if (t) return r + "mánuðir";
|
||
return r + (i ? "mánuði" : "mánuðum")
|
||
} else if (t) return r + "mánuður";
|
||
return r + (i ? "mánuð" : "mánuði");
|
||
case"y":
|
||
return t || i ? "ár" : "ári";
|
||
case"yy":
|
||
if (a(e)) return r + (t || i ? "ár" : "árum");
|
||
return r + (t || i ? "ár" : "ári")
|
||
}
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("is", {
|
||
months: "janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember".split("_"),
|
||
monthsShort: "jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des".split("_"),
|
||
weekdays: "sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur".split("_"),
|
||
weekdaysShort: "sun_mán_þri_mið_fim_fös_lau".split("_"),
|
||
weekdaysMin: "Su_Má_Þr_Mi_Fi_Fö_La".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY [kl.] H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY [kl.] H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[í dag kl.] LT",
|
||
nextDay: "[á morgun kl.] LT",
|
||
nextWeek: "dddd [kl.] LT",
|
||
lastDay: "[í gær kl.] LT",
|
||
lastWeek: "[síðasta] dddd [kl.] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "eftir %s",
|
||
past: "fyrir %s síðan",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: "klukkustund",
|
||
hh: t,
|
||
d: t,
|
||
dd: t,
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("it", {
|
||
months: "gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),
|
||
monthsShort: "gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),
|
||
weekdays: "domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),
|
||
weekdaysShort: "dom_lun_mar_mer_gio_ven_sab".split("_"),
|
||
weekdaysMin: "do_lu_ma_me_gi_ve_sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: function () {
|
||
return "[Oggi a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT"
|
||
}, nextDay: function () {
|
||
return "[Domani a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT"
|
||
}, nextWeek: function () {
|
||
return "dddd [a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT"
|
||
}, lastDay: function () {
|
||
return "[Ieri a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT"
|
||
}, lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[La scorsa] dddd [a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT";
|
||
default:
|
||
return "[Lo scorso] dddd [a" + (this.hours() > 1 ? "lle " : this.hours() === 0 ? " " : "ll'") + "]LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "tra %s",
|
||
past: "%s fa",
|
||
s: "alcuni secondi",
|
||
ss: "%d secondi",
|
||
m: "un minuto",
|
||
mm: "%d minuti",
|
||
h: "un'ora",
|
||
hh: "%d ore",
|
||
d: "un giorno",
|
||
dd: "%d giorni",
|
||
w: "una settimana",
|
||
ww: "%d settimane",
|
||
M: "un mese",
|
||
MM: "%d mesi",
|
||
y: "un anno",
|
||
yy: "%d anni"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("it-ch", {
|
||
months: "gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),
|
||
monthsShort: "gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),
|
||
weekdays: "domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato".split("_"),
|
||
weekdaysShort: "dom_lun_mar_mer_gio_ven_sab".split("_"),
|
||
weekdaysMin: "do_lu_ma_me_gi_ve_sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Oggi alle] LT",
|
||
nextDay: "[Domani alle] LT",
|
||
nextWeek: "dddd [alle] LT",
|
||
lastDay: "[Ieri alle] LT",
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[la scorsa] dddd [alle] LT";
|
||
default:
|
||
return "[lo scorso] dddd [alle] LT"
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: function (e) {
|
||
return (/^[0-9].+$/.test(e) ? "tra" : "in") + " " + e
|
||
},
|
||
past: "%s fa",
|
||
s: "alcuni secondi",
|
||
ss: "%d secondi",
|
||
m: "un minuto",
|
||
mm: "%d minuti",
|
||
h: "un'ora",
|
||
hh: "%d ore",
|
||
d: "un giorno",
|
||
dd: "%d giorni",
|
||
M: "un mese",
|
||
MM: "%d mesi",
|
||
y: "un anno",
|
||
yy: "%d anni"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ja", {
|
||
eras: [{since: "2019-05-01", offset: 1, name: "令和", narrow: "㋿", abbr: "R"}, {
|
||
since: "1989-01-08",
|
||
until: "2019-04-30",
|
||
offset: 1,
|
||
name: "平成",
|
||
narrow: "㍻",
|
||
abbr: "H"
|
||
}, {
|
||
since: "1926-12-25",
|
||
until: "1989-01-07",
|
||
offset: 1,
|
||
name: "昭和",
|
||
narrow: "㍼",
|
||
abbr: "S"
|
||
}, {
|
||
since: "1912-07-30",
|
||
until: "1926-12-24",
|
||
offset: 1,
|
||
name: "大正",
|
||
narrow: "㍽",
|
||
abbr: "T"
|
||
}, {
|
||
since: "1873-01-01",
|
||
until: "1912-07-29",
|
||
offset: 6,
|
||
name: "明治",
|
||
narrow: "㍾",
|
||
abbr: "M"
|
||
}, {
|
||
since: "0001-01-01",
|
||
until: "1873-12-31",
|
||
offset: 1,
|
||
name: "西暦",
|
||
narrow: "AD",
|
||
abbr: "AD"
|
||
}, {since: "0000-12-31", until: -Infinity, offset: 1, name: "紀元前", narrow: "BC", abbr: "BC"}],
|
||
eraYearOrdinalRegex: /(元|\d+)年/,
|
||
eraYearOrdinalParse: function (e, t) {
|
||
return t[1] === "元" ? 1 : parseInt(t[1] || e, 10)
|
||
},
|
||
months: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
weekdays: "日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),
|
||
weekdaysShort: "日_月_火_水_木_金_土".split("_"),
|
||
weekdaysMin: "日_月_火_水_木_金_土".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY/MM/DD",
|
||
LL: "YYYY年M月D日",
|
||
LLL: "YYYY年M月D日 HH:mm",
|
||
LLLL: "YYYY年M月D日 dddd HH:mm",
|
||
l: "YYYY/MM/DD",
|
||
ll: "YYYY年M月D日",
|
||
lll: "YYYY年M月D日 HH:mm",
|
||
llll: "YYYY年M月D日(ddd) HH:mm"
|
||
},
|
||
meridiemParse: /午前|午後/i,
|
||
isPM: function (e) {
|
||
return e === "午後"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "午前"; else return "午後"
|
||
},
|
||
calendar: {
|
||
sameDay: "[今日] LT", nextDay: "[明日] LT", nextWeek: function (e) {
|
||
if (e.week() !== this.week()) return "[来週]dddd LT"; else return "dddd LT"
|
||
}, lastDay: "[昨日] LT", lastWeek: function (e) {
|
||
if (this.week() !== e.week()) return "[先週]dddd LT"; else return "dddd LT"
|
||
}, sameElse: "L"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}日/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"y":
|
||
return e === 1 ? "元年" : e + "年";
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "日";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: "%s後",
|
||
past: "%s前",
|
||
s: "数秒",
|
||
ss: "%d秒",
|
||
m: "1分",
|
||
mm: "%d分",
|
||
h: "1時間",
|
||
hh: "%d時間",
|
||
d: "1日",
|
||
dd: "%d日",
|
||
M: "1ヶ月",
|
||
MM: "%dヶ月",
|
||
y: "1年",
|
||
yy: "%d年"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("jv", {
|
||
months: "Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember".split("_"),
|
||
monthsShort: "Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des".split("_"),
|
||
weekdays: "Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu".split("_"),
|
||
weekdaysShort: "Min_Sen_Sel_Reb_Kem_Jem_Sep".split("_"),
|
||
weekdaysMin: "Mg_Sn_Sl_Rb_Km_Jm_Sp".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [pukul] HH.mm",
|
||
LLLL: "dddd, D MMMM YYYY [pukul] HH.mm"
|
||
},
|
||
meridiemParse: /enjing|siyang|sonten|ndalu/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "enjing") return e; else if (t === "siyang") return e >= 11 ? e : e + 12; else if (t === "sonten" || t === "ndalu") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 11) return "enjing"; else if (e < 15) return "siyang"; else if (e < 19) return "sonten"; else return "ndalu"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Dinten puniko pukul] LT",
|
||
nextDay: "[Mbenjang pukul] LT",
|
||
nextWeek: "dddd [pukul] LT",
|
||
lastDay: "[Kala wingi pukul] LT",
|
||
lastWeek: "dddd [kepengker pukul] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "wonten ing %s",
|
||
past: "%s ingkang kepengker",
|
||
s: "sawetawis detik",
|
||
ss: "%d detik",
|
||
m: "setunggal menit",
|
||
mm: "%d menit",
|
||
h: "setunggal jam",
|
||
hh: "%d jam",
|
||
d: "sedinten",
|
||
dd: "%d dinten",
|
||
M: "sewulan",
|
||
MM: "%d wulan",
|
||
y: "setaun",
|
||
yy: "%d taun"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ka", {
|
||
months: "იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი".split("_"),
|
||
monthsShort: "იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ".split("_"),
|
||
weekdays: {
|
||
standalone: "კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი".split("_"),
|
||
format: "კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს".split("_"),
|
||
isFormat: /(წინა|შემდეგ)/
|
||
},
|
||
weekdaysShort: "კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ".split("_"),
|
||
weekdaysMin: "კვ_ორ_სა_ოთ_ხუ_პა_შა".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[დღეს] LT[-ზე]",
|
||
nextDay: "[ხვალ] LT[-ზე]",
|
||
lastDay: "[გუშინ] LT[-ზე]",
|
||
nextWeek: "[შემდეგ] dddd LT[-ზე]",
|
||
lastWeek: "[წინა] dddd LT-ზე",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: function (e) {
|
||
return e.replace(/(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/, function (e, t, n) {
|
||
return n === "ი" ? t + "ში" : t + n + "ში"
|
||
})
|
||
},
|
||
past: function (e) {
|
||
if (/(წამი|წუთი|საათი|დღე|თვე)/.test(e)) return e.replace(/(ი|ე)$/, "ის წინ");
|
||
if (/წელი/.test(e)) return e.replace(/წელი$/, "წლის წინ");
|
||
return e
|
||
},
|
||
s: "რამდენიმე წამი",
|
||
ss: "%d წამი",
|
||
m: "წუთი",
|
||
mm: "%d წუთი",
|
||
h: "საათი",
|
||
hh: "%d საათი",
|
||
d: "დღე",
|
||
dd: "%d დღე",
|
||
M: "თვე",
|
||
MM: "%d თვე",
|
||
y: "წელი",
|
||
yy: "%d წელი"
|
||
},
|
||
dayOfMonthOrdinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,
|
||
ordinal: function (e) {
|
||
if (e === 0) return e;
|
||
if (e === 1) return e + "-ლი";
|
||
if (e < 20 || e <= 100 && e % 20 === 0 || e % 100 === 0) return "მე-" + e;
|
||
return e + "-ე"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var i = {
|
||
0: "-ші",
|
||
1: "-ші",
|
||
2: "-ші",
|
||
3: "-ші",
|
||
4: "-ші",
|
||
5: "-ші",
|
||
6: "-шы",
|
||
7: "-ші",
|
||
8: "-ші",
|
||
9: "-шы",
|
||
10: "-шы",
|
||
20: "-шы",
|
||
30: "-шы",
|
||
40: "-шы",
|
||
50: "-ші",
|
||
60: "-шы",
|
||
70: "-ші",
|
||
80: "-ші",
|
||
90: "-шы",
|
||
100: "-ші"
|
||
}, t;
|
||
e.defineLocale("kk", {
|
||
months: "қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан".split("_"),
|
||
monthsShort: "қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел".split("_"),
|
||
weekdays: "жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі".split("_"),
|
||
weekdaysShort: "жек_дүй_сей_сәр_бей_жұм_сен".split("_"),
|
||
weekdaysMin: "жк_дй_сй_ср_бй_жм_сн".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Бүгін сағат] LT",
|
||
nextDay: "[Ертең сағат] LT",
|
||
nextWeek: "dddd [сағат] LT",
|
||
lastDay: "[Кеше сағат] LT",
|
||
lastWeek: "[Өткен аптаның] dddd [сағат] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s ішінде",
|
||
past: "%s бұрын",
|
||
s: "бірнеше секунд",
|
||
ss: "%d секунд",
|
||
m: "бір минут",
|
||
mm: "%d минут",
|
||
h: "бір сағат",
|
||
hh: "%d сағат",
|
||
d: "бір күн",
|
||
dd: "%d күн",
|
||
M: "бір ай",
|
||
MM: "%d ай",
|
||
y: "бір жыл",
|
||
yy: "%d жыл"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(ші|шы)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10, n = e >= 100 ? 100 : null;
|
||
return e + (i[e] || i[t] || i[n])
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "១", 2: "២", 3: "៣", 4: "៤", 5: "៥", 6: "៦", 7: "៧", 8: "៨", 9: "៩", 0: "០"}, n = {
|
||
"១": "1",
|
||
"២": "2",
|
||
"៣": "3",
|
||
"៤": "4",
|
||
"៥": "5",
|
||
"៦": "6",
|
||
"៧": "7",
|
||
"៨": "8",
|
||
"៩": "9",
|
||
"០": "0"
|
||
}, i;
|
||
e.defineLocale("km", {
|
||
months: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),
|
||
monthsShort: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"),
|
||
weekdays: "អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"),
|
||
weekdaysShort: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),
|
||
weekdaysMin: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ព្រឹក|ល្ងាច/,
|
||
isPM: function (e) {
|
||
return e === "ល្ងាច"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ព្រឹក"; else return "ល្ងាច"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ថ្ងៃនេះ ម៉ោង] LT",
|
||
nextDay: "[ស្អែក ម៉ោង] LT",
|
||
nextWeek: "dddd [ម៉ោង] LT",
|
||
lastDay: "[ម្សិលមិញ ម៉ោង] LT",
|
||
lastWeek: "dddd [សប្តាហ៍មុន] [ម៉ោង] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%sទៀត",
|
||
past: "%sមុន",
|
||
s: "ប៉ុន្មានវិនាទី",
|
||
ss: "%d វិនាទី",
|
||
m: "មួយនាទី",
|
||
mm: "%d នាទី",
|
||
h: "មួយម៉ោង",
|
||
hh: "%d ម៉ោង",
|
||
d: "មួយថ្ងៃ",
|
||
dd: "%d ថ្ងៃ",
|
||
M: "មួយខែ",
|
||
MM: "%d ខែ",
|
||
y: "មួយឆ្នាំ",
|
||
yy: "%d ឆ្នាំ"
|
||
},
|
||
dayOfMonthOrdinalParse: /ទី\d{1,2}/,
|
||
ordinal: "ទី%d",
|
||
preparse: function (e) {
|
||
return e.replace(/[១២៣៤៥៦៧៨៩០]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "೧", 2: "೨", 3: "೩", 4: "೪", 5: "೫", 6: "೬", 7: "೭", 8: "೮", 9: "೯", 0: "೦"}, n = {
|
||
"೧": "1",
|
||
"೨": "2",
|
||
"೩": "3",
|
||
"೪": "4",
|
||
"೫": "5",
|
||
"೬": "6",
|
||
"೭": "7",
|
||
"೮": "8",
|
||
"೯": "9",
|
||
"೦": "0"
|
||
}, i;
|
||
e.defineLocale("kn", {
|
||
months: "ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್".split("_"),
|
||
monthsShort: "ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ".split("_"),
|
||
weekdaysShort: "ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ".split("_"),
|
||
weekdaysMin: "ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm",
|
||
LTS: "A h:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ಇಂದು] LT",
|
||
nextDay: "[ನಾಳೆ] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[ನಿನ್ನೆ] LT",
|
||
lastWeek: "[ಕೊನೆಯ] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s ನಂತರ",
|
||
past: "%s ಹಿಂದೆ",
|
||
s: "ಕೆಲವು ಕ್ಷಣಗಳು",
|
||
ss: "%d ಸೆಕೆಂಡುಗಳು",
|
||
m: "ಒಂದು ನಿಮಿಷ",
|
||
mm: "%d ನಿಮಿಷ",
|
||
h: "ಒಂದು ಗಂಟೆ",
|
||
hh: "%d ಗಂಟೆ",
|
||
d: "ಒಂದು ದಿನ",
|
||
dd: "%d ದಿನ",
|
||
M: "ಒಂದು ತಿಂಗಳು",
|
||
MM: "%d ತಿಂಗಳು",
|
||
y: "ಒಂದು ವರ್ಷ",
|
||
yy: "%d ವರ್ಷ"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "ರಾತ್ರಿ") return e < 4 ? e : e + 12; else if (t === "ಬೆಳಿಗ್ಗೆ") return e; else if (t === "ಮಧ್ಯಾಹ್ನ") return e >= 10 ? e : e + 12; else if (t === "ಸಂಜೆ") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "ರಾತ್ರಿ"; else if (e < 10) return "ಬೆಳಿಗ್ಗೆ"; else if (e < 17) return "ಮಧ್ಯಾಹ್ನ"; else if (e < 20) return "ಸಂಜೆ"; else return "ರಾತ್ರಿ"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(ನೇ)/,
|
||
ordinal: function (e) {
|
||
return e + "ನೇ"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ko", {
|
||
months: "1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),
|
||
monthsShort: "1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월".split("_"),
|
||
weekdays: "일요일_월요일_화요일_수요일_목요일_금요일_토요일".split("_"),
|
||
weekdaysShort: "일_월_화_수_목_금_토".split("_"),
|
||
weekdaysMin: "일_월_화_수_목_금_토".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm",
|
||
LTS: "A h:mm:ss",
|
||
L: "YYYY.MM.DD.",
|
||
LL: "YYYY년 MMMM D일",
|
||
LLL: "YYYY년 MMMM D일 A h:mm",
|
||
LLLL: "YYYY년 MMMM D일 dddd A h:mm",
|
||
l: "YYYY.MM.DD.",
|
||
ll: "YYYY년 MMMM D일",
|
||
lll: "YYYY년 MMMM D일 A h:mm",
|
||
llll: "YYYY년 MMMM D일 dddd A h:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "오늘 LT",
|
||
nextDay: "내일 LT",
|
||
nextWeek: "dddd LT",
|
||
lastDay: "어제 LT",
|
||
lastWeek: "지난주 dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s 후",
|
||
past: "%s 전",
|
||
s: "몇 초",
|
||
ss: "%d초",
|
||
m: "1분",
|
||
mm: "%d분",
|
||
h: "한 시간",
|
||
hh: "%d시간",
|
||
d: "하루",
|
||
dd: "%d일",
|
||
M: "한 달",
|
||
MM: "%d달",
|
||
y: "일 년",
|
||
yy: "%d년"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(일|월|주)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "일";
|
||
case"M":
|
||
return e + "월";
|
||
case"w":
|
||
case"W":
|
||
return e + "주";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
meridiemParse: /오전|오후/,
|
||
isPM: function (e) {
|
||
return e === "오후"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
return e < 12 ? "오전" : "오후"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "١", 2: "٢", 3: "٣", 4: "٤", 5: "٥", 6: "٦", 7: "٧", 8: "٨", 9: "٩", 0: "٠"}, n = {
|
||
"١": "1",
|
||
"٢": "2",
|
||
"٣": "3",
|
||
"٤": "4",
|
||
"٥": "5",
|
||
"٦": "6",
|
||
"٧": "7",
|
||
"٨": "8",
|
||
"٩": "9",
|
||
"٠": "0"
|
||
},
|
||
i = ["کانونی دووەم", "شوبات", "ئازار", "نیسان", "ئایار", "حوزەیران", "تەمموز", "ئاب", "ئەیلوول", "تشرینی یەكەم", "تشرینی دووەم", "كانونی یەکەم"],
|
||
r;
|
||
e.defineLocale("ku", {
|
||
months: i,
|
||
monthsShort: i,
|
||
weekdays: "یهكشهممه_دووشهممه_سێشهممه_چوارشهممه_پێنجشهممه_ههینی_شهممه".split("_"),
|
||
weekdaysShort: "یهكشهم_دووشهم_سێشهم_چوارشهم_پێنجشهم_ههینی_شهممه".split("_"),
|
||
weekdaysMin: "ی_د_س_چ_پ_ه_ش".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ئێواره|بهیانی/,
|
||
isPM: function (e) {
|
||
return /ئێواره/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "بهیانی"; else return "ئێواره"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ئهمرۆ كاتژمێر] LT",
|
||
nextDay: "[بهیانی كاتژمێر] LT",
|
||
nextWeek: "dddd [كاتژمێر] LT",
|
||
lastDay: "[دوێنێ كاتژمێر] LT",
|
||
lastWeek: "dddd [كاتژمێر] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "له %s",
|
||
past: "%s",
|
||
s: "چهند چركهیهك",
|
||
ss: "چركه %d",
|
||
m: "یهك خولهك",
|
||
mm: "%d خولهك",
|
||
h: "یهك كاتژمێر",
|
||
hh: "%d كاتژمێر",
|
||
d: "یهك ڕۆژ",
|
||
dd: "%d ڕۆژ",
|
||
M: "یهك مانگ",
|
||
MM: "%d مانگ",
|
||
y: "یهك ساڵ",
|
||
yy: "%d ساڵ"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (e) {
|
||
return n[e]
|
||
}).replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
}).replace(/,/g, "،")
|
||
},
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var i = {
|
||
0: "-чү",
|
||
1: "-чи",
|
||
2: "-чи",
|
||
3: "-чү",
|
||
4: "-чү",
|
||
5: "-чи",
|
||
6: "-чы",
|
||
7: "-чи",
|
||
8: "-чи",
|
||
9: "-чу",
|
||
10: "-чу",
|
||
20: "-чы",
|
||
30: "-чу",
|
||
40: "-чы",
|
||
50: "-чү",
|
||
60: "-чы",
|
||
70: "-чи",
|
||
80: "-чи",
|
||
90: "-чу",
|
||
100: "-чү"
|
||
}, t;
|
||
e.defineLocale("ky", {
|
||
months: "январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_"),
|
||
monthsShort: "янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек".split("_"),
|
||
weekdays: "Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби".split("_"),
|
||
weekdaysShort: "Жек_Дүй_Шей_Шар_Бей_Жум_Ише".split("_"),
|
||
weekdaysMin: "Жк_Дй_Шй_Шр_Бй_Жм_Иш".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Бүгүн саат] LT",
|
||
nextDay: "[Эртең саат] LT",
|
||
nextWeek: "dddd [саат] LT",
|
||
lastDay: "[Кечээ саат] LT",
|
||
lastWeek: "[Өткөн аптанын] dddd [күнү] [саат] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s ичинде",
|
||
past: "%s мурун",
|
||
s: "бирнече секунд",
|
||
ss: "%d секунд",
|
||
m: "бир мүнөт",
|
||
mm: "%d мүнөт",
|
||
h: "бир саат",
|
||
hh: "%d саат",
|
||
d: "бир күн",
|
||
dd: "%d күн",
|
||
M: "бир ай",
|
||
MM: "%d ай",
|
||
y: "бир жыл",
|
||
yy: "%d жыл"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(чи|чы|чү|чу)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10, n = e >= 100 ? 100 : null;
|
||
return e + (i[e] || i[t] || i[n])
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = {
|
||
m: ["eng Minutt", "enger Minutt"],
|
||
h: ["eng Stonn", "enger Stonn"],
|
||
d: ["een Dag", "engem Dag"],
|
||
M: ["ee Mount", "engem Mount"],
|
||
y: ["ee Joer", "engem Joer"]
|
||
};
|
||
return t ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
function n(e) {
|
||
var t = e.substr(0, e.indexOf(" "));
|
||
if (r(t)) return "a " + e;
|
||
return "an " + e
|
||
}
|
||
|
||
function i(e) {
|
||
var t = e.substr(0, e.indexOf(" "));
|
||
if (r(t)) return "viru " + e;
|
||
return "virun " + e
|
||
}
|
||
|
||
function r(e) {
|
||
e = parseInt(e, 10);
|
||
if (isNaN(e)) return false;
|
||
if (e < 0) return true; else if (e < 10) {
|
||
if (4 <= e && e <= 7) return true;
|
||
return false
|
||
} else if (e < 100) {
|
||
var t = e % 10, n = e / 10;
|
||
if (t === 0) return r(n);
|
||
return r(t)
|
||
} else if (e < 1e4) {
|
||
while (e >= 10) e = e / 10;
|
||
return r(e)
|
||
} else {
|
||
e = e / 1e3;
|
||
return r(e)
|
||
}
|
||
}
|
||
|
||
var a;
|
||
e.defineLocale("lb", {
|
||
months: "Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),
|
||
monthsShort: "Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg".split("_"),
|
||
weekdaysShort: "So._Mé._Dë._Më._Do._Fr._Sa.".split("_"),
|
||
weekdaysMin: "So_Mé_Dë_Më_Do_Fr_Sa".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm [Auer]",
|
||
LTS: "H:mm:ss [Auer]",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm [Auer]",
|
||
LLLL: "dddd, D. MMMM YYYY H:mm [Auer]"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Haut um] LT",
|
||
sameElse: "L",
|
||
nextDay: "[Muer um] LT",
|
||
nextWeek: "dddd [um] LT",
|
||
lastDay: "[Gëschter um] LT",
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 2:
|
||
case 4:
|
||
return "[Leschten] dddd [um] LT";
|
||
default:
|
||
return "[Leschte] dddd [um] LT"
|
||
}
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: n,
|
||
past: i,
|
||
s: "e puer Sekonnen",
|
||
ss: "%d Sekonnen",
|
||
m: t,
|
||
mm: "%d Minutten",
|
||
h: t,
|
||
hh: "%d Stonnen",
|
||
d: t,
|
||
dd: "%d Deeg",
|
||
M: t,
|
||
MM: "%d Méint",
|
||
y: t,
|
||
yy: "%d Joer"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("lo", {
|
||
months: "ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),
|
||
monthsShort: "ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ".split("_"),
|
||
weekdays: "ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),
|
||
weekdaysShort: "ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ".split("_"),
|
||
weekdaysMin: "ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "ວັນdddd D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/,
|
||
isPM: function (e) {
|
||
return e === "ຕອນແລງ"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ຕອນເຊົ້າ"; else return "ຕອນແລງ"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ມື້ນີ້ເວລາ] LT",
|
||
nextDay: "[ມື້ອື່ນເວລາ] LT",
|
||
nextWeek: "[ວັນ]dddd[ໜ້າເວລາ] LT",
|
||
lastDay: "[ມື້ວານນີ້ເວລາ] LT",
|
||
lastWeek: "[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "ອີກ %s",
|
||
past: "%sຜ່ານມາ",
|
||
s: "ບໍ່ເທົ່າໃດວິນາທີ",
|
||
ss: "%d ວິນາທີ",
|
||
m: "1 ນາທີ",
|
||
mm: "%d ນາທີ",
|
||
h: "1 ຊົ່ວໂມງ",
|
||
hh: "%d ຊົ່ວໂມງ",
|
||
d: "1 ມື້",
|
||
dd: "%d ມື້",
|
||
M: "1 ເດືອນ",
|
||
MM: "%d ເດືອນ",
|
||
y: "1 ປີ",
|
||
yy: "%d ປີ"
|
||
},
|
||
dayOfMonthOrdinalParse: /(ທີ່)\d{1,2}/,
|
||
ordinal: function (e) {
|
||
return "ທີ່" + e
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {
|
||
ss: "sekundė_sekundžių_sekundes",
|
||
m: "minutė_minutės_minutę",
|
||
mm: "minutės_minučių_minutes",
|
||
h: "valanda_valandos_valandą",
|
||
hh: "valandos_valandų_valandas",
|
||
d: "diena_dienos_dieną",
|
||
dd: "dienos_dienų_dienas",
|
||
M: "mėnuo_mėnesio_mėnesį",
|
||
MM: "mėnesiai_mėnesių_mėnesius",
|
||
y: "metai_metų_metus",
|
||
yy: "metai_metų_metus"
|
||
}, n;
|
||
|
||
function i(e, t, n, i) {
|
||
if (t) return "kelios sekundės"; else return i ? "kelių sekundžių" : "kelias sekundes"
|
||
}
|
||
|
||
function a(e, t, n, i) {
|
||
return t ? o(n)[0] : i ? o(n)[1] : o(n)[2]
|
||
}
|
||
|
||
function s(e) {
|
||
return e % 10 === 0 || e > 10 && e < 20
|
||
}
|
||
|
||
function o(e) {
|
||
return t[e].split("_")
|
||
}
|
||
|
||
function r(e, t, n, i) {
|
||
var r = e + " ";
|
||
if (e === 1) return r + a(e, t, n[0], i); else if (t) return r + (s(e) ? o(n)[1] : o(n)[0]); else if (i) return r + o(n)[1]; else return r + (s(e) ? o(n)[1] : o(n)[2])
|
||
}
|
||
|
||
e.defineLocale("lt", {
|
||
months: {
|
||
format: "sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio".split("_"),
|
||
standalone: "sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis".split("_"),
|
||
isFormat: /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/
|
||
},
|
||
monthsShort: "sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),
|
||
weekdays: {
|
||
format: "sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį".split("_"),
|
||
standalone: "sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis".split("_"),
|
||
isFormat: /dddd HH:mm/
|
||
},
|
||
weekdaysShort: "Sek_Pir_Ant_Tre_Ket_Pen_Šeš".split("_"),
|
||
weekdaysMin: "S_P_A_T_K_Pn_Š".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "YYYY [m.] MMMM D [d.]",
|
||
LLL: "YYYY [m.] MMMM D [d.], HH:mm [val.]",
|
||
LLLL: "YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",
|
||
l: "YYYY-MM-DD",
|
||
ll: "YYYY [m.] MMMM D [d.]",
|
||
lll: "YYYY [m.] MMMM D [d.], HH:mm [val.]",
|
||
llll: "YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Šiandien] LT",
|
||
nextDay: "[Rytoj] LT",
|
||
nextWeek: "dddd LT",
|
||
lastDay: "[Vakar] LT",
|
||
lastWeek: "[Praėjusį] dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "po %s",
|
||
past: "prieš %s",
|
||
s: i,
|
||
ss: r,
|
||
m: a,
|
||
mm: r,
|
||
h: a,
|
||
hh: r,
|
||
d: a,
|
||
dd: r,
|
||
M: a,
|
||
MM: r,
|
||
y: a,
|
||
yy: r
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-oji/,
|
||
ordinal: function (e) {
|
||
return e + "-oji"
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var i = {
|
||
ss: "sekundes_sekundēm_sekunde_sekundes".split("_"),
|
||
m: "minūtes_minūtēm_minūte_minūtes".split("_"),
|
||
mm: "minūtes_minūtēm_minūte_minūtes".split("_"),
|
||
h: "stundas_stundām_stunda_stundas".split("_"),
|
||
hh: "stundas_stundām_stunda_stundas".split("_"),
|
||
d: "dienas_dienām_diena_dienas".split("_"),
|
||
dd: "dienas_dienām_diena_dienas".split("_"),
|
||
M: "mēneša_mēnešiem_mēnesis_mēneši".split("_"),
|
||
MM: "mēneša_mēnešiem_mēnesis_mēneši".split("_"),
|
||
y: "gada_gadiem_gads_gadi".split("_"),
|
||
yy: "gada_gadiem_gads_gadi".split("_")
|
||
}, t;
|
||
|
||
function r(e, t, n) {
|
||
if (n) return t % 10 === 1 && t % 100 !== 11 ? e[2] : e[3]; else return t % 10 === 1 && t % 100 !== 11 ? e[0] : e[1]
|
||
}
|
||
|
||
function n(e, t, n) {
|
||
return e + " " + r(i[n], e, t)
|
||
}
|
||
|
||
function a(e, t, n) {
|
||
return r(i[n], e, t)
|
||
}
|
||
|
||
function s(e, t) {
|
||
return t ? "dažas sekundes" : "dažām sekundēm"
|
||
}
|
||
|
||
e.defineLocale("lv", {
|
||
months: "janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris".split("_"),
|
||
monthsShort: "jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec".split("_"),
|
||
weekdays: "svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena".split("_"),
|
||
weekdaysShort: "Sv_P_O_T_C_Pk_S".split("_"),
|
||
weekdaysMin: "Sv_P_O_T_C_Pk_S".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY.",
|
||
LL: "YYYY. [gada] D. MMMM",
|
||
LLL: "YYYY. [gada] D. MMMM, HH:mm",
|
||
LLLL: "YYYY. [gada] D. MMMM, dddd, HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Šodien pulksten] LT",
|
||
nextDay: "[Rīt pulksten] LT",
|
||
nextWeek: "dddd [pulksten] LT",
|
||
lastDay: "[Vakar pulksten] LT",
|
||
lastWeek: "[Pagājušā] dddd [pulksten] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "pēc %s",
|
||
past: "pirms %s",
|
||
s: s,
|
||
ss: n,
|
||
m: a,
|
||
mm: n,
|
||
h: a,
|
||
hh: n,
|
||
d: a,
|
||
dd: n,
|
||
M: a,
|
||
MM: n,
|
||
y: a,
|
||
yy: n
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var r = {
|
||
words: {
|
||
ss: ["sekund", "sekunda", "sekundi"],
|
||
m: ["jedan minut", "jednog minuta"],
|
||
mm: ["minut", "minuta", "minuta"],
|
||
h: ["jedan sat", "jednog sata"],
|
||
hh: ["sat", "sata", "sati"],
|
||
dd: ["dan", "dana", "dana"],
|
||
MM: ["mjesec", "mjeseca", "mjeseci"],
|
||
yy: ["godina", "godine", "godina"]
|
||
}, correctGrammaticalCase: function (e, t) {
|
||
return e === 1 ? t[0] : e >= 2 && e <= 4 ? t[1] : t[2]
|
||
}, translate: function (e, t, n) {
|
||
var i = r.words[n];
|
||
if (n.length === 1) return t ? i[0] : i[1]; else return e + " " + r.correctGrammaticalCase(e, i)
|
||
}
|
||
}, t;
|
||
e.defineLocale("me", {
|
||
months: "januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),
|
||
monthsShort: "jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota".split("_"),
|
||
weekdaysShort: "ned._pon._uto._sri._čet._pet._sub.".split("_"),
|
||
weekdaysMin: "ne_po_ut_sr_če_pe_su".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[danas u] LT", nextDay: "[sjutra u] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[u] [nedjelju] [u] LT";
|
||
case 3:
|
||
return "[u] [srijedu] [u] LT";
|
||
case 6:
|
||
return "[u] [subotu] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[u] dddd [u] LT"
|
||
}
|
||
}, lastDay: "[juče u] LT", lastWeek: function () {
|
||
var e = ["[prošle] [nedjelje] [u] LT", "[prošlog] [ponedjeljka] [u] LT", "[prošlog] [utorka] [u] LT", "[prošle] [srijede] [u] LT", "[prošlog] [četvrtka] [u] LT", "[prošlog] [petka] [u] LT", "[prošle] [subote] [u] LT"];
|
||
return e[this.day()]
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "prije %s",
|
||
s: "nekoliko sekundi",
|
||
ss: r.translate,
|
||
m: r.translate,
|
||
mm: r.translate,
|
||
h: r.translate,
|
||
hh: r.translate,
|
||
d: "dan",
|
||
dd: r.translate,
|
||
M: "mjesec",
|
||
MM: r.translate,
|
||
y: "godinu",
|
||
yy: r.translate
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("mi", {
|
||
months: "Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea".split("_"),
|
||
monthsShort: "Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki".split("_"),
|
||
monthsRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
|
||
monthsStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
|
||
monthsShortRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i,
|
||
monthsShortStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i,
|
||
weekdays: "Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei".split("_"),
|
||
weekdaysShort: "Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),
|
||
weekdaysMin: "Ta_Ma_Tū_We_Tāi_Pa_Hā".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [i] HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY [i] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[i teie mahana, i] LT",
|
||
nextDay: "[apopo i] LT",
|
||
nextWeek: "dddd [i] LT",
|
||
lastDay: "[inanahi i] LT",
|
||
lastWeek: "dddd [whakamutunga i] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "i roto i %s",
|
||
past: "%s i mua",
|
||
s: "te hēkona ruarua",
|
||
ss: "%d hēkona",
|
||
m: "he meneti",
|
||
mm: "%d meneti",
|
||
h: "te haora",
|
||
hh: "%d haora",
|
||
d: "he ra",
|
||
dd: "%d ra",
|
||
M: "he marama",
|
||
MM: "%d marama",
|
||
y: "he tau",
|
||
yy: "%d tau"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("mk", {
|
||
months: "јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември".split("_"),
|
||
monthsShort: "јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек".split("_"),
|
||
weekdays: "недела_понеделник_вторник_среда_четврток_петок_сабота".split("_"),
|
||
weekdaysShort: "нед_пон_вто_сре_чет_пет_саб".split("_"),
|
||
weekdaysMin: "нe_пo_вт_ср_че_пе_сa".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "D.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY H:mm",
|
||
LLLL: "dddd, D MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Денес во] LT",
|
||
nextDay: "[Утре во] LT",
|
||
nextWeek: "[Во] dddd [во] LT",
|
||
lastDay: "[Вчера во] LT",
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
case 3:
|
||
case 6:
|
||
return "[Изминатата] dddd [во] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[Изминатиот] dddd [во] LT"
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "за %s",
|
||
past: "пред %s",
|
||
s: "неколку секунди",
|
||
ss: "%d секунди",
|
||
m: "една минута",
|
||
mm: "%d минути",
|
||
h: "еден час",
|
||
hh: "%d часа",
|
||
d: "еден ден",
|
||
dd: "%d дена",
|
||
M: "еден месец",
|
||
MM: "%d месеци",
|
||
y: "една година",
|
||
yy: "%d години"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10, n = e % 100;
|
||
if (e === 0) return e + "-ев"; else if (n === 0) return e + "-ен"; else if (n > 10 && n < 20) return e + "-ти"; else if (t === 1) return e + "-ви"; else if (t === 2) return e + "-ри"; else if (t === 7 || t === 8) return e + "-ми"; else return e + "-ти"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ml", {
|
||
months: "ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ".split("_"),
|
||
monthsShort: "ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച".split("_"),
|
||
weekdaysShort: "ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി".split("_"),
|
||
weekdaysMin: "ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm -നു",
|
||
LTS: "A h:mm:ss -നു",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm -നു",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm -നു"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ഇന്ന്] LT",
|
||
nextDay: "[നാളെ] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[ഇന്നലെ] LT",
|
||
lastWeek: "[കഴിഞ്ഞ] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s കഴിഞ്ഞ്",
|
||
past: "%s മുൻപ്",
|
||
s: "അൽപ നിമിഷങ്ങൾ",
|
||
ss: "%d സെക്കൻഡ്",
|
||
m: "ഒരു മിനിറ്റ്",
|
||
mm: "%d മിനിറ്റ്",
|
||
h: "ഒരു മണിക്കൂർ",
|
||
hh: "%d മണിക്കൂർ",
|
||
d: "ഒരു ദിവസം",
|
||
dd: "%d ദിവസം",
|
||
M: "ഒരു മാസം",
|
||
MM: "%d മാസം",
|
||
y: "ഒരു വർഷം",
|
||
yy: "%d വർഷം"
|
||
},
|
||
meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "രാത്രി" && e >= 4 || t === "ഉച്ച കഴിഞ്ഞ്" || t === "വൈകുന്നേരം") return e + 12; else return e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "രാത്രി"; else if (e < 12) return "രാവിലെ"; else if (e < 17) return "ഉച്ച കഴിഞ്ഞ്"; else if (e < 20) return "വൈകുന്നേരം"; else return "രാത്രി"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
switch (n) {
|
||
case"s":
|
||
return t ? "хэдхэн секунд" : "хэдхэн секундын";
|
||
case"ss":
|
||
return e + (t ? " секунд" : " секундын");
|
||
case"m":
|
||
case"mm":
|
||
return e + (t ? " минут" : " минутын");
|
||
case"h":
|
||
case"hh":
|
||
return e + (t ? " цаг" : " цагийн");
|
||
case"d":
|
||
case"dd":
|
||
return e + (t ? " өдөр" : " өдрийн");
|
||
case"M":
|
||
case"MM":
|
||
return e + (t ? " сар" : " сарын");
|
||
case"y":
|
||
case"yy":
|
||
return e + (t ? " жил" : " жилийн");
|
||
default:
|
||
return e
|
||
}
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("mn", {
|
||
months: "Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар".split("_"),
|
||
monthsShort: "1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба".split("_"),
|
||
weekdaysShort: "Ням_Дав_Мяг_Лха_Пүр_Баа_Бям".split("_"),
|
||
weekdaysMin: "Ня_Да_Мя_Лх_Пү_Ба_Бя".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "YYYY оны MMMMын D",
|
||
LLL: "YYYY оны MMMMын D HH:mm",
|
||
LLLL: "dddd, YYYY оны MMMMын D HH:mm"
|
||
},
|
||
meridiemParse: /ҮӨ|ҮХ/i,
|
||
isPM: function (e) {
|
||
return e === "ҮХ"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ҮӨ"; else return "ҮХ"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Өнөөдөр] LT",
|
||
nextDay: "[Маргааш] LT",
|
||
nextWeek: "[Ирэх] dddd LT",
|
||
lastDay: "[Өчигдөр] LT",
|
||
lastWeek: "[Өнгөрсөн] dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s дараа",
|
||
past: "%s өмнө",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: t,
|
||
dd: t,
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2} өдөр/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + " өдөр";
|
||
default:
|
||
return e
|
||
}
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "१", 2: "२", 3: "३", 4: "४", 5: "५", 6: "६", 7: "७", 8: "८", 9: "९", 0: "०"}, n = {
|
||
"१": "1",
|
||
"२": "2",
|
||
"३": "3",
|
||
"४": "4",
|
||
"५": "5",
|
||
"६": "6",
|
||
"७": "7",
|
||
"८": "8",
|
||
"९": "9",
|
||
"०": "0"
|
||
}, i;
|
||
|
||
function r(e, t, n, i) {
|
||
var r = "";
|
||
if (t) switch (n) {
|
||
case"s":
|
||
r = "काही सेकंद";
|
||
break;
|
||
case"ss":
|
||
r = "%d सेकंद";
|
||
break;
|
||
case"m":
|
||
r = "एक मिनिट";
|
||
break;
|
||
case"mm":
|
||
r = "%d मिनिटे";
|
||
break;
|
||
case"h":
|
||
r = "एक तास";
|
||
break;
|
||
case"hh":
|
||
r = "%d तास";
|
||
break;
|
||
case"d":
|
||
r = "एक दिवस";
|
||
break;
|
||
case"dd":
|
||
r = "%d दिवस";
|
||
break;
|
||
case"M":
|
||
r = "एक महिना";
|
||
break;
|
||
case"MM":
|
||
r = "%d महिने";
|
||
break;
|
||
case"y":
|
||
r = "एक वर्ष";
|
||
break;
|
||
case"yy":
|
||
r = "%d वर्षे";
|
||
break
|
||
} else switch (n) {
|
||
case"s":
|
||
r = "काही सेकंदां";
|
||
break;
|
||
case"ss":
|
||
r = "%d सेकंदां";
|
||
break;
|
||
case"m":
|
||
r = "एका मिनिटा";
|
||
break;
|
||
case"mm":
|
||
r = "%d मिनिटां";
|
||
break;
|
||
case"h":
|
||
r = "एका तासा";
|
||
break;
|
||
case"hh":
|
||
r = "%d तासां";
|
||
break;
|
||
case"d":
|
||
r = "एका दिवसा";
|
||
break;
|
||
case"dd":
|
||
r = "%d दिवसां";
|
||
break;
|
||
case"M":
|
||
r = "एका महिन्या";
|
||
break;
|
||
case"MM":
|
||
r = "%d महिन्यां";
|
||
break;
|
||
case"y":
|
||
r = "एका वर्षा";
|
||
break;
|
||
case"yy":
|
||
r = "%d वर्षां";
|
||
break
|
||
}
|
||
return r.replace(/%d/i, e)
|
||
}
|
||
|
||
e.defineLocale("mr", {
|
||
months: "जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर".split("_"),
|
||
monthsShort: "जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार".split("_"),
|
||
weekdaysShort: "रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि".split("_"),
|
||
weekdaysMin: "र_सो_मं_बु_गु_शु_श".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm वाजता",
|
||
LTS: "A h:mm:ss वाजता",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm वाजता",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm वाजता"
|
||
},
|
||
calendar: {
|
||
sameDay: "[आज] LT",
|
||
nextDay: "[उद्या] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[काल] LT",
|
||
lastWeek: "[मागील] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%sमध्ये",
|
||
past: "%sपूर्वी",
|
||
s: r,
|
||
ss: r,
|
||
m: r,
|
||
mm: r,
|
||
h: r,
|
||
hh: r,
|
||
d: r,
|
||
dd: r,
|
||
M: r,
|
||
MM: r,
|
||
y: r,
|
||
yy: r
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[१२३४५६७८९०]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "पहाटे" || t === "सकाळी") return e; else if (t === "दुपारी" || t === "सायंकाळी" || t === "रात्री") return e >= 12 ? e : e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e >= 0 && e < 6) return "पहाटे"; else if (e < 12) return "सकाळी"; else if (e < 17) return "दुपारी"; else if (e < 20) return "सायंकाळी"; else return "रात्री"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ms", {
|
||
months: "Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),
|
||
monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),
|
||
weekdays: "Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),
|
||
weekdaysShort: "Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),
|
||
weekdaysMin: "Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [pukul] HH.mm",
|
||
LLLL: "dddd, D MMMM YYYY [pukul] HH.mm"
|
||
},
|
||
meridiemParse: /pagi|tengahari|petang|malam/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "pagi") return e; else if (t === "tengahari") return e >= 11 ? e : e + 12; else if (t === "petang" || t === "malam") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 11) return "pagi"; else if (e < 15) return "tengahari"; else if (e < 19) return "petang"; else return "malam"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hari ini pukul] LT",
|
||
nextDay: "[Esok pukul] LT",
|
||
nextWeek: "dddd [pukul] LT",
|
||
lastDay: "[Kelmarin pukul] LT",
|
||
lastWeek: "dddd [lepas pukul] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dalam %s",
|
||
past: "%s yang lepas",
|
||
s: "beberapa saat",
|
||
ss: "%d saat",
|
||
m: "seminit",
|
||
mm: "%d minit",
|
||
h: "sejam",
|
||
hh: "%d jam",
|
||
d: "sehari",
|
||
dd: "%d hari",
|
||
M: "sebulan",
|
||
MM: "%d bulan",
|
||
y: "setahun",
|
||
yy: "%d tahun"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ms-my", {
|
||
months: "Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember".split("_"),
|
||
monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis".split("_"),
|
||
weekdays: "Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu".split("_"),
|
||
weekdaysShort: "Ahd_Isn_Sel_Rab_Kha_Jum_Sab".split("_"),
|
||
weekdaysMin: "Ah_Is_Sl_Rb_Km_Jm_Sb".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [pukul] HH.mm",
|
||
LLLL: "dddd, D MMMM YYYY [pukul] HH.mm"
|
||
},
|
||
meridiemParse: /pagi|tengahari|petang|malam/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "pagi") return e; else if (t === "tengahari") return e >= 11 ? e : e + 12; else if (t === "petang" || t === "malam") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 11) return "pagi"; else if (e < 15) return "tengahari"; else if (e < 19) return "petang"; else return "malam"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hari ini pukul] LT",
|
||
nextDay: "[Esok pukul] LT",
|
||
nextWeek: "dddd [pukul] LT",
|
||
lastDay: "[Kelmarin pukul] LT",
|
||
lastWeek: "dddd [lepas pukul] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dalam %s",
|
||
past: "%s yang lepas",
|
||
s: "beberapa saat",
|
||
ss: "%d saat",
|
||
m: "seminit",
|
||
mm: "%d minit",
|
||
h: "sejam",
|
||
hh: "%d jam",
|
||
d: "sehari",
|
||
dd: "%d hari",
|
||
M: "sebulan",
|
||
MM: "%d bulan",
|
||
y: "setahun",
|
||
yy: "%d tahun"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("mt", {
|
||
months: "Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru".split("_"),
|
||
monthsShort: "Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ".split("_"),
|
||
weekdays: "Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt".split("_"),
|
||
weekdaysShort: "Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib".split("_"),
|
||
weekdaysMin: "Ħa_Tn_Tl_Er_Ħa_Ġi_Si".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Illum fil-]LT",
|
||
nextDay: "[Għada fil-]LT",
|
||
nextWeek: "dddd [fil-]LT",
|
||
lastDay: "[Il-bieraħ fil-]LT",
|
||
lastWeek: "dddd [li għadda] [fil-]LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "f’ %s",
|
||
past: "%s ilu",
|
||
s: "ftit sekondi",
|
||
ss: "%d sekondi",
|
||
m: "minuta",
|
||
mm: "%d minuti",
|
||
h: "siegħa",
|
||
hh: "%d siegħat",
|
||
d: "ġurnata",
|
||
dd: "%d ġranet",
|
||
M: "xahar",
|
||
MM: "%d xhur",
|
||
y: "sena",
|
||
yy: "%d sni"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "၁", 2: "၂", 3: "၃", 4: "၄", 5: "၅", 6: "၆", 7: "၇", 8: "၈", 9: "၉", 0: "၀"}, n = {
|
||
"၁": "1",
|
||
"၂": "2",
|
||
"၃": "3",
|
||
"၄": "4",
|
||
"၅": "5",
|
||
"၆": "6",
|
||
"၇": "7",
|
||
"၈": "8",
|
||
"၉": "9",
|
||
"၀": "0"
|
||
}, i;
|
||
e.defineLocale("my", {
|
||
months: "ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ".split("_"),
|
||
monthsShort: "ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ".split("_"),
|
||
weekdays: "တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ".split("_"),
|
||
weekdaysShort: "နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),
|
||
weekdaysMin: "နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ယနေ.] LT [မှာ]",
|
||
nextDay: "[မနက်ဖြန်] LT [မှာ]",
|
||
nextWeek: "dddd LT [မှာ]",
|
||
lastDay: "[မနေ.က] LT [မှာ]",
|
||
lastWeek: "[ပြီးခဲ့သော] dddd LT [မှာ]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "လာမည့် %s မှာ",
|
||
past: "လွန်ခဲ့သော %s က",
|
||
s: "စက္ကန်.အနည်းငယ်",
|
||
ss: "%d စက္ကန့်",
|
||
m: "တစ်မိနစ်",
|
||
mm: "%d မိနစ်",
|
||
h: "တစ်နာရီ",
|
||
hh: "%d နာရီ",
|
||
d: "တစ်ရက်",
|
||
dd: "%d ရက်",
|
||
M: "တစ်လ",
|
||
MM: "%d လ",
|
||
y: "တစ်နှစ်",
|
||
yy: "%d နှစ်"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("nb", {
|
||
months: "januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),
|
||
monthsShort: "jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag".split("_"),
|
||
weekdaysShort: "sø._ma._ti._on._to._fr._lø.".split("_"),
|
||
weekdaysMin: "sø_ma_ti_on_to_fr_lø".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY [kl.] HH:mm",
|
||
LLLL: "dddd D. MMMM YYYY [kl.] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[i dag kl.] LT",
|
||
nextDay: "[i morgen kl.] LT",
|
||
nextWeek: "dddd [kl.] LT",
|
||
lastDay: "[i går kl.] LT",
|
||
lastWeek: "[forrige] dddd [kl.] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "om %s",
|
||
past: "%s siden",
|
||
s: "noen sekunder",
|
||
ss: "%d sekunder",
|
||
m: "ett minutt",
|
||
mm: "%d minutter",
|
||
h: "en time",
|
||
hh: "%d timer",
|
||
d: "en dag",
|
||
dd: "%d dager",
|
||
w: "en uke",
|
||
ww: "%d uker",
|
||
M: "en måned",
|
||
MM: "%d måneder",
|
||
y: "ett år",
|
||
yy: "%d år"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "१", 2: "२", 3: "३", 4: "४", 5: "५", 6: "६", 7: "७", 8: "८", 9: "९", 0: "०"}, n = {
|
||
"१": "1",
|
||
"२": "2",
|
||
"३": "3",
|
||
"४": "4",
|
||
"५": "5",
|
||
"६": "6",
|
||
"७": "7",
|
||
"८": "8",
|
||
"९": "9",
|
||
"०": "0"
|
||
}, i;
|
||
e.defineLocale("ne", {
|
||
months: "जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर".split("_"),
|
||
monthsShort: "जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार".split("_"),
|
||
weekdaysShort: "आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.".split("_"),
|
||
weekdaysMin: "आ._सो._मं._बु._बि._शु._श.".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "Aको h:mm बजे",
|
||
LTS: "Aको h:mm:ss बजे",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, Aको h:mm बजे",
|
||
LLLL: "dddd, D MMMM YYYY, Aको h:mm बजे"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[१२३४५६७८९०]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /राति|बिहान|दिउँसो|साँझ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "राति") return e < 4 ? e : e + 12; else if (t === "बिहान") return e; else if (t === "दिउँसो") return e >= 10 ? e : e + 12; else if (t === "साँझ") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 3) return "राति"; else if (e < 12) return "बिहान"; else if (e < 16) return "दिउँसो"; else if (e < 20) return "साँझ"; else return "राति"
|
||
},
|
||
calendar: {
|
||
sameDay: "[आज] LT",
|
||
nextDay: "[भोलि] LT",
|
||
nextWeek: "[आउँदो] dddd[,] LT",
|
||
lastDay: "[हिजो] LT",
|
||
lastWeek: "[गएको] dddd[,] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%sमा",
|
||
past: "%s अगाडि",
|
||
s: "केही क्षण",
|
||
ss: "%d सेकेण्ड",
|
||
m: "एक मिनेट",
|
||
mm: "%d मिनेट",
|
||
h: "एक घण्टा",
|
||
hh: "%d घण्टा",
|
||
d: "एक दिन",
|
||
dd: "%d दिन",
|
||
M: "एक महिना",
|
||
MM: "%d महिना",
|
||
y: "एक बर्ष",
|
||
yy: "%d बर्ष"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),
|
||
i = "jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),
|
||
t = [/^jan/i, /^feb/i, /^maart|mrt.?$/i, /^apr/i, /^mei$/i, /^jun[i.]?$/i, /^jul[i.]?$/i, /^aug/i, /^sep/i, /^okt/i, /^nov/i, /^dec/i],
|
||
r = /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
|
||
a;
|
||
e.defineLocale("nl", {
|
||
months: "januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,
|
||
monthsShortStrictRegex: /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),
|
||
weekdaysShort: "zo._ma._di._wo._do._vr._za.".split("_"),
|
||
weekdaysMin: "zo_ma_di_wo_do_vr_za".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD-MM-YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[vandaag om] LT",
|
||
nextDay: "[morgen om] LT",
|
||
nextWeek: "dddd [om] LT",
|
||
lastDay: "[gisteren om] LT",
|
||
lastWeek: "[afgelopen] dddd [om] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "over %s",
|
||
past: "%s geleden",
|
||
s: "een paar seconden",
|
||
ss: "%d seconden",
|
||
m: "één minuut",
|
||
mm: "%d minuten",
|
||
h: "één uur",
|
||
hh: "%d uur",
|
||
d: "één dag",
|
||
dd: "%d dagen",
|
||
w: "één week",
|
||
ww: "%d weken",
|
||
M: "één maand",
|
||
MM: "%d maanden",
|
||
y: "één jaar",
|
||
yy: "%d jaar"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
|
||
ordinal: function (e) {
|
||
return e + (e === 1 || e === 8 || e >= 20 ? "ste" : "de")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),
|
||
i = "jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),
|
||
t = [/^jan/i, /^feb/i, /^maart|mrt.?$/i, /^apr/i, /^mei$/i, /^jun[i.]?$/i, /^jul[i.]?$/i, /^aug/i, /^sep/i, /^okt/i, /^nov/i, /^dec/i],
|
||
r = /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
|
||
a;
|
||
e.defineLocale("nl-be", {
|
||
months: "januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),
|
||
monthsShort: function (e, t) {
|
||
if (!e) return n; else if (/-MMM-/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsRegex: r,
|
||
monthsShortRegex: r,
|
||
monthsStrictRegex: /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i,
|
||
monthsShortStrictRegex: /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),
|
||
weekdaysShort: "zo._ma._di._wo._do._vr._za.".split("_"),
|
||
weekdaysMin: "zo_ma_di_wo_do_vr_za".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[vandaag om] LT",
|
||
nextDay: "[morgen om] LT",
|
||
nextWeek: "dddd [om] LT",
|
||
lastDay: "[gisteren om] LT",
|
||
lastWeek: "[afgelopen] dddd [om] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "over %s",
|
||
past: "%s geleden",
|
||
s: "een paar seconden",
|
||
ss: "%d seconden",
|
||
m: "één minuut",
|
||
mm: "%d minuten",
|
||
h: "één uur",
|
||
hh: "%d uur",
|
||
d: "één dag",
|
||
dd: "%d dagen",
|
||
M: "één maand",
|
||
MM: "%d maanden",
|
||
y: "één jaar",
|
||
yy: "%d jaar"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/,
|
||
ordinal: function (e) {
|
||
return e + (e === 1 || e === 8 || e >= 20 ? "ste" : "de")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("nn", {
|
||
months: "januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),
|
||
monthsShort: "jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag".split("_"),
|
||
weekdaysShort: "su._må._ty._on._to._fr._lau.".split("_"),
|
||
weekdaysMin: "su_må_ty_on_to_fr_la".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY [kl.] H:mm",
|
||
LLLL: "dddd D. MMMM YYYY [kl.] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[I dag klokka] LT",
|
||
nextDay: "[I morgon klokka] LT",
|
||
nextWeek: "dddd [klokka] LT",
|
||
lastDay: "[I går klokka] LT",
|
||
lastWeek: "[Føregåande] dddd [klokka] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "om %s",
|
||
past: "%s sidan",
|
||
s: "nokre sekund",
|
||
ss: "%d sekund",
|
||
m: "eit minutt",
|
||
mm: "%d minutt",
|
||
h: "ein time",
|
||
hh: "%d timar",
|
||
d: "ein dag",
|
||
dd: "%d dagar",
|
||
w: "ei veke",
|
||
ww: "%d veker",
|
||
M: "ein månad",
|
||
MM: "%d månader",
|
||
y: "eit år",
|
||
yy: "%d år"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("oc-lnc", {
|
||
months: {
|
||
standalone: "genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre".split("_"),
|
||
format: "de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split("_"),
|
||
isFormat: /D[oD]?(\s)+MMMM/
|
||
},
|
||
monthsShort: "gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte".split("_"),
|
||
weekdaysShort: "dg._dl._dm._dc._dj._dv._ds.".split("_"),
|
||
weekdaysMin: "dg_dl_dm_dc_dj_dv_ds".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM [de] YYYY",
|
||
ll: "D MMM YYYY",
|
||
LLL: "D MMMM [de] YYYY [a] H:mm",
|
||
lll: "D MMM YYYY, H:mm",
|
||
LLLL: "dddd D MMMM [de] YYYY [a] H:mm",
|
||
llll: "ddd D MMM YYYY, H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[uèi a] LT",
|
||
nextDay: "[deman a] LT",
|
||
nextWeek: "dddd [a] LT",
|
||
lastDay: "[ièr a] LT",
|
||
lastWeek: "dddd [passat a] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "d'aquí %s",
|
||
past: "fa %s",
|
||
s: "unas segondas",
|
||
ss: "%d segondas",
|
||
m: "una minuta",
|
||
mm: "%d minutas",
|
||
h: "una ora",
|
||
hh: "%d oras",
|
||
d: "un jorn",
|
||
dd: "%d jorns",
|
||
M: "un mes",
|
||
MM: "%d meses",
|
||
y: "un an",
|
||
yy: "%d ans"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/,
|
||
ordinal: function (e, t) {
|
||
var n = e === 1 ? "r" : e === 2 ? "n" : e === 3 ? "r" : e === 4 ? "t" : "è";
|
||
if (t === "w" || t === "W") n = "a";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "੧", 2: "੨", 3: "੩", 4: "੪", 5: "੫", 6: "੬", 7: "੭", 8: "੮", 9: "੯", 0: "੦"}, n = {
|
||
"੧": "1",
|
||
"੨": "2",
|
||
"੩": "3",
|
||
"੪": "4",
|
||
"੫": "5",
|
||
"੬": "6",
|
||
"੭": "7",
|
||
"੮": "8",
|
||
"੯": "9",
|
||
"੦": "0"
|
||
}, i;
|
||
e.defineLocale("pa-in", {
|
||
months: "ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),
|
||
monthsShort: "ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ".split("_"),
|
||
weekdays: "ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ".split("_"),
|
||
weekdaysShort: "ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),
|
||
weekdaysMin: "ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm ਵਜੇ",
|
||
LTS: "A h:mm:ss ਵਜੇ",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm ਵਜੇ",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm ਵਜੇ"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ਅਜ] LT",
|
||
nextDay: "[ਕਲ] LT",
|
||
nextWeek: "[ਅਗਲਾ] dddd, LT",
|
||
lastDay: "[ਕਲ] LT",
|
||
lastWeek: "[ਪਿਛਲੇ] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s ਵਿੱਚ",
|
||
past: "%s ਪਿਛਲੇ",
|
||
s: "ਕੁਝ ਸਕਿੰਟ",
|
||
ss: "%d ਸਕਿੰਟ",
|
||
m: "ਇਕ ਮਿੰਟ",
|
||
mm: "%d ਮਿੰਟ",
|
||
h: "ਇੱਕ ਘੰਟਾ",
|
||
hh: "%d ਘੰਟੇ",
|
||
d: "ਇੱਕ ਦਿਨ",
|
||
dd: "%d ਦਿਨ",
|
||
M: "ਇੱਕ ਮਹੀਨਾ",
|
||
MM: "%d ਮਹੀਨੇ",
|
||
y: "ਇੱਕ ਸਾਲ",
|
||
yy: "%d ਸਾਲ"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "ਰਾਤ") return e < 4 ? e : e + 12; else if (t === "ਸਵੇਰ") return e; else if (t === "ਦੁਪਹਿਰ") return e >= 10 ? e : e + 12; else if (t === "ਸ਼ਾਮ") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "ਰਾਤ"; else if (e < 10) return "ਸਵੇਰ"; else if (e < 17) return "ਦੁਪਹਿਰ"; else if (e < 20) return "ਸ਼ਾਮ"; else return "ਰਾਤ"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var n = "styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień".split("_"),
|
||
i = "stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia".split("_"),
|
||
t = [/^sty/i, /^lut/i, /^mar/i, /^kwi/i, /^maj/i, /^cze/i, /^lip/i, /^sie/i, /^wrz/i, /^paź/i, /^lis/i, /^gru/i],
|
||
r;
|
||
|
||
function a(e) {
|
||
return e % 10 < 5 && e % 10 > 1 && ~~(e / 10) % 10 !== 1
|
||
}
|
||
|
||
function s(e, t, n) {
|
||
var i = e + " ";
|
||
switch (n) {
|
||
case"ss":
|
||
return i + (a(e) ? "sekundy" : "sekund");
|
||
case"m":
|
||
return t ? "minuta" : "minutę";
|
||
case"mm":
|
||
return i + (a(e) ? "minuty" : "minut");
|
||
case"h":
|
||
return t ? "godzina" : "godzinę";
|
||
case"hh":
|
||
return i + (a(e) ? "godziny" : "godzin");
|
||
case"ww":
|
||
return i + (a(e) ? "tygodnie" : "tygodni");
|
||
case"MM":
|
||
return i + (a(e) ? "miesiące" : "miesięcy");
|
||
case"yy":
|
||
return i + (a(e) ? "lata" : "lat")
|
||
}
|
||
}
|
||
|
||
e.defineLocale("pl", {
|
||
months: function (e, t) {
|
||
if (!e) return n; else if (/D MMMM/.test(t)) return i[e.month()]; else return n[e.month()]
|
||
},
|
||
monthsShort: "sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru".split("_"),
|
||
monthsParse: t,
|
||
longMonthsParse: t,
|
||
shortMonthsParse: t,
|
||
weekdays: "niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota".split("_"),
|
||
weekdaysShort: "ndz_pon_wt_śr_czw_pt_sob".split("_"),
|
||
weekdaysMin: "Nd_Pn_Wt_Śr_Cz_Pt_So".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Dziś o] LT", nextDay: "[Jutro o] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[W niedzielę o] LT";
|
||
case 2:
|
||
return "[We wtorek o] LT";
|
||
case 3:
|
||
return "[W środę o] LT";
|
||
case 6:
|
||
return "[W sobotę o] LT";
|
||
default:
|
||
return "[W] dddd [o] LT"
|
||
}
|
||
}, lastDay: "[Wczoraj o] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[W zeszłą niedzielę o] LT";
|
||
case 3:
|
||
return "[W zeszłą środę o] LT";
|
||
case 6:
|
||
return "[W zeszłą sobotę o] LT";
|
||
default:
|
||
return "[W zeszły] dddd [o] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "%s temu",
|
||
s: "kilka sekund",
|
||
ss: s,
|
||
m: s,
|
||
mm: s,
|
||
h: s,
|
||
hh: s,
|
||
d: "1 dzień",
|
||
dd: "%d dni",
|
||
w: "tydzień",
|
||
ww: s,
|
||
M: "miesiąc",
|
||
MM: s,
|
||
y: "rok",
|
||
yy: s
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("pt", {
|
||
months: "janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),
|
||
monthsShort: "jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),
|
||
weekdays: "Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado".split("_"),
|
||
weekdaysShort: "Dom_Seg_Ter_Qua_Qui_Sex_Sáb".split("_"),
|
||
weekdaysMin: "Do_2ª_3ª_4ª_5ª_6ª_Sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY HH:mm",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hoje às] LT",
|
||
nextDay: "[Amanhã às] LT",
|
||
nextWeek: "dddd [às] LT",
|
||
lastDay: "[Ontem às] LT",
|
||
lastWeek: function () {
|
||
return this.day() === 0 || this.day() === 6 ? "[Último] dddd [às] LT" : "[Última] dddd [às] LT"
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "em %s",
|
||
past: "há %s",
|
||
s: "segundos",
|
||
ss: "%d segundos",
|
||
m: "um minuto",
|
||
mm: "%d minutos",
|
||
h: "uma hora",
|
||
hh: "%d horas",
|
||
d: "um dia",
|
||
dd: "%d dias",
|
||
w: "uma semana",
|
||
ww: "%d semanas",
|
||
M: "um mês",
|
||
MM: "%d meses",
|
||
y: "um ano",
|
||
yy: "%d anos"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("pt-br", {
|
||
months: "janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro".split("_"),
|
||
monthsShort: "jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez".split("_"),
|
||
weekdays: "domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado".split("_"),
|
||
weekdaysShort: "dom_seg_ter_qua_qui_sex_sáb".split("_"),
|
||
weekdaysMin: "do_2ª_3ª_4ª_5ª_6ª_sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D [de] MMMM [de] YYYY",
|
||
LLL: "D [de] MMMM [de] YYYY [às] HH:mm",
|
||
LLLL: "dddd, D [de] MMMM [de] YYYY [às] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hoje às] LT",
|
||
nextDay: "[Amanhã às] LT",
|
||
nextWeek: "dddd [às] LT",
|
||
lastDay: "[Ontem às] LT",
|
||
lastWeek: function () {
|
||
return this.day() === 0 || this.day() === 6 ? "[Último] dddd [às] LT" : "[Última] dddd [às] LT"
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "em %s",
|
||
past: "há %s",
|
||
s: "poucos segundos",
|
||
ss: "%d segundos",
|
||
m: "um minuto",
|
||
mm: "%d minutos",
|
||
h: "uma hora",
|
||
hh: "%d horas",
|
||
d: "um dia",
|
||
dd: "%d dias",
|
||
M: "um mês",
|
||
MM: "%d meses",
|
||
y: "um ano",
|
||
yy: "%d anos"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}º/,
|
||
ordinal: "%dº",
|
||
invalidDate: "Data inválida"
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n) {
|
||
var i = {ss: "secunde", mm: "minute", hh: "ore", dd: "zile", ww: "săptămâni", MM: "luni", yy: "ani"},
|
||
r = " ";
|
||
if (e % 100 >= 20 || e >= 100 && e % 100 === 0) r = " de ";
|
||
return e + r + i[n]
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("ro", {
|
||
months: "ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),
|
||
monthsShort: "ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "duminică_luni_marți_miercuri_joi_vineri_sâmbătă".split("_"),
|
||
weekdaysShort: "Dum_Lun_Mar_Mie_Joi_Vin_Sâm".split("_"),
|
||
weekdaysMin: "Du_Lu_Ma_Mi_Jo_Vi_Sâ".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY H:mm",
|
||
LLLL: "dddd, D MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[azi la] LT",
|
||
nextDay: "[mâine la] LT",
|
||
nextWeek: "dddd [la] LT",
|
||
lastDay: "[ieri la] LT",
|
||
lastWeek: "[fosta] dddd [la] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "peste %s",
|
||
past: "%s în urmă",
|
||
s: "câteva secunde",
|
||
ss: t,
|
||
m: "un minut",
|
||
mm: t,
|
||
h: "o oră",
|
||
hh: t,
|
||
d: "o zi",
|
||
dd: t,
|
||
w: "o săptămână",
|
||
ww: t,
|
||
M: "o lună",
|
||
MM: t,
|
||
y: "un an",
|
||
yy: t
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function r(e, t) {
|
||
var n = e.split("_");
|
||
return t % 10 === 1 && t % 100 !== 11 ? n[0] : t % 10 >= 2 && t % 10 <= 4 && (t % 100 < 10 || t % 100 >= 20) ? n[1] : n[2]
|
||
}
|
||
|
||
function t(e, t, n) {
|
||
var i = {
|
||
ss: t ? "секунда_секунды_секунд" : "секунду_секунды_секунд",
|
||
mm: t ? "минута_минуты_минут" : "минуту_минуты_минут",
|
||
hh: "час_часа_часов",
|
||
dd: "день_дня_дней",
|
||
ww: "неделя_недели_недель",
|
||
MM: "месяц_месяца_месяцев",
|
||
yy: "год_года_лет"
|
||
};
|
||
if (n === "m") return t ? "минута" : "минуту"; else return e + " " + r(i[n], +e)
|
||
}
|
||
|
||
var n = [/^янв/i, /^фев/i, /^мар/i, /^апр/i, /^ма[йя]/i, /^июн/i, /^июл/i, /^авг/i, /^сен/i, /^окт/i, /^ноя/i, /^дек/i],
|
||
i;
|
||
e.defineLocale("ru", {
|
||
months: {
|
||
format: "января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря".split("_"),
|
||
standalone: "январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь".split("_")
|
||
},
|
||
monthsShort: {
|
||
format: "янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.".split("_"),
|
||
standalone: "янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.".split("_")
|
||
},
|
||
weekdays: {
|
||
standalone: "воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),
|
||
format: "воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу".split("_"),
|
||
isFormat: /\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/
|
||
},
|
||
weekdaysShort: "вс_пн_вт_ср_чт_пт_сб".split("_"),
|
||
weekdaysMin: "вс_пн_вт_ср_чт_пт_сб".split("_"),
|
||
monthsParse: n,
|
||
longMonthsParse: n,
|
||
shortMonthsParse: n,
|
||
monthsRegex: /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,
|
||
monthsShortRegex: /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,
|
||
monthsStrictRegex: /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,
|
||
monthsShortStrictRegex: /^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY г.",
|
||
LLL: "D MMMM YYYY г., H:mm",
|
||
LLLL: "dddd, D MMMM YYYY г., H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Сегодня, в] LT",
|
||
nextDay: "[Завтра, в] LT",
|
||
lastDay: "[Вчера, в] LT",
|
||
nextWeek: function (e) {
|
||
if (e.week() !== this.week()) switch (this.day()) {
|
||
case 0:
|
||
return "[В следующее] dddd, [в] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
return "[В следующий] dddd, [в] LT";
|
||
case 3:
|
||
case 5:
|
||
case 6:
|
||
return "[В следующую] dddd, [в] LT"
|
||
} else if (this.day() === 2) return "[Во] dddd, [в] LT"; else return "[В] dddd, [в] LT"
|
||
},
|
||
lastWeek: function (e) {
|
||
if (e.week() !== this.week()) switch (this.day()) {
|
||
case 0:
|
||
return "[В прошлое] dddd, [в] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
return "[В прошлый] dddd, [в] LT";
|
||
case 3:
|
||
case 5:
|
||
case 6:
|
||
return "[В прошлую] dddd, [в] LT"
|
||
} else if (this.day() === 2) return "[Во] dddd, [в] LT"; else return "[В] dddd, [в] LT"
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "через %s",
|
||
past: "%s назад",
|
||
s: "несколько секунд",
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: "час",
|
||
hh: t,
|
||
d: "день",
|
||
dd: t,
|
||
w: "неделя",
|
||
ww: t,
|
||
M: "месяц",
|
||
MM: t,
|
||
y: "год",
|
||
yy: t
|
||
},
|
||
meridiemParse: /ночи|утра|дня|вечера/i,
|
||
isPM: function (e) {
|
||
return /^(дня|вечера)$/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "ночи"; else if (e < 12) return "утра"; else if (e < 17) return "дня"; else return "вечера"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(й|го|я)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"M":
|
||
case"d":
|
||
case"DDD":
|
||
return e + "-й";
|
||
case"D":
|
||
return e + "-го";
|
||
case"w":
|
||
case"W":
|
||
return e + "-я";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = ["جنوري", "فيبروري", "مارچ", "اپريل", "مئي", "جون", "جولاءِ", "آگسٽ", "سيپٽمبر", "آڪٽوبر", "نومبر", "ڊسمبر"],
|
||
n = ["آچر", "سومر", "اڱارو", "اربع", "خميس", "جمع", "ڇنڇر"], i;
|
||
e.defineLocale("sd", {
|
||
months: t,
|
||
monthsShort: t,
|
||
weekdays: n,
|
||
weekdaysShort: n,
|
||
weekdaysMin: n,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd، D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /صبح|شام/,
|
||
isPM: function (e) {
|
||
return "شام" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "صبح";
|
||
return "شام"
|
||
},
|
||
calendar: {
|
||
sameDay: "[اڄ] LT",
|
||
nextDay: "[سڀاڻي] LT",
|
||
nextWeek: "dddd [اڳين هفتي تي] LT",
|
||
lastDay: "[ڪالهه] LT",
|
||
lastWeek: "[گزريل هفتي] dddd [تي] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s پوء",
|
||
past: "%s اڳ",
|
||
s: "چند سيڪنڊ",
|
||
ss: "%d سيڪنڊ",
|
||
m: "هڪ منٽ",
|
||
mm: "%d منٽ",
|
||
h: "هڪ ڪلاڪ",
|
||
hh: "%d ڪلاڪ",
|
||
d: "هڪ ڏينهن",
|
||
dd: "%d ڏينهن",
|
||
M: "هڪ مهينو",
|
||
MM: "%d مهينا",
|
||
y: "هڪ سال",
|
||
yy: "%d سال"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/,/g, "،")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("se", {
|
||
months: "ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu".split("_"),
|
||
monthsShort: "ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov".split("_"),
|
||
weekdays: "sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat".split("_"),
|
||
weekdaysShort: "sotn_vuos_maŋ_gask_duor_bear_láv".split("_"),
|
||
weekdaysMin: "s_v_m_g_d_b_L".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "MMMM D. [b.] YYYY",
|
||
LLL: "MMMM D. [b.] YYYY [ti.] HH:mm",
|
||
LLLL: "dddd, MMMM D. [b.] YYYY [ti.] HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[otne ti] LT",
|
||
nextDay: "[ihttin ti] LT",
|
||
nextWeek: "dddd [ti] LT",
|
||
lastDay: "[ikte ti] LT",
|
||
lastWeek: "[ovddit] dddd [ti] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s geažes",
|
||
past: "maŋit %s",
|
||
s: "moadde sekunddat",
|
||
ss: "%d sekunddat",
|
||
m: "okta minuhta",
|
||
mm: "%d minuhtat",
|
||
h: "okta diimmu",
|
||
hh: "%d diimmut",
|
||
d: "okta beaivi",
|
||
dd: "%d beaivvit",
|
||
M: "okta mánnu",
|
||
MM: "%d mánut",
|
||
y: "okta jahki",
|
||
yy: "%d jagit"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("si", {
|
||
months: "ජනවාරි_පෙබරවාරි_මාර්තු_අප්රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්".split("_"),
|
||
monthsShort: "ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ".split("_"),
|
||
weekdays: "ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා".split("_"),
|
||
weekdaysShort: "ඉරි_සඳු_අඟ_බදා_බ්රහ_සිකු_සෙන".split("_"),
|
||
weekdaysMin: "ඉ_ස_අ_බ_බ්ර_සි_සෙ".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "a h:mm",
|
||
LTS: "a h:mm:ss",
|
||
L: "YYYY/MM/DD",
|
||
LL: "YYYY MMMM D",
|
||
LLL: "YYYY MMMM D, a h:mm",
|
||
LLLL: "YYYY MMMM D [වැනි] dddd, a h:mm:ss"
|
||
},
|
||
calendar: {
|
||
sameDay: "[අද] LT[ට]",
|
||
nextDay: "[හෙට] LT[ට]",
|
||
nextWeek: "dddd LT[ට]",
|
||
lastDay: "[ඊයේ] LT[ට]",
|
||
lastWeek: "[පසුගිය] dddd LT[ට]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%sකින්",
|
||
past: "%sකට පෙර",
|
||
s: "තත්පර කිහිපය",
|
||
ss: "තත්පර %d",
|
||
m: "මිනිත්තුව",
|
||
mm: "මිනිත්තු %d",
|
||
h: "පැය",
|
||
hh: "පැය %d",
|
||
d: "දිනය",
|
||
dd: "දින %d",
|
||
M: "මාසය",
|
||
MM: "මාස %d",
|
||
y: "වසර",
|
||
yy: "වසර %d"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2} වැනි/,
|
||
ordinal: function (e) {
|
||
return e + " වැනි"
|
||
},
|
||
meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./,
|
||
isPM: function (e) {
|
||
return e === "ප.ව." || e === "පස් වරු"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e > 11) return n ? "ප.ව." : "පස් වරු"; else return n ? "පෙ.ව." : "පෙර වරු"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = "január_február_marec_apríl_máj_jún_júl_august_september_október_november_december".split("_"),
|
||
n = "jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec".split("_"), i;
|
||
|
||
function a(e) {
|
||
return e > 1 && e < 5
|
||
}
|
||
|
||
function r(e, t, n, i) {
|
||
var r = e + " ";
|
||
switch (n) {
|
||
case"s":
|
||
return t || i ? "pár sekúnd" : "pár sekundami";
|
||
case"ss":
|
||
if (t || i) return r + (a(e) ? "sekundy" : "sekúnd"); else return r + "sekundami";
|
||
case"m":
|
||
return t ? "minúta" : i ? "minútu" : "minútou";
|
||
case"mm":
|
||
if (t || i) return r + (a(e) ? "minúty" : "minút"); else return r + "minútami";
|
||
case"h":
|
||
return t ? "hodina" : i ? "hodinu" : "hodinou";
|
||
case"hh":
|
||
if (t || i) return r + (a(e) ? "hodiny" : "hodín"); else return r + "hodinami";
|
||
case"d":
|
||
return t || i ? "deň" : "dňom";
|
||
case"dd":
|
||
if (t || i) return r + (a(e) ? "dni" : "dní"); else return r + "dňami";
|
||
case"M":
|
||
return t || i ? "mesiac" : "mesiacom";
|
||
case"MM":
|
||
if (t || i) return r + (a(e) ? "mesiace" : "mesiacov"); else return r + "mesiacmi";
|
||
case"y":
|
||
return t || i ? "rok" : "rokom";
|
||
case"yy":
|
||
if (t || i) return r + (a(e) ? "roky" : "rokov"); else return r + "rokmi"
|
||
}
|
||
}
|
||
|
||
e.defineLocale("sk", {
|
||
months: t,
|
||
monthsShort: n,
|
||
weekdays: "nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota".split("_"),
|
||
weekdaysShort: "ne_po_ut_st_št_pi_so".split("_"),
|
||
weekdaysMin: "ne_po_ut_st_št_pi_so".split("_"),
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd D. MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[dnes o] LT", nextDay: "[zajtra o] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[v nedeľu o] LT";
|
||
case 1:
|
||
case 2:
|
||
return "[v] dddd [o] LT";
|
||
case 3:
|
||
return "[v stredu o] LT";
|
||
case 4:
|
||
return "[vo štvrtok o] LT";
|
||
case 5:
|
||
return "[v piatok o] LT";
|
||
case 6:
|
||
return "[v sobotu o] LT"
|
||
}
|
||
}, lastDay: "[včera o] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[minulú nedeľu o] LT";
|
||
case 1:
|
||
case 2:
|
||
return "[minulý] dddd [o] LT";
|
||
case 3:
|
||
return "[minulú stredu o] LT";
|
||
case 4:
|
||
case 5:
|
||
return "[minulý] dddd [o] LT";
|
||
case 6:
|
||
return "[minulú sobotu o] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "pred %s",
|
||
s: r,
|
||
ss: r,
|
||
m: r,
|
||
mm: r,
|
||
h: r,
|
||
hh: r,
|
||
d: r,
|
||
dd: r,
|
||
M: r,
|
||
MM: r,
|
||
y: r,
|
||
yy: r
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function t(e, t, n, i) {
|
||
var r = e + " ";
|
||
switch (n) {
|
||
case"s":
|
||
return t || i ? "nekaj sekund" : "nekaj sekundami";
|
||
case"ss":
|
||
if (e === 1) r += t ? "sekundo" : "sekundi"; else if (e === 2) r += t || i ? "sekundi" : "sekundah"; else if (e < 5) r += t || i ? "sekunde" : "sekundah"; else r += "sekund";
|
||
return r;
|
||
case"m":
|
||
return t ? "ena minuta" : "eno minuto";
|
||
case"mm":
|
||
if (e === 1) r += t ? "minuta" : "minuto"; else if (e === 2) r += t || i ? "minuti" : "minutama"; else if (e < 5) r += t || i ? "minute" : "minutami"; else r += t || i ? "minut" : "minutami";
|
||
return r;
|
||
case"h":
|
||
return t ? "ena ura" : "eno uro";
|
||
case"hh":
|
||
if (e === 1) r += t ? "ura" : "uro"; else if (e === 2) r += t || i ? "uri" : "urama"; else if (e < 5) r += t || i ? "ure" : "urami"; else r += t || i ? "ur" : "urami";
|
||
return r;
|
||
case"d":
|
||
return t || i ? "en dan" : "enim dnem";
|
||
case"dd":
|
||
if (e === 1) r += t || i ? "dan" : "dnem"; else if (e === 2) r += t || i ? "dni" : "dnevoma"; else r += t || i ? "dni" : "dnevi";
|
||
return r;
|
||
case"M":
|
||
return t || i ? "en mesec" : "enim mesecem";
|
||
case"MM":
|
||
if (e === 1) r += t || i ? "mesec" : "mesecem"; else if (e === 2) r += t || i ? "meseca" : "mesecema"; else if (e < 5) r += t || i ? "mesece" : "meseci"; else r += t || i ? "mesecev" : "meseci";
|
||
return r;
|
||
case"y":
|
||
return t || i ? "eno leto" : "enim letom";
|
||
case"yy":
|
||
if (e === 1) r += t || i ? "leto" : "letom"; else if (e === 2) r += t || i ? "leti" : "letoma"; else if (e < 5) r += t || i ? "leta" : "leti"; else r += t || i ? "let" : "leti";
|
||
return r
|
||
}
|
||
}
|
||
|
||
var n;
|
||
e.defineLocale("sl", {
|
||
months: "januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),
|
||
monthsShort: "jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota".split("_"),
|
||
weekdaysShort: "ned._pon._tor._sre._čet._pet._sob.".split("_"),
|
||
weekdaysMin: "ne_po_to_sr_če_pe_so".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD. MM. YYYY",
|
||
LL: "D. MMMM YYYY",
|
||
LLL: "D. MMMM YYYY H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[danes ob] LT", nextDay: "[jutri ob] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[v] [nedeljo] [ob] LT";
|
||
case 3:
|
||
return "[v] [sredo] [ob] LT";
|
||
case 6:
|
||
return "[v] [soboto] [ob] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[v] dddd [ob] LT"
|
||
}
|
||
}, lastDay: "[včeraj ob] LT", lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[prejšnjo] [nedeljo] [ob] LT";
|
||
case 3:
|
||
return "[prejšnjo] [sredo] [ob] LT";
|
||
case 6:
|
||
return "[prejšnjo] [soboto] [ob] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[prejšnji] dddd [ob] LT"
|
||
}
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "čez %s",
|
||
past: "pred %s",
|
||
s: t,
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: t,
|
||
hh: t,
|
||
d: t,
|
||
dd: t,
|
||
M: t,
|
||
MM: t,
|
||
y: t,
|
||
yy: t
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("sq", {
|
||
months: "Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor".split("_"),
|
||
monthsShort: "Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj".split("_"),
|
||
weekdays: "E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë".split("_"),
|
||
weekdaysShort: "Die_Hën_Mar_Mër_Enj_Pre_Sht".split("_"),
|
||
weekdaysMin: "D_H_Ma_Më_E_P_Sh".split("_"),
|
||
weekdaysParseExact: true,
|
||
meridiemParse: /PD|MD/,
|
||
isPM: function (e) {
|
||
return e.charAt(0) === "M"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
return e < 12 ? "PD" : "MD"
|
||
},
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Sot në] LT",
|
||
nextDay: "[Nesër në] LT",
|
||
nextWeek: "dddd [në] LT",
|
||
lastDay: "[Dje në] LT",
|
||
lastWeek: "dddd [e kaluar në] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "në %s",
|
||
past: "%s më parë",
|
||
s: "disa sekonda",
|
||
ss: "%d sekonda",
|
||
m: "një minutë",
|
||
mm: "%d minuta",
|
||
h: "një orë",
|
||
hh: "%d orë",
|
||
d: "një ditë",
|
||
dd: "%d ditë",
|
||
M: "një muaj",
|
||
MM: "%d muaj",
|
||
y: "një vit",
|
||
yy: "%d vite"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var s = {
|
||
words: {
|
||
ss: ["sekunda", "sekunde", "sekundi"],
|
||
m: ["jedan minut", "jednog minuta"],
|
||
mm: ["minut", "minuta", "minuta"],
|
||
h: ["jedan sat", "jednog sata"],
|
||
hh: ["sat", "sata", "sati"],
|
||
d: ["jedan dan", "jednog dana"],
|
||
dd: ["dan", "dana", "dana"],
|
||
M: ["jedan mesec", "jednog meseca"],
|
||
MM: ["mesec", "meseca", "meseci"],
|
||
y: ["jednu godinu", "jedne godine"],
|
||
yy: ["godinu", "godine", "godina"]
|
||
}, correctGrammaticalCase: function (e, t) {
|
||
if (e % 10 >= 1 && e % 10 <= 4 && (e % 100 < 10 || e % 100 >= 20)) return e % 10 === 1 ? t[0] : t[1];
|
||
return t[2]
|
||
}, translate: function (e, t, n, i) {
|
||
var r = s.words[n], a;
|
||
if (n.length === 1) {
|
||
if (n === "y" && t) return "jedna godina";
|
||
return i || t ? r[0] : r[1]
|
||
}
|
||
a = s.correctGrammaticalCase(e, r);
|
||
if (n === "yy" && t && a === "godinu") return e + " godina";
|
||
return e + " " + a
|
||
}
|
||
}, t;
|
||
e.defineLocale("sr", {
|
||
months: "januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar".split("_"),
|
||
monthsShort: "jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota".split("_"),
|
||
weekdaysShort: "ned._pon._uto._sre._čet._pet._sub.".split("_"),
|
||
weekdaysMin: "ne_po_ut_sr_če_pe_su".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "D. M. YYYY.",
|
||
LL: "D. MMMM YYYY.",
|
||
LLL: "D. MMMM YYYY. H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY. H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[danas u] LT", nextDay: "[sutra u] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[u] [nedelju] [u] LT";
|
||
case 3:
|
||
return "[u] [sredu] [u] LT";
|
||
case 6:
|
||
return "[u] [subotu] [u] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[u] dddd [u] LT"
|
||
}
|
||
}, lastDay: "[juče u] LT", lastWeek: function () {
|
||
var e = ["[prošle] [nedelje] [u] LT", "[prošlog] [ponedeljka] [u] LT", "[prošlog] [utorka] [u] LT", "[prošle] [srede] [u] LT", "[prošlog] [četvrtka] [u] LT", "[prošlog] [petka] [u] LT", "[prošle] [subote] [u] LT"];
|
||
return e[this.day()]
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "za %s",
|
||
past: "pre %s",
|
||
s: "nekoliko sekundi",
|
||
ss: s.translate,
|
||
m: s.translate,
|
||
mm: s.translate,
|
||
h: s.translate,
|
||
hh: s.translate,
|
||
d: s.translate,
|
||
dd: s.translate,
|
||
M: s.translate,
|
||
MM: s.translate,
|
||
y: s.translate,
|
||
yy: s.translate
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var s = {
|
||
words: {
|
||
ss: ["секунда", "секунде", "секунди"],
|
||
m: ["један минут", "једног минута"],
|
||
mm: ["минут", "минута", "минута"],
|
||
h: ["један сат", "једног сата"],
|
||
hh: ["сат", "сата", "сати"],
|
||
d: ["један дан", "једног дана"],
|
||
dd: ["дан", "дана", "дана"],
|
||
M: ["један месец", "једног месеца"],
|
||
MM: ["месец", "месеца", "месеци"],
|
||
y: ["једну годину", "једне године"],
|
||
yy: ["годину", "године", "година"]
|
||
}, correctGrammaticalCase: function (e, t) {
|
||
if (e % 10 >= 1 && e % 10 <= 4 && (e % 100 < 10 || e % 100 >= 20)) return e % 10 === 1 ? t[0] : t[1];
|
||
return t[2]
|
||
}, translate: function (e, t, n, i) {
|
||
var r = s.words[n], a;
|
||
if (n.length === 1) {
|
||
if (n === "y" && t) return "једна година";
|
||
return i || t ? r[0] : r[1]
|
||
}
|
||
a = s.correctGrammaticalCase(e, r);
|
||
if (n === "yy" && t && a === "годину") return e + " година";
|
||
return e + " " + a
|
||
}
|
||
}, t;
|
||
e.defineLocale("sr-cyrl", {
|
||
months: "јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар".split("_"),
|
||
monthsShort: "јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "недеља_понедељак_уторак_среда_четвртак_петак_субота".split("_"),
|
||
weekdaysShort: "нед._пон._уто._сре._чет._пет._суб.".split("_"),
|
||
weekdaysMin: "не_по_ут_ср_че_пе_су".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "D. M. YYYY.",
|
||
LL: "D. MMMM YYYY.",
|
||
LLL: "D. MMMM YYYY. H:mm",
|
||
LLLL: "dddd, D. MMMM YYYY. H:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[данас у] LT", nextDay: "[сутра у] LT", nextWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
return "[у] [недељу] [у] LT";
|
||
case 3:
|
||
return "[у] [среду] [у] LT";
|
||
case 6:
|
||
return "[у] [суботу] [у] LT";
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
case 5:
|
||
return "[у] dddd [у] LT"
|
||
}
|
||
}, lastDay: "[јуче у] LT", lastWeek: function () {
|
||
var e = ["[прошле] [недеље] [у] LT", "[прошлог] [понедељка] [у] LT", "[прошлог] [уторка] [у] LT", "[прошле] [среде] [у] LT", "[прошлог] [четвртка] [у] LT", "[прошлог] [петка] [у] LT", "[прошле] [суботе] [у] LT"];
|
||
return e[this.day()]
|
||
}, sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "за %s",
|
||
past: "пре %s",
|
||
s: "неколико секунди",
|
||
ss: s.translate,
|
||
m: s.translate,
|
||
mm: s.translate,
|
||
h: s.translate,
|
||
hh: s.translate,
|
||
d: s.translate,
|
||
dd: s.translate,
|
||
M: s.translate,
|
||
MM: s.translate,
|
||
y: s.translate,
|
||
yy: s.translate
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ss", {
|
||
months: "Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split("_"),
|
||
monthsShort: "Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo".split("_"),
|
||
weekdays: "Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo".split("_"),
|
||
weekdaysShort: "Lis_Umb_Lsb_Les_Lsi_Lsh_Umg".split("_"),
|
||
weekdaysMin: "Li_Us_Lb_Lt_Ls_Lh_Ug".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Namuhla nga] LT",
|
||
nextDay: "[Kusasa nga] LT",
|
||
nextWeek: "dddd [nga] LT",
|
||
lastDay: "[Itolo nga] LT",
|
||
lastWeek: "dddd [leliphelile] [nga] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "nga %s",
|
||
past: "wenteka nga %s",
|
||
s: "emizuzwana lomcane",
|
||
ss: "%d mzuzwana",
|
||
m: "umzuzu",
|
||
mm: "%d emizuzu",
|
||
h: "lihora",
|
||
hh: "%d emahora",
|
||
d: "lilanga",
|
||
dd: "%d emalanga",
|
||
M: "inyanga",
|
||
MM: "%d tinyanga",
|
||
y: "umnyaka",
|
||
yy: "%d iminyaka"
|
||
},
|
||
meridiemParse: /ekuseni|emini|entsambama|ebusuku/,
|
||
meridiem: function (e, t, n) {
|
||
if (e < 11) return "ekuseni"; else if (e < 15) return "emini"; else if (e < 19) return "entsambama"; else return "ebusuku"
|
||
},
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "ekuseni") return e; else if (t === "emini") return e >= 11 ? e : e + 12; else if (t === "entsambama" || t === "ebusuku") {
|
||
if (e === 0) return 0;
|
||
return e + 12
|
||
}
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}/,
|
||
ordinal: "%d",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("sv", {
|
||
months: "januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),
|
||
monthsShort: "jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),
|
||
weekdays: "söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag".split("_"),
|
||
weekdaysShort: "sön_mån_tis_ons_tor_fre_lör".split("_"),
|
||
weekdaysMin: "sö_må_ti_on_to_fr_lö".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY [kl.] HH:mm",
|
||
LLLL: "dddd D MMMM YYYY [kl.] HH:mm",
|
||
lll: "D MMM YYYY HH:mm",
|
||
llll: "ddd D MMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Idag] LT",
|
||
nextDay: "[Imorgon] LT",
|
||
lastDay: "[Igår] LT",
|
||
nextWeek: "[På] dddd LT",
|
||
lastWeek: "[I] dddd[s] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "om %s",
|
||
past: "för %s sedan",
|
||
s: "några sekunder",
|
||
ss: "%d sekunder",
|
||
m: "en minut",
|
||
mm: "%d minuter",
|
||
h: "en timme",
|
||
hh: "%d timmar",
|
||
d: "en dag",
|
||
dd: "%d dagar",
|
||
M: "en månad",
|
||
MM: "%d månader",
|
||
y: "ett år",
|
||
yy: "%d år"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(\:e|\:a)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? ":e" : t === 1 ? ":a" : t === 2 ? ":a" : t === 3 ? ":e" : ":e";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("sw", {
|
||
months: "Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba".split("_"),
|
||
monthsShort: "Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des".split("_"),
|
||
weekdays: "Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi".split("_"),
|
||
weekdaysShort: "Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos".split("_"),
|
||
weekdaysMin: "J2_J3_J4_J5_Al_Ij_J1".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "hh:mm A",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[leo saa] LT",
|
||
nextDay: "[kesho saa] LT",
|
||
nextWeek: "[wiki ijayo] dddd [saat] LT",
|
||
lastDay: "[jana] LT",
|
||
lastWeek: "[wiki iliyopita] dddd [saat] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s baadaye",
|
||
past: "tokea %s",
|
||
s: "hivi punde",
|
||
ss: "sekunde %d",
|
||
m: "dakika moja",
|
||
mm: "dakika %d",
|
||
h: "saa limoja",
|
||
hh: "masaa %d",
|
||
d: "siku moja",
|
||
dd: "siku %d",
|
||
M: "mwezi mmoja",
|
||
MM: "miezi %d",
|
||
y: "mwaka mmoja",
|
||
yy: "miaka %d"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = {1: "௧", 2: "௨", 3: "௩", 4: "௪", 5: "௫", 6: "௬", 7: "௭", 8: "௮", 9: "௯", 0: "௦"}, n = {
|
||
"௧": "1",
|
||
"௨": "2",
|
||
"௩": "3",
|
||
"௪": "4",
|
||
"௫": "5",
|
||
"௬": "6",
|
||
"௭": "7",
|
||
"௮": "8",
|
||
"௯": "9",
|
||
"௦": "0"
|
||
}, i;
|
||
e.defineLocale("ta", {
|
||
months: "ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),
|
||
monthsShort: "ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்".split("_"),
|
||
weekdays: "ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை".split("_"),
|
||
weekdaysShort: "ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி".split("_"),
|
||
weekdaysMin: "ஞா_தி_செ_பு_வி_வெ_ச".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY, HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[இன்று] LT",
|
||
nextDay: "[நாளை] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[நேற்று] LT",
|
||
lastWeek: "[கடந்த வாரம்] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s இல்",
|
||
past: "%s முன்",
|
||
s: "ஒரு சில விநாடிகள்",
|
||
ss: "%d விநாடிகள்",
|
||
m: "ஒரு நிமிடம்",
|
||
mm: "%d நிமிடங்கள்",
|
||
h: "ஒரு மணி நேரம்",
|
||
hh: "%d மணி நேரம்",
|
||
d: "ஒரு நாள்",
|
||
dd: "%d நாட்கள்",
|
||
M: "ஒரு மாதம்",
|
||
MM: "%d மாதங்கள்",
|
||
y: "ஒரு வருடம்",
|
||
yy: "%d ஆண்டுகள்"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}வது/,
|
||
ordinal: function (e) {
|
||
return e + "வது"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (e) {
|
||
return n[e]
|
||
})
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/\d/g, function (e) {
|
||
return t[e]
|
||
})
|
||
},
|
||
meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/,
|
||
meridiem: function (e, t, n) {
|
||
if (e < 2) return " யாமம்"; else if (e < 6) return " வைகறை"; else if (e < 10) return " காலை"; else if (e < 14) return " நண்பகல்"; else if (e < 18) return " எற்பாடு"; else if (e < 22) return " மாலை"; else return " யாமம்"
|
||
},
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "யாமம்") return e < 2 ? e : e + 12; else if (t === "வைகறை" || t === "காலை") return e; else if (t === "நண்பகல்") return e >= 10 ? e : e + 12; else return e + 12
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("te", {
|
||
months: "జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్".split("_"),
|
||
monthsShort: "జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం".split("_"),
|
||
weekdaysShort: "ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని".split("_"),
|
||
weekdaysMin: "ఆ_సో_మం_బు_గు_శు_శ".split("_"),
|
||
longDateFormat: {
|
||
LT: "A h:mm",
|
||
LTS: "A h:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY, A h:mm",
|
||
LLLL: "dddd, D MMMM YYYY, A h:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[నేడు] LT",
|
||
nextDay: "[రేపు] LT",
|
||
nextWeek: "dddd, LT",
|
||
lastDay: "[నిన్న] LT",
|
||
lastWeek: "[గత] dddd, LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s లో",
|
||
past: "%s క్రితం",
|
||
s: "కొన్ని క్షణాలు",
|
||
ss: "%d సెకన్లు",
|
||
m: "ఒక నిమిషం",
|
||
mm: "%d నిమిషాలు",
|
||
h: "ఒక గంట",
|
||
hh: "%d గంటలు",
|
||
d: "ఒక రోజు",
|
||
dd: "%d రోజులు",
|
||
M: "ఒక నెల",
|
||
MM: "%d నెలలు",
|
||
y: "ఒక సంవత్సరం",
|
||
yy: "%d సంవత్సరాలు"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}వ/,
|
||
ordinal: "%dవ",
|
||
meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "రాత్రి") return e < 4 ? e : e + 12; else if (t === "ఉదయం") return e; else if (t === "మధ్యాహ్నం") return e >= 10 ? e : e + 12; else if (t === "సాయంత్రం") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "రాత్రి"; else if (e < 10) return "ఉదయం"; else if (e < 17) return "మధ్యాహ్నం"; else if (e < 20) return "సాయంత్రం"; else return "రాత్రి"
|
||
},
|
||
week: {dow: 0, doy: 6}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("tet", {
|
||
months: "Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru".split("_"),
|
||
monthsShort: "Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),
|
||
weekdays: "Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu".split("_"),
|
||
weekdaysShort: "Dom_Seg_Ters_Kua_Kint_Sest_Sab".split("_"),
|
||
weekdaysMin: "Do_Seg_Te_Ku_Ki_Ses_Sa".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Ohin iha] LT",
|
||
nextDay: "[Aban iha] LT",
|
||
nextWeek: "dddd [iha] LT",
|
||
lastDay: "[Horiseik iha] LT",
|
||
lastWeek: "dddd [semana kotuk] [iha] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "iha %s",
|
||
past: "%s liuba",
|
||
s: "segundu balun",
|
||
ss: "segundu %d",
|
||
m: "minutu ida",
|
||
mm: "minutu %d",
|
||
h: "oras ida",
|
||
hh: "oras %d",
|
||
d: "loron ida",
|
||
dd: "loron %d",
|
||
M: "fulan ida",
|
||
MM: "fulan %d",
|
||
y: "tinan ida",
|
||
yy: "tinan %d"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var i = {
|
||
0: "-ум",
|
||
1: "-ум",
|
||
2: "-юм",
|
||
3: "-юм",
|
||
4: "-ум",
|
||
5: "-ум",
|
||
6: "-ум",
|
||
7: "-ум",
|
||
8: "-ум",
|
||
9: "-ум",
|
||
10: "-ум",
|
||
12: "-ум",
|
||
13: "-ум",
|
||
20: "-ум",
|
||
30: "-юм",
|
||
40: "-ум",
|
||
50: "-ум",
|
||
60: "-ум",
|
||
70: "-ум",
|
||
80: "-ум",
|
||
90: "-ум",
|
||
100: "-ум"
|
||
}, t;
|
||
e.defineLocale("tg", {
|
||
months: {
|
||
format: "январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри".split("_"),
|
||
standalone: "январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_")
|
||
},
|
||
monthsShort: "янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),
|
||
weekdays: "якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе".split("_"),
|
||
weekdaysShort: "яшб_дшб_сшб_чшб_пшб_ҷум_шнб".split("_"),
|
||
weekdaysMin: "яш_дш_сш_чш_пш_ҷм_шб".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Имрӯз соати] LT",
|
||
nextDay: "[Фардо соати] LT",
|
||
lastDay: "[Дирӯз соати] LT",
|
||
nextWeek: "dddd[и] [ҳафтаи оянда соати] LT",
|
||
lastWeek: "dddd[и] [ҳафтаи гузашта соати] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "баъди %s",
|
||
past: "%s пеш",
|
||
s: "якчанд сония",
|
||
m: "як дақиқа",
|
||
mm: "%d дақиқа",
|
||
h: "як соат",
|
||
hh: "%d соат",
|
||
d: "як рӯз",
|
||
dd: "%d рӯз",
|
||
M: "як моҳ",
|
||
MM: "%d моҳ",
|
||
y: "як сол",
|
||
yy: "%d сол"
|
||
},
|
||
meridiemParse: /шаб|субҳ|рӯз|бегоҳ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "шаб") return e < 4 ? e : e + 12; else if (t === "субҳ") return e; else if (t === "рӯз") return e >= 11 ? e : e + 12; else if (t === "бегоҳ") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "шаб"; else if (e < 11) return "субҳ"; else if (e < 16) return "рӯз"; else if (e < 19) return "бегоҳ"; else return "шаб"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(ум|юм)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10, n = e >= 100 ? 100 : null;
|
||
return e + (i[e] || i[t] || i[n])
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("th", {
|
||
months: "มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม".split("_"),
|
||
monthsShort: "ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์".split("_"),
|
||
weekdaysShort: "อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์".split("_"),
|
||
weekdaysMin: "อา._จ._อ._พ._พฤ._ศ._ส.".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "H:mm",
|
||
LTS: "H:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY เวลา H:mm",
|
||
LLLL: "วันddddที่ D MMMM YYYY เวลา H:mm"
|
||
},
|
||
meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/,
|
||
isPM: function (e) {
|
||
return e === "หลังเที่ยง"
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "ก่อนเที่ยง"; else return "หลังเที่ยง"
|
||
},
|
||
calendar: {
|
||
sameDay: "[วันนี้ เวลา] LT",
|
||
nextDay: "[พรุ่งนี้ เวลา] LT",
|
||
nextWeek: "dddd[หน้า เวลา] LT",
|
||
lastDay: "[เมื่อวานนี้ เวลา] LT",
|
||
lastWeek: "[วัน]dddd[ที่แล้ว เวลา] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "อีก %s",
|
||
past: "%sที่แล้ว",
|
||
s: "ไม่กี่วินาที",
|
||
ss: "%d วินาที",
|
||
m: "1 นาที",
|
||
mm: "%d นาที",
|
||
h: "1 ชั่วโมง",
|
||
hh: "%d ชั่วโมง",
|
||
d: "1 วัน",
|
||
dd: "%d วัน",
|
||
w: "1 สัปดาห์",
|
||
ww: "%d สัปดาห์",
|
||
M: "1 เดือน",
|
||
MM: "%d เดือน",
|
||
y: "1 ปี",
|
||
yy: "%d ปี"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var a = {
|
||
1: "'inji",
|
||
5: "'inji",
|
||
8: "'inji",
|
||
70: "'inji",
|
||
80: "'inji",
|
||
2: "'nji",
|
||
7: "'nji",
|
||
20: "'nji",
|
||
50: "'nji",
|
||
3: "'ünji",
|
||
4: "'ünji",
|
||
100: "'ünji",
|
||
6: "'njy",
|
||
9: "'unjy",
|
||
10: "'unjy",
|
||
30: "'unjy",
|
||
60: "'ynjy",
|
||
90: "'ynjy"
|
||
}, t;
|
||
e.defineLocale("tk", {
|
||
months: "Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr".split("_"),
|
||
monthsShort: "Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek".split("_"),
|
||
weekdays: "Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe".split("_"),
|
||
weekdaysShort: "Ýek_Duş_Siş_Çar_Pen_Ann_Şen".split("_"),
|
||
weekdaysMin: "Ýk_Dş_Sş_Çr_Pn_An_Şn".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[bugün sagat] LT",
|
||
nextDay: "[ertir sagat] LT",
|
||
nextWeek: "[indiki] dddd [sagat] LT",
|
||
lastDay: "[düýn] LT",
|
||
lastWeek: "[geçen] dddd [sagat] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s soň",
|
||
past: "%s öň",
|
||
s: "birnäçe sekunt",
|
||
m: "bir minut",
|
||
mm: "%d minut",
|
||
h: "bir sagat",
|
||
hh: "%d sagat",
|
||
d: "bir gün",
|
||
dd: "%d gün",
|
||
M: "bir aý",
|
||
MM: "%d aý",
|
||
y: "bir ýyl",
|
||
yy: "%d ýyl"
|
||
},
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"Do":
|
||
case"DD":
|
||
return e;
|
||
default:
|
||
if (e === 0) return e + "'unjy";
|
||
var n = e % 10, i = e % 100 - n, r = e >= 100 ? 100 : null;
|
||
return e + (a[n] || a[i] || a[r])
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("tl-ph", {
|
||
months: "Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre".split("_"),
|
||
monthsShort: "Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis".split("_"),
|
||
weekdays: "Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado".split("_"),
|
||
weekdaysShort: "Lin_Lun_Mar_Miy_Huw_Biy_Sab".split("_"),
|
||
weekdaysMin: "Li_Lu_Ma_Mi_Hu_Bi_Sab".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "MM/D/YYYY",
|
||
LL: "MMMM D, YYYY",
|
||
LLL: "MMMM D, YYYY HH:mm",
|
||
LLLL: "dddd, MMMM DD, YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "LT [ngayong araw]",
|
||
nextDay: "[Bukas ng] LT",
|
||
nextWeek: "LT [sa susunod na] dddd",
|
||
lastDay: "LT [kahapon]",
|
||
lastWeek: "LT [noong nakaraang] dddd",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "sa loob ng %s",
|
||
past: "%s ang nakalipas",
|
||
s: "ilang segundo",
|
||
ss: "%d segundo",
|
||
m: "isang minuto",
|
||
mm: "%d minuto",
|
||
h: "isang oras",
|
||
hh: "%d oras",
|
||
d: "isang araw",
|
||
dd: "%d araw",
|
||
M: "isang buwan",
|
||
MM: "%d buwan",
|
||
y: "isang taon",
|
||
yy: "%d taon"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}/,
|
||
ordinal: function (e) {
|
||
return e
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var a = "pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut".split("_"), t;
|
||
|
||
function n(e) {
|
||
var t = e;
|
||
t = e.indexOf("jaj") !== -1 ? t.slice(0, -3) + "leS" : e.indexOf("jar") !== -1 ? t.slice(0, -3) + "waQ" : e.indexOf("DIS") !== -1 ? t.slice(0, -3) + "nem" : t + " pIq";
|
||
return t
|
||
}
|
||
|
||
function i(e) {
|
||
var t = e;
|
||
t = e.indexOf("jaj") !== -1 ? t.slice(0, -3) + "Hu’" : e.indexOf("jar") !== -1 ? t.slice(0, -3) + "wen" : e.indexOf("DIS") !== -1 ? t.slice(0, -3) + "ben" : t + " ret";
|
||
return t
|
||
}
|
||
|
||
function r(e, t, n, i) {
|
||
var r = s(e);
|
||
switch (n) {
|
||
case"ss":
|
||
return r + " lup";
|
||
case"mm":
|
||
return r + " tup";
|
||
case"hh":
|
||
return r + " rep";
|
||
case"dd":
|
||
return r + " jaj";
|
||
case"MM":
|
||
return r + " jar";
|
||
case"yy":
|
||
return r + " DIS"
|
||
}
|
||
}
|
||
|
||
function s(e) {
|
||
var t = Math.floor(e % 1e3 / 100), n = Math.floor(e % 100 / 10), i = e % 10, r = "";
|
||
if (t > 0) r += a[t] + "vatlh";
|
||
if (n > 0) r += (r !== "" ? " " : "") + a[n] + "maH";
|
||
if (i > 0) r += (r !== "" ? " " : "") + a[i];
|
||
return r === "" ? "pagh" : r
|
||
}
|
||
|
||
e.defineLocale("tlh", {
|
||
months: "tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’".split("_"),
|
||
monthsShort: "jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),
|
||
weekdaysShort: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),
|
||
weekdaysMin: "lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[DaHjaj] LT",
|
||
nextDay: "[wa’leS] LT",
|
||
nextWeek: "LLL",
|
||
lastDay: "[wa’Hu’] LT",
|
||
lastWeek: "LLL",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: n,
|
||
past: i,
|
||
s: "puS lup",
|
||
ss: r,
|
||
m: "wa’ tup",
|
||
mm: r,
|
||
h: "wa’ rep",
|
||
hh: r,
|
||
d: "wa’ jaj",
|
||
dd: r,
|
||
M: "wa’ jar",
|
||
MM: r,
|
||
y: "wa’ DIS",
|
||
yy: r
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var a = {
|
||
1: "'inci",
|
||
5: "'inci",
|
||
8: "'inci",
|
||
70: "'inci",
|
||
80: "'inci",
|
||
2: "'nci",
|
||
7: "'nci",
|
||
20: "'nci",
|
||
50: "'nci",
|
||
3: "'üncü",
|
||
4: "'üncü",
|
||
100: "'üncü",
|
||
6: "'ncı",
|
||
9: "'uncu",
|
||
10: "'uncu",
|
||
30: "'uncu",
|
||
60: "'ıncı",
|
||
90: "'ıncı"
|
||
}, t;
|
||
e.defineLocale("tr", {
|
||
months: "Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık".split("_"),
|
||
monthsShort: "Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara".split("_"),
|
||
weekdays: "Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi".split("_"),
|
||
weekdaysShort: "Paz_Pzt_Sal_Çar_Per_Cum_Cmt".split("_"),
|
||
weekdaysMin: "Pz_Pt_Sa_Ça_Pe_Cu_Ct".split("_"),
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return n ? "öö" : "ÖÖ"; else return n ? "ös" : "ÖS"
|
||
},
|
||
meridiemParse: /öö|ÖÖ|ös|ÖS/,
|
||
isPM: function (e) {
|
||
return e === "ös" || e === "ÖS"
|
||
},
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[bugün saat] LT",
|
||
nextDay: "[yarın saat] LT",
|
||
nextWeek: "[gelecek] dddd [saat] LT",
|
||
lastDay: "[dün] LT",
|
||
lastWeek: "[geçen] dddd [saat] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s sonra",
|
||
past: "%s önce",
|
||
s: "birkaç saniye",
|
||
ss: "%d saniye",
|
||
m: "bir dakika",
|
||
mm: "%d dakika",
|
||
h: "bir saat",
|
||
hh: "%d saat",
|
||
d: "bir gün",
|
||
dd: "%d gün",
|
||
w: "bir hafta",
|
||
ww: "%d hafta",
|
||
M: "bir ay",
|
||
MM: "%d ay",
|
||
y: "bir yıl",
|
||
yy: "%d yıl"
|
||
},
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"Do":
|
||
case"DD":
|
||
return e;
|
||
default:
|
||
if (e === 0) return e + "'ıncı";
|
||
var n = e % 10, i = e % 100 - n, r = e >= 100 ? 100 : null;
|
||
return e + (a[n] || a[i] || a[r])
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
|
||
function n(e, t, n, i) {
|
||
var r = {
|
||
s: ["viensas secunds", "'iensas secunds"],
|
||
ss: [e + " secunds", "" + e + " secunds"],
|
||
m: ["'n míut", "'iens míut"],
|
||
mm: [e + " míuts", "" + e + " míuts"],
|
||
h: ["'n þora", "'iensa þora"],
|
||
hh: [e + " þoras", "" + e + " þoras"],
|
||
d: ["'n ziua", "'iensa ziua"],
|
||
dd: [e + " ziuas", "" + e + " ziuas"],
|
||
M: ["'n mes", "'iens mes"],
|
||
MM: [e + " mesen", "" + e + " mesen"],
|
||
y: ["'n ar", "'iens ar"],
|
||
yy: [e + " ars", "" + e + " ars"]
|
||
};
|
||
return i ? r[n][0] : t ? r[n][0] : r[n][1]
|
||
}
|
||
|
||
e.defineLocale("tzl", {
|
||
months: "Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar".split("_"),
|
||
monthsShort: "Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec".split("_"),
|
||
weekdays: "Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi".split("_"),
|
||
weekdaysShort: "Súl_Lún_Mai_Már_Xhú_Vié_Sát".split("_"),
|
||
weekdaysMin: "Sú_Lú_Ma_Má_Xh_Vi_Sá".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH.mm",
|
||
LTS: "HH.mm.ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D. MMMM [dallas] YYYY",
|
||
LLL: "D. MMMM [dallas] YYYY HH.mm",
|
||
LLLL: "dddd, [li] D. MMMM [dallas] YYYY HH.mm"
|
||
},
|
||
meridiemParse: /d\'o|d\'a/i,
|
||
isPM: function (e) {
|
||
return "d'o" === e.toLowerCase()
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e > 11) return n ? "d'o" : "D'O"; else return n ? "d'a" : "D'A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[oxhi à] LT",
|
||
nextDay: "[demà à] LT",
|
||
nextWeek: "dddd [à] LT",
|
||
lastDay: "[ieiri à] LT",
|
||
lastWeek: "[sür el] dddd [lasteu à] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "osprei %s",
|
||
past: "ja%s",
|
||
s: n,
|
||
ss: n,
|
||
m: n,
|
||
mm: n,
|
||
h: n,
|
||
hh: n,
|
||
d: n,
|
||
dd: n,
|
||
M: n,
|
||
MM: n,
|
||
y: n,
|
||
yy: n
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}\./,
|
||
ordinal: "%d.",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("tzm", {
|
||
months: "ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),
|
||
monthsShort: "ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ".split("_"),
|
||
weekdays: "ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),
|
||
weekdaysShort: "ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),
|
||
weekdaysMin: "ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[ⴰⵙⴷⵅ ⴴ] LT",
|
||
nextDay: "[ⴰⵙⴽⴰ ⴴ] LT",
|
||
nextWeek: "dddd [ⴴ] LT",
|
||
lastDay: "[ⴰⵚⴰⵏⵜ ⴴ] LT",
|
||
lastWeek: "dddd [ⴴ] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s",
|
||
past: "ⵢⴰⵏ %s",
|
||
s: "ⵉⵎⵉⴽ",
|
||
ss: "%d ⵉⵎⵉⴽ",
|
||
m: "ⵎⵉⵏⵓⴺ",
|
||
mm: "%d ⵎⵉⵏⵓⴺ",
|
||
h: "ⵙⴰⵄⴰ",
|
||
hh: "%d ⵜⴰⵙⵙⴰⵄⵉⵏ",
|
||
d: "ⴰⵙⵙ",
|
||
dd: "%d oⵙⵙⴰⵏ",
|
||
M: "ⴰⵢoⵓⵔ",
|
||
MM: "%d ⵉⵢⵢⵉⵔⵏ",
|
||
y: "ⴰⵙⴳⴰⵙ",
|
||
yy: "%d ⵉⵙⴳⴰⵙⵏ"
|
||
},
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("tzm-latn", {
|
||
months: "innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),
|
||
monthsShort: "innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir".split("_"),
|
||
weekdays: "asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),
|
||
weekdaysShort: "asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),
|
||
weekdaysMin: "asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[asdkh g] LT",
|
||
nextDay: "[aska g] LT",
|
||
nextWeek: "dddd [g] LT",
|
||
lastDay: "[assant g] LT",
|
||
lastWeek: "dddd [g] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "dadkh s yan %s",
|
||
past: "yan %s",
|
||
s: "imik",
|
||
ss: "%d imik",
|
||
m: "minuḍ",
|
||
mm: "%d minuḍ",
|
||
h: "saɛa",
|
||
hh: "%d tassaɛin",
|
||
d: "ass",
|
||
dd: "%d ossan",
|
||
M: "ayowr",
|
||
MM: "%d iyyirn",
|
||
y: "asgas",
|
||
yy: "%d isgasn"
|
||
},
|
||
week: {dow: 6, doy: 12}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("ug-cn", {
|
||
months: "يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),
|
||
monthsShort: "يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر".split("_"),
|
||
weekdays: "يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە".split("_"),
|
||
weekdaysShort: "يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),
|
||
weekdaysMin: "يە_دۈ_سە_چا_پە_جۈ_شە".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY-MM-DD",
|
||
LL: "YYYY-يىلىM-ئاينىڭD-كۈنى",
|
||
LLL: "YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm",
|
||
LLLL: "dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm"
|
||
},
|
||
meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "يېرىم كېچە" || t === "سەھەر" || t === "چۈشتىن بۇرۇن") return e; else if (t === "چۈشتىن كېيىن" || t === "كەچ") return e + 12; else return e >= 11 ? e : e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
var i = e * 100 + t;
|
||
if (i < 600) return "يېرىم كېچە"; else if (i < 900) return "سەھەر"; else if (i < 1130) return "چۈشتىن بۇرۇن"; else if (i < 1230) return "چۈش"; else if (i < 1800) return "چۈشتىن كېيىن"; else return "كەچ"
|
||
},
|
||
calendar: {
|
||
sameDay: "[بۈگۈن سائەت] LT",
|
||
nextDay: "[ئەتە سائەت] LT",
|
||
nextWeek: "[كېلەركى] dddd [سائەت] LT",
|
||
lastDay: "[تۆنۈگۈن] LT",
|
||
lastWeek: "[ئالدىنقى] dddd [سائەت] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s كېيىن",
|
||
past: "%s بۇرۇن",
|
||
s: "نەچچە سېكونت",
|
||
ss: "%d سېكونت",
|
||
m: "بىر مىنۇت",
|
||
mm: "%d مىنۇت",
|
||
h: "بىر سائەت",
|
||
hh: "%d سائەت",
|
||
d: "بىر كۈن",
|
||
dd: "%d كۈن",
|
||
M: "بىر ئاي",
|
||
MM: "%d ئاي",
|
||
y: "بىر يىل",
|
||
yy: "%d يىل"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "-كۈنى";
|
||
case"w":
|
||
case"W":
|
||
return e + "-ھەپتە";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/,/g, "،")
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
|
||
//! moment.js locale configuration
|
||
function r(e, t) {
|
||
var n = e.split("_");
|
||
return t % 10 === 1 && t % 100 !== 11 ? n[0] : t % 10 >= 2 && t % 10 <= 4 && (t % 100 < 10 || t % 100 >= 20) ? n[1] : n[2]
|
||
}
|
||
|
||
function t(e, t, n) {
|
||
var i = {
|
||
ss: t ? "секунда_секунди_секунд" : "секунду_секунди_секунд",
|
||
mm: t ? "хвилина_хвилини_хвилин" : "хвилину_хвилини_хвилин",
|
||
hh: t ? "година_години_годин" : "годину_години_годин",
|
||
dd: "день_дні_днів",
|
||
MM: "місяць_місяці_місяців",
|
||
yy: "рік_роки_років"
|
||
};
|
||
if (n === "m") return t ? "хвилина" : "хвилину"; else if (n === "h") return t ? "година" : "годину"; else return e + " " + r(i[n], +e)
|
||
}
|
||
|
||
function n(e, t) {
|
||
var n = {
|
||
nominative: "неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота".split("_"),
|
||
accusative: "неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу".split("_"),
|
||
genitive: "неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи".split("_")
|
||
}, i;
|
||
if (e === true) return n["nominative"].slice(1, 7).concat(n["nominative"].slice(0, 1));
|
||
if (!e) return n["nominative"];
|
||
i = /(\[[ВвУу]\]) ?dddd/.test(t) ? "accusative" : /\[?(?:минулої|наступної)? ?\] ?dddd/.test(t) ? "genitive" : "nominative";
|
||
return n[i][e.day()]
|
||
}
|
||
|
||
function i(e) {
|
||
return function () {
|
||
return e + "о" + (this.hours() === 11 ? "б" : "") + "] LT"
|
||
}
|
||
}
|
||
|
||
var a;
|
||
e.defineLocale("uk", {
|
||
months: {
|
||
format: "січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня".split("_"),
|
||
standalone: "січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень".split("_")
|
||
},
|
||
monthsShort: "січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд".split("_"),
|
||
weekdays: n,
|
||
weekdaysShort: "нд_пн_вт_ср_чт_пт_сб".split("_"),
|
||
weekdaysMin: "нд_пн_вт_ср_чт_пт_сб".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD.MM.YYYY",
|
||
LL: "D MMMM YYYY р.",
|
||
LLL: "D MMMM YYYY р., HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY р., HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: i("[Сьогодні "),
|
||
nextDay: i("[Завтра "),
|
||
lastDay: i("[Вчора "),
|
||
nextWeek: i("[У] dddd ["),
|
||
lastWeek: function () {
|
||
switch (this.day()) {
|
||
case 0:
|
||
case 3:
|
||
case 5:
|
||
case 6:
|
||
return i("[Минулої] dddd [").call(this);
|
||
case 1:
|
||
case 2:
|
||
case 4:
|
||
return i("[Минулого] dddd [").call(this)
|
||
}
|
||
},
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "за %s",
|
||
past: "%s тому",
|
||
s: "декілька секунд",
|
||
ss: t,
|
||
m: t,
|
||
mm: t,
|
||
h: "годину",
|
||
hh: t,
|
||
d: "день",
|
||
dd: t,
|
||
M: "місяць",
|
||
MM: t,
|
||
y: "рік",
|
||
yy: t
|
||
},
|
||
meridiemParse: /ночі|ранку|дня|вечора/,
|
||
isPM: function (e) {
|
||
return /^(дня|вечора)$/.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 4) return "ночі"; else if (e < 12) return "ранку"; else if (e < 17) return "дня"; else return "вечора"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}-(й|го)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"M":
|
||
case"d":
|
||
case"DDD":
|
||
case"w":
|
||
case"W":
|
||
return e + "-й";
|
||
case"D":
|
||
return e + "-го";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t = ["جنوری", "فروری", "مارچ", "اپریل", "مئی", "جون", "جولائی", "اگست", "ستمبر", "اکتوبر", "نومبر", "دسمبر"],
|
||
n = ["اتوار", "پیر", "منگل", "بدھ", "جمعرات", "جمعہ", "ہفتہ"], i;
|
||
e.defineLocale("ur", {
|
||
months: t,
|
||
monthsShort: t,
|
||
weekdays: n,
|
||
weekdaysShort: n,
|
||
weekdaysMin: n,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd، D MMMM YYYY HH:mm"
|
||
},
|
||
meridiemParse: /صبح|شام/,
|
||
isPM: function (e) {
|
||
return "شام" === e
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return "صبح";
|
||
return "شام"
|
||
},
|
||
calendar: {
|
||
sameDay: "[آج بوقت] LT",
|
||
nextDay: "[کل بوقت] LT",
|
||
nextWeek: "dddd [بوقت] LT",
|
||
lastDay: "[گذشتہ روز بوقت] LT",
|
||
lastWeek: "[گذشتہ] dddd [بوقت] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s بعد",
|
||
past: "%s قبل",
|
||
s: "چند سیکنڈ",
|
||
ss: "%d سیکنڈ",
|
||
m: "ایک منٹ",
|
||
mm: "%d منٹ",
|
||
h: "ایک گھنٹہ",
|
||
hh: "%d گھنٹے",
|
||
d: "ایک دن",
|
||
dd: "%d دن",
|
||
M: "ایک ماہ",
|
||
MM: "%d ماہ",
|
||
y: "ایک سال",
|
||
yy: "%d سال"
|
||
},
|
||
preparse: function (e) {
|
||
return e.replace(/،/g, ",")
|
||
},
|
||
postformat: function (e) {
|
||
return e.replace(/,/g, "،")
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("uz", {
|
||
months: "январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр".split("_"),
|
||
monthsShort: "янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек".split("_"),
|
||
weekdays: "Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба".split("_"),
|
||
weekdaysShort: "Якш_Душ_Сеш_Чор_Пай_Жум_Шан".split("_"),
|
||
weekdaysMin: "Як_Ду_Се_Чо_Па_Жу_Ша".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "D MMMM YYYY, dddd HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Бугун соат] LT [да]",
|
||
nextDay: "[Эртага] LT [да]",
|
||
nextWeek: "dddd [куни соат] LT [да]",
|
||
lastDay: "[Кеча соат] LT [да]",
|
||
lastWeek: "[Утган] dddd [куни соат] LT [да]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "Якин %s ичида",
|
||
past: "Бир неча %s олдин",
|
||
s: "фурсат",
|
||
ss: "%d фурсат",
|
||
m: "бир дакика",
|
||
mm: "%d дакика",
|
||
h: "бир соат",
|
||
hh: "%d соат",
|
||
d: "бир кун",
|
||
dd: "%d кун",
|
||
M: "бир ой",
|
||
MM: "%d ой",
|
||
y: "бир йил",
|
||
yy: "%d йил"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("uz-latn", {
|
||
months: "Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr".split("_"),
|
||
monthsShort: "Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek".split("_"),
|
||
weekdays: "Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba".split("_"),
|
||
weekdaysShort: "Yak_Dush_Sesh_Chor_Pay_Jum_Shan".split("_"),
|
||
weekdaysMin: "Ya_Du_Se_Cho_Pa_Ju_Sha".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "D MMMM YYYY, dddd HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Bugun soat] LT [da]",
|
||
nextDay: "[Ertaga] LT [da]",
|
||
nextWeek: "dddd [kuni soat] LT [da]",
|
||
lastDay: "[Kecha soat] LT [da]",
|
||
lastWeek: "[O'tgan] dddd [kuni soat] LT [da]",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "Yaqin %s ichida",
|
||
past: "Bir necha %s oldin",
|
||
s: "soniya",
|
||
ss: "%d soniya",
|
||
m: "bir daqiqa",
|
||
mm: "%d daqiqa",
|
||
h: "bir soat",
|
||
hh: "%d soat",
|
||
d: "bir kun",
|
||
dd: "%d kun",
|
||
M: "bir oy",
|
||
MM: "%d oy",
|
||
y: "bir yil",
|
||
yy: "%d yil"
|
||
},
|
||
week: {dow: 1, doy: 7}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("vi", {
|
||
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("_"),
|
||
monthsShort: "Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy".split("_"),
|
||
weekdaysShort: "CN_T2_T3_T4_T5_T6_T7".split("_"),
|
||
weekdaysMin: "CN_T2_T3_T4_T5_T6_T7".split("_"),
|
||
weekdaysParseExact: true,
|
||
meridiemParse: /sa|ch/i,
|
||
isPM: function (e) {
|
||
return /^ch$/i.test(e)
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
if (e < 12) return n ? "sa" : "SA"; else return n ? "ch" : "CH"
|
||
},
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM [năm] YYYY",
|
||
LLL: "D MMMM [năm] YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM [năm] YYYY HH:mm",
|
||
l: "DD/M/YYYY",
|
||
ll: "D MMM YYYY",
|
||
lll: "D MMM YYYY HH:mm",
|
||
llll: "ddd, D MMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Hôm nay lúc] LT",
|
||
nextDay: "[Ngày mai lúc] LT",
|
||
nextWeek: "dddd [tuần tới lúc] LT",
|
||
lastDay: "[Hôm qua lúc] LT",
|
||
lastWeek: "dddd [tuần trước lúc] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "%s tới",
|
||
past: "%s trước",
|
||
s: "vài giây",
|
||
ss: "%d giây",
|
||
m: "một phút",
|
||
mm: "%d phút",
|
||
h: "một giờ",
|
||
hh: "%d giờ",
|
||
d: "một ngày",
|
||
dd: "%d ngày",
|
||
w: "một tuần",
|
||
ww: "%d tuần",
|
||
M: "một tháng",
|
||
MM: "%d tháng",
|
||
y: "một năm",
|
||
yy: "%d năm"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}/,
|
||
ordinal: function (e) {
|
||
return e
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("x-pseudo", {
|
||
months: "J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér".split("_"),
|
||
monthsShort: "J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc".split("_"),
|
||
monthsParseExact: true,
|
||
weekdays: "S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý".split("_"),
|
||
weekdaysShort: "S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát".split("_"),
|
||
weekdaysMin: "S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá".split("_"),
|
||
weekdaysParseExact: true,
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY HH:mm",
|
||
LLLL: "dddd, D MMMM YYYY HH:mm"
|
||
},
|
||
calendar: {
|
||
sameDay: "[T~ódá~ý át] LT",
|
||
nextDay: "[T~ómó~rró~w át] LT",
|
||
nextWeek: "dddd [át] LT",
|
||
lastDay: "[Ý~ést~érdá~ý át] LT",
|
||
lastWeek: "[L~ást] dddd [át] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "í~ñ %s",
|
||
past: "%s á~gó",
|
||
s: "á ~féw ~sécó~ñds",
|
||
ss: "%d s~écóñ~ds",
|
||
m: "á ~míñ~úté",
|
||
mm: "%d m~íñú~tés",
|
||
h: "á~ñ hó~úr",
|
||
hh: "%d h~óúrs",
|
||
d: "á ~dáý",
|
||
dd: "%d d~áýs",
|
||
M: "á ~móñ~th",
|
||
MM: "%d m~óñt~hs",
|
||
y: "á ~ýéár",
|
||
yy: "%d ý~éárs"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/,
|
||
ordinal: function (e) {
|
||
var t = e % 10,
|
||
n = ~~(e % 100 / 10) === 1 ? "th" : t === 1 ? "st" : t === 2 ? "nd" : t === 3 ? "rd" : "th";
|
||
return e + n
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("yo", {
|
||
months: "Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀".split("_"),
|
||
monthsShort: "Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀".split("_"),
|
||
weekdays: "Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta".split("_"),
|
||
weekdaysShort: "Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá".split("_"),
|
||
weekdaysMin: "Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb".split("_"),
|
||
longDateFormat: {
|
||
LT: "h:mm A",
|
||
LTS: "h:mm:ss A",
|
||
L: "DD/MM/YYYY",
|
||
LL: "D MMMM YYYY",
|
||
LLL: "D MMMM YYYY h:mm A",
|
||
LLLL: "dddd, D MMMM YYYY h:mm A"
|
||
},
|
||
calendar: {
|
||
sameDay: "[Ònì ni] LT",
|
||
nextDay: "[Ọ̀la ni] LT",
|
||
nextWeek: "dddd [Ọsẹ̀ tón'bọ] [ni] LT",
|
||
lastDay: "[Àna ni] LT",
|
||
lastWeek: "dddd [Ọsẹ̀ tólọ́] [ni] LT",
|
||
sameElse: "L"
|
||
},
|
||
relativeTime: {
|
||
future: "ní %s",
|
||
past: "%s kọjá",
|
||
s: "ìsẹjú aayá die",
|
||
ss: "aayá %d",
|
||
m: "ìsẹjú kan",
|
||
mm: "ìsẹjú %d",
|
||
h: "wákati kan",
|
||
hh: "wákati %d",
|
||
d: "ọjọ́ kan",
|
||
dd: "ọjọ́ %d",
|
||
M: "osù kan",
|
||
MM: "osù %d",
|
||
y: "ọdún kan",
|
||
yy: "ọdún %d"
|
||
},
|
||
dayOfMonthOrdinalParse: /ọjọ́\s\d{1,2}/,
|
||
ordinal: "ọjọ́ %d",
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("zh-cn", {
|
||
months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
|
||
monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
|
||
weekdaysShort: "周日_周一_周二_周三_周四_周五_周六".split("_"),
|
||
weekdaysMin: "日_一_二_三_四_五_六".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY/MM/DD",
|
||
LL: "YYYY年M月D日",
|
||
LLL: "YYYY年M月D日Ah点mm分",
|
||
LLLL: "YYYY年M月D日ddddAh点mm分",
|
||
l: "YYYY/M/D",
|
||
ll: "YYYY年M月D日",
|
||
lll: "YYYY年M月D日 HH:mm",
|
||
llll: "YYYY年M月D日dddd HH:mm"
|
||
},
|
||
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "凌晨" || t === "早上" || t === "上午") return e; else if (t === "下午" || t === "晚上") return e + 12; else return e >= 11 ? e : e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
var i = e * 100 + t;
|
||
if (i < 600) return "凌晨"; else if (i < 900) return "早上"; else if (i < 1130) return "上午"; else if (i < 1230) return "中午"; else if (i < 1800) return "下午"; else return "晚上"
|
||
},
|
||
calendar: {
|
||
sameDay: "[今天]LT", nextDay: "[明天]LT", nextWeek: function (e) {
|
||
if (e.week() !== this.week()) return "[下]dddLT"; else return "[本]dddLT"
|
||
}, lastDay: "[昨天]LT", lastWeek: function (e) {
|
||
if (this.week() !== e.week()) return "[上]dddLT"; else return "[本]dddLT"
|
||
}, sameElse: "L"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "日";
|
||
case"M":
|
||
return e + "月";
|
||
case"w":
|
||
case"W":
|
||
return e + "周";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: "%s后",
|
||
past: "%s前",
|
||
s: "几秒",
|
||
ss: "%d 秒",
|
||
m: "1 分钟",
|
||
mm: "%d 分钟",
|
||
h: "1 小时",
|
||
hh: "%d 小时",
|
||
d: "1 天",
|
||
dd: "%d 天",
|
||
w: "1 周",
|
||
ww: "%d 周",
|
||
M: "1 个月",
|
||
MM: "%d 个月",
|
||
y: "1 年",
|
||
yy: "%d 年"
|
||
},
|
||
week: {dow: 1, doy: 4}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("zh-hk", {
|
||
months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
|
||
monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
|
||
weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
|
||
weekdaysMin: "日_一_二_三_四_五_六".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY/MM/DD",
|
||
LL: "YYYY年M月D日",
|
||
LLL: "YYYY年M月D日 HH:mm",
|
||
LLLL: "YYYY年M月D日dddd HH:mm",
|
||
l: "YYYY/M/D",
|
||
ll: "YYYY年M月D日",
|
||
lll: "YYYY年M月D日 HH:mm",
|
||
llll: "YYYY年M月D日dddd HH:mm"
|
||
},
|
||
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "凌晨" || t === "早上" || t === "上午") return e; else if (t === "中午") return e >= 11 ? e : e + 12; else if (t === "下午" || t === "晚上") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
var i = e * 100 + t;
|
||
if (i < 600) return "凌晨"; else if (i < 900) return "早上"; else if (i < 1200) return "上午"; else if (i === 1200) return "中午"; else if (i < 1800) return "下午"; else return "晚上"
|
||
},
|
||
calendar: {
|
||
sameDay: "[今天]LT",
|
||
nextDay: "[明天]LT",
|
||
nextWeek: "[下]ddddLT",
|
||
lastDay: "[昨天]LT",
|
||
lastWeek: "[上]ddddLT",
|
||
sameElse: "L"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "日";
|
||
case"M":
|
||
return e + "月";
|
||
case"w":
|
||
case"W":
|
||
return e + "週";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: "%s後",
|
||
past: "%s前",
|
||
s: "幾秒",
|
||
ss: "%d 秒",
|
||
m: "1 分鐘",
|
||
mm: "%d 分鐘",
|
||
h: "1 小時",
|
||
hh: "%d 小時",
|
||
d: "1 天",
|
||
dd: "%d 天",
|
||
M: "1 個月",
|
||
MM: "%d 個月",
|
||
y: "1 年",
|
||
yy: "%d 年"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("zh-mo", {
|
||
months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
|
||
monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
|
||
weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
|
||
weekdaysMin: "日_一_二_三_四_五_六".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "DD/MM/YYYY",
|
||
LL: "YYYY年M月D日",
|
||
LLL: "YYYY年M月D日 HH:mm",
|
||
LLLL: "YYYY年M月D日dddd HH:mm",
|
||
l: "D/M/YYYY",
|
||
ll: "YYYY年M月D日",
|
||
lll: "YYYY年M月D日 HH:mm",
|
||
llll: "YYYY年M月D日dddd HH:mm"
|
||
},
|
||
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "凌晨" || t === "早上" || t === "上午") return e; else if (t === "中午") return e >= 11 ? e : e + 12; else if (t === "下午" || t === "晚上") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
var i = e * 100 + t;
|
||
if (i < 600) return "凌晨"; else if (i < 900) return "早上"; else if (i < 1130) return "上午"; else if (i < 1230) return "中午"; else if (i < 1800) return "下午"; else return "晚上"
|
||
},
|
||
calendar: {
|
||
sameDay: "[今天] LT",
|
||
nextDay: "[明天] LT",
|
||
nextWeek: "[下]dddd LT",
|
||
lastDay: "[昨天] LT",
|
||
lastWeek: "[上]dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "日";
|
||
case"M":
|
||
return e + "月";
|
||
case"w":
|
||
case"W":
|
||
return e + "週";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: "%s內",
|
||
past: "%s前",
|
||
s: "幾秒",
|
||
ss: "%d 秒",
|
||
m: "1 分鐘",
|
||
mm: "%d 分鐘",
|
||
h: "1 小時",
|
||
hh: "%d 小時",
|
||
d: "1 天",
|
||
dd: "%d 天",
|
||
M: "1 個月",
|
||
MM: "%d 個月",
|
||
y: "1 年",
|
||
yy: "%d 年"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
!function (e) {
|
||
"use strict";
|
||
//! moment.js locale configuration
|
||
var t;
|
||
e.defineLocale("zh-tw", {
|
||
months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
|
||
monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
|
||
weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
|
||
weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
|
||
weekdaysMin: "日_一_二_三_四_五_六".split("_"),
|
||
longDateFormat: {
|
||
LT: "HH:mm",
|
||
LTS: "HH:mm:ss",
|
||
L: "YYYY/MM/DD",
|
||
LL: "YYYY年M月D日",
|
||
LLL: "YYYY年M月D日 HH:mm",
|
||
LLLL: "YYYY年M月D日dddd HH:mm",
|
||
l: "YYYY/M/D",
|
||
ll: "YYYY年M月D日",
|
||
lll: "YYYY年M月D日 HH:mm",
|
||
llll: "YYYY年M月D日dddd HH:mm"
|
||
},
|
||
meridiemParse: /凌晨|早上|上午|中午|下午|晚上/,
|
||
meridiemHour: function (e, t) {
|
||
if (e === 12) e = 0;
|
||
if (t === "凌晨" || t === "早上" || t === "上午") return e; else if (t === "中午") return e >= 11 ? e : e + 12; else if (t === "下午" || t === "晚上") return e + 12
|
||
},
|
||
meridiem: function (e, t, n) {
|
||
var i = e * 100 + t;
|
||
if (i < 600) return "凌晨"; else if (i < 900) return "早上"; else if (i < 1130) return "上午"; else if (i < 1230) return "中午"; else if (i < 1800) return "下午"; else return "晚上"
|
||
},
|
||
calendar: {
|
||
sameDay: "[今天] LT",
|
||
nextDay: "[明天] LT",
|
||
nextWeek: "[下]dddd LT",
|
||
lastDay: "[昨天] LT",
|
||
lastWeek: "[上]dddd LT",
|
||
sameElse: "L"
|
||
},
|
||
dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/,
|
||
ordinal: function (e, t) {
|
||
switch (t) {
|
||
case"d":
|
||
case"D":
|
||
case"DDD":
|
||
return e + "日";
|
||
case"M":
|
||
return e + "月";
|
||
case"w":
|
||
case"W":
|
||
return e + "週";
|
||
default:
|
||
return e
|
||
}
|
||
},
|
||
relativeTime: {
|
||
future: "%s後",
|
||
past: "%s前",
|
||
s: "幾秒",
|
||
ss: "%d 秒",
|
||
m: "1 分鐘",
|
||
mm: "%d 分鐘",
|
||
h: "1 小時",
|
||
hh: "%d 小時",
|
||
d: "1 天",
|
||
dd: "%d 天",
|
||
M: "1 個月",
|
||
MM: "%d 個月",
|
||
y: "1 年",
|
||
yy: "%d 年"
|
||
}
|
||
})
|
||
}(n(0))
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = s(n(20)), r = s(n(38)), a = s(n(1));
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, s(n(2)).default)(u, null, [{
|
||
key: "install", value: function () {
|
||
Object.setPrototypeOf = r.default || function (e, t) {
|
||
return e.__proto__ = t, e
|
||
}, Object.assign = i.default || function (e) {
|
||
if (null == e) throw new TypeError("Cannot convert undefined or null to object");
|
||
for (var t = Object(e), n = 1; n < arguments.length; n++) {
|
||
var i = arguments[n];
|
||
if (null != i) for (var r in i) i.hasOwnProperty(r) && (t[r] = i[r])
|
||
}
|
||
return t
|
||
}, "function" != typeof self.Promise && n(298).polyfill()
|
||
}
|
||
}]);
|
||
var o = u;
|
||
|
||
function u() {
|
||
(0, a.default)(this, u)
|
||
}
|
||
|
||
o.install(), t.default = o
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = m(n(1)), r = m(n(2)), a = m(n(4)), s = m(n(62)), o = n(15), u = m(n(307)), d = m(n(311)),
|
||
l = (m(n(312)), m(n(313))), h = m(n(314)), c = m(n(315)), _ = m(n(316)), f = n(5);
|
||
|
||
function m(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(p, [{
|
||
key: "destroy", value: function () {
|
||
this._loader.isWorking() && this._loader.abort(), this._loader.destroy(), this._loader = null, this._loaderClass = null, this._dataSource = null, this._stashBuffer = null, this._stashUsed = this._stashSize = this._bufferSize = this._stashByteStart = 0, this._currentRange = null, this._speedSampler = null, this._isEarlyEofReconnecting = !1, this._onDataArrival = null, this._onSeeked = null, this._onError = null, this._onComplete = null, this._onRedirect = null, this._onRecoveredEarlyEof = null, this._extraData = null
|
||
}
|
||
}, {
|
||
key: "isWorking", value: function () {
|
||
return this._loader && this._loader.isWorking() && !this._paused
|
||
}
|
||
}, {
|
||
key: "isPaused", value: function () {
|
||
return this._paused
|
||
}
|
||
}, {
|
||
key: "_selectSeekHandler", value: function () {
|
||
var e = this._config;
|
||
if ("range" === e.seekType) this._seekHandler = new c.default(this._config.rangeLoadZeroStart); else if ("param" === e.seekType) {
|
||
var t = e.seekParamStart || "bstart", n = e.seekParamEnd || "bend";
|
||
this._seekHandler = new _.default(t, n)
|
||
} else {
|
||
if ("custom" !== e.seekType) throw new f.InvalidArgumentException("Invalid seekType in config: " + e.seekType);
|
||
if ("function" != typeof e.customSeekHandler) throw new f.InvalidArgumentException("Custom seekType specified in config but invalid customSeekHandler!");
|
||
this._seekHandler = new e.customSeekHandler
|
||
}
|
||
}
|
||
}, {
|
||
key: "_selectLoader", value: function () {
|
||
if (null != this._config.customLoader) this._loaderClass = this._config.customLoader; else if (this._isWebSocketURL) this._loaderClass = h.default; else if (u.default.isSupported()) this._loaderClass = u.default; else if (d.default.isSupported()) this._loaderClass = d.default; else {
|
||
if (!l.default.isSupported()) throw new f.RuntimeException("Your browser doesn't support xhr with arraybuffer responseType!");
|
||
this._loaderClass = l.default
|
||
}
|
||
}
|
||
}, {
|
||
key: "_createLoader", value: function () {
|
||
this._loader = new this._loaderClass(this._seekHandler, this._config), !1 === this._loader.needStashBuffer && (this._enableStash = !1), this._loader.onContentLengthKnown = this._onContentLengthKnown.bind(this), this._loader.onURLRedirect = this._onURLRedirect.bind(this), this._loader.onDataArrival = this._onLoaderChunkArrival.bind(this), this._loader.onComplete = this._onLoaderComplete.bind(this), this._loader.onError = this._onLoaderError.bind(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (e) {
|
||
this._currentRange = {
|
||
from: 0,
|
||
to: -1
|
||
}, e && (this._currentRange.from = e), this._speedSampler.reset(), e || (this._fullRequestFlag = !0)
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
this._loader.abort(), this._paused && (this._paused = !1, this._resumeFrom = 0)
|
||
}
|
||
}, {
|
||
key: "pause", value: function () {
|
||
this.isWorking() && (this._loader.abort(), 0 !== this._stashUsed ? (this._resumeFrom = this._stashByteStart, this._currentRange.to = this._stashByteStart - 1) : this._resumeFrom = this._currentRange.to + 1, this._stashUsed = 0, this._stashByteStart = 0, this._paused = !0)
|
||
}
|
||
}, {
|
||
key: "resume", value: function () {
|
||
var e;
|
||
this._paused && (this._paused = !1, e = this._resumeFrom, this._resumeFrom = 0, this._internalSeek(e, !0))
|
||
}
|
||
}, {
|
||
key: "seek", value: function (e) {
|
||
this._paused = !1, this._stashUsed = 0, this._stashByteStart = 0, this._internalSeek(e, !0)
|
||
}
|
||
}, {
|
||
key: "_internalSeek", value: function (e, t) {
|
||
this._loader.isWorking() && this._loader.abort(), this._flushStashBuffer(t), this._loader.destroy(), this._loader = null;
|
||
t = {from: e, to: -1};
|
||
this._currentRange = {
|
||
from: t.from,
|
||
to: -1
|
||
}, this._speedSampler.reset(), this._stashSize = this._stashInitialSize, this._createLoader(), this._loader.open(this._dataSource, t), this._onSeeked && this._onSeeked()
|
||
}
|
||
}, {
|
||
key: "updateUrl", value: function (e) {
|
||
if (!e || "string" != typeof e || 0 === e.length) throw new f.InvalidArgumentException("Url must be a non-empty string!");
|
||
this._dataSource.url = e
|
||
}
|
||
}, {
|
||
key: "_expandBuffer", value: function (e) {
|
||
for (var t, n, i = this._stashSize; i + 1048576 < e;) i *= 2;
|
||
(i += 1048576) !== this._bufferSize && (t = new ArrayBuffer(i), 0 < this._stashUsed && (n = new Uint8Array(this._stashBuffer, 0, this._stashUsed), new Uint8Array(t, 0, i).set(n, 0)), this._stashBuffer = t, this._bufferSize = i)
|
||
}
|
||
}, {
|
||
key: "_normalizeSpeed", value: function (e) {
|
||
var t, n = this._speedNormalizeList, i = n.length - 1, r = 0, a = i;
|
||
if (e < n[0]) return n[0];
|
||
for (; r <= a;) {
|
||
if ((t = r + Math.floor((a - r) / 2)) === i || e >= n[t] && e < n[t + 1]) return n[t];
|
||
n[t] < e ? r = t + 1 : a = t - 1
|
||
}
|
||
}
|
||
}, {
|
||
key: "_adjustStashSize", value: function (e) {
|
||
var t = 0,
|
||
e = 1024 * (t = 8192 < (t = this._config.isLive || e < 512 ? e : 512 <= e && e <= 1024 ? Math.floor(1.5 * e) : 2 * e) ? 8192 : t) + 1048576;
|
||
this._bufferSize < e && this._expandBuffer(e), this._stashSize = 1024 * t
|
||
}
|
||
}, {
|
||
key: "_dispatchChunks", value: function (e, t) {
|
||
return this._currentRange.to = t + e.byteLength - 1, this._onDataArrival(e, t)
|
||
}
|
||
}, {
|
||
key: "_onURLRedirect", value: function (e) {
|
||
this._redirectedURL = e, this._onRedirect && this._onRedirect(e)
|
||
}
|
||
}, {
|
||
key: "_onContentLengthKnown", value: function (e) {
|
||
e && this._fullRequestFlag && (this._totalLength = e, this._fullRequestFlag = !1)
|
||
}
|
||
}, {
|
||
key: "_onLoaderChunkArrival", value: function (e, t, n) {
|
||
if (!this._onDataArrival) throw new f.IllegalStateException("IOController: No existing consumer (onDataArrival) callback!");
|
||
var i, r, a;
|
||
this._paused || (this._isEarlyEofReconnecting && (this._isEarlyEofReconnecting = !1, this._onRecoveredEarlyEof && this._onRecoveredEarlyEof()), this._speedSampler.addBytes(e.byteLength), 0 !== (i = this._speedSampler.lastSecondKBps) && (i = this._normalizeSpeed(i), this._speedNormalized !== i && (this._speedNormalized = i, this._adjustStashSize(i))), this._enableStash ? (0 === this._stashUsed && 0 === this._stashByteStart && (this._stashByteStart = t), this._stashUsed + e.byteLength <= this._stashSize ? (new Uint8Array(this._stashBuffer, 0, this._stashSize).set(new Uint8Array(e), this._stashUsed), this._stashUsed += e.byteLength) : (i = new Uint8Array(this._stashBuffer, 0, this._bufferSize), 0 < this._stashUsed ? (r = this._stashBuffer.slice(0, this._stashUsed), (a = this._dispatchChunks(r, this._stashByteStart)) < r.byteLength ? 0 < a && (r = new Uint8Array(r, a), i.set(r, 0), this._stashUsed = r.byteLength, this._stashByteStart += a) : (this._stashUsed = 0, this._stashByteStart += a), this._stashUsed + e.byteLength > this._bufferSize && (this._expandBuffer(this._stashUsed + e.byteLength), i = new Uint8Array(this._stashBuffer, 0, this._bufferSize)), i.set(new Uint8Array(e), this._stashUsed), this._stashUsed += e.byteLength) : (r = this._dispatchChunks(e, t)) < e.byteLength && ((a = e.byteLength - r) > this._bufferSize && (this._expandBuffer(a), i = new Uint8Array(this._stashBuffer, 0, this._bufferSize)), i.set(new Uint8Array(e, r), 0), this._stashUsed += a, this._stashByteStart = t + r))) : 0 === this._stashUsed ? (i = this._dispatchChunks(e, t)) < e.byteLength && ((a = e.byteLength - i) > this._bufferSize && this._expandBuffer(a), new Uint8Array(this._stashBuffer, 0, this._bufferSize).set(new Uint8Array(e, i), 0), this._stashUsed += a, this._stashByteStart = t + i) : (this._stashUsed + e.byteLength > this._bufferSize && this._expandBuffer(this._stashUsed + e.byteLength), (r = new Uint8Array(this._stashBuffer, 0, this._bufferSize)).set(new Uint8Array(e), this._stashUsed), this._stashUsed += e.byteLength, (a = this._dispatchChunks(this._stashBuffer.slice(0, this._stashUsed), this._stashByteStart)) < this._stashUsed && 0 < a && (t = new Uint8Array(this._stashBuffer, a), r.set(t, 0)), this._stashUsed -= a, this._stashByteStart += a))
|
||
}
|
||
}, {
|
||
key: "_flushStashBuffer", value: function (e) {
|
||
if (0 < this._stashUsed) {
|
||
var t = this._stashBuffer.slice(0, this._stashUsed),
|
||
n = this._dispatchChunks(t, this._stashByteStart), i = t.byteLength - n;
|
||
if (n < t.byteLength) {
|
||
if (!e) return 0 < n && (e = new Uint8Array(this._stashBuffer, 0, this._bufferSize), t = new Uint8Array(t, n), e.set(t, 0), this._stashUsed = t.byteLength, this._stashByteStart += n), 0;
|
||
a.default.w(this.TAG, i + " bytes unconsumed data remain when flush buffer, dropped")
|
||
}
|
||
return this._stashUsed = 0, this._stashByteStart = 0, i
|
||
}
|
||
return 0
|
||
}
|
||
}, {
|
||
key: "_onLoaderComplete", value: function (e, t) {
|
||
this._flushStashBuffer(!0), this._onComplete && this._onComplete(this._extraData)
|
||
}
|
||
}, {
|
||
key: "_onLoaderError", value: function (e, t) {
|
||
switch (a.default.e(this.TAG, "Loader error, code = " + t.code + ", msg = " + t.msg), this._flushStashBuffer(!1), this._isEarlyEofReconnecting && (this._isEarlyEofReconnecting = !1, e = o.LoaderErrors.UNRECOVERABLE_EARLY_EOF), e) {
|
||
case o.LoaderErrors.EARLY_EOF:
|
||
var n;
|
||
if (!this._config.isLive) if (this._totalLength) return void ((n = this._currentRange.to + 1) < this._totalLength && (a.default.w(this.TAG, "Connection lost, trying reconnect..."), this._isEarlyEofReconnecting = !0, this._internalSeek(n, !1)));
|
||
e = o.LoaderErrors.UNRECOVERABLE_EARLY_EOF;
|
||
break;
|
||
case o.LoaderErrors.UNRECOVERABLE_EARLY_EOF:
|
||
case o.LoaderErrors.CONNECTING_TIMEOUT:
|
||
case o.LoaderErrors.HTTP_STATUS_CODE_INVALID:
|
||
case o.LoaderErrors.EXCEPTION:
|
||
}
|
||
if (!this._onError) throw new f.RuntimeException("IOException: " + t.msg);
|
||
this._onError(e, t)
|
||
}
|
||
}, {
|
||
key: "status", get: function () {
|
||
return this._loader.status
|
||
}
|
||
}, {
|
||
key: "extraData", get: function () {
|
||
return this._extraData
|
||
}, set: function (e) {
|
||
this._extraData = e
|
||
}
|
||
}, {
|
||
key: "onDataArrival", get: function () {
|
||
return this._onDataArrival
|
||
}, set: function (e) {
|
||
this._onDataArrival = e
|
||
}
|
||
}, {
|
||
key: "onSeeked", get: function () {
|
||
return this._onSeeked
|
||
}, set: function (e) {
|
||
this._onSeeked = e
|
||
}
|
||
}, {
|
||
key: "onError", get: function () {
|
||
return this._onError
|
||
}, set: function (e) {
|
||
this._onError = e
|
||
}
|
||
}, {
|
||
key: "onComplete", get: function () {
|
||
return this._onComplete
|
||
}, set: function (e) {
|
||
this._onComplete = e
|
||
}
|
||
}, {
|
||
key: "onRedirect", get: function () {
|
||
return this._onRedirect
|
||
}, set: function (e) {
|
||
this._onRedirect = e
|
||
}
|
||
}, {
|
||
key: "onRecoveredEarlyEof", get: function () {
|
||
return this._onRecoveredEarlyEof
|
||
}, set: function (e) {
|
||
this._onRecoveredEarlyEof = e
|
||
}
|
||
}, {
|
||
key: "currentURL", get: function () {
|
||
return this._dataSource.url
|
||
}
|
||
}, {
|
||
key: "hasRedirect", get: function () {
|
||
return null != this._redirectedURL || null != this._dataSource.redirectedURL
|
||
}
|
||
}, {
|
||
key: "currentRedirectedURL", get: function () {
|
||
return this._redirectedURL || this._dataSource.redirectedURL
|
||
}
|
||
}, {
|
||
key: "currentSpeed", get: function () {
|
||
return this._loaderClass === l.default ? this._loader.currentSpeed : this._speedSampler.lastSecondKBps
|
||
}
|
||
}, {
|
||
key: "loaderType", get: function () {
|
||
return this._loader.type
|
||
}
|
||
}]);
|
||
n = p;
|
||
|
||
function p(e, t, n) {
|
||
(0, i.default)(this, p), this.TAG = "IOController", this._config = t, this._extraData = n, this._stashInitialSize = 65536, null != t.stashInitialSize && 0 < t.stashInitialSize && (this._stashInitialSize = t.stashInitialSize), this._stashUsed = 0, this._stashSize = this._stashInitialSize, (this._bufferSize = 3145728) < t.stashInitialSize && (this._bufferSize = t.stashInitialSize), this._stashBuffer = new ArrayBuffer(this._bufferSize), this._stashByteStart = 0, !(this._enableStash = !0) === t.enableStashBuffer && (this._enableStash = !1), this._loader = null, this._loaderClass = null, this._seekHandler = null, this._dataSource = e, this._isWebSocketURL = /wss?:\/\/(.+?)/.test(e.url), this._refTotalLength = e.filesize || null, this._totalLength = this._refTotalLength, this._fullRequestFlag = !1, this._currentRange = null, this._redirectedURL = null, this._speedNormalized = 0, this._speedSampler = new s.default, this._speedNormalizeList = [64, 128, 256, 384, 512, 768, 1024, 1536, 2048, 3072, 4096], this._isEarlyEofReconnecting = !1, this._paused = !1, this._resumeFrom = 0, this._onDataArrival = null, this._onSeeked = null, this._onError = null, this._onComplete = null, this._onRedirect = null, this._onRecoveredEarlyEof = null, this._selectSeekHandler(), this._selectLoader(), this._createLoader()
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = y(n(38)), r = y(n(20)), a = y(n(11)), s = y(n(1)), o = y(n(2)), u = y(n(10)), d = y(n(4)), l = y(n(33)),
|
||
h = y(n(65)), c = y(n(319)), _ = y(n(328)), f = y(n(66)), m = y(n(228)), p = y(n(40));
|
||
n(15);
|
||
|
||
function y(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, o.default)(v, [{
|
||
key: "destroy", value: function () {
|
||
this._mediaInfo = null, this._mediaDataSource = null, this._statisticsReporter && this._disableStatisticsReporter(), this._ioctl && (this._ioctl.destroy(), this._ioctl = null), this._demuxer && (this._demuxer.destroy(), this._demuxer = null), this._remuxer && (this._remuxer.destroy(), this._remuxer = null), this._emitter.removeAllListeners(), this._emitter = null
|
||
}
|
||
}, {
|
||
key: "on", value: function (e, t) {
|
||
this._emitter.addListener(e, t)
|
||
}
|
||
}, {
|
||
key: "off", value: function (e, t) {
|
||
this._emitter.removeListener(e, t)
|
||
}
|
||
}, {
|
||
key: "start", value: function () {
|
||
this._loadSegment(0), this._enableStatisticsReporter()
|
||
}
|
||
}, {
|
||
key: "_loadSegment", value: function (e, t) {
|
||
this._currentSegmentIndex = e;
|
||
var n = this._mediaDataSource.segments[e], n = this._ioctl = new m.default(n, this._config, e);
|
||
n.onError = this._onIOException.bind(this), n.onSeeked = this._onIOSeeked.bind(this), n.onComplete = this._onIOComplete.bind(this), n.onRedirect = this._onIORedirect.bind(this), n.onRecoveredEarlyEof = this._onIORecoveredEarlyEof.bind(this), t ? this._demuxer.bindDataSource(this._ioctl) : n.onDataArrival = this._onInitChunkArrival.bind(this), n.open(t)
|
||
}
|
||
}, {
|
||
key: "stop", value: function () {
|
||
this._internalAbort(), this._disableStatisticsReporter()
|
||
}
|
||
}, {
|
||
key: "_internalAbort", value: function () {
|
||
this._ioctl && (this._ioctl.destroy(), this._ioctl = null)
|
||
}
|
||
}, {
|
||
key: "pause", value: function () {
|
||
this._ioctl && this._ioctl.isWorking() && (this._ioctl.pause(), this._disableStatisticsReporter())
|
||
}
|
||
}, {
|
||
key: "resume", value: function () {
|
||
this._ioctl && this._ioctl.isPaused() && (this._ioctl.resume(), this._enableStatisticsReporter())
|
||
}
|
||
}, {
|
||
key: "seek", value: function (e) {
|
||
var t, n;
|
||
null != this._mediaInfo && this._mediaInfo.isSeekable() && ((t = this._searchSegmentIndexContains(e)) === this._currentSegmentIndex ? null == (n = this._mediaInfo.segments[t]) ? this._pendingSeekTime = e : (n = n.getNearestKeyframe(e), this._remuxer.seek(n.milliseconds), this._ioctl.seek(n.fileposition), this._pendingResolveSeekPoint = n.milliseconds) : null == (n = this._mediaInfo.segments[t]) ? (this._pendingSeekTime = e, this._internalAbort(), this._remuxer.seek(), this._remuxer.insertDiscontinuity(), this._loadSegment(t)) : (n = n.getNearestKeyframe(e), this._internalAbort(), this._remuxer.seek(e), this._remuxer.insertDiscontinuity(), this._demuxer.resetMediaInfo(), this._demuxer.timestampBase = this._mediaDataSource.segments[t].timestampBase, this._loadSegment(t, n.fileposition), this._pendingResolveSeekPoint = n.milliseconds, this._reportSegmentMediaInfo(t)), this._enableStatisticsReporter())
|
||
}
|
||
}, {
|
||
key: "_searchSegmentIndexContains", value: function (e) {
|
||
for (var t = this._mediaDataSource.segments, n = t.length - 1, i = 0; i < t.length; i++) if (e < t[i].timestampBase) {
|
||
n = i - 1;
|
||
break
|
||
}
|
||
return n
|
||
}
|
||
}, {
|
||
key: "_onInitChunkArrival", value: function (e, t) {
|
||
var n, i = this, r = null;
|
||
return 0 < t ? (this._demuxer.bindDataSource(this._ioctl), this._demuxer.timestampBase = this._mediaDataSource.segments[this._currentSegmentIndex].timestampBase, this._demuxer.parseChunks(e, t)) : (r = c.default.probe(e)).match ? (this._demuxer = new c.default(r, this._config), this._remuxer || (this._remuxer = new _.default(this._config)), null == (n = this._mediaDataSource).duration || isNaN(n.duration) || (this._demuxer.overridedDuration = n.duration), "boolean" == typeof n.hasAudio && (this._demuxer.overridedHasAudio = n.hasAudio), "boolean" == typeof n.hasVideo && (this._demuxer.overridedHasVideo = n.hasVideo), this._demuxer.timestampBase = n.segments[this._currentSegmentIndex].timestampBase, this._demuxer.onError = this._onDemuxException.bind(this), this._demuxer.onMediaInfo = this._onMediaInfo.bind(this), this._demuxer.onMetaDataArrived = this._onMetaDataArrived.bind(this), this._demuxer.onScriptDataArrived = this._onScriptDataArrived.bind(this), this._demuxer.onVideoResolutionChanged = this._onVideoResolutionChanged.bind(this), this._demuxer.onParsedData = this._onParsedData.bind(this), this._remuxer.bindDataSource(this._demuxer.bindDataSource(this._ioctl)), this._remuxer.onInitSegment = this._onRemuxerInitSegmentArrival.bind(this), this._remuxer.onMediaSegment = this._onRemuxerMediaSegmentArrival.bind(this), this._demuxer.parseChunks(e, t)) : (r = null, d.default.e(this.TAG, "Non-FLV, Unsupported media type!"), a.default.resolve().then(function () {
|
||
i._internalAbort()
|
||
}), this._emitter.emit(p.default.DEMUX_ERROR, f.default.FORMAT_UNSUPPORTED, "Non-FLV, Unsupported media type"), 0)
|
||
}
|
||
}, {
|
||
key: "_onMediaInfo", value: function (e) {
|
||
var t = this,
|
||
e = (null == this._mediaInfo && (this._mediaInfo = (0, r.default)({}, e), this._mediaInfo.keyframesIndex = null, this._mediaInfo.segments = [], this._mediaInfo.segmentCount = this._mediaDataSource.segments.length, (0, i.default)(this._mediaInfo, h.default.prototype)), (0, r.default)({}, e));
|
||
(0, i.default)(e, h.default.prototype), this._mediaInfo.segments[this._currentSegmentIndex] = e, this._reportSegmentMediaInfo(this._currentSegmentIndex), null != this._pendingSeekTime && a.default.resolve().then(function () {
|
||
var e = t._pendingSeekTime;
|
||
t._pendingSeekTime = null, t.seek(e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onMetaDataArrived", value: function (e) {
|
||
this._emitter.emit(p.default.METADATA_ARRIVED, e)
|
||
}
|
||
}, {
|
||
key: "_onScriptDataArrived", value: function (e) {
|
||
this._emitter.emit(p.default.SCRIPTDATA_ARRIVED, e)
|
||
}
|
||
}, {
|
||
key: "_onIOSeeked", value: function () {
|
||
this._remuxer.insertDiscontinuity()
|
||
}
|
||
}, {
|
||
key: "_onIOComplete", value: function (e) {
|
||
e += 1;
|
||
e < this._mediaDataSource.segments.length ? (this._internalAbort(), this._remuxer.flushStashedSamples(), this._loadSegment(e)) : (this._remuxer.flushStashedSamples(), this._emitter.emit(p.default.LOADING_COMPLETE), this._disableStatisticsReporter())
|
||
}
|
||
}, {
|
||
key: "_onIORedirect", value: function (e) {
|
||
var t = this._ioctl.extraData;
|
||
this._mediaDataSource.segments[t].redirectedURL = e
|
||
}
|
||
}, {
|
||
key: "_onIORecoveredEarlyEof", value: function () {
|
||
this._emitter.emit(p.default.RECOVERED_EARLY_EOF)
|
||
}
|
||
}, {
|
||
key: "_onIOException", value: function (e, t) {
|
||
d.default.e(this.TAG, "IOException: type = " + e + ", code = " + t.code + ", msg = " + t.msg), this._emitter.emit(p.default.IO_ERROR, e, t), this._disableStatisticsReporter()
|
||
}
|
||
}, {
|
||
key: "_onDemuxException", value: function (e, t) {
|
||
d.default.e(this.TAG, "DemuxException: type = " + e + ", info = " + t), this._emitter.emit(p.default.DEMUX_ERROR, e, t)
|
||
}
|
||
}, {
|
||
key: "_onRemuxerInitSegmentArrival", value: function (e, t) {
|
||
this._emitter.emit(p.default.INIT_SEGMENT, e, t)
|
||
}
|
||
}, {
|
||
key: "_onRemuxerMediaSegmentArrival", value: function (e, t) {
|
||
null == this._pendingSeekTime && (this._emitter.emit(p.default.MEDIA_SEGMENT, e, t), null != this._pendingResolveSeekPoint && "video" === e && (e = t.info.syncPoints, t = this._pendingResolveSeekPoint, this._pendingResolveSeekPoint = null, l.default.safari && 0 < e.length && e[0].originalDts === t && (t = e[0].pts), this._emitter.emit(p.default.RECOMMEND_SEEKPOINT, t)))
|
||
}
|
||
}, {
|
||
key: "_enableStatisticsReporter", value: function () {
|
||
null == this._statisticsReporter && (this._statisticsReporter = self.setInterval(this._reportStatisticsInfo.bind(this), this._config.statisticsInfoReportInterval))
|
||
}
|
||
}, {
|
||
key: "_disableStatisticsReporter", value: function () {
|
||
this._statisticsReporter && (self.clearInterval(this._statisticsReporter), this._statisticsReporter = null)
|
||
}
|
||
}, {
|
||
key: "_reportSegmentMediaInfo", value: function (e) {
|
||
e = this._mediaInfo.segments[e], e = (0, r.default)({}, e);
|
||
e.duration = this._mediaInfo.duration, e.segmentCount = this._mediaInfo.segmentCount, delete e.segments, delete e.keyframesIndex, this._emitter.emit(p.default.MEDIA_INFO, e)
|
||
}
|
||
}, {
|
||
key: "_reportStatisticsInfo", value: function () {
|
||
var e = {};
|
||
e.url = this._ioctl.currentURL, e.hasRedirect = this._ioctl.hasRedirect, e.hasRedirect && (e.redirectedURL = this._ioctl.currentRedirectedURL), e.speed = this._ioctl.currentSpeed, e.loaderType = this._ioctl.loaderType, e.currentSegmentIndex = this._currentSegmentIndex, e.totalSegmentCount = this._mediaDataSource.segments.length, e.bps_audio = e.bps_video = 0, this._demuxer && this._demuxer._bpsInfo && (e.bps_video = this._demuxer._bpsInfo.bps_video, e.bps_audio = this._demuxer._bpsInfo.bps_audio), this._emitter.emit(p.default.STATISTICS_INFO, e)
|
||
}
|
||
}, {
|
||
key: "_onVideoResolutionChanged", value: function (e) {
|
||
this._emitter.emit(p.default.VIDEO_RESOLUTION_CHANGED, e)
|
||
}
|
||
}, {
|
||
key: "_onParsedData", value: function (e, t) {
|
||
this._emitter.emit(p.default.PARSEDDATA_ARRIVED, e, t)
|
||
}
|
||
}]);
|
||
n = v;
|
||
|
||
function v(t, n) {
|
||
(0, s.default)(this, v), this.TAG = "TransmuxingController", this._emitter = new u.default, this._config = n, t.segments || (t.segments = [{
|
||
duration: t.duration,
|
||
filesize: t.filesize,
|
||
url: t.url
|
||
}]), "boolean" != typeof t.cors && (t.cors = !0), "boolean" != typeof t.withCredentials && (t.withCredentials = !1), this._mediaDataSource = t;
|
||
var i = this._currentSegmentIndex = 0;
|
||
this._mediaDataSource.segments.forEach(function (e) {
|
||
e.timestampBase = i, i += e.duration, e.cors = t.cors, e.withCredentials = t.withCredentials, n.referrerPolicy && (e.referrerPolicy = n.referrerPolicy)
|
||
}), isNaN(i) || this._mediaDataSource.duration === i || (this._mediaDataSource.duration = i), this._mediaInfo = null, this._demuxer = null, this._remuxer = null, this._ioctl = null, this._pendingSeekTime = null, this._pendingResolveSeekPoint = null, this._statisticsReporter = null
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.MediaSegmentInfoList = t.IDRSampleList = t.MediaSegmentInfo = t.SampleInfo = void 0;
|
||
var i = r(n(2)), s = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
t.SampleInfo = function e(t, n, i, r, a) {
|
||
(0, s.default)(this, e), this.dts = t, this.pts = n, this.duration = i, this.originalDts = r, this.isSyncPoint = a, this.fileposition = null
|
||
}, t.MediaSegmentInfo = ((0, i.default)(a, [{
|
||
key: "appendSyncPoint", value: function (e) {
|
||
e.isSyncPoint = !0, this.syncPoints.push(e)
|
||
}
|
||
}]), a);
|
||
|
||
function a() {
|
||
(0, s.default)(this, a), this.beginDts = 0, this.endDts = 0, this.beginPts = 0, this.endPts = 0, this.originalBeginDts = 0, this.originalEndDts = 0, this.syncPoints = [], this.firstSample = null, this.lastSample = null
|
||
}
|
||
|
||
t.IDRSampleList = ((0, i.default)(o, [{
|
||
key: "clear", value: function () {
|
||
this._list = []
|
||
}
|
||
}, {
|
||
key: "appendArray", value: function (e) {
|
||
var t = this._list;
|
||
0 !== e.length && (0 < t.length && e[0].originalDts < t[t.length - 1].originalDts && this.clear(), Array.prototype.push.apply(t, e))
|
||
}
|
||
}, {
|
||
key: "getLastSyncPointBeforeDts", value: function (e) {
|
||
if (0 == this._list.length) return null;
|
||
var t, n = this._list, i = 0, r = n.length - 1, a = 0, s = r;
|
||
for (e < n[0].dts && (i = 0, a = s + 1); a <= s;) {
|
||
if ((t = a + Math.floor((s - a) / 2)) === r || e >= n[t].dts && e < n[t + 1].dts) {
|
||
i = t;
|
||
break
|
||
}
|
||
n[t].dts < e ? a = t + 1 : s = t - 1
|
||
}
|
||
return this._list[i]
|
||
}
|
||
}]), o);
|
||
|
||
function o() {
|
||
(0, s.default)(this, o), this._list = []
|
||
}
|
||
|
||
t.MediaSegmentInfoList = ((0, i.default)(u, [{
|
||
key: "isEmpty", value: function () {
|
||
return 0 === this._list.length
|
||
}
|
||
}, {
|
||
key: "clear", value: function () {
|
||
this._list = [], this._lastAppendLocation = -1
|
||
}
|
||
}, {
|
||
key: "_searchNearestSegmentBefore", value: function (e) {
|
||
var t = this._list;
|
||
if (0 === t.length) return -2;
|
||
var n, i = t.length - 1, r = 0, a = i, s = 0;
|
||
if (e < t[0].originalBeginDts) return s = -1;
|
||
for (; r <= a;) {
|
||
if ((n = r + Math.floor((a - r) / 2)) === i || e > t[n].lastSample.originalDts && e < t[n + 1].originalBeginDts) {
|
||
s = n;
|
||
break
|
||
}
|
||
t[n].originalBeginDts < e ? r = n + 1 : a = n - 1
|
||
}
|
||
return s
|
||
}
|
||
}, {
|
||
key: "_searchNearestSegmentAfter", value: function (e) {
|
||
return this._searchNearestSegmentBefore(e) + 1
|
||
}
|
||
}, {
|
||
key: "append", value: function (e) {
|
||
var t = this._list, n = this._lastAppendLocation, i = 0;
|
||
-1 !== n && n < t.length && e.originalBeginDts >= t[n].lastSample.originalDts && (n === t.length - 1 || n < t.length - 1 && e.originalBeginDts < t[n + 1].originalBeginDts) ? i = n + 1 : 0 < t.length && (i = this._searchNearestSegmentBefore(e.originalBeginDts) + 1), this._lastAppendLocation = i, this._list.splice(i, 0, e)
|
||
}
|
||
}, {
|
||
key: "getLastSegmentBefore", value: function (e) {
|
||
e = this._searchNearestSegmentBefore(e);
|
||
return 0 <= e ? this._list[e] : null
|
||
}
|
||
}, {
|
||
key: "getLastSampleBefore", value: function (e) {
|
||
e = this.getLastSegmentBefore(e);
|
||
return null != e ? e.lastSample : null
|
||
}
|
||
}, {
|
||
key: "getLastSyncPointBefore", value: function (e) {
|
||
for (var t = this._searchNearestSegmentBefore(e), n = this._list[t].syncPoints; 0 === n.length && 0 < t;) n = this._list[--t].syncPoints;
|
||
return 0 < n.length ? n[n.length - 1] : null
|
||
}
|
||
}, {
|
||
key: "type", get: function () {
|
||
return this._type
|
||
}
|
||
}, {
|
||
key: "length", get: function () {
|
||
return this._list.length
|
||
}
|
||
}]), u);
|
||
|
||
function u(e) {
|
||
(0, s.default)(this, u), this._type = e, this._list = [], this._lastAppendLocation = -1
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
r(n(4));
|
||
var o = r(n(64)), i = r(n(227)), u = r(n(229)), d = r(n(40));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
t.default = function (r) {
|
||
var a = null, s = function (e, t) {
|
||
r.postMessage({msg: "logcat_callback", data: {type: e, logcat: t}})
|
||
}.bind(this);
|
||
i.default.install(), r.addEventListener("message", function (e) {
|
||
switch (e.data.cmd) {
|
||
case"init":
|
||
(a = new u.default(e.data.param[0], e.data.param[1])).on(d.default.IO_ERROR, function (e, t) {
|
||
r.postMessage({msg: d.default.IO_ERROR, data: {type: e, info: t}})
|
||
}.bind(this)), a.on(d.default.DEMUX_ERROR, function (e, t) {
|
||
r.postMessage({msg: d.default.DEMUX_ERROR, data: {type: e, info: t}})
|
||
}.bind(this)), a.on(d.default.INIT_SEGMENT, function (e, t) {
|
||
e = {msg: d.default.INIT_SEGMENT, data: {type: e, data: t}};
|
||
r.postMessage(e, [t.data])
|
||
}.bind(this)), a.on(d.default.MEDIA_SEGMENT, function (e, t) {
|
||
e = {msg: d.default.MEDIA_SEGMENT, data: {type: e, data: t}};
|
||
r.postMessage(e, [t.data])
|
||
}.bind(this)), a.on(d.default.LOADING_COMPLETE, function () {
|
||
var e = {msg: d.default.LOADING_COMPLETE};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.RECOVERED_EARLY_EOF, function () {
|
||
var e = {msg: d.default.RECOVERED_EARLY_EOF};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.MEDIA_INFO, function (e) {
|
||
e = {msg: d.default.MEDIA_INFO, data: e};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.METADATA_ARRIVED, function (e) {
|
||
e = {msg: d.default.METADATA_ARRIVED, data: e};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.SCRIPTDATA_ARRIVED, function (e) {
|
||
e = {msg: d.default.SCRIPTDATA_ARRIVED, data: e};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.STATISTICS_INFO, function (e) {
|
||
e = {msg: d.default.STATISTICS_INFO, data: e};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.RECOMMEND_SEEKPOINT, function (e) {
|
||
r.postMessage({msg: d.default.RECOMMEND_SEEKPOINT, data: e})
|
||
}.bind(this)), a.on(d.default.VIDEO_RESOLUTION_CHANGED, function (e) {
|
||
e = {msg: d.default.VIDEO_RESOLUTION_CHANGED, data: e};
|
||
r.postMessage(e)
|
||
}.bind(this)), a.on(d.default.PARSEDDATA_ARRIVED, function (e, t) {
|
||
e = {msg: d.default.PARSEDDATA_ARRIVED, data: {databuf: e, dataType: t}};
|
||
r.postMessage(e)
|
||
}.bind(this));
|
||
break;
|
||
case"destroy":
|
||
a && (a.destroy(), a = null), r.postMessage({msg: "destroyed"});
|
||
break;
|
||
case"start":
|
||
a.start();
|
||
break;
|
||
case"stop":
|
||
a.stop();
|
||
break;
|
||
case"seek":
|
||
a.seek(e.data.param);
|
||
break;
|
||
case"pause":
|
||
a.pause();
|
||
break;
|
||
case"resume":
|
||
a.resume();
|
||
break;
|
||
case"logging_config":
|
||
var t = e.data.param;
|
||
o.default.applyConfig(t), !0 === t.enableCallback ? o.default.addLogListener(s) : o.default.removeLogListener(s);
|
||
break;
|
||
case"feed":
|
||
var t = e.data.feedData, n = t.data, i = t.byteStart, t = t.receivedLength;
|
||
a._ioctl._onLoaderChunkArrival(n, i, t);
|
||
break;
|
||
case"set_record_flag":
|
||
a._demuxer.recordFlag = e.data.value
|
||
}
|
||
})
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
t.default = {
|
||
ERROR: "error",
|
||
SOURCE_OPEN: "source_open",
|
||
UPDATE_END: "update_end",
|
||
BUFFER_FULL: "buffer_full",
|
||
SOURCE_END: "source_end",
|
||
SOURCE_CLOSE: "source_close"
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = o(n(1)), r = o(n(2)), a = o(n(10)), s = function (e) {
|
||
{
|
||
if (e && e.__esModule) return e;
|
||
var t = {};
|
||
if (null != e) for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
|
||
return t.default = e, t
|
||
}
|
||
}(n(61));
|
||
|
||
function o(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var u = "stashbuffer_changed", d = "fileWrite_end",
|
||
n = (window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem, (0, r.default)(l, [{
|
||
key: "write",
|
||
value: function (e) {
|
||
this._stash(e)
|
||
}
|
||
}, {
|
||
key: "download", value: function () {
|
||
this._fileEntry && this._fileWriter && (1 === this._fileWriter.readyState ? this._emitter.once(d, this.download.apply(this)) : this._fileEntry.file(function (e) {
|
||
this._downloadFile(e)
|
||
}.bind(this)))
|
||
}
|
||
}, {
|
||
key: "_quota", value: function () {
|
||
window.webkitStorageInfo.requestQuota(window.TEMPORARY, this._storageQuota, this._quotaSuccess.bind(this), this._errorHandlerQuta)
|
||
}
|
||
}, {
|
||
key: "_errorHandlerQuota", value: function (e) {
|
||
console.error(s.ERR_PLAY_FILESYS_QUOTA, e)
|
||
}
|
||
}, {
|
||
key: "_quotaSuccess", value: function (e) {
|
||
window.requestFileSystem(window.TEMPORARY, e, this._initFs.bind(this), this._errorHandlerRequestFileSystem)
|
||
}
|
||
}, {
|
||
key: "_errorHandlerRequestFileSystem", value: function (e) {
|
||
console.error(s.ERR_PLAY_FILESYS_REQUEST, e)
|
||
}
|
||
}, {
|
||
key: "_initFs", value: function (e) {
|
||
this._fileSystem = e, this._fileSystem.root.getFile(this._fileName, {
|
||
create: !0,
|
||
exclusive: !0
|
||
}, this._getFileSuccess.bind(this), this._errorHandlerGetFile)
|
||
}
|
||
}, {
|
||
key: "_errorHandlerGetFile", value: function (e) {
|
||
console.error(s.ERR_PLAY_FILESYS_GETFILE, e)
|
||
}
|
||
}, {
|
||
key: "_getFileSuccess", value: function (e) {
|
||
e.isFile && (e.createWriter(this._initFileWriter.bind(this), this._errorHandlerCreateWriter), this._fileEntry = e)
|
||
}
|
||
}, {
|
||
key: "_errorHandlerCreateWriter", value: function (e) {
|
||
console.error(s.ERR_PLAY_FILESYS_CREATE, e)
|
||
}
|
||
}, {
|
||
key: "_initFileWriter", value: function (e) {
|
||
e.onwriteend = this._fileWriteEnd.bind(this), e.onerror = this._fileWriteError.bind(this), this._fileWriter = e, this._isStart = !0, this._emitter.on(u, this._stashBufferChanged.bind(this))
|
||
}
|
||
}, {
|
||
key: "_stashBufferChanged", value: function () {
|
||
var e;
|
||
(0 === this._fileWriter.readyState || 2 === this._fileWriter.readyState) && 0 < this._stashUsed && (this._fileWriter.seek(this._fileWriter.length), e = this._stashBuffer.slice(0, this._stashUsed), this._fileWriter.write(new Blob([e])), this._bufferSize = this._defaultBufferSize, this._stashBuffer = new Uint8Array(this._bufferSize), this._stashUsed = 0)
|
||
}
|
||
}, {
|
||
key: "_fileWriteEnd", value: function (e) {
|
||
this._emitter.listeners(d) && this._emitter.emit(d)
|
||
}
|
||
}, {
|
||
key: "_fileWriteError", value: function (e) {
|
||
console.error(s.ERR_PLAY_FILESYS_WRITE, e)
|
||
}
|
||
}, {
|
||
key: "_errorHandler", value: function (e) {
|
||
console.error(e)
|
||
}
|
||
}, {
|
||
key: "_stash", value: function (e) {
|
||
this._stashUsed + e.byteLength > this._bufferSize && this._expandBuffer(this._stashUsed + e.byteLength), this._stashBuffer.set(new Uint8Array(e), this._stashUsed), this._stashUsed += e.byteLength, this._emitter.listeners(u) && this._emitter.emit(u)
|
||
}
|
||
}, {
|
||
key: "_expandBuffer", value: function (e) {
|
||
this._bufferSize = e;
|
||
e = this._stashBuffer.slice(0, this._stashUsed);
|
||
this._stashBuffer = new Uint8Array(this._bufferSize), this._stashBuffer.set(e, 0)
|
||
}
|
||
}, {
|
||
key: "_downloadFile", value: function (e) {
|
||
var t = e,
|
||
e = (e instanceof Blob || e instanceof File || (t = new Blob([e])), window.URL.createObjectURL(t)),
|
||
t = window.document.createElement("a"),
|
||
e = (t.href = e, t.download = this._fileName, document.createEvent("MouseEvents"));
|
||
e.initEvent("click", !0, !0), t.dispatchEvent(e)
|
||
}
|
||
}, {
|
||
key: "onReady", set: function (e) {
|
||
this._fileWriterReady = e
|
||
}
|
||
}]), l);
|
||
|
||
function l(e, t) {
|
||
(0, i.default)(this, l), this._fileName = e, this._storageQuota = 268435456, this._fileSystem = null, this._fileEntry = null, this._fileWriter = null, this._isStart = !1, this._emitter = new a.default, this._defaultBufferSize = 134217728, this._bufferSize = this._defaultBufferSize, this._stashBuffer = new Uint8Array(this._bufferSize), this._stashUsed = 0, this._stash(t), this._quota()
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.ErrorDetails = t.ErrorTypes = void 0;
|
||
var i = n(15), n = n(66), n = (n = n) && n.__esModule ? n : {default: n};
|
||
t.ErrorTypes = {
|
||
NETWORK_ERROR: "NetworkError",
|
||
MEDIA_ERROR: "MediaError",
|
||
OTHER_ERROR: "OtherError"
|
||
}, t.ErrorDetails = {
|
||
NETWORK_EXCEPTION: i.LoaderErrors.EXCEPTION,
|
||
NETWORK_STATUS_CODE_INVALID: i.LoaderErrors.HTTP_STATUS_CODE_INVALID,
|
||
NETWORK_TIMEOUT: i.LoaderErrors.CONNECTING_TIMEOUT,
|
||
NETWORK_UNRECOVERABLE_EARLY_EOF: i.LoaderErrors.UNRECOVERABLE_EARLY_EOF,
|
||
MEDIA_MSE_ERROR: "MediaMSEError",
|
||
MEDIA_FORMAT_ERROR: n.default.FORMAT_ERROR,
|
||
MEDIA_FORMAT_UNSUPPORTED: n.default.FORMAT_UNSUPPORTED,
|
||
MEDIA_CODEC_UNSUPPORTED: n.default.CODEC_UNSUPPORTED
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.JSPlugin = void 0;
|
||
var m = r(n(11)), p = r(n(85)), y = r(n(53)), v = r(n(54)), a = r(n(1)), i = r(n(2)), g = r(n(55)), f = n(86),
|
||
s = n(262), u = n(285), d = n(286), o = n(287), l = n(288), h = n(289), c = r(n(290)), _ = r(n(0)),
|
||
M = r(n(10)), L = function (e) {
|
||
{
|
||
if (e && e.__esModule) return e;
|
||
var t = {};
|
||
if (null != e) for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
|
||
return t.default = e, t
|
||
}
|
||
}(n(61)), S = r(n(334)), k = r(n(91)), b = r(n(39)), w = n(335);
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var D, T, E = 4194304, Y = !1, P = null, C = [], n = (window.JSPlayM4_AdditionDataCBFun = function (t, e) {
|
||
var n, i, r, a, s = C.find(function (e) {
|
||
return e.port === t
|
||
}).belongWindowpoint, o = C.find(function (e) {
|
||
return e.port === t
|
||
}).belongWindowId, s = s.aWndList[o];
|
||
s && s.AdditionDataCB && (o = P.HEAP32[e >> 2], n = P.HEAP32[e + 4 >> 2], i = P.HEAP32[e + 8 >> 2], r = P.HEAP32[e + 12 >> 2], e = P.HEAP32[e + 16 >> 2], (a = new Uint8Array(r)).set(P.HEAPU8.subarray(e, e + r)), s.AdditionDataCB(o, n, i, a))
|
||
}, (0, i.default)(R, [{
|
||
key: "_getOSDTime", value: function (e, t, n, i, r, a, s) {
|
||
var o = void 0,
|
||
o = "ios" === this._browserInfo._system || f.oTool.isEdge() ? t + "/" + n + "/" + i + " " + r + ":" + a + ":" + s : t + "-" + n + "-" + i + " " + r + ":" + a + ":" + s;
|
||
this.aWndList[e].iCurentOSDTime = new Date(o).getTime()
|
||
}
|
||
}, {
|
||
key: "_getWndIndexFromPort", value: function (e) {
|
||
for (var t = this.aWndList.length, n = -1, i = 0; i < t; i++) if (this.aWndList[i].oPlayCtrl && e === this.aWndList[i].oPlayCtrl.iPort) {
|
||
n = i;
|
||
break
|
||
}
|
||
return n
|
||
}
|
||
}, {
|
||
key: "_listenBrowserVisibility", value: function () {
|
||
document.addEventListener("visibilitychange", this.e.visibilitychange)
|
||
}
|
||
}, {
|
||
key: "_createWindows", value: function () {
|
||
for (var i = this, e = document.getElementById(this.options.szId), t = e.clientWidth, n = e.clientHeight, t = (t && n || ((0, g.default)(e).width(this.options.iWidth), (0, g.default)(e).height(this.options.iHeight)), 25e4 < t * n && (this.bcloseAntialias = !0), this.options.oStyle), r = t.borderWidth, a = t.border, s = t.borderSelect, o = t.background, u = this.options.iCurrentSplit, d = (e.innerHTML = "", document.createElement("div")), n = (d.className = "parent-wnd", d.style = "width: 100%; height: 100%; position: relative; overflow: hidden;", e.appendChild(d), d.clientWidth), t = d.clientHeight, l = Math.floor((n - 1) / u), h = Math.floor((t - 1) / u), c = l - 2 * r, _ = h - 2 * r, f = 0; f < this.iMaxWndNum; f++) !function (e) {
|
||
var t = document.createElement("div"),
|
||
n = (t.className = "sub-wnd", t.id = "player-container-" + e, {
|
||
"box-sizing": "border-box",
|
||
overflow: "hidden",
|
||
width: l + "px",
|
||
height: h + "px",
|
||
border: r + "px solid " + (0 === e ? s : a),
|
||
"background-color": o,
|
||
position: "relative",
|
||
float: "left",
|
||
display: e < Math.pow(u, 2) ? "inline-block" : "none"
|
||
});
|
||
(0, p.default)(n).forEach(function (e) {
|
||
t.style.setProperty(e, n[e])
|
||
}), t.innerHTML = '\n <video autoplay muted id="' + i.options.szId + "_playVideo" + e + '" class="play-window" wid="' + e + '" \n width="' + c + '" height="' + _ + '" style="object-fit: fill;">\n </video>\n <canvas id="' + i.options.szId + "_playCanvas" + e + '" class="play-window" wid="' + e + '" \n width="' + (i.bcloseAntialias && 1 === u ? c : 2 * c) + '" height="' + (i.bcloseAntialias && 1 === u ? _ : 2 * _) + '"\n style="' + (i.bcloseAntialias && 1 === u ? "transform-origin: 0 0;" : "transform: scale(0.5); transform-origin: 0 0;") + '">\n </canvas>\n <canvas id="' + i.options.szId + "_canvas_draw" + e + '" class="draw-window" wid="' + e + '" \n width="' + c + '" height="' + _ + '" style="position: absolute; top: 0; left: 0;">\n </canvas>\n ', d.appendChild(t)
|
||
}(f);
|
||
this.oJSPlugin.find("video.play-window").hide()
|
||
}
|
||
}, {
|
||
key: "_updateWnd", value: function () {
|
||
for (var e = this.oJSPlugin.find(".parent-wnd").get(0), t = e.clientWidth, n = e.clientHeight, i = (t && n && (this.options.iWidth = t, this.options.iHeight = n), this.options.oStyle.borderWidth), r = this.options.iCurrentSplit, a = Math.floor((t - 1) / r) - 2 * i, s = Math.floor((n - 1) / r) - 2 * i, o = 0; o < this.iMaxWndNum; o++) {
|
||
var u = (0, g.default)(e).find(".sub-wnd").get(o),
|
||
d = ((0, g.default)(u).width(a).height(s).css("display", o < Math.pow(r, 2) ? "inline-block" : "none").css("border", "1px solid " + this.options.oStyle.border), o === this.currentWindowIndex && (0, g.default)(u).css("border", "1px solid " + this.options.oStyle.borderSelect), (0, g.default)(u).find("video.play-window").attr("width", a).attr("height", s), this.bcloseAntialias && 1 === r ? a : 2 * a),
|
||
l = this.bcloseAntialias && 1 === r ? s : 2 * s,
|
||
h = this.bcloseAntialias && 1 === r ? "scale(1)" : "scale(0.5)",
|
||
h = ((0, g.default)(u).find("canvas.play-window").attr("width", d).attr("height", l).css("transform", h), this.aWndList[o]);
|
||
h.bPlay && 0 === h.iMode && h.oPlayCtrl && h.oPlayCtrl.PlayM4_SetCanvasSize && h.oPlayCtrl.PlayM4_SetCanvasSize(d, l), (0, g.default)(u).find("canvas.draw-window").attr("width", a).attr("height", s), this.oDrawCanvas.resizeCanvas()
|
||
}
|
||
}
|
||
}, {
|
||
key: "_dealWndSelect", value: function (t) {
|
||
var n = this;
|
||
this.iCurrentWndIndex = t, (this.aWndList[t].bEZoom || this.aWndList[t].b3DZoom) && (this.oJSPlugin.find(".draw-window").unbind(), this.oDrawCanvas.setDrawStatus(!1), this.oDrawCanvas = null, this.oDrawCanvas = new h.ESCanvas(this.options.szId + "_canvas_draw" + t), this.oDrawCanvas.setShapeType("Rect"), this.oDrawCanvas.setDrawStyle("#ff0000", "", 0), this.aWndList[t].bEZoom ? this.oDrawCanvas.setDrawStatus(!0, function (e) {
|
||
e.startPos && e.endPos && (e.startPos[0] > e.endPos[0] ? n.aWndList[t].oPlayCtrl.PlayM4_SetDisplayRegion && n.aWndList[t].oPlayCtrl.PlayM4_SetDisplayRegion(null, !1) : n.aWndList[t].oPlayCtrl.PlayM4_SetDisplayRegion && n.aWndList[t].oPlayCtrl.PlayM4_SetDisplayRegion({
|
||
left: e.startPos[0],
|
||
top: e.startPos[1],
|
||
right: e.endPos[0],
|
||
bottom: e.endPos[1]
|
||
}, !0))
|
||
}) : this.aWndList[t].b3DZoom && this.oDrawCanvas.setDrawStatus(!0, function (e) {
|
||
n.fDrawCallback(e)
|
||
}))
|
||
}
|
||
}, {
|
||
key: "_initCallbackEvent", value: function () {
|
||
this.oEventCallback = {
|
||
loadEventHandler: function () {
|
||
window.loadEventHandler && window.loadEventHandler()
|
||
}, windowEventSelect: function (e) {
|
||
window.getSelectWndInfo && window.getSelectWndInfo(e)
|
||
}, pluginErrorHandler: function (e, t, n) {
|
||
window.pluginEventHandler && window.pluginEventHandler(e, t, n)
|
||
}, windowEventOver: function (e) {
|
||
window.windowEventOver && window.windowEventOver(e)
|
||
}, windowEventOut: function (e) {
|
||
window.windowEventOut && window.windowEventOut(e)
|
||
}, windowEventUp: function (e) {
|
||
window.windowEventUp && window.windowEventUp(e)
|
||
}, windowFullCcreenChange: function (e) {
|
||
window.windowFullCcreenChange && window.windowFullCcreenChange(e)
|
||
}, firstFrameDisplay: function (e, t, n) {
|
||
window.firstFrameDisplay && window.firstFrameDisplay(e, t, n)
|
||
}, performanceLack: function () {
|
||
window.performanceLack && window.performanceLack()
|
||
}, StreamEnd: function (e) {
|
||
window.StreamEnd && window.StreamEnd(e)
|
||
}, mouseEvent: function () {
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_initEvent", value: function () {
|
||
var a = this;
|
||
this._initCallbackEvent(), this.oJSPlugin.find(".parent-wnd").eq(0).children().each(function (i) {
|
||
var r = !1;
|
||
(0, g.default)(this).unbind().bind("click", function (e) {
|
||
var t, n;
|
||
0 === e.button && (t = (e = a.options.oStyle).borderWidth, n = e.border, e = e.borderSelect, a.oJSPlugin.find(".parent-wnd").eq(0).children().css("border", t + "px solid " + n), a.oJSPlugin.find(".parent-wnd").eq(0).children().eq(i).css("border", t + "px solid " + e), a.oEventCallback.windowEventSelect(parseInt(a.oJSPlugin.find(".parent-wnd").eq(0).children().eq(i).find(".play-window").eq(0).attr("wid"), 10)), a._dealWndSelect(parseInt(a.oJSPlugin.find(".parent-wnd").eq(0).children().eq(i).find(".play-window").eq(0).attr("wid"), 10)))
|
||
}), (0, g.default)(this).bind("mouseover", function (e) {
|
||
a.oEventCallback.windowEventOver(i)
|
||
}), (0, g.default)(this).bind("mouseout", function (e) {
|
||
a.oEventCallback.windowEventOut(i)
|
||
}), (0, g.default)(this).bind("mousemove", function (e) {
|
||
var t = e.offsetX / a.oDrawCanvas.m_iCanvasWidth, e = e.offsetY / a.oDrawCanvas.m_iCanvasHeight;
|
||
r ? a.oEventCallback.mouseEvent(7, t, e) : a.oEventCallback.mouseEvent(6, t, e)
|
||
}), (0, g.default)(this).bind("mousewheel", function (e) {
|
||
var t = e.offsetX / a.oDrawCanvas.m_iCanvasWidth, e = e.offsetY / a.oDrawCanvas.m_iCanvasHeight;
|
||
a.oEventCallback.mouseEvent(8, t, e)
|
||
}), (0, g.default)(this).bind("mouseup", function (e) {
|
||
r = !1, a.oEventCallback.windowEventUp(i);
|
||
var t = e.offsetX / a.oDrawCanvas.m_iCanvasWidth, n = e.offsetY / a.oDrawCanvas.m_iCanvasHeight;
|
||
2 === e.button ? a.oEventCallback.mouseEvent(5, t, n) : 0 === e.button && a.oEventCallback.mouseEvent(3, t, n)
|
||
}), (0, g.default)(this).bind("dblclick", function (e) {
|
||
var t;
|
||
a.options.bSupporDoubleClickFull && ("desktop" === a._browserInfo.platform ? a.JS_FullScreenSingle(i) : a.fullscreenElement ? a._triggerFullscreen(a.fullscreenElement) : a.JS_FullScreenSingle(a.currentWindowIndex), t = e.offsetX / a.oDrawCanvas.m_iCanvasWidth, e = e.offsetX / a.oDrawCanvas.m_iCanvasHeight, a.oEventCallback.mouseEvent(2, t, e))
|
||
})
|
||
}), window.addEventListener("resize", this.e.resize), document.addEventListener("fullscreenchange", this.e.fullscreenchange)
|
||
}
|
||
}, {
|
||
key: "_eventHandlerResize", value: function () {
|
||
if (!(document.fullscreen || document.webkitIsFullScreen || document.mozFullScreen || !1) && this.fullscreenElement) {
|
||
var e = this.fullscreenElement;
|
||
if (!(document.fullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled || e.webkitSupportsFullscreen || !1)) return this._triggerFullscreen(e);
|
||
this.fullscreenElement = null, this.oEventCallback.windowFullCcreenChange(!1)
|
||
}
|
||
this.JS_Resize()
|
||
}
|
||
}, {
|
||
key: "_eventHandlerFullscreenchange", value: function () {
|
||
if (!(document.fullscreen || document.webkitIsFullScreen || document.mozFullScreen || !1) && this.fullscreenElement) {
|
||
var e = this.fullscreenElement;
|
||
if (!(document.fullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled || e.webkitSupportsFullscreen || !1)) return this._triggerFullscreen(e);
|
||
this.fullscreenElement = null, this.oEventCallback.windowFullCcreenChange(!1)
|
||
}
|
||
this.JS_Resize()
|
||
}
|
||
}, {
|
||
key: "_eventHandlerVisibilitychange", value: function () {
|
||
this.isBrowserVisible = !document.hidden
|
||
}
|
||
}, {
|
||
key: "removeAllListeners", value: function () {
|
||
window.removeEventListener("resize", this.e.resize), document.removeEventListener("fullscreenchange", this.e.fullscreenchange), document.removeEventListener("visibilitychange", this.e.visibilitychange)
|
||
}
|
||
}, {
|
||
key: "_debounse", value: function (e, t) {
|
||
var n = this;
|
||
this._debounseTimer && clearTimeout(this._debounseTimer), this._debounseTimer = setTimeout(function () {
|
||
e.apply(n), clearTimeout(n._debounseTimer), n._debounseTimer = null
|
||
}, t)
|
||
}
|
||
}, {
|
||
key: "_initPlayCtrlOnlyAudio", value: function (e, t) {
|
||
t = new Uint8Array(t);
|
||
t[10] = 0, t[11] = 0, this.aWndList[e].oPlayCtrl.PlayM4_OpenStream(t, 40, 2097152), "" !== this.aWndList[e].szSecretKey && (this.aWndList[e].oPlayCtrl.PlayM4_SetSecretKey(1, this.aWndList[e].szSecretKey, 128), this.aWndList[e].szSecretKey = ""), this.aWndList[e].oPlayCtrl.PlayM4_SetStreamOpenMode(0), this.aWndList[e].oPlayCtrl.PlayM4_Play(null)
|
||
}
|
||
}, {
|
||
key: "flvtohikHead", value: function (e) {
|
||
var t = new Uint8Array(40),
|
||
e = (t[0] = 73, t[1] = 77, t[2] = 75, t[3] = 72, t[4] = 3, t[5] = 1, t[6] = 0, t[7] = 0, t[8] = 10, t[9] = 0, t[10] = 0, t[11] = 1, t[12] = 1, t[13] = 32, t[14] = 1, t[15] = 12, this.aWndList[e]._videoInfo.audioSampleRate.toString(16));
|
||
return t[16] = parseInt(e[2] + e[3], 16), t[17] = parseInt(e[0] + e[1], 16), t
|
||
}
|
||
}, {
|
||
key: "_changeHVAGHead", value: function (e) {
|
||
var t = new Uint8Array(40);
|
||
return t[0] = 73, t[1] = 77, t[2] = 75, t[3] = 72, t[4] = 3, t[5] = 1, t[6] = 0, t[7] = 0, 192 === e[8] && 0 === e[9] ? t[8] = 4 : t[8] = 2, t[9] = 0, 100 === e[24] && 97 === e[25] && 104 === e[26] && 117 === e[27] && 97 === e[28] && (t[8] = 1, t[9] = 128), 0 !== e[11] && 1 !== e[11] || 192 !== e[10] ? 2 === e[11] && 192 === e[10] ? t[10] = 3 : 3 === e[11] && 192 === e[10] ? t[10] = 5 : 4 === e[11] && 192 === e[10] ? t[10] = 4 : 5 === e[11] && 192 === e[10] ? t[10] = 2 : 6 === e[11] && 192 === e[10] ? t[10] = 6 : t[10] = 1 : t[10] = 1, t[11] = 0, 1 === e[13] && 192 === e[12] ? (t[12] = 16, t[13] = 113) : 2 === e[13] && 192 === e[12] ? (t[12] = 17, t[13] = 113) : 3 === e[13] && 192 === e[12] ? (t[12] = 33, t[13] = 114) : 4 === e[13] && 192 === e[12] ? (t[12] = 96, t[13] = 114) : 5 === e[13] && 192 === e[12] ? (t[12] = 1, t[13] = 32) : 6 === e[13] && 192 === e[12] ? (t[12] = 0, t[13] = 32) : 7 === e[13] && 192 === e[12] ? (t[12] = 0, t[13] = 112) : (t[12] = 16, t[13] = 113), t
|
||
}
|
||
}, {
|
||
key: "_parseHead", value: function (e, t) {
|
||
1 === t[8] && 0 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "HIK" : 2 === t[8] && 0 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "PS" : 4 === t[8] && 0 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "RTP" : 8 === t[8] && 0 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "GB" : 16 === t[8] && 0 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "RAW" : 1 === t[8] && 128 === t[9] ? this.aWndList[e]._videoInfo.systemFormt = "DAHUA" : this.aWndList[e]._videoInfo.systemFormt = "unkonw", 1 === t[11] && 0 === t[10] || 0 === t[11] && 1 === t[10] ? (this.aWndList[e]._videoInfo.VideType = "H264", 129 === t[24] && (this.aWndList[e]._videoInfo.VideType = "Smart264")) : 0 === t[11] && 5 === t[10] ? (this.aWndList[e]._videoInfo.VideType = "H265", 129 === t[24] && (this.aWndList[e]._videoInfo.VideType = "Smart265")) : 0 === t[11] && 6 === t[10] ? this.aWndList[e]._videoInfo.VideType = "SAC" : 0 === t[11] && 2 === t[10] ? this.aWndList[e]._videoInfo.VideType = "MPEG2" : 0 === t[11] && 3 === t[10] ? this.aWndList[e]._videoInfo.VideType = "MPEG4" : this.aWndList[e]._videoInfo.VideType = "unkonw", 113 === t[13] && 16 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G711_U" : 113 === t[13] && 17 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G711_A" : 114 === t[13] && 33 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G7221" : 114 === t[13] && 96 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G726_32" : 114 === t[13] && 98 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G726_16" : 114 === t[13] && 144 === t[12] ? this.aWndList[e]._videoInfo.audioType = "G729" : 32 === t[13] && 1 === t[12] ? this.aWndList[e]._videoInfo.audioType = "AAC" : 16 === t[13] && 0 === t[12] ? this.aWndList[e]._videoInfo.audioType = "ADPCM" : 32 === t[13] && 0 === t[12] ? this.aWndList[e]._videoInfo.audioType = "MP2L2" : 0 === t[13] && 0 === t[12] ? this.aWndList[e]._videoInfo.audioType = "without" : this.aWndList[e]._videoInfo.audioType = "unknow"
|
||
}
|
||
}, {
|
||
key: "_stripRtpHead", value: function (e) {
|
||
var e = new Uint8Array(e), t = 32 & e[0], n = 16 & e[0], i = 15 & e[0], r = 0, a = 0;
|
||
return 32 == t && (r = e[e.byteLength - 1]), t = 4 * parseInt(i, 10), 16 == n && (a = 4 * new window.DataView(e.buffer, 12 + t, 4).getUint16(2) + 4), e.length <= 12 + t + a ? -1 : e.slice(12 + t + a, e.length - r)
|
||
}
|
||
}, {
|
||
key: "_openStream", value: function (i, a, s, o, u) {
|
||
var d = this, l = this.aWndList[s];
|
||
return new m.default(function (t, r) {
|
||
var n, e = o && u;
|
||
l.szPlayType = e ? "playback" : "realplay", 3 === a.PlayBackMode && e && (l.szPlayType = "reverse"), l._emiter.on("firstframeload", function () {
|
||
l.asyncLock = !1, t()
|
||
}, {once: !0}), d.oStreamClient.openStream(i, a, (n = (0, v.default)(y.default.mark(function e(t) {
|
||
var n, i;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if (!t.bHead) {
|
||
e.next = 49;
|
||
break
|
||
}
|
||
if (l.oSdpInfo = t, n = l.aHead = new Uint8Array(t.buf), d._log.I("headData arrive", n), l.isGB = 0 === n[7] && 196 === n[8] && 100 === n[24] && 98 === n[25] && 51 === n[26] && 51 === n[27], 72 === n[0] && 86 === n[1] && 65 === n[2] && 71 === n[3] ? (l.isHVAGHead = !0, l.aHVAGHead = new Uint8Array(t.buf), l.aHead = d._changeHVAGHead(t.buf)) : l.isHVAGHead = !1, l.isHVAGHead && 1 === l.aHead[8] && 128 === l.aHead[9] && "1" === d._decoderVersion) return d._log.E(L.ERR_STREAM_VIDEO_CODING + ": jsdecoder1.0 unsupport dahua video"), l.asyncLock = !1, d._closeStreamAndDestory(s), d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_VIDEO_CODING), e.abrupt("return", r(L.ERR_STREAM_VIDEO_CODING));
|
||
e.next = 12;
|
||
break;
|
||
case 12:
|
||
if (!(70 === n[0] && 76 === n[1] && 86 === n[2])) {
|
||
e.next = 19;
|
||
break
|
||
}
|
||
l.iMode = 1, l.isFlv = !0, d._createFlvPlayer(s), e.next = 47;
|
||
break;
|
||
case 19:
|
||
if (!(5 === l.aHead[10] && 0 === l.aHead[11] || 1 === l.aHead[10] && 0 === l.aHead[11] || 0 === l.aHead[10] && 1 === l.aHead[11])) {
|
||
e.next = 22;
|
||
break
|
||
}
|
||
e.next = 24;
|
||
break;
|
||
case 22:
|
||
return d._log.E(L.ERR_STREAM_JSDECODER_CODEC_UNSUPPORTED + ": the stream not h264 h265 smart,unsupport .", l.aHead[10], l.aHead[11]), e.abrupt("return", r(L.ERR_STREAM_JSDECODER_CODEC_UNSUPPORTED));
|
||
case 24:
|
||
if (d._parseHead(s, l.aHead), d.aWndList[s]._bpsCalculator || (d.aWndList[s]._bpsCalculator = window.setInterval(d._calculateRealtimeBitrate.bind(d), 1e3, s)), i = 1, d.aWndList[s].asyncLock && "2" === d._decoderVersion) return d._log.E(L.ERR_STREAM_LOCK_ERROR + ": Multiple call js_play API in a short time, please wait lasttime call over."), e.abrupt("return", r(L.ERR_STREAM_LOCK_ERROR));
|
||
e.next = 30;
|
||
break;
|
||
case 30:
|
||
if (d.aWndList[s].asyncLock = !0, l.oPlayCtrl) {
|
||
e.next = 45;
|
||
break
|
||
}
|
||
if (P || "2" !== d._decoderVersion) {
|
||
e.next = 42;
|
||
break
|
||
}
|
||
return e.prev = 33, e.next = 36, d._decoder2Loaded();
|
||
case 36:
|
||
i = e.sent, e.next = 42;
|
||
break;
|
||
case 39:
|
||
e.prev = 39, e.t0 = e.catch(33), 1 === e.t0 || P || (l.asyncLock = !1, d.oEventCallback.pluginErrorHandler(s, L.ERR_COM_LOAD_JSDECODER_ERROR), d._closeStreamAndDestory(s), d._log.E(L.ERR_COM_LOAD_JSDECODER_ERROR + ": load jsdecoder faild."), r(L.ERR_COM_LOAD_JSDECODER_ERROR));
|
||
case 42:
|
||
d._createPlayCtrl(s), e.next = 47;
|
||
break;
|
||
case 45:
|
||
1 !== (i = d._playCtrlLoad(s)) && (l.asyncLock = !1, d._closeStreamAndDestory(s), d.oEventCallback.pluginErrorHandler(s, i), d._log.E(i + ": jsdecoder open stream faild."), r(i));
|
||
case 47:
|
||
e.next = 50;
|
||
break;
|
||
case 49:
|
||
t.cmd && "end" === t.cmd ? (d.oEventCallback.StreamEnd(s), l.asyncLock = !1, d.JS_Stop(s)) : "1" !== d._decoderVersion && !l.bPlay || d._feedData(s, t);
|
||
case 50:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, d, [[33, 39]])
|
||
})), function (e) {
|
||
return n.apply(this, arguments)
|
||
}), function (e) {
|
||
|
||
|
||
if (l.asyncLock = !1, d.aWndList[s].bPlay) 1e3 === e.code || 1005 === e.code ? (d._log.E(L.ERR_STREAM_CONNECT_CLOSED + ": 送流异常,被后端关闭连接"), d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_CONNECT_CLOSED, e)) : (d._log.E(L.ERR_STREAM_INTERRUPT + ": 流中断"), d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_INTERRUPT, e)), l.szStreamUUID = "", d._closeStreamAndDestory(s); else {
|
||
if (1e3 === e.code || 1005 === e.code) return t();
|
||
d.aWndList[s].szStreamUUID ? (d.oEventCallback.pluginErrorHandler(s, L.ERR_COM_RECV_STREAM_TIMEOUT, e), l.szStreamUUID = "", r(L.ERR_COM_RECV_STREAM_TIMEOUT)) : 1006 === e.code && -1 !== i.search("wss://") ? (d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_WSS_ERROR, e), r(L.ERR_STREAM_WSS_ERROR)) : (d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_WS_ERROR, e), r(L.ERR_STREAM_WS_ERROR))
|
||
}
|
||
|
||
|
||
|
||
}).then(function (e) {
|
||
d.aWndList[s].szStreamUUID && (d.oStreamClient.stop(d.aWndList[s].szStreamUUID), d.aWndList[s].szStreamUUID = ""), d.aWndList[s].szStreamUUID = e, d.oStreamClient.startPlay(e, o, u, l.szPlayType).then(function () {
|
||
}, function (e) {
|
||
l.szStreamUUID = "", l.asyncLock = !1;
|
||
var t = "0x0" + e.errorCode.toString(16);
|
||
l.bPlay || (d._log.E(t + ": 取流失败,详情根据错误码在运管后台进行查询."), d.oEventCallback.pluginErrorHandler(s, t, e), r(t)), r(L.ERR_STREAM_OPEN_FAILED)
|
||
})
|
||
}).catch(function (e) {
|
||
l.asyncLock = !1, d.oEventCallback.pluginErrorHandler(s, L.ERR_STREAM_WS_TIMEOUT, e), d._closeStreamAndDestory(s), r(L.ERR_STREAM_WS_TIMEOUT)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetPluginVersion", value: function () {
|
||
var t = this;
|
||
return new m.default(function (e) {
|
||
e(t.szPluginVersion)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetWindowControlCallback", value: function (t) {
|
||
var n = this;
|
||
return new m.default(function (e) {
|
||
n.oEventCallback = g.default.extend(n.oEventCallback, t), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetSecretKey", value: function (n, i) {
|
||
var r = this;
|
||
return new m.default(function (e, t) {
|
||
n < 0 || "" === i || void 0 === i ? t() : (r.aWndList[n].szSecretKey = i, e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_ArrangeWindow", value: function (i) {
|
||
var r = this;
|
||
return new m.default(function (e, t) {
|
||
if (i < 1 || "number" != typeof i) return t(L.ERR_COM_PARAM);
|
||
if (i < r.options.iMaxSplit ? r.options.iCurrentSplit = i : r.options.iCurrentSplit = r.options.iMaxSplit, f.oTool.isFirefox()) for (var n = 0; n < r.options.iMaxSplit * r.options.iMaxSplit; n++) r.aWndList[n].oPlayCtrl && r.aWndList[n].oPlayCtrl.PlayM4_ClearCanvas && r.aWndList[n].oPlayCtrl.PlayM4_ClearCanvas();
|
||
r.iCurrentWndIndex = 0, r.oEventCallback.windowEventSelect(0), r._updateWnd(), r._dealWndSelect(0), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Play", value: function (r, a) {
|
||
var s = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : -1, o = this, u = arguments[3],
|
||
d = arguments[4];
|
||
return (s < 0 || s > this.iMaxWndNum - 1 || "number" != typeof s) && (s = this.iCurrentWndIndex), new m.default(function (e, t) {
|
||
if ("string" != typeof r || -1 === r.search("wss://") && -1 === r.search("ws://")) return t(L.ERR_COM_URL_ERROR);
|
||
var n = 0, i = (a.mode && (n = a.mode), r),
|
||
i = (1 !== n && o._supportInfo.MSE && (i = /\?/g.test(r) ? r + "&streamform=flv" : r + "?streamform=flv"), o.aWndList[s].bopenTraceId && (-1 !== i.search("traceId=") && 0 < i.split("traceId=").pop().split("&").shift().length ? o.aWndList[s].szTraceId = i.split("traceId=").pop().split("&").shift() : (o.aWndList[s].szTraceId = o.uuid2(16, 16), i = "" + i + (/\?/g.test(i) ? "&" : "?") + "traceId=" + o.aWndList[s].szTraceId)), r = i, a.playURL && (a.playURL = r), a.mode = "media", -1 !== i.search("wss://") && -1 !== i.search("/proxy/") && (a.proxy = i.split("/proxy/").pop().split("/").shift(), n = i.split("wss://").pop().split("/").shift(), a.playURL = i.replace("wss:", "ws:").replace(n, "").replace("/proxy/", "")), o.aWndList[s].szUrl = r, o.aWndList[s].oParams = a, o.aWndList[s].szStartTime = u || "", o.aWndList[s].szStopTime = d || "", o.aWndList[s].pointSignNumber = r.split("realplay/").pop().split("/").shift(), u);
|
||
i && -1 !== i.search("Z") && (i = i.replace("Z", "+08:00")), o.aWndList[s].iGlobalBaseTime = new Date(i).getTime(), o.aWndList[s].bPlay ? o.JS_Stop(s).then(function () {
|
||
o._openStream(r, a, s, u, d).then(function () {
|
||
e()
|
||
}, function (e) {
|
||
t(e)
|
||
})
|
||
}) : o._openStream(r, a, s, u, d).then(function () {
|
||
e()
|
||
}, function (e) {
|
||
t(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Seek", value: function () {
|
||
var r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, a = this, s = arguments[1],
|
||
o = arguments[2];
|
||
return new m.default(function (t, n) {
|
||
if ((r < 0 || r > a.iMaxWndNum - 1 || "number" != typeof r) && (r = a.iCurrentWndIndex), "string" != typeof s || "string" != typeof o) return n(L.ERR_COM_PARAM);
|
||
var e = s, i = o;
|
||
if (-1 !== s.search("Z") && (e = e.replace("Z", "+08:00")), -1 !== o.search("Z") && (i = i.replace("Z", "+08:00")), e = new Date(e).getTime(), i = new Date(i).getTime(), !e || !i || i <= e || -1 === s.search("T") || -1 === s.search(":") || -1 === s.search("-") || -1 === o.search("T") || -1 === o.search(":") || -1 === o.search("-")) return n(L.ERR_COM_PARAM);
|
||
i = a._checkPlayback(r);
|
||
0 !== i ? n(i) : a.oStreamClient.seek(a.aWndList[r].szStreamUUID, s, o).then(function () {
|
||
var e = s;
|
||
e && -1 !== e.search("Z") && (e = e.replace("Z", "+08:00")), a.aWndList[r].iGlobalBaseTime = new Date(e).getTime() - a._osdtimeInfo.flvduration, !0 === a.aWndList[r].isPause && (1 === a.aWndList[r].iMode ? (e = a.oJSPlugin.find("video.play-window").eq(r)).get(0).play && e.get(0).play() : a.aWndList[r].oPlayCtrl && a.aWndList[r].oPlayCtrl.PlayM4_Pause(!1), a.aWndList[r].isPause = !1), t()
|
||
}, function (e) {
|
||
e = "0x0" + e.errorCode.toString(16);
|
||
a._log.E(e + ": 定位失败,可能是定位传的时间异常导致,详情根据错误码在运管后台进行查询."), n(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetSdkVersion", value: function () {
|
||
return this.aWndList[0].oPlayCtrl.PlayM4_GetSdkVersion()
|
||
}
|
||
}, {
|
||
key: "JS_DestroyWorker", value: function () {
|
||
var t = this;
|
||
return new m.default(function (e) {
|
||
t.aWndList.forEach(function (e) {
|
||
e.oPlayCtrl = null
|
||
}), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Stop", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (e, t) {
|
||
if ((i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), n.aWndList[i].asyncLock && "2" === n._decoderVersion) return n._log.E(L.ERR_STREAM_LOCK_ERROR + ": Multiple call js_stop API in a short time, please wait lasttime call over."), t(L.ERR_STREAM_LOCK_ERROR);
|
||
n.aWndList[i]._bpsCalculator && (self.clearInterval(n.aWndList[i]._bpsCalculator), n.aWndList[i]._bpsCalculator = null, n.aWndList[i]._bpsInfo = {
|
||
lastVideoBytes: 0,
|
||
bps_video: 0,
|
||
data_updated_time: 0,
|
||
time_gap_factor: 1
|
||
}), n.aWndList[i].szStorageUUID && n.JS_StopSave(i), n.aWndList[i].bEZoom && n.JS_DisableZoom(i), i === n.iCurrentSoundWnd && (n.JS_CloseSound(), n.aWndList[i].MSEVolume = .5), n._closeStreamAndDestory(i), n.aWndList[i].isPause = !1, n.aWndList[i].bFirstFrame = !1, n.aWndList[i]._emiter.removeAllListeners(), n.aWndList[i]._resetFlvplayer = !1, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Pause", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (t, n) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var e = i._checkPlayback(r);
|
||
if (0 === e) return i.aWndList[r].bFrameForward ? (i._log.E(L.ERR_PLAYBACK_FRAMEFORWARD + ": status singleFrame not support this handle."), void n(L.ERR_PLAYBACK_FRAMEFORWARD)) : !0 === i.aWndList[r].isPause ? t() : void i.oStreamClient.pause(i.aWndList[r].szStreamUUID).then(function () {
|
||
var e;
|
||
1 === i.aWndList[r].iMode ? (e = i.oJSPlugin.find("video.play-window").eq(r)).get(0).pause && e.get(0).pause() : i.aWndList[r].oPlayCtrl.PlayM4_Pause && i.aWndList[r].oPlayCtrl.PlayM4_Pause(!0), i.aWndList[r].isPause = !0, t()
|
||
}, function (e) {
|
||
n(e)
|
||
});
|
||
n(e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Resume", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (t, n) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var e = i._checkPlay(r);
|
||
return 0 !== e ? n(e) : (i.aWndList[r].bFrameForward && ("2" === i._decoderVersion ? i.aWndList[r].oPlayCtrl.PlayM4_OneByOne_Play && i.aWndList[r].oPlayCtrl.PlayM4_OneByOne_Play() : i.aWndList[r].oPlayCtrl.PlayM4_Play(i.options.szId + "_playCanvas" + r), i.aWndList[r].bFrameForward = !1), !1 === i.aWndList[r].isPause ? t() : void i.oStreamClient.resume(i.aWndList[r].szStreamUUID).then(function () {
|
||
var e;
|
||
1 === i.aWndList[r].iMode ? (e = i.oJSPlugin.find("video.play-window").eq(r)).get(0).play && e.get(0).play() : (1 !== i.iCurrentPlayRate && (i.aWndList[r].iRate = i.iCurrentPlayRate, i.oStreamClient.setPlayRate(i.aWndList[r].szStreamUUID, i.aWndList[r].iRate), i.aWndList[r].oPlayCtrl.PlayM4_PlayRate && i.aWndList[r].oPlayCtrl.PlayM4_PlayRate(i.aWndList[r].iRate), 1 < i.iCurrentPlayRate ? i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(1) : i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(0)), i.aWndList[r].oPlayCtrl && i.aWndList[r].oPlayCtrl.PlayM4_Pause(!1)), i.aWndList[r].isPause = !1, t()
|
||
}, function (e) {
|
||
n(e)
|
||
}))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Slow", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (t, n) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var e = i._checkPlayback(r);
|
||
return 0 !== e ? n(e) : i.aWndList[r].bFrameForward ? (i._log.E(L.ERR_PLAYBACK_FRAMEFORWARD + ": status singleFrame not support this handle."), n(L.ERR_PLAYBACK_FRAMEFORWARD)) : -8 === i.aWndList[r].iRate ? (i._log.E(L.ERR_PLAYBACK_MIN_RATE + ": current rate is the min."), void n(L.ERR_PLAYBACK_MIN_RATE)) : (i.aWndList[r].iRate < 0 && -8 < i.aWndList[r].iRate && (i.aWndList[r].iRate *= 2), 1 === i.aWndList[r].iRate && (i.aWndList[r].iRate *= -2), 1 < i.aWndList[r].iRate && (i.aWndList[r].iRate /= 2), void i.oStreamClient.setPlayRate(i.aWndList[r].szStreamUUID, i.aWndList[r].iRate).then(function () {
|
||
var e;
|
||
1 === i.aWndList[r].iMode ? (e = i.oJSPlugin.find("video.play-window").eq(r).get(0), i.aWndList[r].iRate < 0 ? e.playbackRate = 1 / Math.abs(i.aWndList[r].iRate) : e.playbackRate = i.aWndList[r].iRate, 1 === i.aWndList[r].iRate && i.aWndList[r].bOpenSound ? i.oJSPlugin.find("video.play-window").eq(r)[0].muted = !1 : i.oJSPlugin.find("video.play-window").eq(r)[0].muted = !0) : (i.aWndList[r].iRate <= 2 && "2" === i._decoderVersion || i.aWndList[r].iRate < 2 && "2" !== i._decoderVersion ? i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(0) : i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(1), i.aWndList[r].oPlayCtrl.PlayM4_PlayRate && i.aWndList[r].oPlayCtrl.PlayM4_PlayRate(i.aWndList[r].iRate), i.aWndList[r].oPlayCtrl.PlayM4_Slow && i.aWndList[r].oPlayCtrl.PlayM4_Slow(i.aWndList[r].iRate)), t(i.aWndList[r].iRate)
|
||
}, function (e) {
|
||
n(e)
|
||
}))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Fast", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return (r < 0 || r > this.iMaxWndNum - 1 || "number" != typeof r) && (r = this.iCurrentWndIndex), new m.default(function (t, n) {
|
||
var e = i._checkPlayback(r);
|
||
return 0 !== e ? n(e) : i.aWndList[r].bFrameForward ? (i._log.E(L.ERR_PLAYBACK_FRAMEFORWARD + ": status singleFrame not support this handle."), n(L.ERR_PLAYBACK_FRAMEFORWARD)) : 8 === i.aWndList[r].iRate ? (i._log.E(L.ERR_PLAYBACK_MAX_RATE + ": current rate is the max."), n(L.ERR_PLAYBACK_MAX_RATE)) : (-2 === i.aWndList[r].iRate ? i.aWndList[r].iRate = 1 : i.aWndList[r].iRate < -2 ? i.aWndList[r].iRate /= 2 : 0 < i.aWndList[r].iRate && i.aWndList[r].iRate < 8 && (i.aWndList[r].iRate *= 2), void i.oStreamClient.setPlayRate(i.aWndList[r].szStreamUUID, i.aWndList[r].iRate).then(function () {
|
||
var e;
|
||
1 === i.aWndList[r].iMode ? (i.aWndList[r].oMSE.closeLatencyMonitor(), e = i.oJSPlugin.find("video.play-window").eq(r).get(0), i.aWndList[r].iRate < 0 ? e.playbackRate = 1 / Math.abs(i.aWndList[r].iRate) : e.playbackRate = i.aWndList[r].iRate, 1 === i.aWndList[r].iRate && i.aWndList[r].bOpenSound ? i.oJSPlugin.find("video.play-window").eq(r)[0].muted = !1 : i.oJSPlugin.find("video.play-window").eq(r)[0].muted = !0) : (i.aWndList[r].iRate <= 2 && "2" === i._decoderVersion || i.aWndList[r].iRate < 2 && "2" !== i._decoderVersion ? i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(0) : i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(1), i.aWndList[r].oPlayCtrl.PlayM4_PlayRate && i.aWndList[r].oPlayCtrl.PlayM4_PlayRate(i.aWndList[r].iRate), i.aWndList[r].oPlayCtrl.PlayM4_Fast && i.aWndList[r].oPlayCtrl.PlayM4_Fast(i.aWndList[r].iRate)), t(i.aWndList[r].iRate)
|
||
}, function (e) {
|
||
n(e)
|
||
}))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Transmission", value: function () {
|
||
var e = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, r = arguments[1];
|
||
return new m.default(function (t, n) {
|
||
(i < 0 || i > e.iMaxWndNum - 1 || "number" != typeof i) && (i = e.iCurrentWndIndex), e.aWndList[i].szStreamUUID ? e.oStreamClient.transmission(e.aWndList[i].szStreamUUID, r).then(function (e) {
|
||
t(e)
|
||
}, function (e) {
|
||
n(e)
|
||
}) : n()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_FrameForward", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1,
|
||
a = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : 1;
|
||
return new m.default(function (e, t) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var n = i._checkPlayback(r);
|
||
return 0 !== n ? t(n) : 1 === i.aWndList[r].iMode ? (i._log.E(L.ERR_COM_IS_MSE + ": MSE unsupport this function."), t(L.ERR_COM_IS_MSE)) : (1 !== i.aWndList[r].iRate ? (i.aWndList[r].iRate = 1, i.iCurrentPlayRate = i.aWndList[r].iRate, i.oStreamClient.setPlayRate(i.aWndList[r].szStreamUUID, i.aWndList[r].iRate).then(function () {
|
||
i.aWndList[r].oPlayCtrl.PlayM4_PlayRate && i.aWndList[r].oPlayCtrl.PlayM4_PlayRate(i.aWndList[r].iRate), i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(0), i.aWndList[r].oPlayCtrl.PlayM4_OneByOne && i.aWndList[r].oPlayCtrl.PlayM4_OneByOne(a), i.aWndList[r].bFrameForward = !0
|
||
}, function (e) {
|
||
t(e)
|
||
})) : (i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType && i.aWndList[r].oPlayCtrl.PlayM4_SetDecodeFrameType(0), i.aWndList[r].oPlayCtrl.PlayM4_OneByOne && i.aWndList[r].oPlayCtrl.PlayM4_OneByOne(a), i.aWndList[r].bFrameForward = !0), void e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetOSDTime", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (n, e) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var t = i._checkPlay(r);
|
||
0 !== t ? e(t) : 1 === i.aWndList[r].iMode ? (i.oJSPlugin.find("video.play-window").eq(r).get(0), n(i.aWndList[r].iCurentOSDTime)) : "1" === i._decoderVersion ? i.aWndList[r].oPlayCtrl.PlayM4_GetOSDTime && i.aWndList[r].oPlayCtrl.PlayM4_GetOSDTime(function (e) {
|
||
var t = "ios" === i._browserInfo._system || f.oTool.isEdge() ? "/" : " ",
|
||
e = Date.parse(e.replace(/-/g, t));
|
||
n(e)
|
||
}) : (i.aWndList[r].oPlayCtrl.PlayM4_GetFrameInfo && i.aWndList[r].oPlayCtrl.PlayM4_GetFrameInfo(function (e) {
|
||
i.aWndList[r].oPlayCtrl.iYUVWidth = e.width, i.aWndList[r].oPlayCtrl.iYUVHeight = e.height, i._getOSDTime(r, e.year, e.month, e.day, e.hour, e.minute, e.second), i.aWndList[r]._videoInfo.height = e.height, i.aWndList[r]._videoInfo.width = e.width, i.aWndList[r]._videoInfo.frameRate = e.frameRate
|
||
}), n(i.aWndList[r].iCurentOSDTime))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetNormalDecoderAudio", value: function () {
|
||
var t = this, n = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, i = arguments[1];
|
||
return new m.default(function (e) {
|
||
(n < 0 || n > t.iMaxWndNum - 1 || "number" != typeof n) && (n = t.iCurrentWndIndex), t.aWndList[n].mseDecoderAudio = i, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_OpenSound", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return (r < 0 || r > this.iMaxWndNum - 1 || "number" != typeof r) && (r = this.iCurrentWndIndex), new m.default(function (e, t) {
|
||
var n = i._checkPlay(r);
|
||
if (0 !== n) return t(n);
|
||
if (!i.aWndList[r].bFirstFrame) return t(L.ERR_COM_OPENSOUND_ERROR);
|
||
n = i.iCurrentSoundWnd;
|
||
if (n === r) e(); else {
|
||
if (-1 !== n && (1 === i.aWndList[n].iMode ? i.oJSPlugin.find("video.play-window").eq(n)[0].muted = !0 : i.aWndList[n].oPlayCtrl.PlayM4_StopSound && i.aWndList[n].oPlayCtrl.PlayM4_StopSound()), 1 === i.aWndList[r].iMode) {
|
||
if ("AAC" !== i.aWndList[r]._videoInfo.audioType) return t(L.ERR_STREAM_SOUND_NOTHAS);
|
||
i.aWndList[r].mseDecoderAudio || (i.aWndList[r].bOpenSound = !0, i._streamReset(r));
|
||
n = i.oJSPlugin.find("video.play-window").eq(r)[0];
|
||
n.volume = i.aWndList[r].MSEVolume, n.muted = !1, n.paused && n.play()
|
||
} else if (i.aWndList[r].oPlayCtrl.PlayM4_PlaySound && 1 !== i.aWndList[r].oPlayCtrl.PlayM4_PlaySound(r)) return void t(L.ERR_JSDECODER + i.aWndList[r].oPlayCtrl.PlayM4_GetLastError().toString());
|
||
i.iCurrentSoundWnd = r, i.aWndList[r].bOpenSound = !0, e()
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetVolume", value: function () {
|
||
var t, i = this;
|
||
return new m.default(function (n, e) {
|
||
if (-1 === i.iCurrentSoundWnd) return e(L.ERR_COM_SETORGET_VOLUME_ERROR);
|
||
t = i.iCurrentSoundWnd, 1 === i.aWndList[t].iMode ? (e = 100 * i.oJSPlugin.find("video.play-window").eq(t).get(0).volume, n(e)) : i.aWndList[t].oPlayCtrl.PlayM4_GetVolume && i.aWndList[t].oPlayCtrl.PlayM4_GetVolume(function (e) {
|
||
var t = e;
|
||
"2" === i._decoderVersion && (t = Math.ceil(e / 655)), n(t)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetVolume", value: function () {
|
||
var i, r = this, a = arguments[1];
|
||
return new m.default(function (e, t) {
|
||
if (-1 === r.iCurrentSoundWnd) return t(L.ERR_COM_SETORGET_VOLUME_ERROR);
|
||
if (i = r.iCurrentSoundWnd, a < 1 || 100 < a || "number" != typeof a) return t(L.ERR_COM_SETVOLUME_ERROR);
|
||
if (1 === r.aWndList[i].iMode) {
|
||
try {
|
||
var n = r.oJSPlugin.find("video.play-window").eq(i).get(0);
|
||
n.volume = a / 100, r.aWndList[i].MSEVolume = n.volume
|
||
} catch (e) {
|
||
t(e)
|
||
}
|
||
e()
|
||
} else {
|
||
r.aWndList[i].oPlayCtrl.PlayM4_SetVolume || t();
|
||
n = a;
|
||
"2" === r._decoderVersion && (n = Math.ceil(655 * a)), 0 === r.aWndList[i].oPlayCtrl.PlayM4_SetVolume(n) ? t(L.ERR_JSDECODER + r.aWndList[i].oPlayCtrl.PlayM4_GetLastError().toString()) : e()
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_CloseSound", value: function () {
|
||
var r = this;
|
||
return new m.default(function (e, t) {
|
||
var n, i = r.iCurrentSoundWnd;
|
||
i < 0 || i > r.iMaxWndNum - 1 ? e() : 0 !== (n = r._checkPlay(i)) ? t(n) : (1 === r.aWndList[i].iMode ? r.oJSPlugin.find("video.play-window").eq(i)[0].muted = !0 : r.aWndList[i].oPlayCtrl.PlayM4_StopSound && 1 !== r.aWndList[i].oPlayCtrl.PlayM4_StopSound() && t(L.ERR_JSDECODER + r.aWndList[i].oPlayCtrl.PlayM4_GetLastError().toString()), r.iCurrentSoundWnd = -1, r.aWndList[i].bOpenSound = !1, e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_EnableZoom", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return (r < 0 || r > this.iMaxWndNum - 1 || "number" != typeof r) && (r = this.iCurrentWndIndex), new m.default(function (e, t) {
|
||
var n = i._checkPlay(r);
|
||
return 0 !== n ? t(n) : 1 === i.aWndList[r].iMode ? (i._log.E(L.ERR_COM_IS_MSE + ": MSE unsupport this function."), t(L.ERR_COM_IS_MSE)) : (i.oJSPlugin.find(".draw-window").unbind(), i.oDrawCanvas = new h.ESCanvas(i.options.szId + "_canvas_draw" + r), i.oDrawCanvas.setShapeType("Rect"), i.oDrawCanvas.setDrawStyle("#ff0000", "", 0), i.oDrawCanvas.setDrawStatus(!0, function (e) {
|
||
e.startPos && e.endPos && (e.startPos[0] > e.endPos[0] ? i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion && i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion(null, !1) : i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion && i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion({
|
||
left: e.startPos[0],
|
||
top: e.startPos[1],
|
||
right: e.endPos[0],
|
||
bottom: e.endPos[1]
|
||
}, !0))
|
||
}), i.aWndList[r].bEZoom = !0, void e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_DisableZoom", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return (r < 0 || r > this.iMaxWndNum - 1 || "number" != typeof r) && (r = this.iCurrentWndIndex), new m.default(function (e, t) {
|
||
var n = i._checkPlay(r);
|
||
return 0 !== n ? t(n) : 1 === i.aWndList[r].iMode ? (i._log.E(L.ERR_COM_IS_MSE + ": MSE unsupport this function."), t(L.ERR_COM_IS_MSE)) : (i.oDrawCanvas.setDrawStatus(!1), i.oDrawCanvas.clearAllShape(), void (i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion && 1 !== i.aWndList[r].oPlayCtrl.PlayM4_SetDisplayRegion(null, !1) ? t(L.ERR_JSDECODER + i.aWndList[r].oPlayCtrl.PlayM4_GetLastError().toString()) : (i.aWndList[r].bEZoom = !1, e())))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Enable3DZoom", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, r = arguments[1];
|
||
return new m.default(function (e, t) {
|
||
(i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), n.aWndList[i].bPlay ? (n.oJSPlugin.find(".draw-window").unbind(), n.fDrawCallback = r, n.oDrawCanvas = new h.ESCanvas("canvas_draw" + i), n.oDrawCanvas.setShapeType("Rect"), n.oDrawCanvas.setDrawStyle("#ff0000", "", 0), n.oDrawCanvas.setDrawStatus(!0, function (e) {
|
||
r(e)
|
||
}), n.aWndList[i].b3DZoom = !0, e()) : t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_Disable3DZoom", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (e, t) {
|
||
(i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), n.aWndList[i].bPlay ? (n.oDrawCanvas.setDrawStatus(!1), n.aWndList[i].b3DZoom = !1, e()) : t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_CapturePicture", value: (T = (0, v.default)(y.default.mark(function e() {
|
||
var d = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, l = arguments[1], h = this,
|
||
c = arguments[2], _ = arguments[3];
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
return e.abrupt("return", new m.default(function () {
|
||
var n = (0, v.default)(y.default.mark(function e(t, n) {
|
||
var i, r, a, s, o, u;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if ((d < 0 || d > h.iMaxWndNum - 1 || "number" != typeof d) && (d = h.iCurrentWndIndex), 0 !== (a = h._checkPlay(d))) return n(a), e.abrupt("return");
|
||
e.next = 5;
|
||
break;
|
||
case 5:
|
||
if (h.aWndList[d].bFirstFrame) {
|
||
e.next = 7;
|
||
break
|
||
}
|
||
return e.abrupt("return", n(L.ERR_CAPTURE_NO_PREPARED));
|
||
case 7:
|
||
if (c = "JPEG", i = null, 1 !== (r = h.aWndList[d]).iMode) {
|
||
e.next = 21;
|
||
break
|
||
}
|
||
a = h.oJSPlugin.find("video.play-window").eq(d).get(0), s = a.videoWidth, o = a.videoHeight, (u = document.createElement("canvas")).width = s, u.height = o, u.getContext("2d").drawImage(a, 0, 0, s, o), i = u.toDataURL("image/" + c), e.next = 24;
|
||
break;
|
||
case 21:
|
||
return e.next = 23, h._jsdecoderCapture(r, c);
|
||
case 23:
|
||
i = e.sent;
|
||
case 24:
|
||
if (_) return _(i), t(), e.abrupt("return");
|
||
e.next = 28;
|
||
break;
|
||
case 28:
|
||
(s = i.split(";").shift().split("/").pop()) !== c.toLowerCase() && console.warn("Current Browser is not support to capture '" + c + "' image type, auto capture '" + s.toUpperCase() + "' image."), (o = document.createEvent("MouseEvents")).initEvent("click", !1, !1), (u = document.createElement("a")).href = Blob ? URL.createObjectURL(f.oTool.dataURLtoBlob(i)) : i, u.download = l + "." + s, u.dispatchEvent(o), t();
|
||
case 37:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, h)
|
||
}));
|
||
return function (e, t) {
|
||
return n.apply(this, arguments)
|
||
}
|
||
}()));
|
||
case 1:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, this)
|
||
})), function () {
|
||
return T.apply(this, arguments)
|
||
})
|
||
}, {
|
||
key: "_jsdecoderCapture", value: function (t, o) {
|
||
var u = this;
|
||
return new m.default(function (a, s) {
|
||
function e(e) {
|
||
if (6 === e) return u._log.E(L.ERR_CAPTURE_RAM + ": capture failed, memory not enough."), s(L.ERR_CAPTURE_RAM);
|
||
for (var t = "", n = e.byteLength, i = 0; i < n; i++) t += String.fromCharCode(e[i]);
|
||
var r = btoa(t), r = "data:image/" + o.toLowerCase() + ";base64," + r;
|
||
a(r)
|
||
}
|
||
|
||
"JPEG" === o ? t.oPlayCtrl.PlayM4_GetJPEG(e) : "BMP" === o && t.oPlayCtrl.PlayM4_GetBMP(e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_StopRealPlayAll", value: function () {
|
||
var n = this;
|
||
return new m.default(function (e) {
|
||
n.aWndList.forEach(function (e, t) {
|
||
n.JS_Stop(t)
|
||
}), n.iCurrentSoundWnd = -1, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_StartSave", value: function () {
|
||
var a = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, s = this, o = arguments[1],
|
||
u = arguments[2];
|
||
return new m.default(function (t, e) {
|
||
(a < 0 || a > s.iMaxWndNum - 1 || "number" != typeof a) && (a = s.iCurrentWndIndex);
|
||
var n, i = 0, r = (u && (i = u.iPackage), s._checkPlay(a));
|
||
0 !== r ? e(r) : s.aWndList[a].szStorageUUID ? e(L.ERR_PLAY_FILESYS_ALREADY_WRITING) : (o.indexOf(".mp4") < 0 && (o += ".mp4"), r = s.aWndList[a].aHead, n = 0, "realplay" !== s.aWndList[a].szPlayType && (n = 1), s.oStorageManager.startRecord(o, r, 2, n, {
|
||
cbEventHandler: function (e) {
|
||
s._closeStreamAndDestory(a), s.oEventCallback.pluginErrorHandler(a, e)
|
||
}, iPackage: i
|
||
}).then(function (e) {
|
||
s.aWndList[a].szStorageUUID = e, t()
|
||
}, function () {
|
||
e()
|
||
}))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_StartSaveEx", value: function () {
|
||
var s = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, o = arguments[1], u = this,
|
||
d = arguments[2], l = arguments[3];
|
||
return new m.default(function (t, e) {
|
||
var n, i, r, a;
|
||
(s < 0 || s > u.iMaxWndNum - 1 || "number" != typeof s) && (s = u.iCurrentWndIndex), 2 !== d && 5 !== d ? e(L.ERR_PLAY_FILESYS_NOT_SUPPORT_DSTTYPE) : null === o ? e(L.ERR_PLAY_FILESYS_FILENAME_ISNULL) : (n = 1, i = null, l && (n = l.irecordType, i = l.cbStreamCB), 0 !== (r = u._checkPlay(s)) ? e(r) : u.aWndList[s].szStorageUUID ? e(L.ERR_PLAY_FILESYS_ALREADY_WRITING) : (o.indexOf(".mp4") < 0 && (o += ".mp4"), r = u.aWndList[s].aHead, a = 0, "realplay" !== u.aWndList[s].szPlayType && (a = 1), u.aWndList[s].isFlv && (r = u.flvtohikHead(s)), (5 === d && 33 === r[12] && 114 === r[13] || 98 === r[12] && 114 === r[13] || 0 === r[12] && 32 === r[13]) && (r[12] = 0, r[13] = 0), 129 === r[24] && (d = 1), u.oStorageManager.startRecord(o, r, d, a, {
|
||
cbEventHandler: function (e) {
|
||
u._closeStreamAndDestory(s), u.oEventCallback.pluginErrorHandler(s, e)
|
||
}, irecordType: n, cbStreamCB: i
|
||
}).then(function (e) {
|
||
u.aWndList[s].szStorageUUID = e, u.aWndList[s].isFlv && u.aWndList[s].oMSE.setRecordFlag(!0), t()
|
||
}, function () {
|
||
e()
|
||
})))
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_StopSave", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (e, t) {
|
||
(i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), n.aWndList[i].szStorageUUID ? (n.aWndList[i].isFlv && n.aWndList[i].oMSE.setRecordFlag(!1), n.oStorageManager.stopRecord(n.aWndList[i].szStorageUUID).then(function () {
|
||
n.aWndList[i].szStorageUUID = "", e()
|
||
}, function (e) {
|
||
t(e)
|
||
})) : t(L.ERR_PLAY_FILESYS_NOT_WRITING)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetDrawStatus", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e, t) {
|
||
i.oDrawCanvas ? (i.oDrawCanvas.setDrawStatus(n), e()) : t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_ClearRegion", value: function () {
|
||
var n = this;
|
||
return new m.default(function (e, t) {
|
||
n.oDrawCanvas ? (n.oDrawCanvas.clearAllShape(), e()) : t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetGridInfo", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e) {
|
||
if (null == n) return -1;
|
||
var t = "#ff0000";
|
||
n.drawColor && (t = n.drawColor), i.oDrawCanvas.setDrawStyle(t), i.oDrawCanvas.setShapesInfoByType("Grid", [{
|
||
szGridMap: n.gridMap,
|
||
iGridColNum: n.gridColNum,
|
||
iGridRowNum: n.gridRowNum
|
||
}]), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetGridInfo", value: function () {
|
||
var e, t = null;
|
||
return t = this.oDrawCanvas ? (e = this.oDrawCanvas.getShapesInfoByType("Grid")[0]) ? {
|
||
gridColNum: e.iGridColNum,
|
||
gridRowNum: e.iGridRowNum,
|
||
gridMap: e.szGridMap
|
||
} : {iGridRowNum: 18, iGridColNum: 22, szGridMap: ""} : {}, m.default.resolve(t)
|
||
}
|
||
}, {
|
||
key: "JS_SetDrawShapeInfo", value: function (n, i) {
|
||
var r = this;
|
||
return new m.default(function (e, t) {
|
||
void 0 === n || "" === n ? t() : (r.oDrawCanvas.setShapeType(n), r.oDrawCanvas.setDrawStyle(i.szDrawColor || "", i.szFillColor || "", i.iTranslucent || 0), i.iMaxShapeSupport && 0 < i.iMaxShapeSupport && r.oDrawCanvas.setMaxShapeSupport(i.iMaxShapeSupport), i.iMaxPointSupport && 0 < i.iMaxPointSupport && r.oDrawCanvas.setCurrentShapeInfo({
|
||
szId: "",
|
||
szTips: "",
|
||
iMinClosed: 3,
|
||
iMaxPointNum: i.iMaxPointSupport,
|
||
iPolygonType: 1,
|
||
szDrawColor: i.szDrawColor || "",
|
||
szFillColor: i.szFillColor || "",
|
||
iTranslucent: i.iTranslucent || 0
|
||
}), e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetPolygonInfo", value: function (a) {
|
||
var s = this;
|
||
return new m.default(function (e, t) {
|
||
if (void 0 !== a && a.length) {
|
||
var n = [];
|
||
if (0 < a.length) for (var i = 0, r = a.length; i < r; i++) 0 < a[i].aPoint.length && n.push(a[i]);
|
||
0 < n.length ? (s.oDrawCanvas.setShapesInfoByType("Polygon", n), e()) : t()
|
||
} else t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetPolygonInfo", value: function () {
|
||
var s = this;
|
||
return new m.default(function (e) {
|
||
for (var t = [], n = s.oDrawCanvas.getShapesInfoByType("Polygon"), i = 0, r = n.length; i < r; i++) {
|
||
var a = n[i], a = {aPoint: a.aPoint, bClosed: a.bClosed, szTips: a.szTips};
|
||
t.push(a)
|
||
}
|
||
e(t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetLineInfo", value: function (a) {
|
||
var s = this;
|
||
return new m.default(function (e, t) {
|
||
if (void 0 !== a && a.length) {
|
||
var n = [];
|
||
if (0 < a.length) for (var i = 0, r = a.length; i < r; i++) 0 < a[i].aPoint.length && n.push(a[i]);
|
||
0 < n.length ? (s.oDrawCanvas.setShapesInfoByType("Line", n), e()) : t()
|
||
} else t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetLineInfo", value: function () {
|
||
var s = this;
|
||
return new m.default(function (e) {
|
||
for (var t = [], n = s.oDrawCanvas.getShapesInfoByType("Line"), i = 0, r = n.length; i < r; i++) {
|
||
var a = n[i], a = {iLineType: a.iLineType, aPoint: a.aPoint, szTips: a.szTips};
|
||
t.push(a)
|
||
}
|
||
e(t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetRectInfo", value: function (a) {
|
||
var s = this;
|
||
return new m.default(function (e, t) {
|
||
if (void 0 !== a && a.length) {
|
||
var n = [];
|
||
if (0 < a.length) for (var i = 0, r = a.length; i < r; i++) 0 < a[i].aPoint.length && n.push(a[i]);
|
||
0 < n.length ? (s.oDrawCanvas.setShapesInfoByType("Rect", n), e()) : t()
|
||
} else t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetRectInfo", value: function () {
|
||
var s = this;
|
||
return new m.default(function (e) {
|
||
for (var t = [], n = s.oDrawCanvas.getShapesInfoByType("Rect"), i = 0, r = n.length; i < r; i++) {
|
||
var a = n[i], a = {aPoint: a.aPoint, szTips: a.szTips};
|
||
t.push(a)
|
||
}
|
||
e(t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_FullScreenDisplay", value: function (e) {
|
||
var t = document.getElementById(this.options.szId).children[0];
|
||
return this._triggerFullscreen(t)
|
||
}
|
||
}, {
|
||
key: "JS_FullScreenSingle", value: function () {
|
||
var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1,
|
||
t = ((e < 0 || e > this.iMaxWndNum - 1 || "number" != typeof e) && (e = this.iCurrentWndIndex), this.aWndList[e]);
|
||
if (!t.bPlay) return m.default.reject("window " + e + " is not playing.");
|
||
var n = null,
|
||
n = ("desktop" === this._browserInfo.platform || "ios" === this._browserInfo.system ? this.oJSPlugin.find(".sub-wnd") : 1 === t.iMode ? this.oJSPlugin.find(".sub-wnd video.play-window") : this.oJSPlugin.find(".sub-wnd canvas.play-window")).get(e);
|
||
return this._triggerFullscreen(n)
|
||
}
|
||
}, {
|
||
key: "_triggerFullscreen", value: function (a, e) {
|
||
var n, s = this,
|
||
o = document.fullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled || a.webkitSupportsFullscreen || !1,
|
||
u = document.fullscreen || document.webkitIsFullScreen || document.mozFullScreen || a.webkitDisplayingFullscreen || !1;
|
||
return a.requestFullscreen = a.requestFullscreen || a.webkitRequestFullScreen || a.mozRequestFullScreen || a.msRequestFullscreen || a.webkitEnterFullScreen || null, document.exitFullscreen = document.exitFullscreen || document.mozCancelFullScreen || document.msExitFullscreen || null, new m.default((n = (0, v.default)(y.default.mark(function e(t, n) {
|
||
var i, r;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if (!o) {
|
||
e.next = 13;
|
||
break
|
||
}
|
||
if (u && s.fullscreenElement === a) return document.exitFullscreen ? document.exitFullscreen() : a.webkitExitFullScreen(), s.fullscreenElement = null, s.JS_Resize(), s.oEventCallback.windowFullCcreenChange(!1), e.abrupt("return", t());
|
||
e.next = 7;
|
||
break;
|
||
case 7:
|
||
return e.next = 9, a.requestFullscreen();
|
||
case 9:
|
||
return s.fullscreenElement = a, s.JS_Resize(), s.oEventCallback.windowFullCcreenChange(!0), e.abrupt("return", t());
|
||
case 13:
|
||
return s.fullscreenElement ? (document.body.style.setProperty("overflow", "unset"), i = s.oJSPlugin.width(), r = s.oJSPlugin.height(), (0, g.default)(a).css("width", i).css("height", r).css("z-index", "").css("position", "relative").css("transform", "").css("transform-origin", "").css("top", "").css("left", ""), s.fullscreenElement = null, s.JS_Resize(), s.oEventCallback.windowFullCcreenChange(!1)) : (i = document.body.clientWidth, r = document.body.clientHeight, s.options.openDebug && console.log("iphone fullscreen: body, window", i, r, window.screen.width, window.screen.height), i < r ? (document.body.style.setProperty("overflow", "hidden"), (0, g.default)(a).css("width", r).css("height", i).css("z-index", "1001").css("position", "fixed").css("transform", "rotate(90deg)").css("transform-origin", "0px 0px").css("top", "0px").css("left", i + "px"), (0, g.default)(a).find("video.play-window").attr("width", r).attr("height", i), (0, g.default)(a).find("canvas.play-window").attr("width", r).attr("height", i).css("transform", "scale(1)"), (0, g.default)(a).find("canvas.draw-window").attr("width", r).attr("height", i)) : (0, g.default)(a).css("width", i).css("height", r).css("z-index", "1001").css("position", "fixed"), s.fullscreenElement = a, s.JS_Resize(), s.oEventCallback.windowFullCcreenChange(!0)), e.abrupt("return", m.default.resolve());
|
||
case 15:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, s)
|
||
})), function (e, t) {
|
||
return n.apply(this, arguments)
|
||
}))
|
||
}
|
||
}, {
|
||
key: "JS_Resize", value: function (s, o) {
|
||
var u = this;
|
||
return new m.default(function (a) {
|
||
u._debounse(function () {
|
||
var e, t, n, i, r;
|
||
s && o && "number" == typeof s && "number" == typeof o && (u.options.iWidth = s, u.options.iHeight = o, u.oJSPlugin.width(s), u.oJSPlugin.height(o)), u.fullscreenElement && "sub-wnd" === u.fullscreenElement.className ? (t = (e = (0, g.default)(u.fullscreenElement)).width(), n = e.height(), r = window.screen.width, i = window.screen.height, u.options.openDebug && console.log("singleFullscreen JS_Resize: ", r, i, t, n), e.css("border", "1px solid " + u.options.oStyle.border), e.find("video.play-window").attr("width", t).attr("height", n), e.find("canvas.play-window").css("transform", "unset").attr("width", t).attr("height", n), (r = u.aWndList[u.currentWindowIndex]).bPlay && 0 === r.iMode && r.oPlayCtrl && r.oPlayCtrl.PlayM4_SetCanvasSize && r.oPlayCtrl.PlayM4_SetCanvasSize(t, n), e.find("canvas.draw-window").attr("width", t).attr("height", n)) : (u.options.iWidth = u.oJSPlugin.width(), u.options.iHeight = u.oJSPlugin.height(), u._updateWnd()), u.oDrawCanvas.resizeCanvas(), u.oDrawCanvas.canvasRedraw(), a()
|
||
}, 50)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SelectWnd", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e, t) {
|
||
if (n < 0 || n > i.iMaxWndNum - 1 || "number" != typeof n) return t(L.ERR_COM_PARAM);
|
||
i.oJSPlugin.find(".sub-wnd").get(n).click(), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetOptions", value: function (t) {
|
||
var n = this;
|
||
return new m.default(function (e) {
|
||
!1 === t.bSupportSound && (n.options.bSupportSound = t.bSupportSound), !1 === t.bSupporDoubleClickFull && (n.options.bSupporDoubleClickFull = t.bSupporDoubleClickFull), !0 === t.bOnlySupportMSE && (n.options.bOnlySupportMSE = t.bOnlySupportMSE), !0 === t.bOnlySupportJSDecoder && (n.options.bOnlySupportJSDecoder = t.bOnlySupportJSDecoder), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetLogFlag", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e) {
|
||
for (var t = 0; t < i.iMaxWndNum; t++) i.aWndList[t].oPlayCtrl && i.aWndList[t].oPlayCtrl.PlayM4_OpenPlayerSDKPrintLog(n);
|
||
e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetDecodeThreadNum", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e) {
|
||
for (var t = 0; t < i.iMaxWndNum; t++) i.aWndList[t].oPlayCtrl && i.aWndList[t].oPlayCtrl.SetDecodeThreadNum(n);
|
||
e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_RenderPrivateData", value: function (e, t) {
|
||
var n = this.iCurrentWndIndex, i = this.aWndList[n], r = this._checkPlay(n);
|
||
if (0 === r) {
|
||
if (1 === this.aWndList[n].iMode) return r = L.ERR_COM_IS_MSE, this._log.E(L.ERR_COM_IS_MSE + ": MSE unsupport this function."), r;
|
||
1 !== i.oPlayCtrl.PlayM4_RenderPrivateData(e, t) && (r = L.ERR_JSDECODER + i.oPlayCtrl.PlayM4_GetLastError().toString(), this._log.E(r + ": 播放库智能信息接口报错:"))
|
||
}
|
||
return r
|
||
}
|
||
}, {
|
||
key: "JS_RenderPrivateDataEx", value: function (e, t, n) {
|
||
var i = this.iCurrentWndIndex, r = this.aWndList[i], a = this._checkPlay(i);
|
||
return 0 === a && (1 === this.aWndList[i].iMode && (a = L.ERR_COM_IS_MSE, this._log.E(L.ERR_COM_IS_MSE + ": MSE unsupport this function.")), 1 !== r.oPlayCtrl.PlayM4_RenderPrivateDataEx(e, t, n) && (a = L.ERR_JSDECODER + r.oPlayCtrl.PlayM4_GetLastError().toString(), this._log.E(a + ": 播放库智能信息接口报错:", a))), a
|
||
}
|
||
}, {
|
||
key: "JS_RenderALLPrivateData", value: function () {
|
||
var r = this, a = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, s = arguments[1];
|
||
return new m.default(function (e, t) {
|
||
if ((a < 0 || a > r.iMaxWndNum - 1 || "number" != typeof a) && (a = r.iCurrentWndIndex), "boolean" != typeof s) return t(L.ERR_COM_PARAM);
|
||
var n = r.aWndList[a], i = r._checkPlay(a);
|
||
if (0 !== i) return t(i);
|
||
if (0 !== n.iMode || "2" !== r._decoderVersion) return t(L.ERR_STREAM_INTEL_UNSUPPORT);
|
||
[{typeCode: "0x00000001", desc: "智能分析(默认开)", children: []}, {
|
||
typeCode: "0x00000002",
|
||
desc: "移动侦测(默认开)",
|
||
children: []
|
||
}, {typeCode: "0x00000004", desc: "pos 信息叠加(默认关)", children: []}, {
|
||
typeCode: "0x00000008",
|
||
desc: "图片叠加(默认关)",
|
||
children: []
|
||
}, {
|
||
typeCode: "0x00000010",
|
||
desc: "火点信息(默认开)",
|
||
children: [{typeCode: "0x00000001", desc: "火点框显示"}, {
|
||
typeCode: "0x00000002",
|
||
desc: "火点最高温显示"
|
||
}, {typeCode: "0x00000004", desc: "最高温位置显示"}, {typeCode: "0x00000008", desc: "最高温度距离"}]
|
||
}, {
|
||
typeCode: "0x00000020",
|
||
desc: "温度信息(默认关)",
|
||
children: [{typeCode: "0x00000001", desc: "框测温"}, {
|
||
typeCode: "0x00000002",
|
||
desc: "线测温"
|
||
}, {typeCode: "0x00000004", desc: "点测温"}]
|
||
}, {
|
||
typeCode: "0x00000040",
|
||
desc: "轨迹信息(默认关)",
|
||
children: [{typeCode: "0x00000001", desc: "人的轨迹信息"}, {typeCode: "0x00000002", desc: "车的轨迹信息"}]
|
||
}, {
|
||
typeCode: "0x00000080",
|
||
desc: "烟火屏蔽和废气监测(默认关)",
|
||
children: [{typeCode: "0x00000001", desc: "烟火屏蔽"}, {
|
||
typeCode: "0x00000002",
|
||
desc: "规则废气检测"
|
||
}, {typeCode: "0x00000004", desc: "目标废气检测"}]
|
||
}].forEach(function (t) {
|
||
1 === n.oPlayCtrl.PlayM4_RenderPrivateData(t.typeCode, s) ? s && t.children && 0 < t.children.length && t.children.forEach(function (e) {
|
||
1 !== n.oPlayCtrl.PlayM4_RenderPrivateDataEx(t.typeCode, e.typeCode, s) && (console.warn("trigger intelligence sub " + e.typeCode + " " + (s ? "open" : "close") + " failed"), i = 1)
|
||
}) : (console.warn("trigger intelligence main " + t.typeCode + " " + (s ? "open" : "close") + " failed"), i = 1)
|
||
}), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "_checkPlay", value: function (e) {
|
||
return e < 0 || e > this.iMaxWndNum - 1 ? (this._log.E(L.ERR_COM_PARAM + ": unexpected window index."), L.ERR_COM_PARAM) : this.aWndList[e].bPlay ? 0 : (this._log.E(L.ERR_COM_NOT_PLAYING + ": this window is not playing."), L.ERR_COM_NOT_PLAYING)
|
||
}
|
||
}, {
|
||
key: "_checkPlayback", value: function (e) {
|
||
var t = this._checkPlay(e);
|
||
return 0 === t && "realplay" === this.aWndList[e].szPlayType && (this._log.E(L.ERR_COM_NOT_PLAYBACK + ": this function was only supported by playback."), t = L.ERR_COM_NOT_PLAYBACK), t
|
||
}
|
||
}, {
|
||
key: "_createFlvPlayer", value: function (i) {
|
||
var r = this, a = this.aWndList[i],
|
||
e = (a.oMSE && (a.bPlay = !1, a.oMSE.detachMediaElement(), a.oMSE.destroy(), a.oMSE = null), this.oJSPlugin.find("video.play-window").eq(i)),
|
||
t = this.oJSPlugin.find("canvas.play-window").eq(i),
|
||
t = (e.show(), t.hide(), {isLive: !0, type: "flv"}),
|
||
n = (this.aWndList[i].mseDecoderAudio || (t = {hasAudio: !1, isLive: !0, type: "flv"}), !1), s = 3,
|
||
o = 2, t = (0 < a.szBufferSize && (n = !0, s = 5, o = 2), a.oMSE = c.default.createPlayer(t, {
|
||
enableWorker: this.options.mseWorkerEnable,
|
||
lazyLoadMaxDuration: 180,
|
||
seekType: "range",
|
||
isLive: !0,
|
||
enableStashBuffer: n,
|
||
autoCleanupMaxBackwardDuration: 60,
|
||
autoCleanupMinBackwardDuration: 30,
|
||
statisticsInfoReportInterval: 1e3,
|
||
enableDurationMonitor: !0,
|
||
lowLatencyThreshold: s,
|
||
decreaseDurationStep: o,
|
||
enableAudioGain: !1,
|
||
stashInitialSize: a.szBufferSize,
|
||
WDInfo: {index: i, pointSignNumber: a.pointSignNumber}
|
||
})), u = (t.on(b.default.ERROR, function (e, t, n) {
|
||
a.bFirstFrame ? (r._streamReset(i), window.console.warn("[iWndNum-" + i + "] PlayerEvents.ERROR mediaElement error,reset decoder:", e, t, n.code, n.message)) : ("MediaError" === e && "CodecUnsupported" === t ? r.oEventCallback.pluginErrorHandler(i, L.ERR_STREAM_CODEC_UNSUPPORTED, n.message) : r.oEventCallback.pluginErrorHandler(i, L.ERR_STREAM_DATA_ERROR, n.message), window.console.error("[iWndNum-" + i + "] PlayerEvents.ERROR mediaElement error,stop decoder:", e, t, n.code, n.message), r.JS_Stop(i))
|
||
}), t.on(b.default.MS_BUFFER_FULL, function () {
|
||
a.bFirstFrame ? (r._streamReset(i), window.console.warn("[iWndNum-" + i + "] media_source_buffer_full,reset decoder:")) : (r.oEventCallback.pluginErrorHandler(i, L.ERR_STREAM_MSE_DATA_FULL), r.JS_Stop(i), window.console.error("[iWndNum-" + i + "] media_source_buffer_full,stop decoder:"))
|
||
}), e.get(0)), d = this;
|
||
u.addEventListener("loadeddata", function e(t) {
|
||
console.info("[debug] [iWndNum-" + i + "] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c 硬解首帧已经加载,分辨率:" + a._videoInfo.width + "*" + a._videoInfo.height, "color: blue", "color: black", u.paused, u.autoplay), u.removeEventListener("loadeddata", e), a._emiter.emit("firstframeload"), u.poster = "", a.bFirstFrame = !0, u.addEventListener("error", function e(t) {
|
||
window.console.warn("[iWndNum-" + i + "] mediaElement error,reset decoder:", t.target.error), u.removeEventListener("error", e), d._streamReset(i)
|
||
}), d.oEventCallback.firstFrameDisplay(i, a._videoInfo.width, a._videoInfo.height)
|
||
}), a._receivedLength = 0, t.attachMediaElement(u), t.load(), a.bPlay = !0, a.asyncLock = !1, t.onParsedData = this._onParsedData.bind(this)
|
||
}
|
||
}, {
|
||
key: "_streamReset", value: function (e) {
|
||
var t = this.aWndList[e];
|
||
t.bFirstFrame && (t._resetFlvplayer = !1, t.bFirstFrame = !1, this._capturePoster(e), t.isFlv && (this._createFlvPlayer(e), t.oMSE.onLoaderChunkArrival(t.szFlvhead.buffer, t._receivedLength), t._receivedLength += t.szFlvhead.length, t._resetFlvplayer = !0))
|
||
}
|
||
}, {
|
||
key: "_capturePoster", value: function (e) {
|
||
var e = this.oJSPlugin.find("video.play-window").eq(e).get(0), t = e.videoWidth, n = e.videoHeight,
|
||
i = document.createElement("canvas"),
|
||
t = (i.width = t, i.height = n, i.getContext("2d").drawImage(e, 0, 0, t, n), i.toDataURL("image/JPEG"));
|
||
e.poster = t
|
||
}
|
||
}, {
|
||
key: "_createPlayCtrl", value: function (r) {
|
||
var e, a = this, s = this.aWndList[r],
|
||
o = (console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c _createPlayCtrl load start code", "color: blue", "color: black"), this._playCtrlLoad.bind(this));
|
||
this.oJSPlugin.find("video.play-window").eq(r).hide(), this.oJSPlugin.find("canvas.play-window").eq(r).show(), "2" === this._decoderVersion ? P && (s.oPlayCtrl = new u.JSPlayCtrl(this.options.szId + "_playCanvas" + r, P, function (e) {
|
||
e.instance;
|
||
var t = e.cmd, e = (e.data, e.errorCode, e.status);
|
||
"OnebyOne" === t && (e && s.isPause && (a.oStreamClient.resume(s.szStreamUUID), s.isPause = !1), e || s.isPause || (a.oStreamClient.pause(s.szStreamUUID), s.isPause = !0))
|
||
}, r), s.bLoad = !0, this._playCtrlLoad(r)) : (s.oPlayCtrl = new d.JSPlayCtrl(this.options.szBasePath + "playctrl1/", function (e) {
|
||
e.instance;
|
||
var t = e.cmd, n = e.errorCode, i = e.status;
|
||
switch (t) {
|
||
case"loaded":
|
||
console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c new JSDecoder1.0 received loaded message", "color: blue", "color: black"), s.bLoad || o(r), s.bLoad = !0;
|
||
break;
|
||
case"OnebyOne":
|
||
i && s.isPause && (a.oStreamClient.resume(s.szStreamUUID), s.isPause = !1), i || s.isPause || (a.oStreamClient.pause(s.szStreamUUID), s.isPause = !0);
|
||
break;
|
||
case"GetFrameData":
|
||
return void (16 === n && (a._closeStreamAndDestory(r), a.oEventCallback.pluginErrorHandler(r, L.ERR_STREAM_VIDEO_CODING)))
|
||
}
|
||
}, r), e = 4 === s.aHead[8] ? 0 : 1, s.oPlayCtrl.PlayM4_SetStreamOpenMode(e)), console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c _createPlayCtrl load end code", "color: blue", "color: black")
|
||
}
|
||
}, {
|
||
key: "_playCtrlLoad", value: function (e) {
|
||
var t = this.aWndList[e];
|
||
if ("2" === this._decoderVersion) {
|
||
var n = "realplay" === t.szPlayType ? 0 : 1, i = t.isHVAGHead ? t.aHVAGHead : t.aHead;
|
||
if (t.oPlayCtrl && t.oPlayCtrl.PlayM4_SetStreamOpenMode(n), t.oPlayCtrl && t.oPlayCtrl.PlayM4_OpenStream(i, 40, 8388608 + t.szBufferSize), 1 !== t.oPlayCtrl.PlayM4_Play()) return L.ERR_JSDECODER + t.oPlayCtrl.PlayM4_GetLastError().toString();
|
||
if ("reverse" === t.szPlayType && 1 !== t.oPlayCtrl.PlayM4_ReversePlay()) return L.ERR_JSDECODER + t.oPlayCtrl.PlayM4_GetLastError().toString();
|
||
t.bPlay = !0, t.oPlayCtrl.iBufferValue = t.oPlayCtrl.PlayM4_GetBufferValue(1), this._supportInfo.webGL2 && t.oPlayCtrl.PlayM4_SetAntialias(1)
|
||
} else {
|
||
if (t.oPlayCtrl && t.oPlayCtrl.PlayM4_OpenStream(t.aHead, 40, 2097152), t.oPlayCtrl && t.oPlayCtrl.PlayM4_SetInputBufSize(E), 1 !== t.oPlayCtrl.PlayM4_Play(this.options.szId + "_playCanvas" + e)) return L.ERR_JSDECODER + t.oPlayCtrl.PlayM4_GetLastError().toString();
|
||
t.bPlay = !0
|
||
}
|
||
return C.push({
|
||
port: t.oPlayCtrl.iPort,
|
||
belongWindowpoint: this,
|
||
belongWindowId: e
|
||
}), console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c call PlayM4_Play sucessed", "color: blue", "color: black"), 1
|
||
}
|
||
}, {
|
||
key: "sleep", value: function (e) {
|
||
for (var t = (new Date).getTime(); (new Date).getTime() - t < e;) ;
|
||
}
|
||
}, {
|
||
key: "_feedData", value: function (n, e) {
|
||
var t, i, r, a, s, o = this, u = e.type, d = e.statusString, e = e.buf, l = this.aWndList[n],
|
||
h = this.oEventCallback.pluginErrorHandler.bind(this), e = l.isGB ? this._stripRtpHead(e) : e;
|
||
l.isFlv ? l._resetFlvplayer ? 9 === new Uint8Array(e)[4] && (l.oMSE.onLoaderChunkArrival(e, l._receivedLength), l._receivedLength += e.byteLength, l._resetFlvplayer = !1) : (l.oMSE.onLoaderChunkArrival(e, l._receivedLength), l._receivedLength += e.byteLength) : "2" === this._decoderVersion ? (t = new Uint8Array(e), 1 === (t = l.oPlayCtrl.PlayM4_InputData(t, t.byteLength)) ? 0 !== l.iDecodeType && l.oPlayCtrl.PlayM4_GetSourceBufferRemain() < l.oPlayCtrl.iBufferValue / 2 && (l.oPlayCtrl.PlayM4_SetDecodeFrameType(0), l.iDecodeType = 0) : 11 === t ? 1 === l.iDecodeType || l.bFrameForward || (l.oPlayCtrl.PlayM4_SetDecodeFrameType(1), l.iDecodeType = 1, this.oEventCallback.performanceLack()) : this.oEventCallback.pluginErrorHandler(n, L.ERR_JSDECODER + l.oPlayCtrl.PlayM4_GetLastError().toString(), "PlayM4_InputData oError"), l.bFirstFrame || l.oPlayCtrl && l.oPlayCtrl.PlayM4_GetFrameInfo(function (e) {
|
||
var t = o._getWndIndexFromPort(e.port);
|
||
e.width && e.height && t === n && (l.bFirstFrame = !0, l.oPlayCtrl.iYUVWidth = e.width, l.oPlayCtrl.iYUVHeight = e.height, o._getOSDTime(n, e.year, e.month, e.day, e.hour, e.minute, e.second), l._videoInfo.height = e.height, l._videoInfo.width = e.width, l._videoInfo.frameRate = e.frameRate, l._emiter.emit("firstframeload"), o.oEventCallback.firstFrameDisplay(n, l.oPlayCtrl.iYUVWidth, l.oPlayCtrl.iYUVHeight), t = "chrome" === o._browserInfo.supporter && 90 < parseInt(o._browserInfo.supporterVersion.split(".").shift()) ? "3" : "2", console.info("[debug] [iWndNum-" + n + "] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c jsdecoder" + t + ".0软解首帧已经加载,分辨率:" + l._videoInfo.width + "*" + l._videoInfo.height, "color: blue", "color: black"), l.oPlayCtrl.PlayM4_SetDisplayBuf(6))
|
||
})) : (t = new Uint8Array(e), i = l.oPlayCtrl, 2 !== (s = l.oPlayCtrl && i.PlayM4_GetYUVBufSize()) || l.bFirstFrame || (l.bFirstFrame = !0, l.oPlayCtrl && i.PlayM4_GetFrameResolution(function (e, t) {
|
||
l._videoInfo.height = t, l._videoInfo.width = e, l._emiter.emit("firstframeload"), o.oEventCallback.firstFrameDisplay(n, e, t), console.info("[debug] [iWndNum-" + n + "]%c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c jsdecoder1.0软解首帧已经加载,分辨率:" + e + "*" + t, "color: blue", "color: black")
|
||
})), r = l.oPlayCtrl && i.PlayM4_GetInputBufSize(), a = l.oPlayCtrl && i.PlayM4_GetDecodeFrameType(), .5 * E < r && r < .8 * E && 1 === l.iRate && (1 === a || l.bFrameForward || (l.oPlayCtrl && i.PlayM4_SetDecodeFrameType(1), this.oEventCallback.performanceLack())), 10 < s && s < 15 && (1 === a || l.bFrameForward || (l.oPlayCtrl && i.PlayM4_SetDecodeFrameType(1), this.oEventCallback.performanceLack())), s < 10 && r < .5 * E && 0 !== a && 1 === l.iRate && l.oPlayCtrl && i.PlayM4_SetDecodeFrameType(0), d ? (this._closeStreamAndDestory(n), h(n, L.ERR_STREAM_TRANS, d)) : u && "exception" === u ? (this._closeStreamAndDestory(n), h(n, L.ERR_STREAM_PLAYBACK_END, u)) : l.oPlayCtrl && l.oPlayCtrl.PlayM4_InputData(t, t.byteLength)), l.szStorageUUID && 0 === l.iMode && this.oStorageManager.inputData(l.szStorageUUID, e), this.aWndList[n]._bpsCalculator && this.aWndList[n]._bpsInfo && (this.aWndList[n]._bpsInfo.lastVideoBytes += e.byteLength, 0 !== this.aWndList[n]._bpsInfo.data_updated_time && (s = (s = (Date.now() - this.aWndList[n]._bpsInfo.data_updated_time) / 1e3) < 1 ? 1 : Math.round(s), this.aWndList[n]._bpsInfo.time_gap_factor = s), this.aWndList[n]._bpsInfo.data_updated_time = Date.now())
|
||
}
|
||
}, {
|
||
key: "_closeStreamAndDestory", value: (D = (0, v.default)(y.default.mark(function e(t) {
|
||
var n, i;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if ((n = this.aWndList[t]).szStreamUUID) return e.prev = 2, e.next = 5, this.oStreamClient.stop(n.szStreamUUID);
|
||
e.next = 11;
|
||
break;
|
||
case 5:
|
||
e.next = 10;
|
||
break;
|
||
case 7:
|
||
e.prev = 7, e.t0 = e.catch(2), console.warn(e.t0);
|
||
case 10:
|
||
n.szStreamUUID = "";
|
||
case 11:
|
||
n.bPlay = !1, n.iRate = 1, n.isGB = !1, n.bFrameForward = !1, n.iGlobalBaseTime = 0, this.aWndList[t].iCurentOSDTime = -1, n.isFlv && n.oMSE ? (n.oMSE.destroy && n.oMSE.destroy(), n.oMSE = null, n.isFlv = !1, n.iMode = 0, n._receivedLength = 0, this.oJSPlugin.find("video.play-window").eq(t).get(0).poster = "") : n.oPlayCtrl && ("1" === this._decoderVersion ? n.oPlayCtrl.PlayM4_Destroy() : (this._supportInfo.webGL2 && n.oPlayCtrl.PlayM4_SetAntialias(0), n.oPlayCtrl.PlayM4_Stop(), i = C.findIndex(function (e) {
|
||
return e.port === n.oPlayCtrl.iPort
|
||
}), C.splice(i, 1), n.AdditionDataCB = null), n.oPlayCtrl = null, n.bLoad = !1);
|
||
case 18:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, this, [[2, 7]])
|
||
})), function (e) {
|
||
return D.apply(this, arguments)
|
||
})
|
||
}, {
|
||
key: "_onParsedData", value: function (e, t, n) {
|
||
switch (t) {
|
||
case 1:
|
||
this.aWndList[n].szStorageUUID && this.oStorageManager.inputData(this.aWndList[n].szStorageUUID, e);
|
||
break;
|
||
case 2:
|
||
var i;
|
||
this.aWndList[n]._osdtimeInfo = e, 0 === this.aWndList[n]._osdtimeInfo.globalTime ? this.aWndList[n].iCurentOSDTime = this.aWndList[n]._osdtimeInfo.flvduration + this.aWndList[n].iGlobalBaseTime : (i = "ios" === this._browserInfo._system || f.oTool.isEdge() ? "/" : " ", i = Date.parse(this.aWndList[n]._osdtimeInfo.globalTime.replace(/-/g, i)), this.aWndList[n].iCurentOSDTime = new Date(i).getTime());
|
||
break;
|
||
case 3:
|
||
this.aWndList[n]._videoInfo = e;
|
||
break;
|
||
case 4:
|
||
break;
|
||
case 5:
|
||
this.aWndList[n].szFlvhead = e.slice(0, e.byteLength - 4);
|
||
break;
|
||
case 11:
|
||
this.aWndList[n].bPlay && this.aWndList[n].bFirstFrame && this._streamReset(n)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_captureAudio", value: function (e, t, b, w, n) {
|
||
var i, D = this, r = window.navigator, T = new (window.AudioContext || window.webkitAudioContext);
|
||
new m.default((i = (0, v.default)(y.default.mark(function e(k, t) {
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
void 0 === r.mediaDevices && (r.mediaDevices = {}), void 0 === r.mediaDevices.getUserMedia && (r.mediaDevices.getUserMedia = function (e) {
|
||
if (!(r.getUserMedia || r.webkitGetUserMedia || r.mozGetUserMedia || r.msGetUserMedia)) return m.default.reject(new Error("getUserMedia is not implemented in this browser"))
|
||
}), r.mediaDevices.getUserMedia({audio: !0}).then(function (g) {
|
||
if (!D.bTalkLoaded) return g.getTracks().forEach(function (e) {
|
||
e.stop()
|
||
}), k();
|
||
var M = T.createMediaStreamSource(g), e = M.context,
|
||
L = e.createScriptProcessor(512, 1, 1), S = [];
|
||
L.onaudioprocess = function (e) {
|
||
if (!D.bTalkLoaded && !D._audionodeClose) return D._audionodeClose = !0, M.disconnect(L), L.disconnect(T.destination), g.getTracks().forEach(function (e) {
|
||
e.stop()
|
||
}), k();
|
||
for (var t = e.inputBuffer.getChannelData(0), n = 48e3 / b, i = t.length / n, r = new window.Float32Array(i), a = 0, s = 0; a < i;) r[a] = t[s], s += n, a++;
|
||
var e = r.length, o = null;
|
||
if (16 === w) for (var u = new window.ArrayBuffer(2 * e), o = new window.DataView(u), d = 0, l = 0; l < r.length; l++, d += 2) {
|
||
var h = Math.max(-1, Math.min(1, r[l]));
|
||
o.setInt16(d, h < 0 ? 32768 * h : 32767 * h, !0)
|
||
} else if (8 === w) for (var u = new window.ArrayBuffer(e), c = (o = new window.DataView(u), 0), _ = 0; _ < r.length; _++, c++) {
|
||
var f = Math.max(-1, Math.min(1, r[_])), f = f < 0 ? 32768 * f : 32767 * f,
|
||
f = parseInt(255 / (65535 / (32768 + f)), 10);
|
||
o.setInt8(c, f, !0)
|
||
}
|
||
if (D.bTalkLoaded && null !== o.buffer) for (var m = new Uint8Array(o.buffer), p = S.length, y = 0, v = m.byteLength; y < v; y++) S[p++] = m[y], 640 === S.length && (D.bTalkLoaded && D.oTalkPlayCtrl.Talk_InputAudEncodeData(new Uint8Array(S), 640), p = S.length = 0)
|
||
}, M.connect(L), L.connect(e.destination)
|
||
}, function (e) {
|
||
return D.oEventCallback.pluginErrorHandler(0, L.ERR_TALK_GETUSERMEDIA_UNDEFINE), D._log.E(L.ERR_TALK_GETUSERMEDIA_UNDEFINE + ": 采集音频接口失败", e), D.JS_StopTalk(), t(L.ERR_TALK_GETUSERMEDIA_UNDEFINE)
|
||
});
|
||
case 3:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, D)
|
||
})), function (e, t) {
|
||
return i.apply(this, arguments)
|
||
}))
|
||
}
|
||
}, {
|
||
key: "_loadTalk", value: function (a) {
|
||
var s = this, o = void 0, u = void 0, d = void 0, l = void 0, h = void 0, c = "", _ = "", f = "";
|
||
return new m.default(function (t, i) {
|
||
var e, n, r;
|
||
c = -1 !== a.search("wss://") ? (e = a.indexOf("/proxy/") + 7, n = a.indexOf("/", e), _ = a.substring(e, n), a.replace("wss:", "ws:").replace(_, "").replace("/proxy/", "")) : a, s.oStreamClient.openStream(a, {
|
||
playURL: c,
|
||
proxy: _,
|
||
mode: "media"
|
||
}, (r = (0, v.default)(y.default.mark(function e(t) {
|
||
var n;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if (!t.bHead) {
|
||
e.next = 16;
|
||
break
|
||
}
|
||
o = t.oParams.iAudioType, u = t.oParams.iAudioBitRate, d = t.oParams.iAudioSamplingRate, l = t.oParams.iAudioBitWidth, h = t.oParams.iChannel, 6 < o && (s.oEventCallback.pluginErrorHandler(0, L.ERR_TALK_UNSUPPORT_AUDIOTYPE), s._log.E(L.ERR_TALK_UNSUPPORT_AUDIOTYPE + ": 不支持该音频格式"), s.JS_StopTalk(), i(L.ERR_TALK_UNSUPPORT_AUDIOTYPE)), s.oTalkPlayCtrl.Talk_CreateAudEncode(o), s.oTalkPlayCtrl.Talk_SetAudEncodeParam(d, h, u, l), s.oTalkPlayCtrl.Talk_RegisterAudEncodeCB(function (e) {
|
||
s.oStreamClient.transmission(f, e)
|
||
}), s.oTalkPlayCtrl.Talk_CreateAuDecode(), s.oTalkPlayCtrl.Talk_SetAudDecodeParam(d, h, u, l, o), s.oTalkPlayCtrl.Talk_OpenStreamDecodeData(), 1 !== s.oTalkPlayCtrl.Talk_GetLastError() && (n = L.ERR_TALK + s.oTalkPlayCtrl.Talk_GetLastError().toString(), s._log.E(n + ": 对讲库初始化失败", n), s.oEventCallback.pluginErrorHandler(0, n), s.JS_StopTalk(), i(n)), e.next = 19;
|
||
break;
|
||
case 16:
|
||
if (t.buf.byteLength < 10) return e.abrupt("return");
|
||
e.next = 18;
|
||
break;
|
||
case 18:
|
||
s.oTalkPlayCtrl && s.oTalkPlayCtrl.Talk_InputAudDecodeData(t.buf, t.buf.byteLength);
|
||
case 19:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, s)
|
||
})), function (e) {
|
||
return r.apply(this, arguments)
|
||
}), function (e) {
|
||
if (s.bTalkLoaded) 1e3 === e.code || 1005 === e.code ? (s._log.E(L.ERR_STREAM_CONNECT_CLOSED + ": 送流异常,被后端关闭连接"), s.oEventCallback.pluginErrorHandler(0, L.ERR_STREAM_CONNECT_CLOSED, e)) : (s._log.E(L.ERR_STREAM_INTERRUPT + ": 流中断"), s.oEventCallback.pluginErrorHandler(0, L.ERR_STREAM_INTERRUPT, e)), s.szTalkStreamId = "", s.JS_StopTalk(); else {
|
||
if (1e3 === e.code || 1005 === e.code) return t();
|
||
s.szTalkStreamId ? (s.oEventCallback.pluginErrorHandler(0, L.ERR_COM_RECV_STREAM_TIMEOUT, e), s.szTalkStreamId = "", i(L.ERR_COM_RECV_STREAM_TIMEOUT)) : 1006 === e.code && -1 !== c.search("wss://") ? (s.oEventCallback.pluginErrorHandler(0, L.ERR_STREAM_WSS_ERROR, e), i(L.ERR_STREAM_WSS_ERROR)) : (s.oEventCallback.pluginErrorHandler(0, L.ERR_STREAM_WS_ERROR, e), i(L.ERR_STREAM_WS_ERROR))
|
||
}
|
||
}).then(function (e) {
|
||
s.szTalkStreamId = e, f = e, s.oStreamClient.startPlay(e, "", "", "startTalk").then(function () {
|
||
s._captureAudio(o, u, d, l, h), t()
|
||
}, function (e) {
|
||
e = "0x0" + e.errorCode.toString(16);
|
||
s._log.E(e + ": 取流失败,详情根据错误码在运管后台进行查询."), s.oEventCallback.pluginErrorHandler(0, e), i(e)
|
||
})
|
||
}, function (e) {
|
||
s._log.E(L.ERR_STREAM_INTERRUPT + ": 对讲通道异常中断."), s.oEventCallback.pluginErrorHandler(0, L.ERR_STREAM_INTERRUPT, e), s.JS_StopTalk()
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_StartTalk", value: function (r) {
|
||
var n, a = this;
|
||
return this._audionodeClose = !1, new m.default((n = (0, v.default)(y.default.mark(function e(n, t) {
|
||
var i;
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if ("string" != typeof r || -1 === r.search("wss://") && -1 === r.search("ws://")) return e.abrupt("return", t(L.ERR_COM_URL_ERROR));
|
||
e.next = 2;
|
||
break;
|
||
case 2:
|
||
i = "", i = "2" === a._decoderVersion ? a.options.szBasePath + "talkW/AudioInterCom.js" : a.options.szBasePath + "talk/AudioInterCom.js", null === a.oTalkPlayCtrl ? a.oTalkPlayCtrl = new o.JSTalkCtrl(i, function (e) {
|
||
var t = e.cmd;
|
||
e.status, e.errorCode;
|
||
"loaded" === t && (a.bTalkLoaded = !0, a._loadTalk(r), console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c oTalkPlayCtrl load end code", "color: blue", "color: black"), n())
|
||
}) : a.JS_StopTalk().then(function () {
|
||
a.oTalkPlayCtrl = new o.JSTalkCtrl(i, function (e) {
|
||
var t = e.cmd;
|
||
e.status, e.errorCode;
|
||
"loaded" === t && (a._loadTalk(r), console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c oTalkPlayCtrl load end code", "color: blue", "color: black"), n())
|
||
})
|
||
});
|
||
case 5:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, a)
|
||
})), function (e, t) {
|
||
return n.apply(this, arguments)
|
||
}))
|
||
}
|
||
}, {
|
||
key: "JS_StopTalk", value: function () {
|
||
var n = this;
|
||
return new m.default(function (e, t) {
|
||
n.bTalkLoaded = !1, n.szTalkStreamId && (n.oStreamClient.stop(n.szTalkStreamId), n.szTalkStreamId = ""), n.oTalkPlayCtrl && (n.oTalkPlayCtrl.Talk_DestroyAudEncode(), n.oTalkPlayCtrl.Talk_DestroyAudDecode(), n.oTalkPlayCtrl = null, e())
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_TalkSetVolume", value: function (n) {
|
||
var i = this;
|
||
return new m.default(function (e, t) {
|
||
i.oTalkPlayCtrl && 0 === i.oTalkPlayCtrl.Talk_SetVolume(n / 100) ? t(i.oTalkPlayCtrl.Talk_GetLastError() + L.ERR_TALK) : e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_TalkGetVolume", value: function () {
|
||
var e = this;
|
||
return new m.default(function (t) {
|
||
e.oTalkPlayCtrl && e.oTalkPlayCtrl.Talk_GetVolume(function (e) {
|
||
e = Math.round(100 * e);
|
||
t(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetTalkLogFlag", value: function (t) {
|
||
var n = this;
|
||
return new m.default(function (e) {
|
||
n.oTalkPlayCtrl && n.oTalkPlayCtrl.Talk_SetTalkLogFlag(t), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetVideoInfo", value: function () {
|
||
var i = this, r = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (e, t) {
|
||
(r < 0 || r > i.iMaxWndNum - 1 || "number" != typeof r) && (r = i.iCurrentWndIndex);
|
||
var n = i._checkPlay(r);
|
||
0 !== n && t(n), e(i.aWndList[r]._videoInfo)
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetConnectTimeOut", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, r = arguments[1];
|
||
return new m.default(function (e, t) {
|
||
(i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), n.oStreamClient.setTimeOut(r).then(function () {
|
||
e()
|
||
}, function (e) {
|
||
t(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetAdditionDataCB", value: function () {
|
||
var n = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, i = this, r = arguments[1],
|
||
a = arguments[2];
|
||
return new m.default(function (e, t) {
|
||
(n < 0 || n > i.iMaxWndNum - 1 || "number" != typeof n) && (n = i.iCurrentWndIndex), i.aWndList[n].oPlayCtrl.PlayM4_SetAdditionDataCallBack(r, 1), i.aWndList[n].AdditionDataCB = a, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetStreamCacheBuf", value: function () {
|
||
var n = this, i = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, r = arguments[1];
|
||
return new m.default(function (e, t) {
|
||
(i < 0 || i > n.iMaxWndNum - 1 || "number" != typeof i) && (i = n.iCurrentWndIndex), (r < 0 || 5242880 < r) && (r = 5242880, n._log.E(L.ERR_STREAM_BUFER_ERROR + ": JS_SetStreamCacheBuf size invaild,please set 0-5*1024*1024."), t(L.ERR_STREAM_BUFER_ERROR)), n.aWndList[i].szBufferSize = r, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_SetTraceId", value: function () {
|
||
var t = this, n = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1, i = arguments[1];
|
||
return new m.default(function (e) {
|
||
(n < 0 || n > t.iMaxWndNum - 1 || "number" != typeof n) && (n = t.iCurrentWndIndex), t.aWndList[n].bopenTraceId = i, e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "JS_GetTraceId", value: function () {
|
||
var t = this, n = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : -1;
|
||
return new m.default(function (e) {
|
||
(n < 0 || n > t.iMaxWndNum - 1 || "number" != typeof n) && (n = t.iCurrentWndIndex), e(t.aWndList[n].szTraceId)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_support", value: function () {
|
||
var e = !!window.MediaSource, t = !!window.WebGLRenderingContext, n = !!window.WebGL2RenderingContext,
|
||
i = !!window.SharedArrayBuffer, r = !!window.OffscreenCanvas,
|
||
a = !("windows" === this._browserInfo.system && "chrome" === this._browserInfo.supporter && parseInt(this._browserInfo.supporterVersion.split(".").shift()) < 80),
|
||
s = "android" !== this._browserInfo.system && "ios" !== this._browserInfo.system;
|
||
return {
|
||
MSE: e,
|
||
webGL1: t,
|
||
webGL2: n,
|
||
SharedArrayBuffer: i,
|
||
OffscreenCanvas: r,
|
||
"decoder1.0": t,
|
||
"decoder2.0": t && i && r && a && s
|
||
}
|
||
}
|
||
}, {
|
||
key: "_decoder2Loaded", value: function () {
|
||
return new m.default(function (e, t) {
|
||
var n = 0, i = window.setInterval(function () {
|
||
4e3 <= n && (clearInterval(i), t(L.ERR_COM_LOAD_JSDECODER_ERROR)), P && (clearInterval(i), console.log("clearInterval"), e(1)), n += 100
|
||
}, 100)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_calculateRealtimeBitrate", value: function (e) {
|
||
this.aWndList[e]._bpsInfo && (this.aWndList[e]._bpsInfo.time_gap_factor < 1 && (this._bpsInfo.time_gap_factor = 1), 0 !== this.aWndList[e]._bpsInfo.lastVideoBytes && (this.aWndList[e]._bpsInfo.bps_video = 8 * this.aWndList[e]._bpsInfo.lastVideoBytes / 1024 / this.aWndList[e]._bpsInfo.time_gap_factor, this.aWndList[e]._bpsInfo.lastVideoBytes = 0), this.aWndList[e]._videoInfo.bitRate = this.aWndList[e]._bpsInfo.bps_video)
|
||
}
|
||
}, {
|
||
key: "_loadScript", value: function (n) {
|
||
return new m.default(function (e) {
|
||
var t = document.createElement("script");
|
||
t.type = "text/javascript", t.src = n, t.onload = function () {
|
||
e()
|
||
}, document.body.appendChild(t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_playerlocalFile", value: function (e, t) {
|
||
var n = this.aWndList[e];
|
||
n.iMode = 1, n.isFlv = !0, n.bPlay || this._createFlvPlayer(e), n.oMSE.onLoaderChunkArrival(t, n._receivedLength), n._receivedLength += t.byteLength
|
||
}
|
||
}, {
|
||
key: "uuid2", value: function (e, t) {
|
||
var n, i, r = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""), a = [];
|
||
if (t = t || r.length, e) for (n = 0; n < e; n++) a[n] = r[0 | Math.random() * t]; else for (a[8] = a[13] = a[18] = a[23] = "-", a[14] = "4", n = 0; n < 36; n++) a[n] || (i = 0 | 16 * Math.random(), a[n] = r[19 === n ? 3 & i | 8 : i]);
|
||
return a.join("")
|
||
}
|
||
}, {
|
||
key: "currentWindowIndex", get: function () {
|
||
return this.iCurrentWndIndex
|
||
}
|
||
}, {
|
||
key: "fileSysSwitch", set: function (e) {
|
||
if ("boolean" != typeof e) return console.error("fileSysSwitch set should get a Boolean");
|
||
this._fileSysSwitch = e
|
||
}
|
||
}]), R);
|
||
|
||
function R(e) {
|
||
var t = this, n = ((0, a.default)(this, R), this.TAG = "H5player", this.options = g.default.extend({
|
||
szId: "playWnd",
|
||
iWidth: 400,
|
||
iHeight: 300,
|
||
iMaxSplit: 1,
|
||
iCurrentSplit: 1,
|
||
szBasePath: "./",
|
||
bSupporDoubleClickFull: !0,
|
||
openDebug: !0,
|
||
mseWorkerEnable: !1
|
||
}, e), {borderWidth: 1, border: "#343434", borderSelect: "#FFCC00", background: "#000"}),
|
||
n = g.default.extend(n, e.oStyle);
|
||
this.options.oStyle = n, this._log = new k.default(this), this.e = {
|
||
resize: this._eventHandlerResize.bind(this),
|
||
fullscreenchange: this._eventHandlerFullscreenchange.bind(this),
|
||
visibilitychange: this._eventHandlerVisibilitychange.bind(this)
|
||
}, this.options.iCurrentSplit > this.options.iMaxSplit && (this.options.iCurrentSplit = this.options.iMaxSplit), this.iCurrentPlayRate = 1, this.iCurrentSoundWnd = -1, this.iMaxWndNum = this.options.iMaxSplit * this.options.iMaxSplit, this.bPluginFull = !1, this.oVideoWindow = null, this.fullscreenElement = null, this.iCurrentWndIndex = -1, this.fDrawCallback = null, this.szPluginVersion = w.version, this.isBrowserVisible = !0, this._decoderVersion = "1", "/" !== this.options.szBasePath.charAt(this.options.szBasePath.length - 1) && (this.options.szBasePath = this.options.szBasePath + "/"), this.oStorageManager = new l.StorageManager(this.options.szBasePath + "transform/"), this.oStreamClient = new s.StreamClient(this.options), this.oJSPlugin = (0, g.default)("#" + this.options.szId), this.bcloseAntialias = !1, this._listenBrowserVisibility(), this._createWindows(), this.aWndList = [];
|
||
for (var i, r = 0; r < this.iMaxWndNum; r++) this.aWndList[r] = {}, this.aWndList[r].bPlay = !1, this.aWndList[r].bLoad = !1, this.aWndList[r].stashArray = [], this.aWndList[r].stashFeeding = !1, this.aWndList[r].szPlayType = "", this.aWndList[r].szStorageUUID = "", this.aWndList[r].szStreamUUID = "", this.aWndList[r].aHead = [], this.aWndList[r].isGB = !1, this.aWndList[r].isHVAGHead = !1, this.aWndList[r].aHVAGHead = [], this.aWndList[r].iRate = 1, this.aWndList[r].bEZoom = !1, this.aWndList[r].b3DZoom = !1, this.aWndList[r].szSecretKey = "", this.aWndList[r].bFrameForward = !1, this.aWndList[r].aSamples = [], this.aWndList[r].iRevBufferTimes = 0, this.aWndList[r].nalPackage = [0, 0, 0, 1, 97], this.aWndList[r].iMode = 0, this.aWndList[r].iCurentOSDTime = -1, this.aWndList[r].oSdpInfo = {}, this.aWndList[r].iLastDuaration = -1, this.aWndList[r].iCurDuaration = -1, this.aWndList[r].iTimeInterval = -1, this.aWndList[r].isPause = !1, this.aWndList[r].MSEVolume = .5, this.aWndList[r].iBufferValue = 0, this.aWndList[r]._videoInfo = {
|
||
VideType: "H264",
|
||
audioType: "without",
|
||
width: 0,
|
||
height: 0,
|
||
frameRate: 25,
|
||
bitRate: 0,
|
||
systemFormt: "ps",
|
||
audioSampleRate: 0
|
||
}, this.aWndList[r].asyncLock = !1, this.aWndList[r].AdditionDataCB = null, this.aWndList[r].bFirstFrame = !1, this.aWndList[r].iDecodeType = 0, this.aWndList[r]._bpsCalculator = null, this.aWndList[r]._bpsInfo = {
|
||
lastVideoBytes: 0,
|
||
bps_video: 0,
|
||
data_updated_time: 0,
|
||
time_gap_factor: 1
|
||
}, this.aWndList[r]._emiter = new M.default, this.aWndList[r].bOpenSound = !1, this.aWndList[r].szFlvhead = "", this.aWndList[r]._resetFlvplayer = !1, this.aWndList[r]._osdtimeInfo = {
|
||
flvstartTime: 0,
|
||
globalTime: 0,
|
||
flvduration: 0
|
||
}, this.aWndList[r].szBufferSize = 0, this.aWndList[r].iGlobalBaseTime = 0, this.aWndList[r].mseDecoderAudio = !0, this.aWndList[r].szTraceId = "", this.aWndList[r].bopenTraceId = !1;
|
||
this.oTalkPlayCtrl = null, this.szTalkStreamId = "", this.bTalkLoaded = !1, this.szAudioStorageUUID = "", this.szEncodeAudioStorageUUID = "", this.szAudiorecvStorageUUID = "", this._audionodeClose = !1, this._browserInfo = new S.default, this._supportInfo = this._support(), console.log("H5player" + w.version + " Support: ", this._supportInfo, this._browserInfo), this._decoderVersion = this._supportInfo["decoder2.0"] ? "2" : "1", "2" !== this._decoderVersion || P || Y || (i = "chrome" === this._browserInfo.supporter && 90 < parseInt(this._browserInfo.supporterVersion.split(".").shift()) ? "3" : "2", e = this.options.szBasePath + "playctrl" + i + "/Decoder.js", Y = !0, this._loadScript(e).then((0, v.default)(y.default.mark(function e() {
|
||
return y.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
return Y = !1, e.next = 3, window.JSPlayerModule();
|
||
case 3:
|
||
P = e.sent, console.info("[debug] %c" + (0, _.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c JSDecoder" + i + " load end ", "color: blue", "color: black");
|
||
case 5:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, t)
|
||
})))), this.oDrawCanvas = new h.ESCanvas(this.options.szId + "_canvas_draw0"), this._initEvent(), this.oEventCallback.windowEventSelect(0), this._dealWndSelect(0)
|
||
}
|
||
|
||
n.version = w.version, t.JSPlugin = n
|
||
}, function (e, t, n) {
|
||
n(67), n(41), n(75), n(245), n(253), n(254), e.exports = n(3).Promise
|
||
}, function (e, t, n) {
|
||
var a = n(42), s = n(43);
|
||
e.exports = function (r) {
|
||
return function (e, t) {
|
||
var n, e = String(s(e)), t = a(t), i = e.length;
|
||
return t < 0 || i <= t ? r ? "" : void 0 : (n = e.charCodeAt(t)) < 55296 || 56319 < n || t + 1 === i || (i = e.charCodeAt(t + 1)) < 56320 || 57343 < i ? r ? e.charAt(t) : n : r ? e.slice(t, t + 2) : i - 56320 + (n - 55296 << 10) + 65536
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(46), r = n(28), a = n(36), s = {};
|
||
n(17)(s, n(7)("iterator"), function () {
|
||
return this
|
||
}), e.exports = function (e, t, n) {
|
||
e.prototype = i(s, {next: r(1, n)}), a(e, t + " Iterator")
|
||
}
|
||
}, function (e, t, n) {
|
||
var s = n(12), o = n(13), u = n(30);
|
||
e.exports = n(14) ? Object.defineProperties : function (e, t) {
|
||
o(e);
|
||
for (var n, i = u(t), r = i.length, a = 0; a < r;) s.f(e, n = i[a++], t[n]);
|
||
return e
|
||
}
|
||
}, function (e, t, n) {
|
||
var u = n(19), d = n(47), l = n(241);
|
||
e.exports = function (o) {
|
||
return function (e, t, n) {
|
||
var i, r = u(e), a = d(r.length), s = l(n, a);
|
||
if (o && t != t) {
|
||
for (; s < a;) if ((i = r[s++]) != i) return !0
|
||
} else for (; s < a; s++) if ((o || s in r) && r[s] === t) return o || s || 0;
|
||
return !o && -1
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(42), r = Math.max, a = Math.min;
|
||
e.exports = function (e, t) {
|
||
return (e = i(e)) < 0 ? r(e + t, 0) : a(e, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(243), r = n(244), a = n(29), s = n(19);
|
||
e.exports = n(68)(Array, "Array", function (e, t) {
|
||
this._t = s(e), this._i = 0, this._k = t
|
||
}, function () {
|
||
var e = this._t, t = this._k, n = this._i++;
|
||
return !e || n >= e.length ? (this._t = void 0, r(1)) : r(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]])
|
||
}, "values"), a.Arguments = a.Array, i("keys"), i("values"), i("entries")
|
||
}, function (e, t) {
|
||
e.exports = function () {
|
||
}
|
||
}, function (e, t) {
|
||
e.exports = function (e, t) {
|
||
return {value: t, done: !!e}
|
||
}
|
||
}, function (O, I, n) {
|
||
"use strict";
|
||
|
||
function i() {
|
||
}
|
||
|
||
var t, r, a, s, o = n(27), c = n(6), u = n(22), e = n(76), d = n(8), l = n(16), h = n(34), _ = n(246),
|
||
f = n(247), m = n(80), p = n(81).set, y = n(249)(), v = n(51), g = n(82), M = n(250), L = n(83),
|
||
S = "Promise", k = c.TypeError, b = c.process, w = b && b.versions, D = w && w.v8 || "", T = c[S],
|
||
E = "process" == e(b), Y = r = v.f, w = !!function () {
|
||
try {
|
||
var e = T.resolve(1), t = (e.constructor = {})[n(7)("species")] = function (e) {
|
||
e(i, i)
|
||
};
|
||
return (E || "function" == typeof PromiseRejectionEvent) && e.then(i) instanceof t && 0 !== D.indexOf("6.6") && -1 === M.indexOf("Chrome/66")
|
||
} catch (e) {
|
||
}
|
||
}(), P = function (e) {
|
||
var t;
|
||
return !(!l(e) || "function" != typeof (t = e.then)) && t
|
||
}, C = function (h, n) {
|
||
var i;
|
||
h._n || (h._n = !0, i = h._c, y(function () {
|
||
for (var r, d = h._v, l = 1 == h._s, e = 0, t = function (e) {
|
||
var t, n, i, r, a = l ? e.ok : e.fail, s = e.resolve, o = e.reject, u = e.domain;
|
||
try {
|
||
a ? (l || (2 == h._h && (r = h, p.call(c, function () {
|
||
var e;
|
||
E ? b.emit("rejectionHandled", r) : (e = c.onrejectionhandled) && e({
|
||
promise: r,
|
||
reason: r._v
|
||
})
|
||
})), h._h = 1), !0 === a ? t = d : (u && u.enter(), t = a(d), u && (u.exit(), i = !0)), t === e.promise ? o(k("Promise-chain cycle")) : (n = P(t)) ? n.call(t, s, o) : s(t)) : o(d)
|
||
} catch (e) {
|
||
u && !i && u.exit(), o(e)
|
||
}
|
||
}; i.length > e;) t(i[e++]);
|
||
h._c = [], h._n = !1, n && !h._h && (r = h, p.call(c, function () {
|
||
var e, t, n = r._v, i = R(r);
|
||
if (i && (e = g(function () {
|
||
E ? b.emit("unhandledRejection", n, r) : (t = c.onunhandledrejection) ? t({
|
||
promise: r,
|
||
reason: n
|
||
}) : (t = c.console) && t.error && t.error("Unhandled promise rejection", n)
|
||
}), r._h = E || R(r) ? 2 : 1), r._a = void 0, i && e.e) throw e.v
|
||
}))
|
||
}))
|
||
}, R = function (e) {
|
||
return 1 !== e._h && 0 === (e._a || e._c).length
|
||
}, A = function (e) {
|
||
var t = this;
|
||
t._d || (t._d = !0, (t = t._w || t)._v = e, t._s = 2, t._a || (t._a = t._c.slice()), C(t, !0))
|
||
}, x = function (e) {
|
||
var n, i = this;
|
||
if (!i._d) {
|
||
i._d = !0, i = i._w || i;
|
||
try {
|
||
if (i === e) throw k("Promise can't be resolved itself");
|
||
(n = P(e)) ? y(function () {
|
||
var t = {_w: i, _d: !1};
|
||
try {
|
||
n.call(e, u(x, t, 1), u(A, t, 1))
|
||
} catch (e) {
|
||
A.call(t, e)
|
||
}
|
||
}) : (i._v = e, i._s = 1, C(i, !1))
|
||
} catch (e) {
|
||
A.call({_w: i, _d: !1}, e)
|
||
}
|
||
}
|
||
};
|
||
w || (T = function (e) {
|
||
_(this, T, S, "_h"), h(e), t.call(this);
|
||
try {
|
||
e(u(x, this, 1), u(A, this, 1))
|
||
} catch (e) {
|
||
A.call(this, e)
|
||
}
|
||
}, (t = function (e) {
|
||
this._c = [], this._a = void 0, this._s = 0, this._d = !1, this._v = void 0, this._h = 0, this._n = !1
|
||
}).prototype = n(251)(T.prototype, {
|
||
then: function (e, t) {
|
||
var n = Y(m(this, T));
|
||
return n.ok = "function" != typeof e || e, n.fail = "function" == typeof t && t, n.domain = E ? b.domain : void 0, this._c.push(n), this._a && this._a.push(n), this._s && C(this, !1), n.promise
|
||
}, catch: function (e) {
|
||
return this.then(void 0, e)
|
||
}
|
||
}), a = function () {
|
||
var e = new t;
|
||
this.promise = e, this.resolve = u(x, e, 1), this.reject = u(A, e, 1)
|
||
}, v.f = Y = function (e) {
|
||
return e === T || e === s ? new a : r(e)
|
||
}), d(d.G + d.W + d.F * !w, {Promise: T}), n(36)(T, S), n(252)(S), s = n(3)[S], d(d.S + d.F * !w, S, {
|
||
reject: function (e) {
|
||
var t = Y(this);
|
||
return (0, t.reject)(e), t.promise
|
||
}
|
||
}), d(d.S + d.F * (o || !w), S, {
|
||
resolve: function (e) {
|
||
return L(o && this === s ? T : this, e)
|
||
}
|
||
}), d(d.S + d.F * !(w && n(84)(function (e) {
|
||
T.all(e).catch(i)
|
||
})), S, {
|
||
all: function (e) {
|
||
var s = this, t = Y(s), o = t.resolve, u = t.reject, n = g(function () {
|
||
var i = [], r = 0, a = 1;
|
||
f(e, !1, function (e) {
|
||
var t = r++, n = !1;
|
||
i.push(void 0), a++, s.resolve(e).then(function (e) {
|
||
n || (n = !0, i[t] = e, --a || o(i))
|
||
}, u)
|
||
}), --a || o(i)
|
||
});
|
||
return n.e && u(n.v), t.promise
|
||
}, race: function (e) {
|
||
var t = this, n = Y(t), i = n.reject, r = g(function () {
|
||
f(e, !1, function (e) {
|
||
t.resolve(e).then(n.resolve, i)
|
||
})
|
||
});
|
||
return r.e && i(r.v), n.promise
|
||
}
|
||
})
|
||
}, function (e, t) {
|
||
e.exports = function (e, t, n, i) {
|
||
if (!(e instanceof t) || void 0 !== i && i in e) throw TypeError(n + ": incorrect invocation!");
|
||
return e
|
||
}
|
||
}, function (e, t, n) {
|
||
var h = n(22), c = n(77), _ = n(78), f = n(13), m = n(47), p = n(79), y = {}, v = {};
|
||
(t = e.exports = function (e, t, n, i, r) {
|
||
var a, s, o, u, r = r ? function () {
|
||
return e
|
||
} : p(e), d = h(n, i, t ? 2 : 1), l = 0;
|
||
if ("function" != typeof r) throw TypeError(e + " is not iterable!");
|
||
if (_(r)) {
|
||
for (a = m(e.length); l < a; l++) if ((u = t ? d(f(s = e[l])[0], s[1]) : d(e[l])) === y || u === v) return u
|
||
} else for (o = r.call(e); !(s = o.next()).done;) if ((u = c(o, d, s.value, t)) === y || u === v) return u
|
||
}).BREAK = y, t.RETURN = v
|
||
}, function (e, t) {
|
||
e.exports = function (e, t, n) {
|
||
var i = void 0 === n;
|
||
switch (t.length) {
|
||
case 0:
|
||
return i ? e() : e.call(n);
|
||
case 1:
|
||
return i ? e(t[0]) : e.call(n, t[0]);
|
||
case 2:
|
||
return i ? e(t[0], t[1]) : e.call(n, t[0], t[1]);
|
||
case 3:
|
||
return i ? e(t[0], t[1], t[2]) : e.call(n, t[0], t[1], t[2]);
|
||
case 4:
|
||
return i ? e(t[0], t[1], t[2], t[3]) : e.call(n, t[0], t[1], t[2], t[3])
|
||
}
|
||
return e.apply(n, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
var o = n(6), u = n(81).set, d = o.MutationObserver || o.WebKitMutationObserver, l = o.process, h = o.Promise,
|
||
c = "process" == n(31)(l);
|
||
e.exports = function () {
|
||
function e() {
|
||
var e, t;
|
||
for (c && (e = l.domain) && e.exit(); n;) {
|
||
t = n.fn, n = n.next;
|
||
try {
|
||
t()
|
||
} catch (e) {
|
||
throw n ? r() : i = void 0, e
|
||
}
|
||
}
|
||
i = void 0, e && e.enter()
|
||
}
|
||
|
||
var n, i, t, r, a, s;
|
||
return r = c ? function () {
|
||
l.nextTick(e)
|
||
} : !d || o.navigator && o.navigator.standalone ? h && h.resolve ? (t = h.resolve(void 0), function () {
|
||
t.then(e)
|
||
}) : function () {
|
||
u.call(o, e)
|
||
} : (a = !0, s = document.createTextNode(""), new d(e).observe(s, {characterData: !0}), function () {
|
||
s.data = a = !a
|
||
}), function (e) {
|
||
e = {fn: e, next: void 0};
|
||
i && (i.next = e), n || (n = e, r()), i = e
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
n = n(6).navigator;
|
||
e.exports = n && n.userAgent || ""
|
||
}, function (e, t, n) {
|
||
var r = n(17);
|
||
e.exports = function (e, t, n) {
|
||
for (var i in t) n && e[i] ? e[i] = t[i] : r(e, i, t[i]);
|
||
return e
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(6), r = n(3), a = n(12), s = n(14), o = n(7)("species");
|
||
e.exports = function (e) {
|
||
e = ("function" == typeof r[e] ? r : i)[e];
|
||
s && e && !e[o] && a.f(e, o, {
|
||
configurable: !0, get: function () {
|
||
return this
|
||
}
|
||
})
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(8), r = n(3), a = n(6), s = n(80), o = n(83);
|
||
i(i.P + i.R, "Promise", {
|
||
finally: function (t) {
|
||
var n = s(this, r.Promise || a.Promise), e = "function" == typeof t;
|
||
return this.then(e ? function (e) {
|
||
return o(n, t()).then(function () {
|
||
return e
|
||
})
|
||
} : t, e ? function (e) {
|
||
return o(n, t()).then(function () {
|
||
throw e
|
||
})
|
||
} : t)
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(8), r = n(51), a = n(82);
|
||
i(i.S, "Promise", {
|
||
try: function (e) {
|
||
var t = r.f(this), e = a(e);
|
||
return (e.e ? t.reject : t.resolve)(e.v), t.promise
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
n(256), e.exports = n(3).Object.keys
|
||
}, function (e, t, n) {
|
||
var i = n(24), r = n(30);
|
||
n(52)("keys", function () {
|
||
return function (e) {
|
||
return r(i(e))
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
var i = function () {
|
||
return this
|
||
}() || Function("return this")(),
|
||
r = i.regeneratorRuntime && 0 <= Object.getOwnPropertyNames(i).indexOf("regeneratorRuntime"),
|
||
a = r && i.regeneratorRuntime;
|
||
if (i.regeneratorRuntime = void 0, e.exports = n(258), r) i.regeneratorRuntime = a; else try {
|
||
delete i.regeneratorRuntime
|
||
} catch (e) {
|
||
i.regeneratorRuntime = void 0
|
||
}
|
||
}, function (T, e) {
|
||
!function (e) {
|
||
"use strict";
|
||
var u, d, l, h, c, _, t, n = Object.prototype, f = n.hasOwnProperty,
|
||
i = "function" == typeof Symbol ? Symbol : {}, r = i.iterator || "@@iterator",
|
||
a = i.asyncIterator || "@@asyncIterator", s = i.toStringTag || "@@toStringTag",
|
||
i = "object" == typeof T, o = e.regeneratorRuntime;
|
||
|
||
function m(e, t, n, i) {
|
||
var r, a, s, o, t = t && t.prototype instanceof y ? t : y, t = Object.create(t.prototype),
|
||
i = new b(i || []);
|
||
return t._invoke = (r = e, a = n, s = i, o = d, function (e, t) {
|
||
if (o === h) throw new Error("Generator is already running");
|
||
if (o === c) {
|
||
if ("throw" === e) throw t;
|
||
return D()
|
||
}
|
||
for (s.method = e, s.arg = t; ;) {
|
||
var n = s.delegate;
|
||
if (n) {
|
||
n = function e(t, n) {
|
||
var i = t.iterator[n.method];
|
||
if (i === u) {
|
||
if (n.delegate = null, "throw" === n.method) {
|
||
if (t.iterator.return && (n.method = "return", n.arg = u, e(t, n), "throw" === n.method)) return _;
|
||
n.method = "throw", n.arg = new TypeError("The iterator does not provide a 'throw' method")
|
||
}
|
||
return _
|
||
}
|
||
i = p(i, t.iterator, n.arg);
|
||
if ("throw" === i.type) return n.method = "throw", n.arg = i.arg, n.delegate = null, _;
|
||
i = i.arg;
|
||
if (!i) return n.method = "throw", n.arg = new TypeError("iterator result is not an object"), n.delegate = null, _;
|
||
{
|
||
if (!i.done) return i;
|
||
n[t.resultName] = i.value, n.next = t.nextLoc, "return" !== n.method && (n.method = "next", n.arg = u)
|
||
}
|
||
n.delegate = null;
|
||
return _
|
||
}(n, s);
|
||
if (n) {
|
||
if (n === _) continue;
|
||
return n
|
||
}
|
||
}
|
||
if ("next" === s.method) s.sent = s._sent = s.arg; else if ("throw" === s.method) {
|
||
if (o === d) throw o = c, s.arg;
|
||
s.dispatchException(s.arg)
|
||
} else "return" === s.method && s.abrupt("return", s.arg);
|
||
o = h;
|
||
n = p(r, a, s);
|
||
if ("normal" === n.type) {
|
||
if (o = s.done ? c : l, n.arg !== _) return {value: n.arg, done: s.done}
|
||
} else "throw" === n.type && (o = c, s.method = "throw", s.arg = n.arg)
|
||
}
|
||
}), t
|
||
}
|
||
|
||
function p(e, t, n) {
|
||
try {
|
||
return {type: "normal", arg: e.call(t, n)}
|
||
} catch (e) {
|
||
return {type: "throw", arg: e}
|
||
}
|
||
}
|
||
|
||
function y() {
|
||
}
|
||
|
||
function v() {
|
||
}
|
||
|
||
function g() {
|
||
}
|
||
|
||
function M(e) {
|
||
["next", "throw", "return"].forEach(function (t) {
|
||
e[t] = function (e) {
|
||
return this._invoke(t, e)
|
||
}
|
||
})
|
||
}
|
||
|
||
function L(s) {
|
||
var t;
|
||
this._invoke = function (n, i) {
|
||
function e() {
|
||
return new Promise(function (e, t) {
|
||
!function t(e, n, i, r) {
|
||
e = p(s[e], s, n);
|
||
if ("throw" === e.type) r(e.arg); else {
|
||
var a = e.arg;
|
||
if ((n = a.value) && "object" == typeof n && f.call(n, "__await")) return Promise.resolve(n.__await).then(function (e) {
|
||
t("next", e, i, r)
|
||
}, function (e) {
|
||
t("throw", e, i, r)
|
||
});
|
||
Promise.resolve(n).then(function (e) {
|
||
a.value = e, i(a)
|
||
}, r)
|
||
}
|
||
}(n, i, e, t)
|
||
})
|
||
}
|
||
|
||
return t = t ? t.then(e, e) : e()
|
||
}
|
||
}
|
||
|
||
function S(e) {
|
||
var t = {tryLoc: e[0]};
|
||
1 in e && (t.catchLoc = e[1]), 2 in e && (t.finallyLoc = e[2], t.afterLoc = e[3]), this.tryEntries.push(t)
|
||
}
|
||
|
||
function k(e) {
|
||
var t = e.completion || {};
|
||
t.type = "normal", delete t.arg, e.completion = t
|
||
}
|
||
|
||
function b(e) {
|
||
this.tryEntries = [{tryLoc: "root"}], e.forEach(S, this), this.reset(!0)
|
||
}
|
||
|
||
function w(t) {
|
||
if (t) {
|
||
var n, e = t[r];
|
||
if (e) return e.call(t);
|
||
if ("function" == typeof t.next) return t;
|
||
if (!isNaN(t.length)) return n = -1, (e = function e() {
|
||
for (; ++n < t.length;) if (f.call(t, n)) return e.value = t[n], e.done = !1, e;
|
||
return e.value = u, e.done = !0, e
|
||
}).next = e
|
||
}
|
||
return {next: D}
|
||
}
|
||
|
||
function D() {
|
||
return {value: u, done: !0}
|
||
}
|
||
|
||
o ? i && (T.exports = o) : ((o = e.regeneratorRuntime = i ? T.exports : {}).wrap = m, d = "suspendedStart", l = "suspendedYield", h = "executing", c = "completed", _ = {}, (e = {})[r] = function () {
|
||
return this
|
||
}, i = (i = Object.getPrototypeOf) && i(i(w([]))), i && i !== n && f.call(i, r) && (e = i), t = g.prototype = y.prototype = Object.create(e), (v.prototype = t.constructor = g).constructor = v, g[s] = v.displayName = "GeneratorFunction", o.isGeneratorFunction = function (e) {
|
||
e = "function" == typeof e && e.constructor;
|
||
return !!e && (e === v || "GeneratorFunction" === (e.displayName || e.name))
|
||
}, o.mark = function (e) {
|
||
return Object.setPrototypeOf ? Object.setPrototypeOf(e, g) : (e.__proto__ = g, s in e || (e[s] = "GeneratorFunction")), e.prototype = Object.create(t), e
|
||
}, o.awrap = function (e) {
|
||
return {__await: e}
|
||
}, M(L.prototype), L.prototype[a] = function () {
|
||
return this
|
||
}, o.AsyncIterator = L, o.async = function (e, t, n, i) {
|
||
var r = new L(m(e, t, n, i));
|
||
return o.isGeneratorFunction(t) ? r : r.next().then(function (e) {
|
||
return e.done ? e.value : r.next()
|
||
})
|
||
}, M(t), t[s] = "Generator", t[r] = function () {
|
||
return this
|
||
}, t.toString = function () {
|
||
return "[object Generator]"
|
||
}, o.keys = function (n) {
|
||
var e, i = [];
|
||
for (e in n) i.push(e);
|
||
return i.reverse(), function e() {
|
||
for (; i.length;) {
|
||
var t = i.pop();
|
||
if (t in n) return e.value = t, e.done = !1, e
|
||
}
|
||
return e.done = !0, e
|
||
}
|
||
}, o.values = w, b.prototype = {
|
||
constructor: b, reset: function (e) {
|
||
if (this.prev = 0, this.next = 0, this.sent = this._sent = u, this.done = !1, this.delegate = null, this.method = "next", this.arg = u, this.tryEntries.forEach(k), !e) for (var t in this) "t" === t.charAt(0) && f.call(this, t) && !isNaN(+t.slice(1)) && (this[t] = u)
|
||
}, stop: function () {
|
||
this.done = !0;
|
||
var e = this.tryEntries[0].completion;
|
||
if ("throw" === e.type) throw e.arg;
|
||
return this.rval
|
||
}, dispatchException: function (n) {
|
||
if (this.done) throw n;
|
||
var i = this;
|
||
|
||
function e(e, t) {
|
||
return a.type = "throw", a.arg = n, i.next = e, t && (i.method = "next", i.arg = u), !!t
|
||
}
|
||
|
||
for (var t = this.tryEntries.length - 1; 0 <= t; --t) {
|
||
var r = this.tryEntries[t], a = r.completion;
|
||
if ("root" === r.tryLoc) return e("end");
|
||
if (r.tryLoc <= this.prev) {
|
||
var s = f.call(r, "catchLoc"), o = f.call(r, "finallyLoc");
|
||
if (s && o) {
|
||
if (this.prev < r.catchLoc) return e(r.catchLoc, !0);
|
||
if (this.prev < r.finallyLoc) return e(r.finallyLoc)
|
||
} else if (s) {
|
||
if (this.prev < r.catchLoc) return e(r.catchLoc, !0)
|
||
} else {
|
||
if (!o) throw new Error("try statement without catch or finally");
|
||
if (this.prev < r.finallyLoc) return e(r.finallyLoc)
|
||
}
|
||
}
|
||
}
|
||
}, abrupt: function (e, t) {
|
||
for (var n = this.tryEntries.length - 1; 0 <= n; --n) {
|
||
var i = this.tryEntries[n];
|
||
if (i.tryLoc <= this.prev && f.call(i, "finallyLoc") && this.prev < i.finallyLoc) {
|
||
var r = i;
|
||
break
|
||
}
|
||
}
|
||
var a = (r = r && ("break" === e || "continue" === e) && r.tryLoc <= t && t <= r.finallyLoc ? null : r) ? r.completion : {};
|
||
return a.type = e, a.arg = t, r ? (this.method = "next", this.next = r.finallyLoc, _) : this.complete(a)
|
||
}, complete: function (e, t) {
|
||
if ("throw" === e.type) throw e.arg;
|
||
return "break" === e.type || "continue" === e.type ? this.next = e.arg : "return" === e.type ? (this.rval = this.arg = e.arg, this.method = "return", this.next = "end") : "normal" === e.type && t && (this.next = t), _
|
||
}, finish: function (e) {
|
||
for (var t = this.tryEntries.length - 1; 0 <= t; --t) {
|
||
var n = this.tryEntries[t];
|
||
if (n.finallyLoc === e) return this.complete(n.completion, n.afterLoc), k(n), _
|
||
}
|
||
}, catch: function (e) {
|
||
for (var t = this.tryEntries.length - 1; 0 <= t; --t) {
|
||
var n, i, r = this.tryEntries[t];
|
||
if (r.tryLoc === e) return "throw" === (n = r.completion).type && (i = n.arg, k(r)), i
|
||
}
|
||
throw new Error("illegal catch attempt")
|
||
}, delegateYield: function (e, t, n) {
|
||
return this.delegate = {
|
||
iterator: w(e),
|
||
resultName: t,
|
||
nextLoc: n
|
||
}, "next" === this.method && (this.arg = u), _
|
||
}
|
||
})
|
||
}(function () {
|
||
return this
|
||
}() || Function("return this")())
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(260), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(261);
|
||
var i = n(3).Object;
|
||
e.exports = function (e, t, n) {
|
||
return i.defineProperty(e, t, n)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(8);
|
||
i(i.S + i.F * !n(14), "Object", {defineProperty: n(12).f})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.StreamClient = void 0;
|
||
var d = a(n(11)), i = a(n(1)), r = a(n(2)), s = a(n(87)), o = n(265), l = n(266), h = n(268), c = n(282),
|
||
_ = a(n(10)), f = function (e) {
|
||
{
|
||
if (e && e.__esModule) return e;
|
||
var t = {};
|
||
if (null != e) for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
|
||
return t.default = e, t
|
||
}
|
||
}(n(61)), m = a(n(91));
|
||
|
||
function a(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = function () {
|
||
var u = new o.DirectDeviceCustom, L = new l.DirectDevice, S = new h.LiveMedia, k = new c.LocalService,
|
||
a = 6e3;
|
||
|
||
function t(e) {
|
||
var r = this;
|
||
(0, i.default)(this, t), this.TAG = "StreamClient", this._config = e, this._log = new m.default(this), this._emiter = new _.default, this.szProtocolVersion = "0.1", this.iCiphersuites = 0, this.aWebsocket = [], this.getIndex = function (e) {
|
||
for (var t = -1, n = 0, i = r.aWebsocket.length; n < i; n++) if (r.aWebsocket[n].id === e) {
|
||
t = n;
|
||
break
|
||
}
|
||
return t
|
||
}, this.autoCloseTime = 1e4, this.heartbeatTime = 2e3
|
||
}
|
||
|
||
return (0, r.default)(t, [{
|
||
key: "openStream", value: function (e, l, h, n) {
|
||
var c = this, _ = !1, t = !1, e = (-1 < e.indexOf("[") && (t = !0), e.split("://")), i = e[0],
|
||
f = "", m = 7681, p = 1, y = 0, v = !1, r = !1,
|
||
y = t ? (f = e[1].split("]:")[0] + "]", m = Math.floor(e[1].split("]:")[1].split("/")[0]), p = Math.floor(e[1].split("]:")[1].split("/")[1] / 100), Math.floor(e[1].split("]:")[1].split("/")[1] % 100) - 1) : (f = e[1].split(":")[0], m = Math.floor(e[1].split(":")[1].split("/")[0]), p = Math.floor(e[1].split(":")[1].split("/")[1] / 100), Math.floor(e[1].split(":")[1].split("/")[1] % 100) - 1),
|
||
t = (0 === p && (y = 0), "&sessionID="),
|
||
e = ((l = l || {}).token && !l.playURL && (t = "&token="), l.sessionID || l.session || (l.playURL ? "" : l.token) || ""),
|
||
g = new window.WebSocket(i + "://" + f + ":" + m + (l.mode ? "/" + l.mode : "") + "?version=" + this.szProtocolVersion + "&cipherSuites=" + this.iCiphersuites + t + e + (l.proxy ? "&proxy=" + l.proxy : "")),
|
||
M = (g.binaryType = "arraybuffer", s.default.v4());
|
||
return new d.default(function (u, d) {
|
||
setTimeout(function () {
|
||
v || r || !g || (g.onopen = null, g.onmessage = null, g.close(1e3, "CLOSE"), g.close = null, c._log.W(c.TAG, "recv stream timeout."), d())
|
||
}, a), g.onopen = function () {
|
||
c._log.I("websocket onopen")
|
||
}, g.onmessage = function (e) {
|
||
var t, n;
|
||
if ("string" == typeof e.data) return i = c.getIndex(M), (t = JSON.parse(e.data)) && t.hasOwnProperty("statusCode") && (0 === t.statusCode ? -1 === i ? u() : c.aWebsocket[i].resolve() : -1 === i ? d(t) : c.aWebsocket[i].reject(t)), !_ && t.cmd && "end" === t.cmd ? (_ = !0, c._log.I("回放结束,媒体流关闭"), void h({cmd: "end"})) : t && t.version && t.cipherSuite ? (c._log.D("websocket onmessage: PKD", t), c.szProtocolVersion = t.version, c.iCiphersuites = parseInt(t.cipherSuite, 10), t && t.PKD && t.rand ? c.aWebsocket.push(S.createClientObject(g, M, t.PKD, t.rand, l)) : (i = "live://" + f + ":" + m + "/" + p + "/" + y, -1 === c.iCiphersuites ? c.aWebsocket.push(k.createClientObject(g, M, i, l)) : c.aWebsocket.push(L.createClientObject(g, M, i))), void u(M)) : void (t && t.sdp && (c._log.I("websocket onmessage: sdp", t), i = L.getMediaFromSdp(t.sdp), n = L.getSdpParams(t.sdp), t = L.getSDPInfo(t.sdp), h({
|
||
bHead: !0,
|
||
oParams: n,
|
||
buf: i,
|
||
iClockFrequency: t.iClockFrequency,
|
||
iCurrentTime: t.iCurrentTime
|
||
}), -1 !== (n = c.aWebsocket.findIndex(function (e) {
|
||
return e.id === M
|
||
})) && c.aWebsocket[n].resolve()));
|
||
var i = {}, r = e.data;
|
||
if (64 === r.byteLength || 40 === r.byteLength) {
|
||
for (var a = -1, s = r.byteLength, o = 0; o < s; o++) if (73 === r[o] && 77 === r[o + 1] && 75 === r[o + 2] && 72 === r[o + 3]) {
|
||
a = o;
|
||
break
|
||
}
|
||
i = -1 !== a ? {bHead: !0, buf: r.slice(a, a + 40)} : {bHead: !1, buf: r}
|
||
} else i = {bHead: !1, buf: r};
|
||
h(i), v = !(e = i = r = null)
|
||
}, g.onclose = function (e) {
|
||
var t;
|
||
1e3 !== e.code && 1005 !== e.code || -1 === (t = c.aWebsocket.findIndex(function (e) {
|
||
return e.id === M
|
||
})) || (c._log.I("Stream closed", e), c.aWebsocket[t].resolve(), c.aWebsocket.splice(t, 1)), n(e), r = !0
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "startPlay", value: function (e, i, r, a) {
|
||
var s = this, o = this.getIndex(e);
|
||
return i && r && "0.1" === this.szProtocolVersion && (i = i.replace("-", "").replace(":", ""), r = r.replace("-", "").replace(":", "")), new d.default(function (e, t) {
|
||
if (-1 < o) {
|
||
s.aWebsocket[o].resolve = e, s.aWebsocket[o].reject = t;
|
||
var n = null;
|
||
i && r ? "0.1" !== s.szProtocolVersion ? 0 === s.iCiphersuites ? n = S.playbackCmd(s.aWebsocket[o], i, r, a) : 1 === s.iCiphersuites ? n = L.playbackCmd(i, r, s.aWebsocket[o].playURL) : -1 === s.iCiphersuites && (n = k.playbackCmd(s.aWebsocket[o], i, r)) : n = u.playbackCmd(i, r, s.aWebsocket[o].iCurChannel, s.aWebsocket[o].iCurStream) : 0 === s.aWebsocket[o].iCurChannel && "0.1" === s.szProtocolVersion ? n = u.zeroPlayCmd(s.aWebsocket[o].iCurChannel, s.aWebsocket[o].iCurStream) : "0.1" !== s.szProtocolVersion ? 0 === s.iCiphersuites ? n = S.playCmd(s.aWebsocket[o], a) : 1 === s.iCiphersuites ? n = L.playCmd(s.aWebsocket[o].playURL) : -1 === s.iCiphersuites && (n = k.playCmd(s.aWebsocket[o])) : n = u.playCmd(s.aWebsocket[o].iCurChannel, s.aWebsocket[o].iCurStream);
|
||
try {
|
||
s.aWebsocket[o].socket.send(n)
|
||
} catch (e) {
|
||
s._log.E(f.ERR_STREAM_CMD_FAILED), t(e)
|
||
}
|
||
"0.1" === s.szProtocolVersion && e()
|
||
} else "0.1" === s.szProtocolVersion && t()
|
||
})
|
||
}
|
||
}, {
|
||
key: "singleFrame", value: function () {
|
||
}
|
||
}, {
|
||
key: "setPlayRate", value: function (a, s) {
|
||
var o = this;
|
||
return new d.default(function (e, t) {
|
||
for (var n = 0, i = o.aWebsocket.length; n < i; n++) if (o.aWebsocket[n].id === a) {
|
||
if ("0.1" === o.szProtocolVersion) {
|
||
var r = u.playRateCmd(s);
|
||
o.aWebsocket[n].socket.send(r), e();
|
||
break
|
||
}
|
||
o.aWebsocket[n].resolve = e, o.aWebsocket[n].reject = t;
|
||
r = L.playRateCmd(s);
|
||
o.aWebsocket[n].socket.send(r)
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "seek", value: function (a, s, o) {
|
||
var u = this;
|
||
return new d.default(function (e, t) {
|
||
for (var n, i = 0, r = u.aWebsocket.length; i < r; i++) u.aWebsocket[i].id === a && (u.aWebsocket[i].resolve = e, u.aWebsocket[i].reject = t, n = S.seekCmd(s, o), u.aWebsocket[i].socket.send(n))
|
||
})
|
||
}
|
||
}, {
|
||
key: "pause", value: function (a) {
|
||
var s = this;
|
||
return new d.default(function (e, t) {
|
||
for (var n = 0, i = s.aWebsocket.length; n < i; n++) if (s.aWebsocket[n].id === a) {
|
||
if ("0.1" === s.szProtocolVersion) {
|
||
var r = u.pauseCmd();
|
||
s.aWebsocket[n].socket.send(r), e();
|
||
break
|
||
}
|
||
s.aWebsocket[n].resolve = e, s.aWebsocket[n].reject = t;
|
||
r = L.pauseCmd();
|
||
s.aWebsocket[n].socket.send(r)
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "transmission", value: function (r, a) {
|
||
var s = this;
|
||
return new d.default(function (e, t) {
|
||
for (var n = 0, i = s.aWebsocket.length; n < i; n++) s.aWebsocket[n].id === r && (s.aWebsocket[n].resolve = e, s.aWebsocket[n].reject = t, s.aWebsocket[n].socket.send(a))
|
||
})
|
||
}
|
||
}, {
|
||
key: "resume", value: function (a) {
|
||
var s = this;
|
||
return new d.default(function (e, t) {
|
||
for (var n = 0, i = s.aWebsocket.length; n < i; n++) if (s.aWebsocket[n].id === a) {
|
||
if ("0.1" === s.szProtocolVersion) {
|
||
var r = u.resumeCmd();
|
||
s.aWebsocket[n].socket.send(r), e();
|
||
break
|
||
}
|
||
s.aWebsocket[n].resolve = e, s.aWebsocket[n].reject = t;
|
||
r = L.resumeCmd();
|
||
s.aWebsocket[n].socket.send(r)
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "stop", value: function (r) {
|
||
var a = this;
|
||
return new d.default(function (e, t) {
|
||
var n = a.aWebsocket.find(function (e) {
|
||
return e.id === r
|
||
});
|
||
if (!n) return a._log.E(f.ERR_STREAM_WS_UNFIND + ": can't find related websocket, check the index."), t(f.ERR_STREAM_WS_UNFIND);
|
||
if (0 === n.socket.readyState) return n.stoping = !0, n.socket.onopen = null, n.socket.onmessage = null, n.socket.onclose = null, n.socket = null, a._log.E(f.ERR_STREAM_WS_UNCONNECT + ": websocket is not connect, check the index."), t(f.ERR_STREAM_WS_UNCONNECT);
|
||
try {
|
||
n.resolve = e;
|
||
var i = S.stopCmd();
|
||
n.socket.send(i), n.stoping = !0, n.socket.onopen = null, n.socket.onmessage = null, n.socket.onclose = null, n.socket = null, e()
|
||
} catch (e) {
|
||
a._log.E(f.ERR_STREAM_CMD_FAILED + ": send signalCmd to websocket failed."), t(f.ERR_STREAM_CMD_FAILED)
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "stopAll", value: function () {
|
||
for (var e = 0, t = this.aWebsocket.length; e < t; e++) this.aWebsocket[e].socket.close(1e3, "CLOSE"), this.aWebsocket[e].stoping = !0
|
||
}
|
||
}, {
|
||
key: "setTimeOut", value: function (n) {
|
||
return new d.default(function (e, t) {
|
||
a = 1e3 * n, e()
|
||
})
|
||
}
|
||
}]), t
|
||
}();
|
||
t.StreamClient = n
|
||
}, function (e, t, n) {
|
||
var l, h, c = n(88), _ = n(89), f = 0, m = 0;
|
||
e.exports = function (e, t, n) {
|
||
var i = t && n || 0, r = t || [], a = (e = e || {}).node || l, n = void 0 !== e.clockseq ? e.clockseq : h,
|
||
s = (null != a && null != n || (s = c(), null == a && (a = l = [1 | s[0], s[1], s[2], s[3], s[4], s[5]]), null == n && (n = h = 16383 & (s[6] << 8 | s[7]))), void 0 !== e.msecs ? e.msecs : (new Date).getTime()),
|
||
o = void 0 !== e.nsecs ? e.nsecs : m + 1, u = s - f + (o - m) / 1e4;
|
||
if (u < 0 && void 0 === e.clockseq && (n = n + 1 & 16383), 1e4 <= (o = (u < 0 || f < s) && void 0 === e.nsecs ? 0 : o)) throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");
|
||
f = s, h = n, u = (1e4 * (268435455 & (s += 122192928e5)) + (m = o)) % 4294967296, r[i++] = u >>> 24 & 255, r[i++] = u >>> 16 & 255, r[i++] = u >>> 8 & 255, r[i++] = 255 & u, e = s / 4294967296 * 1e4 & 268435455, r[i++] = e >>> 8 & 255, r[i++] = 255 & e, r[i++] = e >>> 24 & 15 | 16, r[i++] = e >>> 16 & 255, r[i++] = n >>> 8 | 128, r[i++] = 255 & n;
|
||
for (var d = 0; d < 6; ++d) r[i + d] = a[d];
|
||
return t || _(r)
|
||
}
|
||
}, function (e, t, n) {
|
||
var s = n(88), o = n(89);
|
||
e.exports = function (e, t, n) {
|
||
var i = t && n || 0,
|
||
r = ("string" == typeof e && (t = "binary" === e ? new Array(16) : null, e = null), (e = e || {}).random || (e.rng || s)());
|
||
if (r[6] = 15 & r[6] | 64, r[8] = 63 & r[8] | 128, t) for (var a = 0; a < 16; ++a) t[i + a] = r[a];
|
||
return t || o(r)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.DirectDeviceCustom = void 0;
|
||
var i = a(n(1)), r = a(n(2));
|
||
|
||
function a(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = function () {
|
||
function e() {
|
||
(0, i.default)(this, e)
|
||
}
|
||
|
||
return (0, r.default)(e, [{
|
||
key: "createClientObject", value: function (e, t, n, i) {
|
||
return {socket: e, id: t, iCurChannel: n, iCurStream: i, resolve: null, reject: null, stoping: !1}
|
||
}
|
||
}, {
|
||
key: "zeroPlayCmd", value: function (e, t) {
|
||
return new Uint8Array([0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, e + 1, 0, 0, 0, t, 0, 0, 4, 0])
|
||
}
|
||
}, {
|
||
key: "playCmd", value: function (e, t) {
|
||
return new Uint8Array([0, 0, 0, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, e, 0, 0, 0, t, 0, 0, 4, 0])
|
||
}
|
||
}, {
|
||
key: "playbackCmd", value: function (e, t, n, i) {
|
||
var r = e.split("T")[0], e = e.split("T")[1],
|
||
a = "0" + parseInt(r.substring(0, 4), 10).toString(16), s = parseInt(r.substring(4, 6), 10),
|
||
r = parseInt(r.substring(6), 10), o = parseInt(e.substring(0, 2), 10),
|
||
u = parseInt(e.substring(2, 4), 10), e = parseInt(e.substring(4, 6), 10), d = t.split("T")[0],
|
||
t = t.split("T")[1], l = "0" + parseInt(d.substring(0, 4), 10).toString(16),
|
||
d = parseInt(d.substring(4, 6), 10), h = parseInt(t.substring(0, 2), 10),
|
||
c = parseInt(t.substring(2, 4), 10), t = parseInt(t.substring(4, 6), 10),
|
||
n = [0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, n, 0, 0, parseInt(a.substring(0, 2), 16), parseInt(a.substring(2, 4), 16), 0, 0, 0, s, 0, 0, 0, r, 0, 0, 0, o, 0, 0, 0, u, 0, 0, 0, e, 0, 0, parseInt(l.substring(0, 2), 16), parseInt(l.substring(2, 4), 16), 0, 0, 0, d, 0, 0, 0, r, 0, 0, 0, h, 0, 0, 0, c, 0, 0, 0, t, 0, 0, 0, 0, 0, 0, 0, 0, i, 0, 0, 0];
|
||
return new Uint8Array(n)
|
||
}
|
||
}, {
|
||
key: "playRateCmd", value: function (e) {
|
||
for (var t = (parseInt(e, 10) >>> 0).toString(16).toLocaleUpperCase().toString(16), n = t.length; n < 8; n++) t = "0" + t;
|
||
for (var i = [0, 0, 0, 0], r = 0, a = t.length; r < a; r += 2) i[Math.floor(r / 2)] = parseInt(t.substring(r, r + 2), 16);
|
||
e = [0, 0, 0, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 47, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, i[0], i[1], i[2], i[3]];
|
||
return new Uint8Array(e)
|
||
}
|
||
}, {
|
||
key: "pauseCmd", value: function () {
|
||
return new Uint8Array([0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
|
||
}
|
||
}, {
|
||
key: "resumeCmd", value: function () {
|
||
return new Uint8Array([0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
|
||
}
|
||
}]), e
|
||
}();
|
||
t.DirectDeviceCustom = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.DirectDevice = void 0;
|
||
var i = s(n(56)), r = s(n(1)), a = s(n(2));
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = function () {
|
||
function e() {
|
||
(0, r.default)(this, e)
|
||
}
|
||
|
||
return (0, a.default)(e, [{
|
||
key: "createClientObject", value: function (e, t, n) {
|
||
return {socket: e, id: t, playURL: n, resolve: null, reject: null, stoping: !1}
|
||
}
|
||
}, {
|
||
key: "getMediaFromSdp", value: function (e) {
|
||
for (var t = e.indexOf("MEDIAINFO=") + 10, n = e.slice(t, t + 80), i = [], r = 0, a = n.length / 2; r < a; r++) i[r] = parseInt(n.slice(2 * r, 2 * r + 2), 16);
|
||
return new Uint8Array(i)
|
||
}
|
||
}, {
|
||
key: "sdpParamsReverse", value: function (e) {
|
||
for (var t = [], n = 0, i = e.length / 2; n < i; n++) t[n] = e.slice(2 * n, 2 * n + 2);
|
||
return t = parseInt(t.reverse().join(""), 16)
|
||
}
|
||
}, {
|
||
key: "getSdpParams", value: function (e) {
|
||
var t = e.indexOf("MEDIAINFO=") + 10, e = e.slice(t, t + 80),
|
||
n = this.sdpParamsReverse(e.slice(24, 28)), i = this.sdpParamsReverse(e.slice(40, 48)),
|
||
r = this.sdpParamsReverse(e.slice(32, 40)), a = parseInt(e.slice(30, 32), 16),
|
||
s = parseInt(e.slice(29, 30), 16);
|
||
switch (n) {
|
||
case 1984:
|
||
(n = 0) === i && (i = 32e3), 0 === r && (r = 8e3), 0 === a && (a = 16), 0 === s && (s = 1);
|
||
break;
|
||
case 28945:
|
||
case 49154:
|
||
n = 1, 0 === i && (i = 64e3), 0 === r && (r = 8e3), 0 === a && (a = 16), 0 === s && (s = 1);
|
||
break;
|
||
case 28944:
|
||
case 49153:
|
||
n = 2, 0 === i && (i = 64e3), 0 === r && (r = 8e3), 0 === a && (a = 16), 0 === s && (s = 1);
|
||
break;
|
||
case 29217:
|
||
case 49155:
|
||
n = 3, 0 === i && (i = 16e3), 0 === r && (r = 16e3), 0 === a && (a = 16), 0 === s && (s = 1);
|
||
break;
|
||
case 29280:
|
||
case 29282:
|
||
case 49156:
|
||
n = 4, 0 === i && (i = 16e3), 0 === r && (r = 8e3), 0 === a && (a = 16), 0 === s && (s = 1);
|
||
break;
|
||
case 8193:
|
||
case 49157:
|
||
n = 6, 0 === i && (i = 32e3), 0 === r && (r = 16e3), 0 === a && (a = 16), 0 === s && (s = 1)
|
||
}
|
||
return {iAudioType: n, iAudioBitRate: i, iAudioSamplingRate: r, iAudioBitWidth: a, iChannel: s}
|
||
}
|
||
}, {
|
||
key: "getSDPInfo", value: function (e) {
|
||
var t = e.indexOf("rtpmap:96 H264/") + 15, t = e.slice(t, t + 5), t = parseInt(t, 10),
|
||
n = e.indexOf("o=- ") + 4, e = e.slice(n, n + 16), n = parseInt(e, 10) / 1e3,
|
||
e = 60 * (new Date).getTimezoneOffset() * 1e3;
|
||
return {iClockFrequency: t, iCurrentTime: Math.floor(n + e)}
|
||
}
|
||
}, {
|
||
key: "playCmd", value: function (e) {
|
||
return (0, i.default)({sequence: 0, cmd: "realplay", url: e})
|
||
}
|
||
}, {
|
||
key: "playbackCmd", value: function (e, t, n) {
|
||
return (0, i.default)({sequence: 0, cmd: "playback", url: n, startTime: e, endTime: t})
|
||
}
|
||
}, {
|
||
key: "playRateCmd", value: function (e) {
|
||
return (0, i.default)({sequence: 0, cmd: "speed", rate: e})
|
||
}
|
||
}, {
|
||
key: "pauseCmd", value: function () {
|
||
return (0, i.default)({sequence: 0, cmd: "pause"})
|
||
}
|
||
}, {
|
||
key: "resumeCmd", value: function () {
|
||
return (0, i.default)({sequence: 0, cmd: "resume"})
|
||
}
|
||
}]), e
|
||
}();
|
||
t.DirectDevice = n
|
||
}, function (e, t, n) {
|
||
var n = n(3), i = n.JSON || (n.JSON = {stringify: JSON.stringify});
|
||
e.exports = function (e) {
|
||
return i.stringify.apply(i, arguments)
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.LiveMedia = void 0;
|
||
var r = u(n(56)), i = u(n(1)), a = u(n(2)), s = u(n(269)), o = u(n(281));
|
||
|
||
function u(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = function () {
|
||
function e() {
|
||
(0, i.default)(this, e)
|
||
}
|
||
|
||
return (0, a.default)(e, [{
|
||
key: "createClientObject", value: function (e, t, n, i, r) {
|
||
var a = o.default.AES.encrypt((new Date).getTime().toString(), o.default.enc.Hex.parse("1234567891234567123456789123456712345678912345671234567891234567"), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse("12345678912345671234567891234567"),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString(),
|
||
s = (a.length < 64 && (a += a), o.default.AES.encrypt((new Date).getTime().toString(), o.default.enc.Hex.parse("12345678912345671234567891234567"), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse("12345678912345671234567891234567"),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString());
|
||
return {
|
||
socket: e,
|
||
id: t,
|
||
PKD: n,
|
||
rand: i,
|
||
playURL: r.playURL || "",
|
||
auth: r.auth || "",
|
||
token: r.token || "",
|
||
key: a,
|
||
iv: s,
|
||
resolve: null,
|
||
reject: null,
|
||
stoping: !1
|
||
}
|
||
}
|
||
}, {
|
||
key: "playCmd", value: function (e, t) {
|
||
t = {
|
||
sequence: 0,
|
||
cmd: t || "realplay",
|
||
url: e.playURL,
|
||
key: s.default.encrypt(e.iv + ":" + e.key, e.PKD).cipher.split("?")[0],
|
||
authorization: o.default.AES.encrypt(e.rand + ":" + e.auth, o.default.enc.Hex.parse(e.key), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse(e.iv),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString(),
|
||
token: o.default.AES.encrypt(e.token, o.default.enc.Hex.parse(e.key), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse(e.iv),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString()
|
||
};
|
||
return (0, r.default)(t)
|
||
}
|
||
}, {
|
||
key: "playbackCmd", value: function (e, t, n, i) {
|
||
i = {
|
||
sequence: 0,
|
||
cmd: i || "playback",
|
||
url: e.playURL,
|
||
key: s.default.encrypt(e.iv + ":" + e.key, e.PKD).cipher.split("?")[0],
|
||
authorization: o.default.AES.encrypt(e.rand + ":" + e.auth, o.default.enc.Hex.parse(e.key), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse(e.iv),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString(),
|
||
token: o.default.AES.encrypt(e.token, o.default.enc.Hex.parse(e.key), {
|
||
mode: o.default.mode.CBC,
|
||
iv: o.default.enc.Hex.parse(e.iv),
|
||
padding: o.default.pad.Pkcs7
|
||
}).ciphertext.toString(),
|
||
startTime: t,
|
||
endTime: n
|
||
};
|
||
return (0, r.default)(i)
|
||
}
|
||
}, {
|
||
key: "seekCmd", value: function (e, t) {
|
||
return (0, r.default)({sequence: 0, cmd: "seek", startTime: e, endTime: t})
|
||
}
|
||
}, {
|
||
key: "stopCmd", value: function () {
|
||
return (0, r.default)({sequence: 0, cmd: "stop"})
|
||
}
|
||
}]), e
|
||
}();
|
||
t.LiveMedia = n
|
||
}, function (H, j, e) {
|
||
"use strict";
|
||
var e = e(9), F = (e = e) && e.__esModule ? e : {default: e};
|
||
var e = "Netscape", B = 40;
|
||
|
||
function m(e, t, n) {
|
||
null != e && ("number" == typeof e ? this.fromNumber(e, t, n) : null == t && "string" != typeof e ? this.fromString(e, 256) : this.fromString(e, t))
|
||
}
|
||
|
||
function p() {
|
||
return new m(null)
|
||
}
|
||
|
||
Y = "Microsoft Internet Explorer" == e ? (m.prototype.am = function (e, t, n, i, r, a) {
|
||
var s = 32767 & t;
|
||
for (t >>= 15; 0 <= --a;) {
|
||
var o = 32767 & this[e], u = this[e++] >> 15, d = t * o + u * s,
|
||
r = ((o = s * o + ((32767 & d) << 15) + n[i] + (1073741823 & r)) >>> 30) + (d >>> 15) + t * u + (r >>> 30);
|
||
n[i++] = 1073741823 & o
|
||
}
|
||
return r
|
||
}, 30) : "Netscape" != e ? (m.prototype.am = function (e, t, n, i, r, a) {
|
||
for (; 0 <= --a;) {
|
||
var s = t * this[e++] + n[i] + r, r = Math.floor(s / 67108864);
|
||
n[i++] = 67108863 & s
|
||
}
|
||
return r
|
||
}, 26) : (m.prototype.am = function (e, t, n, i, r, a) {
|
||
var s = 16383 & t;
|
||
for (t >>= 14; 0 <= --a;) {
|
||
var o = 16383 & this[e], u = this[e++] >> 14, d = t * o + u * s,
|
||
r = ((o = s * o + ((16383 & d) << 14) + n[i] + r) >> 28) + (d >> 14) + t * u;
|
||
n[i++] = 268435455 & o
|
||
}
|
||
return r
|
||
}, 28), m.prototype.DB = Y, m.prototype.DM = (1 << Y) - 1, m.prototype.DV = 1 << Y;
|
||
m.prototype.FV = Math.pow(2, 52), m.prototype.F1 = 52 - Y, m.prototype.F2 = 2 * Y - 52;
|
||
for (var N = "0123456789abcdefghijklmnopqrstuvwxyz", n = [], t = "0".charCodeAt(0), r = 0; r <= 9; ++r) n[t++] = r;
|
||
for (t = "a".charCodeAt(0), r = 10; r < 36; ++r) n[t++] = r;
|
||
for (t = "A".charCodeAt(0), r = 10; r < 36; ++r) n[t++] = r;
|
||
|
||
function o(e) {
|
||
return N.charAt(e)
|
||
}
|
||
|
||
function d(e, t) {
|
||
e = n[e.charCodeAt(t)];
|
||
return null == e ? -1 : e
|
||
}
|
||
|
||
function f(e) {
|
||
var t = p();
|
||
return t.fromInt(e), t
|
||
}
|
||
|
||
function y(e) {
|
||
var t, n = 1;
|
||
return 0 != (t = e >>> 16) && (e = t, n += 16), 0 != (t = e >> 8) && (e = t, n += 8), 0 != (t = e >> 4) && (e = t, n += 4), 0 != (t = e >> 2) && (e = t, n += 2), e >> 1 != 0 && (n += 1), n
|
||
}
|
||
|
||
function g(e) {
|
||
this.m = e
|
||
}
|
||
|
||
function M(e) {
|
||
this.m = e, this.mp = e.invDigit(), this.mpl = 32767 & this.mp, this.mph = this.mp >> 15, this.um = (1 << e.DB - 15) - 1, this.mt2 = 2 * e.t
|
||
}
|
||
|
||
function z(e, t) {
|
||
return e & t
|
||
}
|
||
|
||
function a(e, t) {
|
||
return e | t
|
||
}
|
||
|
||
function U(e, t) {
|
||
return e ^ t
|
||
}
|
||
|
||
function V(e, t) {
|
||
return e & ~t
|
||
}
|
||
|
||
function s() {
|
||
}
|
||
|
||
function G(e) {
|
||
return e
|
||
}
|
||
|
||
function L(e) {
|
||
this.r2 = p(), this.q3 = p(), m.ONE.dlShiftTo(2 * e.t, this.r2), this.mu = this.r2.divide(e), this.m = e
|
||
}
|
||
|
||
g.prototype.convert = function (e) {
|
||
return e.s < 0 || 0 <= e.compareTo(this.m) ? e.mod(this.m) : e
|
||
}, g.prototype.revert = function (e) {
|
||
return e
|
||
}, g.prototype.reduce = function (e) {
|
||
e.divRemTo(this.m, null, e)
|
||
}, g.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}, g.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
}, M.prototype.convert = function (e) {
|
||
var t = p();
|
||
return e.abs().dlShiftTo(this.m.t, t), t.divRemTo(this.m, null, t), e.s < 0 && 0 < t.compareTo(m.ZERO) && this.m.subTo(t, t), t
|
||
}, M.prototype.revert = function (e) {
|
||
var t = p();
|
||
return e.copyTo(t), this.reduce(t), t
|
||
}, M.prototype.reduce = function (e) {
|
||
for (; e.t <= this.mt2;) e[e.t++] = 0;
|
||
for (var t = 0; t < this.m.t; ++t) {
|
||
var n = 32767 & e[t],
|
||
i = n * this.mpl + ((n * this.mph + (e[t] >> 15) * this.mpl & this.um) << 15) & e.DM;
|
||
for (e[n = t + this.m.t] += this.m.am(0, i, e, t, 0, this.m.t); e[n] >= e.DV;) e[n] -= e.DV, e[++n]++
|
||
}
|
||
e.clamp(), e.drShiftTo(this.m.t, e), 0 <= e.compareTo(this.m) && e.subTo(this.m, e)
|
||
}, M.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}, M.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
}, m.prototype.copyTo = function (e) {
|
||
for (var t = this.t - 1; 0 <= t; --t) e[t] = this[t];
|
||
e.t = this.t, e.s = this.s
|
||
}, m.prototype.fromInt = function (e) {
|
||
this.t = 1, this.s = e < 0 ? -1 : 0, 0 < e ? this[0] = e : e < -1 ? this[0] = e + DV : this.t = 0
|
||
}, m.prototype.fromString = function (e, t) {
|
||
var n;
|
||
if (16 == t) n = 4; else if (8 == t) n = 3; else if (256 == t) n = 8; else if (2 == t) n = 1; else if (32 == t) n = 5; else {
|
||
if (4 != t) return void this.fromRadix(e, t);
|
||
n = 2
|
||
}
|
||
this.s = this.t = 0;
|
||
for (var i = e.length, r = !1, a = 0; 0 <= --i;) {
|
||
var s = 8 == n ? 255 & e[i] : d(e, i);
|
||
s < 0 ? "-" == e.charAt(i) && (r = !0) : (r = !1, 0 == a ? this[this.t++] = s : a + n > this.DB ? (this[this.t - 1] |= (s & (1 << this.DB - a) - 1) << a, this[this.t++] = s >> this.DB - a) : this[this.t - 1] |= s << a, (a += n) >= this.DB && (a -= this.DB))
|
||
}
|
||
8 == n && 0 != (128 & e[0]) && (this.s = -1, 0 < a && (this[this.t - 1] |= (1 << this.DB - a) - 1 << a)), this.clamp(), r && m.ZERO.subTo(this, this)
|
||
}, m.prototype.clamp = function () {
|
||
for (var e = this.s & this.DM; 0 < this.t && this[this.t - 1] == e;) --this.t
|
||
}, m.prototype.dlShiftTo = function (e, t) {
|
||
for (var n = this.t - 1; 0 <= n; --n) t[n + e] = this[n];
|
||
for (n = e - 1; 0 <= n; --n) t[n] = 0;
|
||
t.t = this.t + e, t.s = this.s
|
||
}, m.prototype.drShiftTo = function (e, t) {
|
||
for (var n = e; n < this.t; ++n) t[n - e] = this[n];
|
||
t.t = Math.max(this.t - e, 0), t.s = this.s
|
||
}, m.prototype.lShiftTo = function (e, t) {
|
||
for (var n = e % this.DB, i = this.DB - n, r = (1 << i) - 1, a = Math.floor(e / this.DB), s = this.s << n & this.DM, o = this.t - 1; 0 <= o; --o) t[o + a + 1] = this[o] >> i | s, s = (this[o] & r) << n;
|
||
for (o = a - 1; 0 <= o; --o) t[o] = 0;
|
||
t[a] = s, t.t = this.t + a + 1, t.s = this.s, t.clamp()
|
||
}, m.prototype.rShiftTo = function (e, t) {
|
||
t.s = this.s;
|
||
var n = Math.floor(e / this.DB);
|
||
if (n >= this.t) t.t = 0; else {
|
||
var i = e % this.DB, r = this.DB - i, a = (1 << i) - 1;
|
||
t[0] = this[n] >> i;
|
||
for (var s = n + 1; s < this.t; ++s) t[s - n - 1] |= (this[s] & a) << r, t[s - n] = this[s] >> i;
|
||
0 < i && (t[this.t - n - 1] |= (this.s & a) << r), t.t = this.t - n, t.clamp()
|
||
}
|
||
}, m.prototype.subTo = function (e, t) {
|
||
for (var n = 0, i = 0, r = Math.min(e.t, this.t); n < r;) i += this[n] - e[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
if (e.t < this.t) {
|
||
for (i -= e.s; n < this.t;) i += this[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
i += this.s
|
||
} else {
|
||
for (i += this.s; n < e.t;) i -= e[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
i -= e.s
|
||
}
|
||
t.s = i < 0 ? -1 : 0, i < -1 ? t[n++] = this.DV + i : 0 < i && (t[n++] = i), t.t = n, t.clamp()
|
||
}, m.prototype.multiplyTo = function (e, t) {
|
||
var n = this.abs(), i = e.abs(), r = n.t;
|
||
for (t.t = r + i.t; 0 <= --r;) t[r] = 0;
|
||
for (r = 0; r < i.t; ++r) t[r + n.t] = n.am(0, i[r], t, r, 0, n.t);
|
||
t.s = 0, t.clamp(), this.s != e.s && m.ZERO.subTo(t, t)
|
||
}, m.prototype.squareTo = function (e) {
|
||
for (var t = this.abs(), n = e.t = 2 * t.t; 0 <= --n;) e[n] = 0;
|
||
for (n = 0; n < t.t - 1; ++n) {
|
||
var i = t.am(n, t[n], e, 2 * n, 0, 1);
|
||
(e[n + t.t] += t.am(n + 1, 2 * t[n], e, 2 * n + 1, i, t.t - n - 1)) >= t.DV && (e[n + t.t] -= t.DV, e[n + t.t + 1] = 1)
|
||
}
|
||
0 < e.t && (e[e.t - 1] += t.am(n, t[n], e, 2 * n, 0, 1)), e.s = 0, e.clamp()
|
||
}, m.prototype.divRemTo = function (e, t, n) {
|
||
var i = e.abs();
|
||
if (!(i.t <= 0)) {
|
||
var r = this.abs();
|
||
if (r.t < i.t) null != t && t.fromInt(0), null != n && this.copyTo(n); else {
|
||
null == n && (n = p());
|
||
var a = p(), s = this.s, e = e.s, o = this.DB - y(i[i.t - 1]);
|
||
if (0 < o ? (i.lShiftTo(o, a), r.lShiftTo(o, n)) : (i.copyTo(a), r.copyTo(n)), 0 != (r = a[(i = a.t) - 1])) {
|
||
var u = r * (1 << this.F1) + (1 < i ? a[i - 2] >> this.F2 : 0), d = this.FV / u,
|
||
u = (1 << this.F1) / u, l = 1 << this.F2, h = n.t, c = h - i, _ = null == t ? p() : t;
|
||
for (a.dlShiftTo(c, _), 0 <= n.compareTo(_) && (n[n.t++] = 1, n.subTo(_, n)), m.ONE.dlShiftTo(i, _), _.subTo(a, a); a.t < i;) a[a.t++] = 0;
|
||
for (; 0 <= --c;) {
|
||
var f = n[--h] == r ? this.DM : Math.floor(n[h] * d + (n[h - 1] + l) * u);
|
||
if ((n[h] += a.am(0, f, n, c, 0, i)) < f) for (a.dlShiftTo(c, _), n.subTo(_, n); n[h] < --f;) n.subTo(_, n)
|
||
}
|
||
null != t && (n.drShiftTo(i, t), s != e && m.ZERO.subTo(t, t)), n.t = i, n.clamp(), 0 < o && n.rShiftTo(o, n), s < 0 && m.ZERO.subTo(n, n)
|
||
}
|
||
}
|
||
}
|
||
}, m.prototype.invDigit = function () {
|
||
if (this.t < 1) return 0;
|
||
var e = this[0];
|
||
if (0 == (1 & e)) return 0;
|
||
var t = 3 & e;
|
||
return 0 < (t = (t = (t = (t = t * (2 - (15 & e) * t) & 15) * (2 - (255 & e) * t) & 255) * (2 - ((65535 & e) * t & 65535)) & 65535) * (2 - e * t % this.DV) % this.DV) ? this.DV - t : -t
|
||
}, m.prototype.isEven = function () {
|
||
return 0 == (0 < this.t ? 1 & this[0] : this.s)
|
||
}, m.prototype.exp = function (e, t) {
|
||
if (4294967295 < e || e < 1) return m.ONE;
|
||
var n, i = p(), r = p(), a = t.convert(this), s = y(e) - 1;
|
||
for (a.copyTo(i); 0 <= --s;) t.sqrTo(i, r), 0 < (e & 1 << s) ? t.mulTo(r, a, i) : (n = i, i = r, r = n);
|
||
return t.revert(i)
|
||
}, m.prototype.toString = function (e) {
|
||
if (this.s < 0) return "-" + this.negate().toString(e);
|
||
if (16 == e) e = 4; else if (8 == e) e = 3; else if (2 == e) e = 1; else if (32 == e) e = 5; else if (64 == e) e = 6; else {
|
||
if (4 != e) return this.toRadix(e);
|
||
e = 2
|
||
}
|
||
var t, n = (1 << e) - 1, i = !1, r = "", a = this.t, s = this.DB - a * this.DB % e;
|
||
if (0 < a--) for (s < this.DB && 0 < (t = this[a] >> s) && (i = !0, r = o(t)); 0 <= a;) s < e ? (t = (this[a] & (1 << s) - 1) << e - s, t |= this[--a] >> (s += this.DB - e)) : (t = this[a] >> (s -= e) & n, s <= 0 && (s += this.DB, --a)), (i = 0 < t ? !0 : i) && (r += o(t));
|
||
return i ? r : "0"
|
||
}, m.prototype.negate = function () {
|
||
var e = p();
|
||
return m.ZERO.subTo(this, e), e
|
||
}, m.prototype.abs = function () {
|
||
return this.s < 0 ? this.negate() : this
|
||
}, m.prototype.compareTo = function (e) {
|
||
var t = this.s - e.s;
|
||
if (0 != t) return t;
|
||
var n = this.t;
|
||
if (0 != (t = n - e.t)) return t;
|
||
for (; 0 <= --n;) if (0 != (t = this[n] - e[n])) return t;
|
||
return 0
|
||
}, m.prototype.bitLength = function () {
|
||
return this.t <= 0 ? 0 : this.DB * (this.t - 1) + y(this[this.t - 1] ^ this.s & this.DM)
|
||
}, m.prototype.mod = function (e) {
|
||
var t = p();
|
||
return this.abs().divRemTo(e, null, t), this.s < 0 && 0 < t.compareTo(m.ZERO) && e.subTo(t, t), t
|
||
}, m.prototype.modPowInt = function (e, t) {
|
||
return t = new (e < 256 || t.isEven() ? g : M)(t), this.exp(e, t)
|
||
}, m.ZERO = f(0), m.ONE = f(1), s.prototype.convert = G, s.prototype.revert = G, s.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n)
|
||
}, s.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t)
|
||
}, L.prototype.convert = function (e) {
|
||
var t;
|
||
return e.s < 0 || e.t > 2 * this.m.t ? e.mod(this.m) : e.compareTo(this.m) < 0 ? e : (t = p(), e.copyTo(t), this.reduce(t), t)
|
||
}, L.prototype.revert = function (e) {
|
||
return e
|
||
}, L.prototype.reduce = function (e) {
|
||
for (e.drShiftTo(this.m.t - 1, this.r2), e.t > this.m.t + 1 && (e.t = this.m.t + 1, e.clamp()), this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3), this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2); e.compareTo(this.r2) < 0;) e.dAddOffset(1, this.m.t + 1);
|
||
for (e.subTo(this.r2, e); 0 <= e.compareTo(this.m);) e.subTo(this.m, e)
|
||
}, L.prototype.mulTo = function (e, t, n) {
|
||
e.multiplyTo(t, n), this.reduce(n)
|
||
}, L.prototype.sqrTo = function (e, t) {
|
||
e.squareTo(t), this.reduce(t)
|
||
};
|
||
var u, l, h, J, q,
|
||
c = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997],
|
||
K = 67108864 / c[c.length - 1];
|
||
|
||
function X(e) {
|
||
var t, n, o = this, i = e.length, r = 0, a = o.i = o.j = o.m = 0;
|
||
for (o.S = [], o.c = [], i || (e = [i++]); r < 256;) o.S[r] = r++;
|
||
for (r = 0; r < 256; r++) a = a + (t = o.S[r]) + e[r % i] & 255, n = o.S[a], o.S[r] = n, o.S[a] = t;
|
||
o.g = function (e) {
|
||
var t = o.S, n = o.i + 1 & 255, i = t[n], r = o.j + i & 255, a = t[r];
|
||
t[n] = a, t[r] = i;
|
||
for (var s = t[i + a & 255]; --e;) a = t[r = r + (i = t[n = n + 1 & 255]) & 255], t[n] = a, t[r] = i, s = 256 * s + t[i + a & 255];
|
||
return o.i = n, o.j = r, s
|
||
}, o.g(256)
|
||
}
|
||
|
||
function _(e, t, n, i) {
|
||
for (e += "", i = n = 0; i < e.length; i++) {
|
||
var r = t, a = 255 & i, s = (n ^= 19 * t[255 & i]) + e.charCodeAt(i);
|
||
r[a] = 255 & s
|
||
}
|
||
for (i in e = "", t) e += String.fromCharCode(t[i]);
|
||
return e
|
||
}
|
||
|
||
function Z() {
|
||
}
|
||
|
||
function S() {
|
||
this.j = this.i = 0, this.S = []
|
||
}
|
||
|
||
m.prototype.chunkSize = function (e) {
|
||
return Math.floor(Math.LN2 * this.DB / Math.log(e))
|
||
}, m.prototype.toRadix = function (e) {
|
||
if (null == e && (e = 10), 0 == this.signum() || e < 2 || 36 < e) return "0";
|
||
var t = this.chunkSize(e), n = f(t = Math.pow(e, t)), i = p(), r = p(), a = "";
|
||
for (this.divRemTo(n, i, r); 0 < i.signum();) a = (t + r.intValue()).toString(e).substr(1) + a, i.divRemTo(n, i, r);
|
||
return r.intValue().toString(e) + a
|
||
}, m.prototype.fromRadix = function (e, t) {
|
||
this.fromInt(0);
|
||
for (var n = this.chunkSize(t = null == t ? 10 : t), i = Math.pow(t, n), r = !1, a = 0, s = 0, o = 0; o < e.length; ++o) {
|
||
var u = d(e, o);
|
||
u < 0 ? "-" == e.charAt(o) && 0 == this.signum() && (r = !0) : (s = t * s + u, ++a >= n && (this.dMultiply(i), this.dAddOffset(s, 0), s = a = 0))
|
||
}
|
||
0 < a && (this.dMultiply(Math.pow(t, a)), this.dAddOffset(s, 0)), r && m.ZERO.subTo(this, this)
|
||
}, m.prototype.fromNumber = function (e, t, n) {
|
||
if ("number" == typeof t) if (e < 2) this.fromInt(1); else for (this.fromNumber(e, n), this.testBit(e - 1) || this.bitwiseTo(m.ONE.shiftLeft(e - 1), a, this), this.isEven() && this.dAddOffset(1, 0); !this.isProbablePrime(t);) this.dAddOffset(2, 0), this.bitLength() > e && this.subTo(m.ONE.shiftLeft(e - 1), this); else {
|
||
var i = 7 & e;
|
||
(n = []).length = 1 + (e >> 3), t.nextBytes(n), 0 < i ? n[0] &= (1 << i) - 1 : n[0] = 0, this.fromString(n, 256)
|
||
}
|
||
}, m.prototype.bitwiseTo = function (e, t, n) {
|
||
for (var i, r = Math.min(e.t, this.t), a = 0; a < r; ++a) n[a] = t(this[a], e[a]);
|
||
if (e.t < this.t) {
|
||
for (i = e.s & this.DM, a = r; a < this.t; ++a) n[a] = t(this[a], i);
|
||
n.t = this.t
|
||
} else {
|
||
for (i = this.s & this.DM, a = r; a < e.t; ++a) n[a] = t(i, e[a]);
|
||
n.t = e.t
|
||
}
|
||
n.s = t(this.s, e.s), n.clamp()
|
||
}, m.prototype.changeBit = function (e, t) {
|
||
return e = m.ONE.shiftLeft(e), this.bitwiseTo(e, t, e), e
|
||
}, m.prototype.addTo = function (e, t) {
|
||
for (var n = 0, i = 0, r = Math.min(e.t, this.t); n < r;) i += this[n] + e[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
if (e.t < this.t) {
|
||
for (i += e.s; n < this.t;) i += this[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
i += this.s
|
||
} else {
|
||
for (i += this.s; n < e.t;) i += e[n], t[n++] = i & this.DM, i >>= this.DB;
|
||
i += e.s
|
||
}
|
||
t.s = i < 0 ? -1 : 0, 0 < i ? t[n++] = i : i < -1 && (t[n++] = this.DV + i), t.t = n, t.clamp()
|
||
}, m.prototype.dMultiply = function (e) {
|
||
this[this.t] = this.am(0, e - 1, this, 0, 0, this.t), ++this.t, this.clamp()
|
||
}, m.prototype.dAddOffset = function (e, t) {
|
||
if (0 != e) {
|
||
for (; this.t <= t;) this[this.t++] = 0;
|
||
for (this[t] += e; this[t] >= this.DV;) this[t] -= this.DV, ++t >= this.t && (this[this.t++] = 0), ++this[t]
|
||
}
|
||
}, m.prototype.multiplyLowerTo = function (e, t, n) {
|
||
var i, r = Math.min(this.t + e.t, t);
|
||
for (n.s = 0, n.t = r; 0 < r;) n[--r] = 0;
|
||
for (i = n.t - this.t; r < i; ++r) n[r + this.t] = this.am(0, e[r], n, r, 0, this.t);
|
||
for (i = Math.min(e.t, t); r < i; ++r) this.am(0, e[r], n, r, 0, t - r);
|
||
n.clamp()
|
||
}, m.prototype.multiplyUpperTo = function (e, t, n) {
|
||
var i = n.t = this.t + e.t - --t;
|
||
for (n.s = 0; 0 <= --i;) n[i] = 0;
|
||
for (i = Math.max(t - this.t, 0); i < e.t; ++i) n[this.t + i - t] = this.am(t - i, e[i], n, 0, 0, this.t + i - t);
|
||
n.clamp(), n.drShiftTo(1, n)
|
||
}, m.prototype.modInt = function (e) {
|
||
if (e <= 0) return 0;
|
||
var t = this.DV % e, n = this.s < 0 ? e - 1 : 0;
|
||
if (0 < this.t) if (0 == t) n = this[0] % e; else for (var i = this.t - 1; 0 <= i; --i) n = (t * n + this[i]) % e;
|
||
return n
|
||
}, m.prototype.millerRabin = function (e) {
|
||
var t = this.subtract(m.ONE), n = t.getLowestSetBit();
|
||
if (n <= 0) return !1;
|
||
var i = t.shiftRight(n), e = e + 1 >> 1;
|
||
c.length < e && (e = c.length);
|
||
for (var r = p(), a = 0; a < e; ++a) {
|
||
r.fromInt(c[Math.floor(Math.random() * c.length)]);
|
||
var s = r.modPow(i, this);
|
||
if (0 != s.compareTo(m.ONE) && 0 != s.compareTo(t)) {
|
||
for (var o = 1; o++ < n && 0 != s.compareTo(t);) if (0 == (s = s.modPowInt(2, this)).compareTo(m.ONE)) return !1;
|
||
if (0 != s.compareTo(t)) return !1
|
||
}
|
||
}
|
||
return !0
|
||
}, m.prototype.clone = function () {
|
||
var e = p();
|
||
return this.copyTo(e), e
|
||
}, m.prototype.intValue = function () {
|
||
if (this.s < 0) {
|
||
if (1 == this.t) return this[0] - this.DV;
|
||
if (0 == this.t) return -1
|
||
} else {
|
||
if (1 == this.t) return this[0];
|
||
if (0 == this.t) return 0
|
||
}
|
||
return (this[1] & (1 << 32 - this.DB) - 1) << this.DB | this[0]
|
||
}, m.prototype.byteValue = function () {
|
||
return 0 == this.t ? this.s : this[0] << 24 >> 24
|
||
}, m.prototype.shortValue = function () {
|
||
return 0 == this.t ? this.s : this[0] << 16 >> 16
|
||
}, m.prototype.signum = function () {
|
||
return this.s < 0 ? -1 : this.t <= 0 || 1 == this.t && this[0] <= 0 ? 0 : 1
|
||
}, m.prototype.toByteArray = function () {
|
||
var e, t = this.t, n = [], i = (n[0] = this.s, this.DB - t * this.DB % 8), r = 0;
|
||
if (0 < t--) for (i < this.DB && (e = this[t] >> i) != (this.s & this.DM) >> i && (n[r++] = e | this.s << this.DB - i); 0 <= t;) i < 8 ? (e = (this[t] & (1 << i) - 1) << 8 - i, e |= this[--t] >> (i += this.DB - 8)) : (e = this[t] >> (i -= 8) & 255, i <= 0 && (i += this.DB, --t)), 0 != (128 & e) && (e |= -256), 0 == r && (128 & this.s) != (128 & e) && ++r, (0 < r || e != this.s) && (n[r++] = e);
|
||
return n
|
||
}, m.prototype.equals = function (e) {
|
||
return 0 == this.compareTo(e)
|
||
}, m.prototype.min = function (e) {
|
||
return this.compareTo(e) < 0 ? this : e
|
||
}, m.prototype.max = function (e) {
|
||
return 0 < this.compareTo(e) ? this : e
|
||
}, m.prototype.and = function (e) {
|
||
var t = p();
|
||
return this.bitwiseTo(e, z, t), t
|
||
}, m.prototype.or = function (e) {
|
||
var t = p();
|
||
return this.bitwiseTo(e, a, t), t
|
||
}, m.prototype.xor = function (e) {
|
||
var t = p();
|
||
return this.bitwiseTo(e, U, t), t
|
||
}, m.prototype.andNot = function (e) {
|
||
var t = p();
|
||
return this.bitwiseTo(e, V, t), t
|
||
}, m.prototype.not = function () {
|
||
for (var e = p(), t = 0; t < this.t; ++t) e[t] = this.DM & ~this[t];
|
||
return e.t = this.t, e.s = ~this.s, e
|
||
}, m.prototype.shiftLeft = function (e) {
|
||
var t = p();
|
||
return e < 0 ? this.rShiftTo(-e, t) : this.lShiftTo(e, t), t
|
||
}, m.prototype.shiftRight = function (e) {
|
||
var t = p();
|
||
return e < 0 ? this.lShiftTo(-e, t) : this.rShiftTo(e, t), t
|
||
}, m.prototype.getLowestSetBit = function () {
|
||
for (var e = 0; e < this.t; ++e) if (0 != this[e]) return e * this.DB + function (e) {
|
||
if (0 == e) return -1;
|
||
var t = 0;
|
||
return 0 == (65535 & e) && (e >>= 16, t += 16), 0 == (255 & e) && (e >>= 8, t += 8), 0 == (15 & e) && (e >>= 4, t += 4), 0 == (3 & e) && (e >>= 2, t += 2), 0 == (1 & e) && ++t, t
|
||
}(this[e]);
|
||
return this.s < 0 ? this.t * this.DB : -1
|
||
}, m.prototype.bitCount = function () {
|
||
for (var e = 0, t = this.s & this.DM, n = 0; n < this.t; ++n) e += function (e) {
|
||
for (var t = 0; 0 != e;) e &= e - 1, ++t;
|
||
return t
|
||
}(this[n] ^ t);
|
||
return e
|
||
}, m.prototype.testBit = function (e) {
|
||
var t = Math.floor(e / this.DB);
|
||
return t >= this.t ? 0 != this.s : 0 != (this[t] & 1 << e % this.DB)
|
||
}, m.prototype.setBit = function (e) {
|
||
return this.changeBit(e, a)
|
||
}, m.prototype.clearBit = function (e) {
|
||
return this.changeBit(e, V)
|
||
}, m.prototype.flipBit = function (e) {
|
||
return this.changeBit(e, U)
|
||
}, m.prototype.add = function (e) {
|
||
var t = p();
|
||
return this.addTo(e, t), t
|
||
}, m.prototype.subtract = function (e) {
|
||
var t = p();
|
||
return this.subTo(e, t), t
|
||
}, m.prototype.multiply = function (e) {
|
||
var t = p();
|
||
return this.multiplyTo(e, t), t
|
||
}, m.prototype.divide = function (e) {
|
||
var t = p();
|
||
return this.divRemTo(e, t, null), t
|
||
}, m.prototype.remainder = function (e) {
|
||
var t = p();
|
||
return this.divRemTo(e, null, t), t
|
||
}, m.prototype.divideAndRemainder = function (e) {
|
||
var t = p(), n = p();
|
||
return this.divRemTo(e, t, n), [t, n]
|
||
}, m.prototype.modPow = function (e, t) {
|
||
var n = e.bitLength(), i = f(1);
|
||
if (n <= 0) return i;
|
||
var r = n < 18 ? 1 : n < 48 ? 3 : n < 144 ? 4 : n < 768 ? 5 : 6,
|
||
a = new (n < 8 ? g : t.isEven() ? L : M)(t), s = [], o = 3, u = r - 1, d = (1 << r) - 1;
|
||
if (s[1] = a.convert(this), 1 < r) for (n = p(), a.sqrTo(s[1], n); o <= d;) s[o] = p(), a.mulTo(n, s[o - 2], s[o]), o += 2;
|
||
for (var l, h = e.t - 1, c = !0, _ = p(), n = y(e[h]) - 1; 0 <= h;) {
|
||
for (u <= n ? l = e[h] >> n - u & d : (l = (e[h] & (1 << n + 1) - 1) << u - n, 0 < h && (l |= e[h - 1] >> this.DB + n - u)), o = r; 0 == (1 & l);) l >>= 1, --o;
|
||
if ((n -= o) < 0 && (n += this.DB, --h), c) s[l].copyTo(i), c = !1; else {
|
||
for (; 1 < o;) a.sqrTo(i, _), a.sqrTo(_, i), o -= 2;
|
||
0 < o ? a.sqrTo(i, _) : (o = i, i = _, _ = o), a.mulTo(_, s[l], i)
|
||
}
|
||
for (; 0 <= h && 0 == (e[h] & 1 << n);) a.sqrTo(i, _), o = i, i = _, _ = o, --n < 0 && (n = this.DB - 1, --h)
|
||
}
|
||
return a.revert(i)
|
||
}, m.prototype.modInverse = function (e) {
|
||
var t = e.isEven();
|
||
if (this.isEven() && t || 0 == e.signum()) return m.ZERO;
|
||
for (var n = e.clone(), i = this.clone(), r = f(1), a = f(0), s = f(0), o = f(1); 0 != n.signum();) {
|
||
for (; n.isEven();) n.rShiftTo(1, n), t ? (r.isEven() && a.isEven() || (r.addTo(this, r), a.subTo(e, a)), r.rShiftTo(1, r)) : a.isEven() || a.subTo(e, a), a.rShiftTo(1, a);
|
||
for (; i.isEven();) i.rShiftTo(1, i), t ? (s.isEven() && o.isEven() || (s.addTo(this, s), o.subTo(e, o)), s.rShiftTo(1, s)) : o.isEven() || o.subTo(e, o), o.rShiftTo(1, o);
|
||
0 <= n.compareTo(i) ? (n.subTo(i, n), t && r.subTo(s, r), a.subTo(o, a)) : (i.subTo(n, i), t && s.subTo(r, s), o.subTo(a, o))
|
||
}
|
||
return 0 != i.compareTo(m.ONE) ? m.ZERO : 0 <= o.compareTo(e) ? o.subtract(e) : o.signum() < 0 ? (o.addTo(e, o), o.signum() < 0 ? o.add(e) : o) : o
|
||
}, m.prototype.pow = function (e) {
|
||
return this.exp(e, new s)
|
||
}, m.prototype.gcd = function (e) {
|
||
var t = this.s < 0 ? this.negate() : this.clone(), e = e.s < 0 ? e.negate() : e.clone(),
|
||
n = (t.compareTo(e) < 0 && (n = t, t = e, e = n), t.getLowestSetBit()), i = e.getLowestSetBit();
|
||
if (i < 0) return t;
|
||
for (0 < (i = n < i ? n : i) && (t.rShiftTo(i, t), e.rShiftTo(i, e)); 0 < t.signum();) 0 < (n = t.getLowestSetBit()) && t.rShiftTo(n, t), 0 < (n = e.getLowestSetBit()) && e.rShiftTo(n, e), 0 <= t.compareTo(e) ? (t.subTo(e, t), t.rShiftTo(1, t)) : (e.subTo(t, e), e.rShiftTo(1, e));
|
||
return 0 < i && e.lShiftTo(i, e), e
|
||
}, m.prototype.isProbablePrime = function (e) {
|
||
var t, n = this.abs();
|
||
if (1 == n.t && n[0] <= c[c.length - 1]) {
|
||
for (t = 0; t < c.length; ++t) if (n[0] == c[t]) return !0;
|
||
return !1
|
||
}
|
||
if (n.isEven()) return !1;
|
||
for (t = 1; t < c.length;) {
|
||
for (var i = c[t], r = t + 1; r < c.length && i < K;) i *= c[r++];
|
||
for (i = n.modInt(i); t < r;) if (i % c[t++] == 0) return !1
|
||
}
|
||
return n.millerRabin(e)
|
||
}, m.prototype.square = function () {
|
||
var e = p();
|
||
return this.squareTo(e), e
|
||
}, u = [], l = Math, h = 52, l.seedrandom = function (e, t) {
|
||
var n = [], e = _(function e(t, n, i, r, a) {
|
||
if (i = [], a = void 0 === t ? "undefined" : (0, F.default)(t), n && "object" == a) for (r in t) if (r.indexOf("S") < 5) try {
|
||
i.push(e(t[r], n - 1))
|
||
} catch (e) {
|
||
}
|
||
return i.length ? i : t + ("string" != a ? "\0" : "")
|
||
}(t ? [e, u] : arguments.length ? e : [(new Date).getTime(), u, window], 3), n), i = new X(n);
|
||
return _(i.S, u), l.random = function () {
|
||
for (var e = i.g(6), t = q, n = 0; e < h;) e = 256 * (e + n), t *= 256, n = i.g(1);
|
||
for (; J <= e;) e /= 2, t /= 2, n >>>= 1;
|
||
return (e + n) / t
|
||
}, e
|
||
}, q = l.pow(256, 6), h = l.pow(2, h), J = 2 * h, _(l.random(), u), Z.prototype.nextBytes = function (e) {
|
||
for (var t = 0; t < e.length; t++) e[t] = Math.floor(256 * Math.random())
|
||
}, S.prototype.init = function (e) {
|
||
for (var t, n, i = 0; i < 256; ++i) this.S[i] = i;
|
||
for (i = t = 0; i < 256; ++i) t = t + this.S[i] + e[i % e.length] & 255, n = this.S[i], this.S[i] = this.S[t], this.S[t] = n;
|
||
this.j = this.i = 0
|
||
}, S.prototype.next = function () {
|
||
var e;
|
||
return this.i = this.i + 1 & 255, this.j = this.j + this.S[this.i] & 255, e = this.S[this.i], this.S[this.i] = this.S[this.j], this.S[this.j] = e, this.S[e + this.S[this.i] & 255]
|
||
};
|
||
var k, b = 256;
|
||
|
||
function $() {
|
||
var e;
|
||
e = (new Date).getTime(), w[D++] ^= 255 & e, w[D++] ^= e >> 8 & 255, w[D++] ^= e >> 16 & 255, w[D++] ^= e >> 24 & 255, b <= D && (D -= b)
|
||
}
|
||
|
||
var w = [], D = 0;
|
||
if ("Netscape" == e && B < "5" && window.crypto) for (var Q = window.crypto.random(32), T = 0; T < Q.length; ++T) w[D++] = 255 & Q.charCodeAt(T);
|
||
for (; D < b;) T = Math.floor(65536 * Math.random()), w[D++] = T >>> 8, w[D++] = 255 & T;
|
||
|
||
function ee() {
|
||
if (null == k) {
|
||
for ($(), (k = new S).init(w), D = 0; D < w.length; ++D) w[D] = 0;
|
||
D = 0
|
||
}
|
||
return k.next()
|
||
}
|
||
|
||
function E() {
|
||
}
|
||
|
||
D = 0, $(), E.prototype.nextBytes = function (e) {
|
||
for (var t = 0; t < e.length; ++t) e[t] = ee()
|
||
};
|
||
var te = function (e) {
|
||
function y(e, t) {
|
||
var n = (65535 & e) + (65535 & t);
|
||
return (e >> 16) + (t >> 16) + (n >> 16) << 16 | 65535 & n
|
||
}
|
||
|
||
function v(e, t) {
|
||
return e >>> t | e << 32 - t
|
||
}
|
||
|
||
for (var t = function (e, t) {
|
||
var n, i, r, a, s, o, u, d, l, h, c, _,
|
||
f = [1116352408, 1899447441, 3049323471, 3921009573, 961987163, 1508970993, 2453635748, 2870763221, 3624381080, 310598401, 607225278, 1426881987, 1925078388, 2162078206, 2614888103, 3248222580, 3835390401, 4022224774, 264347078, 604807628, 770255983, 1249150122, 1555081692, 1996064986, 2554220882, 2821834349, 2952996808, 3210313671, 3336571891, 3584528711, 113926993, 338241895, 666307205, 773529912, 1294757372, 1396182291, 1695183700, 1986661051, 2177026350, 2456956037, 2730485921, 2820302411, 3259730800, 3345764771, 3516065817, 3600352804, 4094571909, 275423344, 430227734, 506948616, 659060556, 883997877, 958139571, 1322822218, 1537002063, 1747873779, 1955562222, 2024104815, 2227730452, 2361852424, 2428436474, 2756734187, 3204031479, 3329325298],
|
||
m = [1779033703, 3144134277, 1013904242, 2773480762, 1359893119, 2600822924, 528734635, 1541459225],
|
||
p = Array(64);
|
||
for (e[t >> 5] |= 128 << 24 - t % 32, e[15 + (64 + t >> 9 << 4)] = t, l = 0; l < e.length; l += 16) {
|
||
for (n = m[0], i = m[1], r = m[2], a = m[3], s = m[4], o = m[5], u = m[6], d = m[7], h = 0; h < 64; h++) p[h] = h < 16 ? e[h + l] : y(y(y(v(p[h - 2], 17) ^ v(p[h - 2], 19) ^ p[h - 2] >>> 10, p[h - 7]), v(p[h - 15], 7) ^ v(p[h - 15], 18) ^ p[h - 15] >>> 3), p[h - 16]), c = y(y(y(y(d, v(s, 6) ^ v(s, 11) ^ v(s, 25)), s & o ^ ~s & u), f[h]), p[h]), _ = y(v(n, 2) ^ v(n, 13) ^ v(n, 22), n & i ^ n & r ^ i & r), d = u, u = o, o = s, s = y(a, c), a = r, r = i, i = n, n = y(c, _);
|
||
m[0] = y(n, m[0]), m[1] = y(i, m[1]), m[2] = y(r, m[2]), m[3] = y(a, m[3]), m[4] = y(s, m[4]), m[5] = y(o, m[5]), m[6] = y(u, m[6]), m[7] = y(d, m[7])
|
||
}
|
||
return m
|
||
}(function (e) {
|
||
for (var t = [], n = 0; n < 8 * e.length; n += 8) t[n >> 5] |= (255 & e.charCodeAt(n / 8)) << 24 - n % 32;
|
||
return t
|
||
}(e = function (e) {
|
||
for (var e = e.replace(/\r\n/g, "\n"), t = "", n = 0; n < e.length; n++) {
|
||
var i = e.charCodeAt(n);
|
||
i < 128 ? t += String.fromCharCode(i) : (127 < i && i < 2048 ? t += String.fromCharCode(i >> 6 | 192) : t = (t += String.fromCharCode(i >> 12 | 224)) + String.fromCharCode(i >> 6 & 63 | 128), t += String.fromCharCode(63 & i | 128))
|
||
}
|
||
return t
|
||
}(e)), 8 * e.length), n = "", i = 0; i < 4 * t.length; i++) n += "0123456789abcdef".charAt(t[i >> 2] >> 8 * (3 - i % 4) + 4 & 15) + "0123456789abcdef".charAt(t[i >> 2] >> 8 * (3 - i % 4) & 15);
|
||
return n
|
||
};
|
||
var Y = function (e) {
|
||
var t = e;
|
||
|
||
function n(e, t) {
|
||
return e << t | e >>> 32 - t
|
||
}
|
||
|
||
function i(e) {
|
||
for (var t = "", n = 7; 0 <= n; n--) t += (e >>> 4 * n & 15).toString(16);
|
||
return t
|
||
}
|
||
|
||
for (var r, a, s, o, u, d = Array(80), l = 1732584193, h = 4023233417, c = 2562383102, _ = 271733878, f = 3285377520, m = (t = function (e) {
|
||
for (var e = e.replace(/\r\n/g, "\n"), t = "", n = 0; n < e.length; n++) {
|
||
var i = e.charCodeAt(n);
|
||
i < 128 ? t += String.fromCharCode(i) : (127 < i && i < 2048 ? t += String.fromCharCode(i >> 6 | 192) : t = (t += String.fromCharCode(i >> 12 | 224)) + String.fromCharCode(i >> 6 & 63 | 128), t += String.fromCharCode(63 & i | 128))
|
||
}
|
||
return t
|
||
}(t)).length, p = [], y = 0; y < m - 3; y += 4) r = t.charCodeAt(y) << 24 | t.charCodeAt(y + 1) << 16 | t.charCodeAt(y + 2) << 8 | t.charCodeAt(y + 3), p.push(r);
|
||
switch (m % 4) {
|
||
case 0:
|
||
y = 2147483648;
|
||
break;
|
||
case 1:
|
||
y = t.charCodeAt(m - 1) << 24 | 8388608;
|
||
break;
|
||
case 2:
|
||
y = t.charCodeAt(m - 2) << 24 | t.charCodeAt(m - 1) << 16 | 32768;
|
||
break;
|
||
case 3:
|
||
y = t.charCodeAt(m - 3) << 24 | t.charCodeAt(m - 2) << 16 | t.charCodeAt(m - 1) << 8 | 128
|
||
}
|
||
for (p.push(y); p.length % 16 != 14;) p.push(0);
|
||
for (p.push(m >>> 29), p.push(m << 3 & 4294967295), t = 0; t < p.length; t += 16) {
|
||
for (y = 0; y < 16; y++) d[y] = p[t + y];
|
||
for (y = 16; y <= 79; y++) d[y] = n(d[y - 3] ^ d[y - 8] ^ d[y - 14] ^ d[y - 16], 1);
|
||
for (r = l, m = h, a = c, s = _, o = f, y = 0; y <= 19; y++) u = n(r, 5) + (m & a | ~m & s) + o + d[y] + 1518500249 & 4294967295, o = s, s = a, a = n(m, 30), m = r, r = u;
|
||
for (y = 20; y <= 39; y++) u = n(r, 5) + (m ^ a ^ s) + o + d[y] + 1859775393 & 4294967295, o = s, s = a, a = n(m, 30), m = r, r = u;
|
||
for (y = 40; y <= 59; y++) u = n(r, 5) + (m & a | m & s | a & s) + o + d[y] + 2400959708 & 4294967295, o = s, s = a, a = n(m, 30), m = r, r = u;
|
||
for (y = 60; y <= 79; y++) u = n(r, 5) + (m ^ a ^ s) + o + d[y] + 3395469782 & 4294967295, o = s, s = a, a = n(m, 30), m = r, r = u;
|
||
l = l + r & 4294967295, h = h + m & 4294967295, c = c + a & 4294967295, _ = _ + s & 4294967295, f = f + o & 4294967295
|
||
}
|
||
return (u = i(l) + i(h) + i(c) + i(_) + i(f)).toLowerCase()
|
||
};
|
||
|
||
function P(e, t) {
|
||
return new m(e, t)
|
||
}
|
||
|
||
function C() {
|
||
this.n = null, this.e = 0, this.coeff = this.dmq1 = this.dmp1 = this.q = this.p = this.d = null
|
||
}
|
||
|
||
C.prototype.doPublic = function (e) {
|
||
return e.modPowInt(this.e, this.n)
|
||
}, C.prototype.setPublic = function (e, t) {
|
||
null != e && null != t && 0 < e.length && 0 < t.length ? (this.n = P(e, 16), this.e = parseInt(t, 16)) : alert("Invalid RSA public key")
|
||
}, C.prototype.encrypt = function (e) {
|
||
return null == (e = function (e, t) {
|
||
if (t < e.length + 11) throw"Message too long for RSA (n=" + t + ", l=" + e.length + ")";
|
||
for (var n = [], i = e.length - 1; 0 <= i && 0 < t;) {
|
||
var r = e.charCodeAt(i--);
|
||
r < 128 ? n[--t] = r : 127 < r && r < 2048 ? (n[--t] = 63 & r | 128, n[--t] = r >> 6 | 192) : (n[--t] = 63 & r | 128, n[--t] = r >> 6 & 63 | 128, n[--t] = r >> 12 | 224)
|
||
}
|
||
for (n[--t] = 0, i = new E, r = []; 2 < t;) {
|
||
for (r[0] = 0; 0 == r[0];) i.nextBytes(r);
|
||
n[--t] = r[0]
|
||
}
|
||
return n[--t] = 2, n[--t] = 0, new m(n)
|
||
}(e, this.n.bitLength() + 7 >> 3)) || null == (e = this.doPublic(e)) ? null : 0 == (1 & (e = e.toString(16)).length) ? e : "0" + e
|
||
}, C.prototype.doPrivate = function (e) {
|
||
if (null == this.p || null == this.q) return e.modPow(this.d, this.n);
|
||
for (var t = e.mod(this.p).modPow(this.dmp1, this.p), e = e.mod(this.q).modPow(this.dmq1, this.q); t.compareTo(e) < 0;) t = t.add(this.p);
|
||
return t.subtract(e).multiply(this.coeff).mod(this.p).multiply(this.q).add(e)
|
||
}, C.prototype.setPrivate = function (e, t, n) {
|
||
null != e && null != t && 0 < e.length && 0 < t.length ? (this.n = P(e, 16), this.e = parseInt(t, 16), this.d = P(n, 16)) : alert("Invalid RSA private key")
|
||
}, C.prototype.setPrivateEx = function (e, t, n, i, r, a, s, o) {
|
||
null != e && null != t && 0 < e.length && 0 < t.length ? (this.n = P(e, 16), this.e = parseInt(t, 16), this.d = P(n, 16), this.p = P(i, 16), this.q = P(r, 16), this.dmp1 = P(a, 16), this.dmq1 = P(s, 16), this.coeff = P(o, 16)) : alert("Invalid RSA private key")
|
||
}, C.prototype.generate = function (e, t) {
|
||
var n = new Z, i = e >> 1;
|
||
this.e = parseInt(t, 16);
|
||
for (var r = new m(t, 16); ;) {
|
||
for (; this.p = new m(e - i, 1, n), 0 != this.p.subtract(m.ONE).gcd(r).compareTo(m.ONE) || !this.p.isProbablePrime(10);) ;
|
||
for (; this.q = new m(i, 1, n), 0 != this.q.subtract(m.ONE).gcd(r).compareTo(m.ONE) || !this.q.isProbablePrime(10);) ;
|
||
this.p.compareTo(this.q) <= 0 && (a = this.p, this.p = this.q, this.q = a);
|
||
var a = this.p.subtract(m.ONE), s = this.q.subtract(m.ONE), o = a.multiply(s);
|
||
if (0 == o.gcd(r).compareTo(m.ONE)) {
|
||
this.n = this.p.multiply(this.q), this.d = r.modInverse(o), this.dmp1 = this.d.mod(a), this.dmq1 = this.d.mod(s), this.coeff = this.q.modInverse(this.p);
|
||
break
|
||
}
|
||
}
|
||
}, C.prototype.decrypt = function (e) {
|
||
if (null == (e = this.doPrivate(P(e, 16)))) return null;
|
||
for (var t = this.n.bitLength() + 7 >> 3, n = e.toByteArray(), i = 0; i < n.length && 0 == n[i];) ++i;
|
||
if (n.length - i != t - 1 || 2 != n[i]) return null;
|
||
for (++i; 0 != n[i];) if (++i >= n.length) return null;
|
||
for (var r = ""; ++i < n.length;) {
|
||
var a = 255 & n[i];
|
||
a < 128 ? r += String.fromCharCode(a) : 191 < a && a < 224 ? (r += String.fromCharCode((31 & a) << 6 | 63 & n[i + 1]), ++i) : (r += String.fromCharCode((15 & a) << 12 | (63 & n[i + 1]) << 6 | 63 & n[i + 2]), i += 2)
|
||
}
|
||
return r
|
||
};
|
||
var R = [],
|
||
A = (R.sha1 = "3021300906052b0e03021a05000414", R.sha256 = "3031300d060960864801650304020105000420", []);
|
||
|
||
function x(e, t, n) {
|
||
t /= 4;
|
||
for (var e = (0, A[n])(e), n = "00" + R[n] + e, e = "", t = t - 4 - n.length, i = 0; i < t; i += 2) e += "ff";
|
||
return sPaddedMessageHex = "0001" + e + n
|
||
}
|
||
|
||
function ne(e, t, n) {
|
||
return e = e, t = t, n = n, (i = new C).setPublic(t, n), i.doPublic(e).toString(16).replace(/^1f+00/, "");
|
||
var i
|
||
}
|
||
|
||
function ie(e) {
|
||
for (var t in R) {
|
||
var n = R[t], i = n.length;
|
||
if (e.substring(0, i) == n) return [t, e.substring(i)]
|
||
}
|
||
return []
|
||
}
|
||
|
||
A.sha1 = Y, A.sha256 = te, C.prototype.signString = function (e, t) {
|
||
return e = x(e, this.n.bitLength(), t), this.doPrivate(P(e, 16)).toString(16)
|
||
}, C.prototype.signStringWithSHA1 = function (e) {
|
||
return e = x(e, this.n.bitLength(), "sha1"), this.doPrivate(P(e, 16)).toString(16)
|
||
}, C.prototype.signStringWithSHA256 = function (e) {
|
||
return e = x(e, this.n.bitLength(), "sha256"), this.doPrivate(P(e, 16)).toString(16)
|
||
}, C.prototype.verifyString = function (e, t) {
|
||
return t = t.replace(/[ \n]+/g, ""), 0 != (t = ie(this.doPublic(P(t, 16)).toString(16).replace(/^1f+00/, ""))).length && t[1] == (0, A[t[0]])(e)
|
||
}, C.prototype.verifyHexSignatureForMessage = function (e, t) {
|
||
var n, i, e = P(e, 16);
|
||
return t = t, e = e, n = this.n.toString(16), i = this.e.toString(16), 0 != (n = ie(e = ne(e, n, i))).length && (e = n[1]) == (t = (0, A[n[0]])(t))
|
||
};
|
||
var O, I, W = I = {
|
||
Sbox: [99, 124, 119, 123, 242, 107, 111, 197, 48, 1, 103, 43, 254, 215, 171, 118, 202, 130, 201, 125, 250, 89, 71, 240, 173, 212, 162, 175, 156, 164, 114, 192, 183, 253, 147, 38, 54, 63, 247, 204, 52, 165, 229, 241, 113, 216, 49, 21, 4, 199, 35, 195, 24, 150, 5, 154, 7, 18, 128, 226, 235, 39, 178, 117, 9, 131, 44, 26, 27, 110, 90, 160, 82, 59, 214, 179, 41, 227, 47, 132, 83, 209, 0, 237, 32, 252, 177, 91, 106, 203, 190, 57, 74, 76, 88, 207, 208, 239, 170, 251, 67, 77, 51, 133, 69, 249, 2, 127, 80, 60, 159, 168, 81, 163, 64, 143, 146, 157, 56, 245, 188, 182, 218, 33, 16, 255, 243, 210, 205, 12, 19, 236, 95, 151, 68, 23, 196, 167, 126, 61, 100, 93, 25, 115, 96, 129, 79, 220, 34, 42, 144, 136, 70, 238, 184, 20, 222, 94, 11, 219, 224, 50, 58, 10, 73, 6, 36, 92, 194, 211, 172, 98, 145, 149, 228, 121, 231, 200, 55, 109, 141, 213, 78, 169, 108, 86, 244, 234, 101, 122, 174, 8, 186, 120, 37, 46, 28, 166, 180, 198, 232, 221, 116, 31, 75, 189, 139, 138, 112, 62, 181, 102, 72, 3, 246, 14, 97, 53, 87, 185, 134, 193, 29, 158, 225, 248, 152, 17, 105, 217, 142, 148, 155, 30, 135, 233, 206, 85, 40, 223, 140, 161, 137, 13, 191, 230, 66, 104, 65, 153, 45, 15, 176, 84, 187, 22],
|
||
ShiftRowTab: [0, 5, 10, 15, 4, 9, 14, 3, 8, 13, 2, 7, 12, 1, 6, 11],
|
||
Init: function () {
|
||
I.Sbox_Inv = Array(256);
|
||
for (var e = 0; e < 256; e++) I.Sbox_Inv[I.Sbox[e]] = e;
|
||
for (I.ShiftRowTab_Inv = Array(16), e = 0; e < 16; e++) I.ShiftRowTab_Inv[I.ShiftRowTab[e]] = e;
|
||
for (I.xtime = Array(256), e = 0; e < 128; e++) I.xtime[e] = e << 1, I.xtime[128 + e] = e << 1 ^ 27
|
||
},
|
||
Done: function () {
|
||
delete I.Sbox_Inv, delete I.ShiftRowTab_Inv, delete I.xtime
|
||
},
|
||
ExpandKey: function (e) {
|
||
var t, n = e.length, i = 1;
|
||
switch (n) {
|
||
case 16:
|
||
t = 176;
|
||
break;
|
||
case 24:
|
||
t = 208;
|
||
break;
|
||
case 32:
|
||
t = 240;
|
||
break;
|
||
default:
|
||
alert("my.ExpandKey: Only key lengths of 16, 24 or 32 bytes allowed!")
|
||
}
|
||
for (var r = n; r < t; r += 4) {
|
||
var a = e.slice(r - 4, r);
|
||
r % n == 0 ? (a = [I.Sbox[a[1]] ^ i, I.Sbox[a[2]], I.Sbox[a[3]], I.Sbox[a[0]]], 256 <= (i <<= 1) && (i ^= 283)) : 24 < n && r % n == 16 && (a = [I.Sbox[a[0]], I.Sbox[a[1]], I.Sbox[a[2]], I.Sbox[a[3]]]);
|
||
for (var s = 0; s < 4; s++) e[r + s] = e[r + s - n] ^ a[s]
|
||
}
|
||
},
|
||
Encrypt: function (e, t) {
|
||
var n = t.length;
|
||
I.AddRoundKey(e, t.slice(0, 16));
|
||
for (var i = 16; i < n - 16; i += 16) I.SubBytes(e, I.Sbox), I.ShiftRows(e, I.ShiftRowTab), I.MixColumns(e), I.AddRoundKey(e, t.slice(i, i + 16));
|
||
I.SubBytes(e, I.Sbox), I.ShiftRows(e, I.ShiftRowTab), I.AddRoundKey(e, t.slice(i, n))
|
||
},
|
||
Decrypt: function (e, t) {
|
||
var n = t.length;
|
||
for (I.AddRoundKey(e, t.slice(n - 16, n)), I.ShiftRows(e, I.ShiftRowTab_Inv), I.SubBytes(e, I.Sbox_Inv), n -= 32; 16 <= n; n -= 16) I.AddRoundKey(e, t.slice(n, n + 16)), I.MixColumns_Inv(e), I.ShiftRows(e, I.ShiftRowTab_Inv), I.SubBytes(e, I.Sbox_Inv);
|
||
I.AddRoundKey(e, t.slice(0, 16))
|
||
},
|
||
SubBytes: function (e, t) {
|
||
for (var n = 0; n < 16; n++) e[n] = t[e[n]]
|
||
},
|
||
AddRoundKey: function (e, t) {
|
||
for (var n = 0; n < 16; n++) e[n] ^= t[n]
|
||
},
|
||
ShiftRows: function (e, t) {
|
||
for (var n = [].concat(e), i = 0; i < 16; i++) e[i] = n[t[i]]
|
||
},
|
||
MixColumns: function (e) {
|
||
for (var t = 0; t < 16; t += 4) {
|
||
var n = e[t + 0], i = e[t + 1], r = e[t + 2], a = e[t + 3], s = n ^ i ^ r ^ a;
|
||
e[t + 0] ^= s ^ I.xtime[n ^ i], e[t + 1] ^= s ^ I.xtime[i ^ r], e[t + 2] ^= s ^ I.xtime[r ^ a], e[t + 3] ^= s ^ I.xtime[a ^ n]
|
||
}
|
||
},
|
||
MixColumns_Inv: function (e) {
|
||
for (var t = 0; t < 16; t += 4) {
|
||
var n = e[t + 0], i = e[t + 1], r = e[t + 2], a = e[t + 3], s = n ^ i ^ r ^ a, o = I.xtime[s],
|
||
u = I.xtime[I.xtime[o ^ n ^ r]] ^ s;
|
||
s ^= I.xtime[I.xtime[o ^ i ^ a]], e[t + 0] ^= u ^ I.xtime[n ^ i], e[t + 1] ^= s ^ I.xtime[i ^ r], e[t + 2] ^= u ^ I.xtime[r ^ a], e[t + 3] ^= s ^ I.xtime[a ^ n]
|
||
}
|
||
}
|
||
}, e = (O = {}, W.Init(), O.b256to64 = function (e) {
|
||
for (var t, n, i = "", r = 0, a = e.length, s = 0; s < a; s++) n = e.charCodeAt(s), 0 == r ? (i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n >> 2 & 63), t = (3 & n) << 4) : 1 == r ? (i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t | n >> 4 & 15), t = (15 & n) << 2) : 2 == r && (i = (i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t | n >> 6 & 3)) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(63 & n)), 3 == (r += 1) && (r = 0);
|
||
return 0 < r && (i = i + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(t) + "="), 1 == r && (i += "="), i
|
||
}, O.b64to256 = function (e) {
|
||
for (var t, n = "", i = 0, r = 0, a = e.length, s = 0; s < a; s++) 0 <= (t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(s))) && (i && (n += String.fromCharCode(r | t >> 6 - i & 255)), r = t << (i = i + 2 & 7) & 255);
|
||
return n
|
||
}, O.b16to64 = function (e) {
|
||
var t, n, i = "";
|
||
for (e.length % 2 == 1 && (e = "0" + e), t = 0; t + 3 <= e.length; t += 3) n = parseInt(e.substring(t, t + 3), 16), i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n >> 6) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(63 & n);
|
||
for (t + 1 == e.length ? (n = parseInt(e.substring(t, t + 1), 16), i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n << 2)) : t + 2 == e.length && (n = parseInt(e.substring(t, t + 2), 16), i += "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n >> 2) + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((3 & n) << 4)); 0 < (3 & i.length);) i += "=";
|
||
return i
|
||
}, O.b64to16 = function (e) {
|
||
for (var t, n = "", i = 0, r = 0; r < e.length && "=" != e.charAt(r); ++r) (v = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(r))) < 0 || (i = 0 == i ? (n += o(v >> 2), t = 3 & v, 1) : 1 == i ? (n += o(t << 2 | v >> 4), t = 15 & v, 2) : 2 == i ? (n = (n += o(t)) + o(v >> 2), t = 3 & v, 3) : (n = (n += o(t << 2 | v >> 4)) + o(15 & v), 0));
|
||
return 1 == i && (n += o(t << 2)), n
|
||
}, O.string2bytes = function (e) {
|
||
for (var t = [], n = 0; n < e.length; n++) t.push(e.charCodeAt(n));
|
||
return t
|
||
}, O.bytes2string = function (e) {
|
||
for (var t = "", n = 0; n < e.length; n++) t += String.fromCharCode(e[n]);
|
||
return t
|
||
}, O.blockXOR = function (e, t) {
|
||
for (var n = Array(16), i = 0; i < 16; i++) n[i] = e[i] ^ t[i];
|
||
return n
|
||
}, O.blockIV = function () {
|
||
var e = new E, t = Array(16);
|
||
return e.nextBytes(t), t
|
||
}, O.pad16 = function (e) {
|
||
var t = e.slice(0), n = (16 - e.length % 16) % 16;
|
||
for (i = e.length; i < e.length + n; i++) t.push(0);
|
||
return t
|
||
}, O.depad = function (e) {
|
||
for (e = e.slice(0); 0 == e[e.length - 1];) e = e.slice(0, e.length - 1);
|
||
return e
|
||
}, O.encryptAESCBC = function (e, t) {
|
||
var n = t.slice(0);
|
||
W.ExpandKey(n);
|
||
for (var i = O.string2bytes(e), i = O.pad16(i), r = O.blockIV(), a = 0; a < i.length / 16; a++) {
|
||
var s = i.slice(16 * a, 16 * a + 16), o = r.slice(16 * a, 16 * a + 16), s = O.blockXOR(o, s);
|
||
W.Encrypt(s, n), r = r.concat(s)
|
||
}
|
||
return n = O.bytes2string(r), O.b256to64(n)
|
||
}, O.decryptAESCBC = function (e, t) {
|
||
var n = t.slice(0);
|
||
W.ExpandKey(n);
|
||
for (var e = O.b64to256(e), i = O.string2bytes(e), r = [], a = 1; a < i.length / 16; a++) {
|
||
var s = i.slice(16 * a, 16 * a + 16), o = i.slice(16 * (a - 1), 16 * (a - 1) + 16);
|
||
W.Decrypt(s, n), s = O.blockXOR(o, s), r = r.concat(s)
|
||
}
|
||
return r = O.depad(r), O.bytes2string(r)
|
||
}, O.wrap60 = function (e) {
|
||
for (var t = "", n = 0; n < e.length; n++) n % 60 == 0 && 0 != n && (t += "\n"), t += e[n];
|
||
return t
|
||
}, O.generateAESKey = function () {
|
||
var e = Array(16);
|
||
return (new E).nextBytes(e), e
|
||
}, O.generateRSAKey = function (e, t) {
|
||
Math.seedrandom(te(e));
|
||
e = new C;
|
||
return e.generate(t, "10001"), e
|
||
}, O.publicKeyString = function (e) {
|
||
return pubkey = e.n.toString(16)
|
||
}, O.publicKeyID = function (e) {
|
||
var t = e;
|
||
|
||
function o(e, t) {
|
||
var n = 2147483648 & e, i = 2147483648 & t, r = 1073741824 & e, a = 1073741824 & t,
|
||
e = (1073741823 & e) + (1073741823 & t);
|
||
return r & a ? 2147483648 ^ e ^ n ^ i : r | a ? 1073741824 & e ? 3221225472 ^ e ^ n ^ i : 1073741824 ^ e ^ n ^ i : e ^ n ^ i
|
||
}
|
||
|
||
function n(e, t, n, i, r, a, s) {
|
||
return e = o(e, o(o(t & n | ~t & i, r), s)), o(e << a | e >>> 32 - a, t)
|
||
}
|
||
|
||
function i(e, t, n, i, r, a, s) {
|
||
return e = o(e, o(o(t & i | n & ~i, r), s)), o(e << a | e >>> 32 - a, t)
|
||
}
|
||
|
||
function r(e, t, n, i, r, a, s) {
|
||
return e = o(e, o(o(t ^ n ^ i, r), s)), o(e << a | e >>> 32 - a, t)
|
||
}
|
||
|
||
function a(e, t, n, i, r, a, s) {
|
||
return e = o(e, o(o(n ^ (t | ~i), r), s)), o(e << a | e >>> 32 - a, t)
|
||
}
|
||
|
||
function s(e) {
|
||
for (var t = "", n = "", i = 0; i <= 3; i++) t += (n = "0" + (n = e >>> 8 * i & 255).toString(16)).substr(n.length - 2, 2);
|
||
return t
|
||
}
|
||
|
||
var u, d, l, h, c = function (e) {
|
||
for (var t, n = e.length, i = n + 8, i = 16 * ((i - i % 64) / 64 + 1), r = Array(i - 1), a = 0; a < n;) t = a % 4 * 8, r[(a - a % 4) / 4] |= e.charCodeAt(a) << t, a++;
|
||
return r[(a - a % 4) / 4] |= 128 << a % 4 * 8, r[i - 2] = n << 3, r[i - 1] = n >>> 29, r
|
||
}(t = function (e) {
|
||
for (var e = e.replace(/\r\n/g, "\n"), t = "", n = 0; n < e.length; n++) {
|
||
var i = e.charCodeAt(n);
|
||
i < 128 ? t += String.fromCharCode(i) : (127 < i && i < 2048 ? t += String.fromCharCode(i >> 6 | 192) : t = (t += String.fromCharCode(i >> 12 | 224)) + String.fromCharCode(i >> 6 & 63 | 128), t += String.fromCharCode(63 & i | 128))
|
||
}
|
||
return t
|
||
}(t)), _ = 1732584193, f = 4023233417, m = 2562383102, p = 271733878;
|
||
for (t = 0; t < c.length; t += 16) _ = n(u = _, d = f, l = m, h = p, c[t + 0], 7, 3614090360), p = n(p, _, f, m, c[t + 1], 12, 3905402710), m = n(m, p, _, f, c[t + 2], 17, 606105819), f = n(f, m, p, _, c[t + 3], 22, 3250441966), _ = n(_, f, m, p, c[t + 4], 7, 4118548399), p = n(p, _, f, m, c[t + 5], 12, 1200080426), m = n(m, p, _, f, c[t + 6], 17, 2821735955), f = n(f, m, p, _, c[t + 7], 22, 4249261313), _ = n(_, f, m, p, c[t + 8], 7, 1770035416), p = n(p, _, f, m, c[t + 9], 12, 2336552879), m = n(m, p, _, f, c[t + 10], 17, 4294925233), f = n(f, m, p, _, c[t + 11], 22, 2304563134), _ = n(_, f, m, p, c[t + 12], 7, 1804603682), p = n(p, _, f, m, c[t + 13], 12, 4254626195), m = n(m, p, _, f, c[t + 14], 17, 2792965006), _ = i(_, f = n(f, m, p, _, c[t + 15], 22, 1236535329), m, p, c[t + 1], 5, 4129170786), p = i(p, _, f, m, c[t + 6], 9, 3225465664), m = i(m, p, _, f, c[t + 11], 14, 643717713), f = i(f, m, p, _, c[t + 0], 20, 3921069994), _ = i(_, f, m, p, c[t + 5], 5, 3593408605), p = i(p, _, f, m, c[t + 10], 9, 38016083), m = i(m, p, _, f, c[t + 15], 14, 3634488961), f = i(f, m, p, _, c[t + 4], 20, 3889429448), _ = i(_, f, m, p, c[t + 9], 5, 568446438), p = i(p, _, f, m, c[t + 14], 9, 3275163606), m = i(m, p, _, f, c[t + 3], 14, 4107603335), f = i(f, m, p, _, c[t + 8], 20, 1163531501), _ = i(_, f, m, p, c[t + 13], 5, 2850285829), p = i(p, _, f, m, c[t + 2], 9, 4243563512), m = i(m, p, _, f, c[t + 7], 14, 1735328473), _ = r(_, f = i(f, m, p, _, c[t + 12], 20, 2368359562), m, p, c[t + 5], 4, 4294588738), p = r(p, _, f, m, c[t + 8], 11, 2272392833), m = r(m, p, _, f, c[t + 11], 16, 1839030562), f = r(f, m, p, _, c[t + 14], 23, 4259657740), _ = r(_, f, m, p, c[t + 1], 4, 2763975236), p = r(p, _, f, m, c[t + 4], 11, 1272893353), m = r(m, p, _, f, c[t + 7], 16, 4139469664), f = r(f, m, p, _, c[t + 10], 23, 3200236656), _ = r(_, f, m, p, c[t + 13], 4, 681279174), p = r(p, _, f, m, c[t + 0], 11, 3936430074), m = r(m, p, _, f, c[t + 3], 16, 3572445317), f = r(f, m, p, _, c[t + 6], 23, 76029189), _ = r(_, f, m, p, c[t + 9], 4, 3654602809), p = r(p, _, f, m, c[t + 12], 11, 3873151461), m = r(m, p, _, f, c[t + 15], 16, 530742520), _ = a(_, f = r(f, m, p, _, c[t + 2], 23, 3299628645), m, p, c[t + 0], 6, 4096336452), p = a(p, _, f, m, c[t + 7], 10, 1126891415), m = a(m, p, _, f, c[t + 14], 15, 2878612391), f = a(f, m, p, _, c[t + 5], 21, 4237533241), _ = a(_, f, m, p, c[t + 12], 6, 1700485571), p = a(p, _, f, m, c[t + 3], 10, 2399980690), m = a(m, p, _, f, c[t + 10], 15, 4293915773), f = a(f, m, p, _, c[t + 1], 21, 2240044497), _ = a(_, f, m, p, c[t + 8], 6, 1873313359), p = a(p, _, f, m, c[t + 15], 10, 4264355552), m = a(m, p, _, f, c[t + 6], 15, 2734768916), f = a(f, m, p, _, c[t + 13], 21, 1309151649), _ = a(_, f, m, p, c[t + 4], 6, 4149444226), p = a(p, _, f, m, c[t + 11], 10, 3174756917), m = a(m, p, _, f, c[t + 2], 15, 718787259), f = a(f, m, p, _, c[t + 9], 21, 3951481745), _ = o(_, u), f = o(f, d), m = o(m, l), p = o(p, h);
|
||
return (s(_) + s(f) + s(m) + s(p)).toLowerCase()
|
||
}, O.publicKeyFromString = function (e) {
|
||
var e = e.split("|")[0], t = new C;
|
||
return t.setPublic(e, "10001"), t
|
||
}, O.encrypt = function (e, t, n) {
|
||
var i = "";
|
||
try {
|
||
i += O.publicKeyFromString(t).encrypt(e) + "?"
|
||
} catch (e) {
|
||
return {status: "Invalid public key"}
|
||
}
|
||
return {status: "success", cipher: i}
|
||
}, O.decrypt = function (e, t) {
|
||
e = e.split("?");
|
||
return {status: "success", plaintext: t.decrypt(e[0]), signature: "unsigned"}
|
||
}, O);
|
||
H.exports = e
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(271), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(41), n(75), e.exports = n(57).f("iterator")
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(273), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(274), n(67), n(279), n(280), e.exports = n(3).Symbol
|
||
}, function (I, W, e) {
|
||
"use strict";
|
||
|
||
function i(e) {
|
||
var t = E[e] = g(S[w]);
|
||
return t._k = e, t
|
||
}
|
||
|
||
function n(e, t) {
|
||
m(e);
|
||
for (var n, i = z(t = p(t)), r = 0, a = i.length; r < a;) O(e, n = i[r++], t[n]);
|
||
return e
|
||
}
|
||
|
||
function t(e) {
|
||
var t = ee.call(this, e = y(e, !0));
|
||
return !(this === P && u(E, e) && !u(Y, e)) && (!(t || !u(this, e) || !u(E, e) || u(this, D) && this[D][e]) || t)
|
||
}
|
||
|
||
function r(e, t) {
|
||
var n;
|
||
if (e = p(e), t = y(t, !0), e !== P || !u(E, t) || u(Y, t)) return !(n = Z(e, t)) || !u(E, t) || u(e, D) && e[D][t] || (n.enumerable = !0), n
|
||
}
|
||
|
||
function a(e) {
|
||
for (var t, n = $(p(e)), i = [], r = 0; n.length > r;) u(E, t = n[r++]) || t == D || t == j || i.push(t);
|
||
return i
|
||
}
|
||
|
||
function s(e) {
|
||
for (var t, n = e === P, i = $(n ? Y : p(e)), r = [], a = 0; i.length > a;) !u(E, t = i[a++]) || n && !u(P, t) || r.push(E[t]);
|
||
return r
|
||
}
|
||
|
||
var o = e(6), u = e(18), d = e(14), l = e(8), H = e(70), j = e(275).KEY, h = e(23), c = e(49), _ = e(36),
|
||
F = e(35), f = e(7), B = e(57), N = e(58), z = e(276), U = e(277), m = e(13), V = e(16), G = e(24),
|
||
p = e(19), y = e(45), v = e(28), g = e(46), J = e(278), q = e(60), M = e(59), K = e(12), X = e(30), Z = q.f,
|
||
L = K.f, $ = J.f, S = o.Symbol, k = o.JSON, b = k && k.stringify, w = "prototype", D = f("_hidden"),
|
||
Q = f("toPrimitive"), ee = {}.propertyIsEnumerable, T = c("symbol-registry"), E = c("symbols"),
|
||
Y = c("op-symbols"), P = Object[w], c = "function" == typeof S && !!M.f, C = o.QObject,
|
||
R = !C || !C[w] || !C[w].findChild, A = d && h(function () {
|
||
return 7 != g(L({}, "a", {
|
||
get: function () {
|
||
return L(this, "a", {value: 7}).a
|
||
}
|
||
})).a
|
||
}) ? function (e, t, n) {
|
||
var i = Z(P, t);
|
||
i && delete P[t], L(e, t, n), i && e !== P && L(P, t, i)
|
||
} : L, x = c && "symbol" == typeof S.iterator ? function (e) {
|
||
return "symbol" == typeof e
|
||
} : function (e) {
|
||
return e instanceof S
|
||
}, O = function (e, t, n) {
|
||
return e === P && O(Y, t, n), m(e), t = y(t, !0), m(n), u(E, t) ? (n.enumerable ? (u(e, D) && e[D][t] && (e[D][t] = !1), n = g(n, {enumerable: v(0, !1)})) : (u(e, D) || L(e, D, v(1, {})), e[D][t] = !0), A(e, t, n)) : L(e, t, n)
|
||
};
|
||
c || (H((S = function () {
|
||
if (this instanceof S) throw TypeError("Symbol is not a constructor!");
|
||
var t = F(0 < arguments.length ? arguments[0] : void 0), n = function (e) {
|
||
this === P && n.call(Y, e), u(this, D) && u(this[D], t) && (this[D][t] = !1), A(this, t, v(1, e))
|
||
};
|
||
return d && R && A(P, t, {configurable: !0, set: n}), i(t)
|
||
})[w], "toString", function () {
|
||
return this._k
|
||
}), q.f = r, K.f = O, e(90).f = J.f = a, e(37).f = t, M.f = s, d && !e(27) && H(P, "propertyIsEnumerable", t, !0), B.f = function (e) {
|
||
return i(f(e))
|
||
}), l(l.G + l.W + l.F * !c, {Symbol: S});
|
||
for (var te = "hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","), ne = 0; te.length > ne;) f(te[ne++]);
|
||
for (var ie = X(f.store), re = 0; ie.length > re;) N(ie[re++]);
|
||
l(l.S + l.F * !c, "Symbol", {
|
||
for: function (e) {
|
||
return u(T, e += "") ? T[e] : T[e] = S(e)
|
||
}, keyFor: function (e) {
|
||
if (!x(e)) throw TypeError(e + " is not a symbol!");
|
||
for (var t in T) if (T[t] === e) return t
|
||
}, useSetter: function () {
|
||
R = !0
|
||
}, useSimple: function () {
|
||
R = !1
|
||
}
|
||
}), l(l.S + l.F * !c, "Object", {
|
||
create: function (e, t) {
|
||
return void 0 === t ? g(e) : n(g(e), t)
|
||
},
|
||
defineProperty: O,
|
||
defineProperties: n,
|
||
getOwnPropertyDescriptor: r,
|
||
getOwnPropertyNames: a,
|
||
getOwnPropertySymbols: s
|
||
});
|
||
C = h(function () {
|
||
M.f(1)
|
||
});
|
||
l(l.S + l.F * C, "Object", {
|
||
getOwnPropertySymbols: function (e) {
|
||
return M.f(G(e))
|
||
}
|
||
}), k && l(l.S + l.F * (!c || h(function () {
|
||
var e = S();
|
||
return "[null]" != b([e]) || "{}" != b({a: e}) || "{}" != b(Object(e))
|
||
})), "JSON", {
|
||
stringify: function (e) {
|
||
for (var t, n, i = [e], r = 1; r < arguments.length;) i.push(arguments[r++]);
|
||
if (n = t = i[1], (V(t) || void 0 !== e) && !x(e)) return U(t) || (t = function (e, t) {
|
||
if ("function" == typeof n && (t = n.call(this, e, t)), !x(t)) return t
|
||
}), i[1] = t, b.apply(k, i)
|
||
}
|
||
}), S[w][Q] || e(17)(S[w], Q, S[w].valueOf), _(S, "Symbol"), _(Math, "Math", !0), _(o.JSON, "JSON", !0)
|
||
}, function (e, t, n) {
|
||
function i(e) {
|
||
o(e, r, {value: {i: "O" + ++u, w: {}}})
|
||
}
|
||
|
||
var r = n(35)("meta"), a = n(16), s = n(18), o = n(12).f, u = 0, d = Object.isExtensible || function () {
|
||
return !0
|
||
}, l = !n(23)(function () {
|
||
return d(Object.preventExtensions({}))
|
||
}), h = e.exports = {
|
||
KEY: r, NEED: !1, fastKey: function (e, t) {
|
||
if (!a(e)) return "symbol" == typeof e ? e : ("string" == typeof e ? "S" : "P") + e;
|
||
if (!s(e, r)) {
|
||
if (!d(e)) return "F";
|
||
if (!t) return "E";
|
||
i(e)
|
||
}
|
||
return e[r].i
|
||
}, getWeak: function (e, t) {
|
||
if (!s(e, r)) {
|
||
if (!d(e)) return !0;
|
||
if (!t) return !1;
|
||
i(e)
|
||
}
|
||
return e[r].w
|
||
}, onFreeze: function (e) {
|
||
return l && h.NEED && d(e) && !s(e, r) && i(e), e
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
var o = n(30), u = n(59), d = n(37);
|
||
e.exports = function (e) {
|
||
var t = o(e), n = u.f;
|
||
if (n) for (var i, r = n(e), a = d.f, s = 0; r.length > s;) a.call(e, i = r[s++]) && t.push(i);
|
||
return t
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(31);
|
||
e.exports = Array.isArray || function (e) {
|
||
return "Array" == i(e)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(19), r = n(90).f, a = {}.toString,
|
||
s = "object" == typeof window && window && Object.getOwnPropertyNames ? Object.getOwnPropertyNames(window) : [];
|
||
e.exports.f = function (e) {
|
||
if (!s || "[object Window]" != a.call(e)) return r(i(e));
|
||
try {
|
||
return r(e)
|
||
} catch (e) {
|
||
return s.slice()
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
n(58)("asyncIterator")
|
||
}, function (e, t, n) {
|
||
n(58)("observable")
|
||
}, function (I, W, H) {
|
||
"use strict";
|
||
Object.defineProperty(W, "__esModule", {value: !0});
|
||
o = Math, m = (y = {}).lib = {}, t = m.Base = {
|
||
extend: function (e) {
|
||
G.prototype = this;
|
||
var t = new G;
|
||
return e && t.mixIn(e), t.hasOwnProperty("init") || (t.init = function () {
|
||
t.$super.init.apply(this, arguments)
|
||
}), (t.init.prototype = t).$super = this, t
|
||
}, create: function () {
|
||
var e = this.extend();
|
||
return e.init.apply(e, arguments), e
|
||
}, init: function () {
|
||
}, mixIn: function (e) {
|
||
for (var t in e) e.hasOwnProperty(t) && (this[t] = e[t]);
|
||
e.hasOwnProperty("toString") && (this.toString = e.toString)
|
||
}, clone: function () {
|
||
return this.init.prototype.extend(this)
|
||
}
|
||
}, u = m.WordArray = t.extend({
|
||
init: function (e, t) {
|
||
e = this.words = e || [], this.sigBytes = null != t ? t : 4 * e.length
|
||
}, toString: function (e) {
|
||
return (e || j).stringify(this)
|
||
}, concat: function (e) {
|
||
var t = this.words, n = e.words, i = this.sigBytes;
|
||
if (e = e.sigBytes, this.clamp(), i % 4) for (var r = 0; r < e; r++) t[i + r >>> 2] |= (n[r >>> 2] >>> 24 - r % 4 * 8 & 255) << 24 - (i + r) % 4 * 8; else if (65535 < n.length) for (r = 0; r < e; r += 4) t[i + r >>> 2] = n[r >>> 2]; else t.push.apply(t, n);
|
||
return this.sigBytes += e, this
|
||
}, clamp: function () {
|
||
var e = this.words, t = this.sigBytes;
|
||
e[t >>> 2] &= 4294967295 << 32 - t % 4 * 8, e.length = o.ceil(t / 4)
|
||
}, clone: function () {
|
||
var e = t.clone.call(this);
|
||
return e.words = this.words.slice(0), e
|
||
}, random: function (e) {
|
||
for (var t = [], n = 0; n < e; n += 4) t.push(4294967296 * o.random() | 0);
|
||
return new u.init(t, e)
|
||
}
|
||
}), _ = y.enc = {}, j = _.Hex = {
|
||
stringify: function (e) {
|
||
var t = e.words;
|
||
e = e.sigBytes;
|
||
for (var n = [], i = 0; i < e; i++) {
|
||
var r = t[i >>> 2] >>> 24 - i % 4 * 8 & 255;
|
||
n.push((r >>> 4).toString(16)), n.push((15 & r).toString(16))
|
||
}
|
||
return n.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, n = [], i = 0; i < t; i += 2) n[i >>> 3] |= parseInt(e.substr(i, 2), 16) << 24 - i % 8 * 4;
|
||
return new u.init(n, t / 2)
|
||
}
|
||
}, n = _.Latin1 = {
|
||
stringify: function (e) {
|
||
var t = e.words;
|
||
e = e.sigBytes;
|
||
for (var n = [], i = 0; i < e; i++) n.push(String.fromCharCode(t[i >>> 2] >>> 24 - i % 4 * 8 & 255));
|
||
return n.join("")
|
||
}, parse: function (e) {
|
||
for (var t = e.length, n = [], i = 0; i < t; i++) n[i >>> 2] |= (255 & e.charCodeAt(i)) << 24 - i % 4 * 8;
|
||
return new u.init(n, t)
|
||
}
|
||
}, F = _.Utf8 = {
|
||
stringify: function (e) {
|
||
try {
|
||
return decodeURIComponent(escape(n.stringify(e)))
|
||
} catch (e) {
|
||
throw Error("Malformed UTF-8 data")
|
||
}
|
||
}, parse: function (e) {
|
||
return n.parse(unescape(encodeURIComponent(e)))
|
||
}
|
||
}, e = m.BufferedBlockAlgorithm = t.extend({
|
||
reset: function () {
|
||
this._data = new u.init, this._nDataBytes = 0
|
||
}, _append: function (e) {
|
||
"string" == typeof e && (e = F.parse(e)), this._data.concat(e), this._nDataBytes += e.sigBytes
|
||
}, _process: function (e) {
|
||
var t = this._data, n = t.words, i = t.sigBytes, r = this.blockSize, a = i / (4 * r),
|
||
a = e ? o.ceil(a) : o.max((0 | a) - this._minBufferSize, 0), i = o.min(4 * (e = a * r), i);
|
||
if (e) {
|
||
for (var s = 0; s < e; s += r) this._doProcessBlock(n, s);
|
||
s = n.splice(0, e), t.sigBytes -= i
|
||
}
|
||
return new u.init(s, i)
|
||
}, clone: function () {
|
||
var e = t.clone.call(this);
|
||
return e._data = this._data.clone(), e
|
||
}, _minBufferSize: 0
|
||
}), m.Hasher = e.extend({
|
||
cfg: t.extend(), init: function (e) {
|
||
this.cfg = this.cfg.extend(e), this.reset()
|
||
}, reset: function () {
|
||
e.reset.call(this), this._doReset()
|
||
}, update: function (e) {
|
||
return this._append(e), this._process(), this
|
||
}, finalize: function (e) {
|
||
return e && this._append(e), this._doFinalize()
|
||
}, blockSize: 16, _createHelper: function (n) {
|
||
return function (e, t) {
|
||
return new n.init(t).finalize(e)
|
||
}
|
||
}, _createHmacHelper: function (n) {
|
||
return function (e, t) {
|
||
return new B.HMAC.init(n, t).finalize(e)
|
||
}
|
||
}
|
||
}), B = y.algo = {};
|
||
var o, t, u, j, n, F, e, B, N, z, U, s, i, r, V, a, d, l, h, c, _ = y;
|
||
|
||
function G() {
|
||
}
|
||
|
||
N = _.lib.WordArray, _.enc.Base64 = {
|
||
stringify: function (e) {
|
||
var t = e.words, n = e.sigBytes, i = this._map;
|
||
e.clamp(), e = [];
|
||
for (var r = 0; r < n; r += 3) for (var a = (t[r >>> 2] >>> 24 - r % 4 * 8 & 255) << 16 | (t[r + 1 >>> 2] >>> 24 - (r + 1) % 4 * 8 & 255) << 8 | t[r + 2 >>> 2] >>> 24 - (r + 2) % 4 * 8 & 255, s = 0; s < 4 && r + .75 * s < n; s++) e.push(i.charAt(a >>> 6 * (3 - s) & 63));
|
||
if (t = i.charAt(64)) for (; e.length % 4;) e.push(t);
|
||
return e.join("")
|
||
}, parse: function (e) {
|
||
var t = e.length, n = this._map;
|
||
!(a = n.charAt(64)) || -1 != (a = e.indexOf(a)) && (t = a);
|
||
for (var i, r, a = [], s = 0, o = 0; o < t; o++) o % 4 && (i = n.indexOf(e.charAt(o - 1)) << o % 4 * 2, r = n.indexOf(e.charAt(o)) >>> 6 - o % 4 * 2, a[s >>> 2] |= (i | r) << 24 - s % 4 * 8, s++);
|
||
return N.create(a, s)
|
||
}, _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
|
||
};
|
||
var f = Math;
|
||
|
||
function k(e, t, n, i, r, a, s) {
|
||
return ((e = e + (t & n | ~t & i) + r + s) << a | e >>> 32 - a) + t
|
||
}
|
||
|
||
function b(e, t, n, i, r, a, s) {
|
||
return ((e = e + (t & i | n & ~i) + r + s) << a | e >>> 32 - a) + t
|
||
}
|
||
|
||
function w(e, t, n, i, r, a, s) {
|
||
return ((e = e + (t ^ n ^ i) + r + s) << a | e >>> 32 - a) + t
|
||
}
|
||
|
||
function D(e, t, n, i, r, a, s) {
|
||
return ((e = e + (n ^ (t | ~i)) + r + s) << a | e >>> 32 - a) + t
|
||
}
|
||
|
||
for (var m = _, J = (y = m.lib).WordArray, p = y.Hasher, y = m.algo, T = [], v = 0; v < 64; v++) T[v] = 4294967296 * f.abs(f.sin(v + 1)) | 0;
|
||
|
||
function q(e, t, n) {
|
||
var i = this._iv;
|
||
i ? this._iv = void 0 : i = this._prevBlock;
|
||
for (var r = 0; r < n; r++) e[t + r] ^= i[r]
|
||
}
|
||
|
||
y = y.MD5 = p.extend({
|
||
_doReset: function () {
|
||
this._hash = new J.init([1732584193, 4023233417, 2562383102, 271733878])
|
||
}, _doProcessBlock: function (e, t) {
|
||
for (var n = 0; n < 16; n++) {
|
||
var i = e[r = t + n];
|
||
e[r] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8)
|
||
}
|
||
var n = this._hash.words, r = e[t + 0], i = e[t + 1], a = e[t + 2], s = e[t + 3], o = e[t + 4],
|
||
u = e[t + 5], d = e[t + 6], l = e[t + 7], h = e[t + 8], c = e[t + 9], _ = e[t + 10], f = e[t + 11],
|
||
m = e[t + 12], p = e[t + 13], y = e[t + 14], v = e[t + 15],
|
||
g = k(n[0], S = n[1], L = n[2], M = n[3], r, 7, T[0]), M = k(M, g, S, L, i, 12, T[1]),
|
||
L = k(L, M, g, S, a, 17, T[2]), S = k(S, L, M, g, s, 22, T[3]), g = k(g, S, L, M, o, 7, T[4]),
|
||
M = k(M, g, S, L, u, 12, T[5]), L = k(L, M, g, S, d, 17, T[6]), S = k(S, L, M, g, l, 22, T[7]),
|
||
g = k(g, S, L, M, h, 7, T[8]), M = k(M, g, S, L, c, 12, T[9]), L = k(L, M, g, S, _, 17, T[10]),
|
||
S = k(S, L, M, g, f, 22, T[11]), g = k(g, S, L, M, m, 7, T[12]), M = k(M, g, S, L, p, 12, T[13]),
|
||
L = k(L, M, g, S, y, 17, T[14]), g = b(g, S = k(S, L, M, g, v, 22, T[15]), L, M, i, 5, T[16]),
|
||
M = b(M, g, S, L, d, 9, T[17]), L = b(L, M, g, S, f, 14, T[18]), S = b(S, L, M, g, r, 20, T[19]),
|
||
g = b(g, S, L, M, u, 5, T[20]), M = b(M, g, S, L, _, 9, T[21]), L = b(L, M, g, S, v, 14, T[22]),
|
||
S = b(S, L, M, g, o, 20, T[23]), g = b(g, S, L, M, c, 5, T[24]), M = b(M, g, S, L, y, 9, T[25]),
|
||
L = b(L, M, g, S, s, 14, T[26]), S = b(S, L, M, g, h, 20, T[27]), g = b(g, S, L, M, p, 5, T[28]),
|
||
M = b(M, g, S, L, a, 9, T[29]), L = b(L, M, g, S, l, 14, T[30]),
|
||
g = w(g, S = b(S, L, M, g, m, 20, T[31]), L, M, u, 4, T[32]), M = w(M, g, S, L, h, 11, T[33]),
|
||
L = w(L, M, g, S, f, 16, T[34]), S = w(S, L, M, g, y, 23, T[35]), g = w(g, S, L, M, i, 4, T[36]),
|
||
M = w(M, g, S, L, o, 11, T[37]), L = w(L, M, g, S, l, 16, T[38]), S = w(S, L, M, g, _, 23, T[39]),
|
||
g = w(g, S, L, M, p, 4, T[40]), M = w(M, g, S, L, r, 11, T[41]), L = w(L, M, g, S, s, 16, T[42]),
|
||
S = w(S, L, M, g, d, 23, T[43]), g = w(g, S, L, M, c, 4, T[44]), M = w(M, g, S, L, m, 11, T[45]),
|
||
L = w(L, M, g, S, v, 16, T[46]), g = D(g, S = w(S, L, M, g, a, 23, T[47]), L, M, r, 6, T[48]),
|
||
M = D(M, g, S, L, l, 10, T[49]), L = D(L, M, g, S, y, 15, T[50]), S = D(S, L, M, g, u, 21, T[51]),
|
||
g = D(g, S, L, M, m, 6, T[52]), M = D(M, g, S, L, s, 10, T[53]), L = D(L, M, g, S, _, 15, T[54]),
|
||
S = D(S, L, M, g, i, 21, T[55]), g = D(g, S, L, M, h, 6, T[56]), M = D(M, g, S, L, v, 10, T[57]),
|
||
L = D(L, M, g, S, d, 15, T[58]), S = D(S, L, M, g, p, 21, T[59]), g = D(g, S, L, M, o, 6, T[60]),
|
||
M = D(M, g, S, L, f, 10, T[61]), L = D(L, M, g, S, a, 15, T[62]), S = D(S, L, M, g, c, 21, T[63]);
|
||
n[0] = n[0] + g | 0, n[1] = n[1] + S | 0, n[2] = n[2] + L | 0, n[3] = n[3] + M | 0
|
||
}, _doFinalize: function () {
|
||
var e = this._data, t = e.words, n = 8 * this._nDataBytes, i = 8 * e.sigBytes,
|
||
r = (t[i >>> 5] |= 128 << 24 - i % 32, f.floor(n / 4294967296));
|
||
for (t[15 + (64 + i >>> 9 << 4)] = 16711935 & (r << 8 | r >>> 24) | 4278255360 & (r << 24 | r >>> 8), t[14 + (64 + i >>> 9 << 4)] = 16711935 & (n << 8 | n >>> 24) | 4278255360 & (n << 24 | n >>> 8), e.sigBytes = 4 * (t.length + 1), this._process(), t = (e = this._hash).words, n = 0; n < 4; n++) i = t[n], t[n] = 16711935 & (i << 8 | i >>> 24) | 4278255360 & (i << 24 | i >>> 8);
|
||
return e
|
||
}, clone: function () {
|
||
var e = p.clone.call(this);
|
||
return e._hash = this._hash.clone(), e
|
||
}
|
||
}), m.MD5 = p._createHelper(y), m.HmacMD5 = p._createHmacHelper(y), y = (m = _).lib, h = y.Base, z = y.WordArray, U = (y = m.algo).EvpKDF = h.extend({
|
||
cfg: h.extend({
|
||
keySize: 4,
|
||
hasher: y.MD5,
|
||
iterations: 1
|
||
}), init: function (e) {
|
||
this.cfg = this.cfg.extend(e)
|
||
}, compute: function (e, t) {
|
||
for (var n = (s = this.cfg).hasher.create(), i = z.create(), r = i.words, a = s.keySize, s = s.iterations; r.length < a;) {
|
||
o && n.update(o);
|
||
var o = n.update(e).finalize(t);
|
||
n.reset();
|
||
for (var u = 1; u < s; u++) o = n.finalize(o), n.reset();
|
||
i.concat(o)
|
||
}
|
||
return i.sigBytes = 4 * a, i
|
||
}
|
||
}), m.EvpKDF = function (e, t, n) {
|
||
return U.create(n).compute(e, t)
|
||
}, _.lib.Cipher || (y = (h = _).lib, m = y.Base, s = y.WordArray, i = y.BufferedBlockAlgorithm, r = h.enc.Base64, V = h.algo.EvpKDF, a = y.Cipher = i.extend({
|
||
cfg: m.extend(),
|
||
createEncryptor: function (e, t) {
|
||
return this.create(this._ENC_XFORM_MODE, e, t)
|
||
},
|
||
createDecryptor: function (e, t) {
|
||
return this.create(this._DEC_XFORM_MODE, e, t)
|
||
},
|
||
init: function (e, t, n) {
|
||
this.cfg = this.cfg.extend(n), this._xformMode = e, this._key = t, this.reset()
|
||
},
|
||
reset: function () {
|
||
i.reset.call(this), this._doReset()
|
||
},
|
||
process: function (e) {
|
||
return this._append(e), this._process()
|
||
},
|
||
finalize: function (e) {
|
||
return e && this._append(e), this._doFinalize()
|
||
},
|
||
keySize: 4,
|
||
ivSize: 4,
|
||
_ENC_XFORM_MODE: 1,
|
||
_DEC_XFORM_MODE: 2,
|
||
_createHelper: function (i) {
|
||
return {
|
||
encrypt: function (e, t, n) {
|
||
return ("string" == typeof t ? c : l).encrypt(i, e, t, n)
|
||
}, decrypt: function (e, t, n) {
|
||
return ("string" == typeof t ? c : l).decrypt(i, e, t, n)
|
||
}
|
||
}
|
||
}
|
||
}), y.StreamCipher = a.extend({
|
||
_doFinalize: function () {
|
||
return this._process(!0)
|
||
}, blockSize: 1
|
||
}), M = h.mode = {}, (g = (y.BlockCipherMode = m.extend({
|
||
createEncryptor: function (e, t) {
|
||
return this.Encryptor.create(e, t)
|
||
}, createDecryptor: function (e, t) {
|
||
return this.Decryptor.create(e, t)
|
||
}, init: function (e, t) {
|
||
this._cipher = e, this._iv = t
|
||
}
|
||
})).extend()).Encryptor = g.extend({
|
||
processBlock: function (e, t) {
|
||
var n = this._cipher, i = n.blockSize;
|
||
q.call(this, e, t, i), n.encryptBlock(e, t), this._prevBlock = e.slice(t, t + i)
|
||
}
|
||
}), g.Decryptor = g.extend({
|
||
processBlock: function (e, t) {
|
||
var n = this._cipher, i = n.blockSize, r = e.slice(t, t + i);
|
||
n.decryptBlock(e, t), q.call(this, e, t, i), this._prevBlock = r
|
||
}
|
||
}), M = M.CBC = g, g = (h.pad = {}).Pkcs7 = {
|
||
pad: function (e, t) {
|
||
for (var n = 4 * t, i = (n = n - e.sigBytes % n) << 24 | n << 16 | n << 8 | n, r = [], a = 0; a < n; a += 4) r.push(i);
|
||
n = s.create(r, n), e.concat(n)
|
||
}, unpad: function (e) {
|
||
e.sigBytes -= 255 & e.words[e.sigBytes - 1 >>> 2]
|
||
}
|
||
}, y.BlockCipher = a.extend({
|
||
cfg: a.cfg.extend({mode: M, padding: g}), reset: function () {
|
||
a.reset.call(this);
|
||
var e, t = (n = this.cfg).iv, n = n.mode;
|
||
this._xformMode == this._ENC_XFORM_MODE ? e = n.createEncryptor : (e = n.createDecryptor, this._minBufferSize = 1), this._mode = e.call(n, this, t && t.words)
|
||
}, _doProcessBlock: function (e, t) {
|
||
this._mode.processBlock(e, t)
|
||
}, _doFinalize: function () {
|
||
var e, t = this.cfg.padding;
|
||
return this._xformMode == this._ENC_XFORM_MODE ? (t.pad(this._data, this.blockSize), e = this._process(!0)) : (e = this._process(!0), t.unpad(e)), e
|
||
}, blockSize: 4
|
||
}), d = y.CipherParams = m.extend({
|
||
init: function (e) {
|
||
this.mixIn(e)
|
||
}, toString: function (e) {
|
||
return (e || this.formatter).stringify(this)
|
||
}
|
||
}), M = (h.format = {}).OpenSSL = {
|
||
stringify: function (e) {
|
||
var t = e.ciphertext;
|
||
return ((e = e.salt) ? s.create([1398893684, 1701076831]).concat(e).concat(t) : t).toString(r)
|
||
}, parse: function (e) {
|
||
var t, n = (e = r.parse(e)).words;
|
||
return 1398893684 == n[0] && 1701076831 == n[1] && (t = s.create(n.slice(2, 4)), n.splice(0, 4), e.sigBytes -= 16), d.create({
|
||
ciphertext: e,
|
||
salt: t
|
||
})
|
||
}
|
||
}, l = y.SerializableCipher = m.extend({
|
||
cfg: m.extend({format: M}), encrypt: function (e, t, n, i) {
|
||
i = this.cfg.extend(i);
|
||
var r = e.createEncryptor(n, i);
|
||
return t = r.finalize(t), r = r.cfg, d.create({
|
||
ciphertext: t,
|
||
key: n,
|
||
iv: r.iv,
|
||
algorithm: e,
|
||
mode: r.mode,
|
||
padding: r.padding,
|
||
blockSize: e.blockSize,
|
||
formatter: i.format
|
||
})
|
||
}, decrypt: function (e, t, n, i) {
|
||
return i = this.cfg.extend(i), t = this._parse(t, i.format), e.createDecryptor(n, i).finalize(t.ciphertext)
|
||
}, _parse: function (e, t) {
|
||
return "string" == typeof e ? t.parse(e, this) : e
|
||
}
|
||
}), h = (h.kdf = {}).OpenSSL = {
|
||
execute: function (e, t, n, i) {
|
||
return i = i || s.random(8), e = V.create({keySize: t + n}).compute(e, i), n = s.create(e.words.slice(t), 4 * n), e.sigBytes = 4 * t, d.create({
|
||
key: e,
|
||
iv: n,
|
||
salt: i
|
||
})
|
||
}
|
||
}, c = y.PasswordBasedCipher = l.extend({
|
||
cfg: l.cfg.extend({kdf: h}), encrypt: function (e, t, n, i) {
|
||
return n = (i = this.cfg.extend(i)).kdf.execute(n, e.keySize, e.ivSize), i.iv = n.iv, (e = l.encrypt.call(this, e, t, n.key, i)).mixIn(n), e
|
||
}, decrypt: function (e, t, n, i) {
|
||
return i = this.cfg.extend(i), t = this._parse(t, i.format), n = i.kdf.execute(n, e.keySize, e.ivSize, t.salt), i.iv = n.iv, l.decrypt.call(this, e, t, n.key, i)
|
||
}
|
||
}));
|
||
for (var g = _, m = g.lib.BlockCipher, M = g.algo, L = [], K = [], X = [], Z = [], $ = [], Q = [], S = [], E = [], ee = [], te = [], Y = [], P = 0; P < 256; P++) Y[P] = P < 128 ? P << 1 : P << 1 ^ 283;
|
||
for (var C = 0, R = 0, P = 0; P < 256; P++) {
|
||
var A = R ^ R << 1 ^ R << 2 ^ R << 3 ^ R << 4, x = (L[C] = A = A >>> 8 ^ 255 & A ^ 99, Y[K[A] = C]),
|
||
ne = Y[x], ie = Y[ne], O = 257 * Y[A] ^ 16843008 * A;
|
||
X[C] = O << 24 | O >>> 8, Z[C] = O << 16 | O >>> 16, $[C] = O << 8 | O >>> 24, Q[C] = O, S[A] = (O = 16843009 * ie ^ 65537 * ne ^ 257 * x ^ 16843008 * C) << 24 | O >>> 8, E[A] = O << 16 | O >>> 16, ee[A] = O << 8 | O >>> 24, te[A] = O, C ? (C = x ^ Y[Y[Y[ie ^ x]]], R ^= Y[Y[R]]) : C = R = 1
|
||
}
|
||
var re = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54], M = M.AES = m.extend({
|
||
_doReset: function () {
|
||
for (var e, t = (i = this._key).words, n = i.sigBytes / 4, i = 4 * ((this._nRounds = n + 6) + 1), r = this._keySchedule = [], a = 0; a < i; a++) a < n ? r[a] = t[a] : (e = r[a - 1], a % n ? 6 < n && 4 == a % n && (e = L[e >>> 24] << 24 | L[e >>> 16 & 255] << 16 | L[e >>> 8 & 255] << 8 | L[255 & e]) : (e = L[(e = e << 8 | e >>> 24) >>> 24] << 24 | L[e >>> 16 & 255] << 16 | L[e >>> 8 & 255] << 8 | L[255 & e], e ^= re[a / n | 0] << 24), r[a] = r[a - n] ^ e);
|
||
for (t = this._invKeySchedule = [], n = 0; n < i; n++) a = i - n, e = n % 4 ? r[a] : r[a - 4], t[n] = n < 4 || a <= 4 ? e : S[L[e >>> 24]] ^ E[L[e >>> 16 & 255]] ^ ee[L[e >>> 8 & 255]] ^ te[L[255 & e]]
|
||
}, encryptBlock: function (e, t) {
|
||
this._doCryptBlock(e, t, this._keySchedule, X, Z, $, Q, L)
|
||
}, decryptBlock: function (e, t) {
|
||
var n = e[t + 1];
|
||
e[t + 1] = e[t + 3], e[t + 3] = n, this._doCryptBlock(e, t, this._invKeySchedule, S, E, ee, te, K), n = e[t + 1], e[t + 1] = e[t + 3], e[t + 3] = n
|
||
}, _doCryptBlock: function (e, t, n, i, r, a, s, o) {
|
||
for (var u = this._nRounds, d = e[t] ^ n[0], l = e[t + 1] ^ n[1], h = e[t + 2] ^ n[2], c = e[t + 3] ^ n[3], _ = 4, f = 1; f < u; f++) var m = i[d >>> 24] ^ r[l >>> 16 & 255] ^ a[h >>> 8 & 255] ^ s[255 & c] ^ n[_++], p = i[l >>> 24] ^ r[h >>> 16 & 255] ^ a[c >>> 8 & 255] ^ s[255 & d] ^ n[_++], y = i[h >>> 24] ^ r[c >>> 16 & 255] ^ a[d >>> 8 & 255] ^ s[255 & l] ^ n[_++], c = i[c >>> 24] ^ r[d >>> 16 & 255] ^ a[l >>> 8 & 255] ^ s[255 & h] ^ n[_++], d = m, l = p, h = y;
|
||
m = (o[d >>> 24] << 24 | o[l >>> 16 & 255] << 16 | o[h >>> 8 & 255] << 8 | o[255 & c]) ^ n[_++], p = (o[l >>> 24] << 24 | o[h >>> 16 & 255] << 16 | o[c >>> 8 & 255] << 8 | o[255 & d]) ^ n[_++], y = (o[h >>> 24] << 24 | o[c >>> 16 & 255] << 16 | o[d >>> 8 & 255] << 8 | o[255 & l]) ^ n[_++], c = (o[c >>> 24] << 24 | o[d >>> 16 & 255] << 16 | o[l >>> 8 & 255] << 8 | o[255 & h]) ^ n[_++], e[t] = m, e[t + 1] = p, e[t + 2] = y, e[t + 3] = c
|
||
}, keySize: 8
|
||
});
|
||
g.AES = m._createHelper(M), W.default = _
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.LocalService = void 0;
|
||
var i = s(n(56)), r = s(n(1)), a = s(n(2));
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = function () {
|
||
function e() {
|
||
(0, r.default)(this, e)
|
||
}
|
||
|
||
return (0, a.default)(e, [{
|
||
key: "createClientObject", value: function (e, t, n, i) {
|
||
return {
|
||
socket: e,
|
||
id: t,
|
||
playURL: n,
|
||
deviceSerial: i.deviceSerial || "",
|
||
verificationCode: i.verificationCode || "",
|
||
resolve: null,
|
||
reject: null,
|
||
stoping: !1
|
||
}
|
||
}
|
||
}, {
|
||
key: "playCmd", value: function (e) {
|
||
e = {
|
||
sequence: 0,
|
||
cmd: "realplay",
|
||
deviceSerial: e.deviceSerial,
|
||
verificationCode: e.verificationCode,
|
||
url: e.playURL
|
||
};
|
||
return (0, i.default)(e)
|
||
}
|
||
}, {
|
||
key: "playbackCmd", value: function (e, t, n) {
|
||
e = {
|
||
sequence: 0,
|
||
cmd: "playback",
|
||
deviceSerial: e.deviceSerial,
|
||
verificationCode: e.verificationCode,
|
||
url: e.playURL,
|
||
startTime: t,
|
||
endTime: n
|
||
};
|
||
return (0, i.default)(e)
|
||
}
|
||
}]), e
|
||
}();
|
||
t.LocalService = n
|
||
}, function (e, t) {
|
||
e.exports = function (e) {
|
||
return e.webpackPolyfill || (e.deprecate = function () {
|
||
}, e.paths = [], e.children || (e.children = []), Object.defineProperty(e, "loaded", {
|
||
enumerable: !0,
|
||
get: function () {
|
||
return e.l
|
||
}
|
||
}), Object.defineProperty(e, "id", {
|
||
enumerable: !0, get: function () {
|
||
return e.i
|
||
}
|
||
}), e.webpackPolyfill = 1), e
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = {
|
||
"./af": 92,
|
||
"./af.js": 92,
|
||
"./ar": 93,
|
||
"./ar-dz": 94,
|
||
"./ar-dz.js": 94,
|
||
"./ar-kw": 95,
|
||
"./ar-kw.js": 95,
|
||
"./ar-ly": 96,
|
||
"./ar-ly.js": 96,
|
||
"./ar-ma": 97,
|
||
"./ar-ma.js": 97,
|
||
"./ar-sa": 98,
|
||
"./ar-sa.js": 98,
|
||
"./ar-tn": 99,
|
||
"./ar-tn.js": 99,
|
||
"./ar.js": 93,
|
||
"./az": 100,
|
||
"./az.js": 100,
|
||
"./be": 101,
|
||
"./be.js": 101,
|
||
"./bg": 102,
|
||
"./bg.js": 102,
|
||
"./bm": 103,
|
||
"./bm.js": 103,
|
||
"./bn": 104,
|
||
"./bn-bd": 105,
|
||
"./bn-bd.js": 105,
|
||
"./bn.js": 104,
|
||
"./bo": 106,
|
||
"./bo.js": 106,
|
||
"./br": 107,
|
||
"./br.js": 107,
|
||
"./bs": 108,
|
||
"./bs.js": 108,
|
||
"./ca": 109,
|
||
"./ca.js": 109,
|
||
"./cs": 110,
|
||
"./cs.js": 110,
|
||
"./cv": 111,
|
||
"./cv.js": 111,
|
||
"./cy": 112,
|
||
"./cy.js": 112,
|
||
"./da": 113,
|
||
"./da.js": 113,
|
||
"./de": 114,
|
||
"./de-at": 115,
|
||
"./de-at.js": 115,
|
||
"./de-ch": 116,
|
||
"./de-ch.js": 116,
|
||
"./de.js": 114,
|
||
"./dv": 117,
|
||
"./dv.js": 117,
|
||
"./el": 118,
|
||
"./el.js": 118,
|
||
"./en-au": 119,
|
||
"./en-au.js": 119,
|
||
"./en-ca": 120,
|
||
"./en-ca.js": 120,
|
||
"./en-gb": 121,
|
||
"./en-gb.js": 121,
|
||
"./en-ie": 122,
|
||
"./en-ie.js": 122,
|
||
"./en-il": 123,
|
||
"./en-il.js": 123,
|
||
"./en-in": 124,
|
||
"./en-in.js": 124,
|
||
"./en-nz": 125,
|
||
"./en-nz.js": 125,
|
||
"./en-sg": 126,
|
||
"./en-sg.js": 126,
|
||
"./eo": 127,
|
||
"./eo.js": 127,
|
||
"./es": 128,
|
||
"./es-do": 129,
|
||
"./es-do.js": 129,
|
||
"./es-mx": 130,
|
||
"./es-mx.js": 130,
|
||
"./es-us": 131,
|
||
"./es-us.js": 131,
|
||
"./es.js": 128,
|
||
"./et": 132,
|
||
"./et.js": 132,
|
||
"./eu": 133,
|
||
"./eu.js": 133,
|
||
"./fa": 134,
|
||
"./fa.js": 134,
|
||
"./fi": 135,
|
||
"./fi.js": 135,
|
||
"./fil": 136,
|
||
"./fil.js": 136,
|
||
"./fo": 137,
|
||
"./fo.js": 137,
|
||
"./fr": 138,
|
||
"./fr-ca": 139,
|
||
"./fr-ca.js": 139,
|
||
"./fr-ch": 140,
|
||
"./fr-ch.js": 140,
|
||
"./fr.js": 138,
|
||
"./fy": 141,
|
||
"./fy.js": 141,
|
||
"./ga": 142,
|
||
"./ga.js": 142,
|
||
"./gd": 143,
|
||
"./gd.js": 143,
|
||
"./gl": 144,
|
||
"./gl.js": 144,
|
||
"./gom-deva": 145,
|
||
"./gom-deva.js": 145,
|
||
"./gom-latn": 146,
|
||
"./gom-latn.js": 146,
|
||
"./gu": 147,
|
||
"./gu.js": 147,
|
||
"./he": 148,
|
||
"./he.js": 148,
|
||
"./hi": 149,
|
||
"./hi.js": 149,
|
||
"./hr": 150,
|
||
"./hr.js": 150,
|
||
"./hu": 151,
|
||
"./hu.js": 151,
|
||
"./hy-am": 152,
|
||
"./hy-am.js": 152,
|
||
"./id": 153,
|
||
"./id.js": 153,
|
||
"./is": 154,
|
||
"./is.js": 154,
|
||
"./it": 155,
|
||
"./it-ch": 156,
|
||
"./it-ch.js": 156,
|
||
"./it.js": 155,
|
||
"./ja": 157,
|
||
"./ja.js": 157,
|
||
"./jv": 158,
|
||
"./jv.js": 158,
|
||
"./ka": 159,
|
||
"./ka.js": 159,
|
||
"./kk": 160,
|
||
"./kk.js": 160,
|
||
"./km": 161,
|
||
"./km.js": 161,
|
||
"./kn": 162,
|
||
"./kn.js": 162,
|
||
"./ko": 163,
|
||
"./ko.js": 163,
|
||
"./ku": 164,
|
||
"./ku.js": 164,
|
||
"./ky": 165,
|
||
"./ky.js": 165,
|
||
"./lb": 166,
|
||
"./lb.js": 166,
|
||
"./lo": 167,
|
||
"./lo.js": 167,
|
||
"./lt": 168,
|
||
"./lt.js": 168,
|
||
"./lv": 169,
|
||
"./lv.js": 169,
|
||
"./me": 170,
|
||
"./me.js": 170,
|
||
"./mi": 171,
|
||
"./mi.js": 171,
|
||
"./mk": 172,
|
||
"./mk.js": 172,
|
||
"./ml": 173,
|
||
"./ml.js": 173,
|
||
"./mn": 174,
|
||
"./mn.js": 174,
|
||
"./mr": 175,
|
||
"./mr.js": 175,
|
||
"./ms": 176,
|
||
"./ms-my": 177,
|
||
"./ms-my.js": 177,
|
||
"./ms.js": 176,
|
||
"./mt": 178,
|
||
"./mt.js": 178,
|
||
"./my": 179,
|
||
"./my.js": 179,
|
||
"./nb": 180,
|
||
"./nb.js": 180,
|
||
"./ne": 181,
|
||
"./ne.js": 181,
|
||
"./nl": 182,
|
||
"./nl-be": 183,
|
||
"./nl-be.js": 183,
|
||
"./nl.js": 182,
|
||
"./nn": 184,
|
||
"./nn.js": 184,
|
||
"./oc-lnc": 185,
|
||
"./oc-lnc.js": 185,
|
||
"./pa-in": 186,
|
||
"./pa-in.js": 186,
|
||
"./pl": 187,
|
||
"./pl.js": 187,
|
||
"./pt": 188,
|
||
"./pt-br": 189,
|
||
"./pt-br.js": 189,
|
||
"./pt.js": 188,
|
||
"./ro": 190,
|
||
"./ro.js": 190,
|
||
"./ru": 191,
|
||
"./ru.js": 191,
|
||
"./sd": 192,
|
||
"./sd.js": 192,
|
||
"./se": 193,
|
||
"./se.js": 193,
|
||
"./si": 194,
|
||
"./si.js": 194,
|
||
"./sk": 195,
|
||
"./sk.js": 195,
|
||
"./sl": 196,
|
||
"./sl.js": 196,
|
||
"./sq": 197,
|
||
"./sq.js": 197,
|
||
"./sr": 198,
|
||
"./sr-cyrl": 199,
|
||
"./sr-cyrl.js": 199,
|
||
"./sr.js": 198,
|
||
"./ss": 200,
|
||
"./ss.js": 200,
|
||
"./sv": 201,
|
||
"./sv.js": 201,
|
||
"./sw": 202,
|
||
"./sw.js": 202,
|
||
"./ta": 203,
|
||
"./ta.js": 203,
|
||
"./te": 204,
|
||
"./te.js": 204,
|
||
"./tet": 205,
|
||
"./tet.js": 205,
|
||
"./tg": 206,
|
||
"./tg.js": 206,
|
||
"./th": 207,
|
||
"./th.js": 207,
|
||
"./tk": 208,
|
||
"./tk.js": 208,
|
||
"./tl-ph": 209,
|
||
"./tl-ph.js": 209,
|
||
"./tlh": 210,
|
||
"./tlh.js": 210,
|
||
"./tr": 211,
|
||
"./tr.js": 211,
|
||
"./tzl": 212,
|
||
"./tzl.js": 212,
|
||
"./tzm": 213,
|
||
"./tzm-latn": 214,
|
||
"./tzm-latn.js": 214,
|
||
"./tzm.js": 213,
|
||
"./ug-cn": 215,
|
||
"./ug-cn.js": 215,
|
||
"./uk": 216,
|
||
"./uk.js": 216,
|
||
"./ur": 217,
|
||
"./ur.js": 217,
|
||
"./uz": 218,
|
||
"./uz-latn": 219,
|
||
"./uz-latn.js": 219,
|
||
"./uz.js": 218,
|
||
"./vi": 220,
|
||
"./vi.js": 220,
|
||
"./x-pseudo": 221,
|
||
"./x-pseudo.js": 221,
|
||
"./yo": 222,
|
||
"./yo.js": 222,
|
||
"./zh-cn": 223,
|
||
"./zh-cn.js": 223,
|
||
"./zh-hk": 224,
|
||
"./zh-hk.js": 224,
|
||
"./zh-mo": 225,
|
||
"./zh-mo.js": 225,
|
||
"./zh-tw": 226,
|
||
"./zh-tw.js": 226
|
||
};
|
||
|
||
function r(e) {
|
||
e = a(e);
|
||
return n(e)
|
||
}
|
||
|
||
function a(e) {
|
||
if (n.o(i, e)) return i[e];
|
||
throw(e = new Error("Cannot find module '" + e + "'")).code = "MODULE_NOT_FOUND", e
|
||
}
|
||
|
||
r.keys = function () {
|
||
return Object.keys(i)
|
||
}, r.resolve = a, (e.exports = r).id = 284
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.JSPlayCtrl = void 0;
|
||
var i = r(n(1)), n = r(n(2));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var o = {id: null, cmd: null, data: null, errorCode: 0, status: null}, n = ((0, n.default)(a, [{
|
||
key: "PlayM4_SetStreamOpenMode", value: function (e) {
|
||
return this.iPort = this.oWASM._JSPlayM4_GetPort(), 1 !== this.oWASM._JSPlayM4_SetStreamOpenMode(this.iPort, e) ? 0 : 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_OpenStream", value: function (e, t, n) {
|
||
if (this.iPort < 0) return 0;
|
||
if (!e || t <= 0 || n <= 0) return 0;
|
||
this.bPlay = !1, this.bPause = !1, this.bOnebyOne = !1, this.bIsFirstFrame = !0, this.bIsGetYUV = !1, this.bIsInput = !1;
|
||
var i = this.oWASM._malloc(t);
|
||
return i ? (this.oWASM.writeArrayToMemory(e, i), 1 !== this.oWASM._JSPlayM4_OpenStream(this.iPort, i, t, n) ? (this.oWASM._free(i), i = null, this.oWASM._JSPlayM4_FreePort(this.iPort), this.iPort = -1, 0) : (this.oWASM._JSPlayM4_SetDisplayBuf(this.iPort, 1), this.oWASM._free(i), i = null, 1)) : 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDisplayBuf", value: function (e) {
|
||
this.oWASM._JSPlayM4_SetDisplayBuf(this.iPort, e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_OpenPlayerSDKPrintLog", value: function (e) {
|
||
e ? (console.log("JSPlaySDKInterface.js bFlag:" + e), this.oWASM._JSPlayM4_SetPrintLogFlag(this.iPort, 2)) : this.oWASM._JSPlayM4_SetPrintLogFlag(this.iPort, 0)
|
||
}
|
||
}, {
|
||
key: "SetDecodeThreadNum", value: function (e) {
|
||
this.oWASM._JSPlayM4_SetDecodeThreadNum(this.iPort, e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetSecretKey", value: function () {
|
||
return 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_RenderPrivateData", value: function (e, t) {
|
||
return this.oWASM._JSPlayM4_RenderPrivateData(this.iPort, e, t)
|
||
}
|
||
}, {
|
||
key: "PlayM4_RenderPrivateDataEx", value: function (e, t, n) {
|
||
return this.oWASM._JSPlayM4_RenderPrivateDataEx(this.iPort, e, t, n)
|
||
}
|
||
}, {
|
||
key: "stringToBytes", value: function (e) {
|
||
for (var t = void 0, n = void 0, i = [], r = 0; r < e.length; r++) {
|
||
for (t = e.charCodeAt(r), n = []; n.push(255 & t), t >>= 8;) ;
|
||
i = i.concat(n.reverse())
|
||
}
|
||
return i
|
||
}
|
||
}, {
|
||
key: "PlayM4_Play", value: function () {
|
||
if (this.pCanvasData = this.oWASM._malloc(128), null === this.pCanvasData) return 0;
|
||
this.bOnebyOne && (this.bPlayRateChange = !1, this.bOnebyOne = !1, this.bPause = !1);
|
||
!document.getElementById(this.szCanvasID) && this.clonedCanvas && this.clonedCanvasParentNode && this.clonedCanvasParentNode.appendChild(this.clonedCanvas), 0 < this.iCanvasWidth && 0 < this.iCanvasHeight && this.PlayM4_SetCanvasSize(this.iCanvasWidth, this.iCanvasHeight);
|
||
var e = this.stringToBytes("#" + this.szCanvasID),
|
||
t = this.oWASM.HEAPU8.subarray(this.pCanvasData, this.pCanvasData + 128), n = new Uint8Array(128);
|
||
t.set(n, 0), t.set(new Uint8Array(e));
|
||
return 1 !== this.oWASM._JSPlayM4_Play(this.iPort, this.pCanvasData) ? 0 : (this.oWASM._JSPlayM4_SetFrameInfoCallBack(this.iPort, 1), this.bPlay = !0, this.bPause = !1, this.bOnebyOne = !1, this.bPlaySound = !1, this.bPlayRateChange = !1, this.bOnlyPlaySound = !1, 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_OneByOne_Play", value: function () {
|
||
this.oWASM._JSPlayM4_Play(this.iPort, this.pCanvasData), this.bPlayRateChange = !1, this.bOnebyOne = !1, this.bPause = !1
|
||
}
|
||
}, {
|
||
key: "Sleep", value: function (e) {
|
||
for (var t = (new Date).getTime(); (new Date).getTime() - t < e;) ;
|
||
}
|
||
}, {
|
||
key: "PlayM4_InputData", value: function (e, t) {
|
||
var n = 1;
|
||
if (0 < t) {
|
||
var i = this.oWASM._malloc(t);
|
||
if (null === i) return 0;
|
||
var r = new Uint8Array(e.buffer);
|
||
this.oWASM.writeArrayToMemory(r, i), this.bIsFirstFrame && this.inputDataFun(), this.bOnebyOne ? 1 !== this.oWASM._JSPlayM4_InputData(this.iPort, i, t) && (11 === (n = this.oWASM._JSPlayM4_GetLastError(this.iPort)) && (this.setCallBack(this, "OnebyOne", 0, 0, !1), this.bIsFirstFrame = !0), this.aInputDataBuffer.push(e)) : 1 !== this.oWASM._JSPlayM4_InputData(this.iPort, i, t) && (n = this.oWASM._JSPlayM4_GetLastError(this.iPort)), this.oWASM._free(i), i = null
|
||
}
|
||
return n
|
||
}
|
||
}, {
|
||
key: "inputDataFun", value: function () {
|
||
if (this.bIsGetYUV = !1, this.bPlay && (!this.bPause || this.bOnebyOne) || this.bOnlyPlaySound) for (; 0 < this.aInputDataBuffer.length;) {
|
||
var e = this.aInputDataBuffer.shift(),
|
||
t = this.oWASM._JSPlayM4_InputData(this.iPort, e, e.byteLength);
|
||
if (1 !== t) if (11 === this.oWASM._JSPlayM4_GetLastError(this.iPort)) {
|
||
this.bIsFirstFrame = !0, this.aInputDataBuffer.unshift(e);
|
||
break
|
||
}
|
||
}
|
||
this.bIsFirstFrame = !1
|
||
}
|
||
}, {
|
||
key: "PlayM4_Stop", value: function () {
|
||
this.bPlaySound && (this.PlayM4_StopSound(), this.bPlaySound = !1), this.bPlay = !1, this.bOnebyOne = !1, this.bPause = !1, this.oWASM._JSPlayM4_SetFrameInfoCallBack(this.iPort, 0), this.PlayM4_SetDisplayRegion(null, !1), this.oWASM._JSPlayM4_Stop(this.iPort), this.oWASM._JSPlayM4_CloseStream(this.iPort), this.oWASM._JSPlayM4_FreePort(this.iPort), this.iPort = -1;
|
||
var e = document.getElementById(this.szCanvasID);
|
||
e && (this.clonedCanvas = e.cloneNode(!0), this.clonedCanvasParentNode = e.parentNode, this.clonedCanvasParentNode.replaceChild(this.clonedCanvas, e)), null !== this.pCanvasData && (this.oWASM._free(this.pCanvasData), this.pCanvasData = null)
|
||
}
|
||
}, {
|
||
key: "PlayM4_PlayRate", value: function (e) {
|
||
return this.bPlayRateChange = 1 !== e, this.iInputDataLen = 5e3 * e, 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_Fast", value: function (e) {
|
||
this.bPlayRateChange = 1 !== e, this.oWASM._JSPlayM4_Fast(this.iPort)
|
||
}
|
||
}, {
|
||
key: "PlayM4_Slow", value: function (e) {
|
||
this.bPlayRateChange = 1 !== e, this.oWASM._JSPlayM4_Slow(this.iPort)
|
||
}
|
||
}, {
|
||
key: "PlayM4_Pause", value: function (e) {
|
||
return !this.bPlay || this.bOnebyOne ? 2 : ("boolean" == typeof e && (this.bPause = e, this.bIsFirstFrame = !0, e ? (this.bPlaySound && (this.PlayM4_StopSound(), this.bPlaySound = !0), this.oWASM._JSPlayM4_Pause(this.iPort, 1)) : (this.bPlaySound && this.PlayM4_PlaySound(), this.oWASM._JSPlayM4_Pause(this.iPort, 0))), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_OneByOne", value: function () {
|
||
return this.bPlay ? (this.oWASM._JSPlayM4_GetSourceBufferRemain(this.iPort) < this.oWASM._JSPlayM4_GetBufferValue(this.iPort, 1) / 2 && (this.bIsInputBufOver = !1, this.setCallBack(this, "OnebyOne", 0, 31, !0)), this.iInputDataLen = 5e3, this.oWASM._JSPlayM4_OneByOne(this.iPort), this.bPause = !0, this.bOnebyOne = !0, this.bPlayRateChange = !0, 1) : 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_PlaySound", value: function (e) {
|
||
return e < 0 || 16 < e || 1 === this.oWASM._JSPlayM4_PlaySound(this.iPort) && (this.bPlaySound = !0, this.oWASM._JSPlayM4_SetANRParam(3)), 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_StopSound", value: function () {
|
||
return this.bPlaySound ? (1 === this.oWASM._JSPlayM4_StopSound(this.iPort) && (this.bPlaySound = !1), 1) : 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetSecretKey", value: function () {
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDecodeFrameType", value: function (e) {
|
||
return 0 !== e && 1 !== e || (this.nDecFrameType = e, this.oWASM._JSPlayM4_SetDecodeFrameType(this.iPort, e)), 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetIFrameDecInterval", value: function (e) {
|
||
return 1 !== this.nDecFrameType ? 2 : (e < 0 || (this.oWASM._JSPlayM4_SetDecodeFrameType(this.iPort, 1), this.oWASM._JSPlayM4_SetIFrameDecInterval(this.iPort, e)), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDisplayRegion", value: function (e, t) {
|
||
if (null === this.szCanvasID) return 2;
|
||
if (!0 !== t) return 1 === this.oWASM._JSPlayM4_SetDisplayRegion(this.iPort, this.pCanvasData, 0, this.iYUVWidth, 0, this.iYUVHeight) ? (this.iZoomNum = 0, this.bDisRect = !1, 1) : this.PlayM4_GetLastError();
|
||
if (null == e) return 1;
|
||
if ("number" != typeof e.left || "number" != typeof e.top || "number" != typeof e.right || "number" != typeof e.bottom) return 1;
|
||
if (e.right < 0 || e.left < 0 || e.top < 0 || e.bottom < 0) return 1;
|
||
var n, t = e.left, i = e.right, r = e.top, e = e.bottom,
|
||
a = document.getElementById(this.szCanvasID).getBoundingClientRect();
|
||
if (this.iCanvasWidth = a.width, this.iCanvasHeight = a.height, i - t < 16 || e - r < 16 || i - t > this.iCanvasWidth || e - r > this.iCanvasHeight) return 1;
|
||
e = 0 !== this.iZoomNum ? (t = Math.round(t / this.iRatio_x) + this.stDisplayRect.left, r = Math.round(r / this.iRatio_y) + this.stDisplayRect.top, i = Math.round(i / this.iRatio_x) + this.stDisplayRect.left, Math.round(e / this.iRatio_y) + this.stDisplayRect.top) : (a = this.iYUVWidth / this.iCanvasWidth, n = this.iYUVHeight / this.iCanvasHeight, t = Math.round(t * a), r = Math.round(r * n), i = Math.round(i * a), Math.round(e * n)), this.stDisplayRect = {
|
||
top: r,
|
||
left: t,
|
||
right: i,
|
||
bottom: e
|
||
}, this.bDisRect = !0;
|
||
a = e - r;
|
||
return this.iRatio_x = this.iCanvasWidth / (i - t), this.iRatio_y = this.iCanvasHeight / a, this.iZoomNum++, this.oWASM._JSPlayM4_SetDisplayRegion(this.iPort, this.pCanvasData, this.stDisplayRect.left, this.stDisplayRect.right, this.stDisplayRect.top, this.stDisplayRect.bottom)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetJPEG", value: function (e) {
|
||
var t, n = this.iYUVWidth * this.iYUVHeight * 4 + 60, i = this.oWASM._malloc(n),
|
||
r = this.oWASM._malloc(4);
|
||
null !== i && (this.oWASM._JSPlayM4_GetJPEG(this.iPort, i, n, r), 0 < (n = this.oWASM.getValue(r, "i32")) ? ((t = new Uint8Array(n)).set(this.oWASM.HEAPU8.subarray(i, i + n)), e(t)) : e(6), this.oWASM._free(i), this.oWASM._free(r), i = null)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetBMP", value: function (e) {
|
||
var t, n = this.iYUVWidth * this.iYUVHeight * 4 + 60, i = this.oWASM._malloc(n),
|
||
r = this.oWASM._malloc(4);
|
||
null !== i && (this.oWASM._JSPlayM4_GetBMP(this.iPort, i, n, r), 0 < (n = this.oWASM.getValue(r, "i32")) ? ((t = new Uint8Array(n)).set(this.oWASM.HEAPU8.subarray(i, i + n)), e(t)) : e(6), this.oWASM._free(i), this.oWASM._free(r), i = null)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetVolume", value: function (e) {
|
||
return this.oWASM._JSPlayM4_SetVolume(this.iPort, e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetVolume", value: function (e) {
|
||
var t;
|
||
return e && "function" == typeof e ? null === (t = this.oWASM._JSPlayM4_GetVolume(this.iPort)) ? 63 : (e(Math.round(t)), 1) : 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetDecodeFrameType", value: function () {
|
||
return this.nDecFrameType
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetSdkVersion", value: function () {
|
||
return this.oWASM.JSPlayM4_GetSDKVersion()
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetCanvasSize", value: function (e, t) {
|
||
!document.getElementById(this.szCanvasID) && this.clonedCanvas && (this.iCanvasWidth = e, this.iCanvasHeight = t, this.clonedCanvas.width = e, this.clonedCanvas.height = t), -1 < this.iPort && this.oWASM._JSPlayM4_SetCanvasSize(this.iPort, e, t)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetAntialias", value: function (e) {
|
||
return this.oWASM._JSPlayM4_SetAntialias(this.iPort, e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetSourceBufferRemain", value: function () {
|
||
return this.oWASM._JSPlayM4_GetSourceBufferRemain(this.iPort)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetBufferValue", value: function (e) {
|
||
return this.oWASM._JSPlayM4_GetBufferValue(this.iPort, e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetLastError", value: function () {
|
||
return this.oWASM._JSPlayM4_GetLastError(this.iPort)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetFrameInfo", value: function (e) {
|
||
var t, n;
|
||
e && "function" == typeof e && (t = {
|
||
port: 0,
|
||
frameType: 0,
|
||
frameSize: 0,
|
||
width: 0,
|
||
height: 0,
|
||
timeStamp: 0,
|
||
frameRate: 0,
|
||
bitPerSample: 0,
|
||
samplesPerSec: 0,
|
||
channel: 0,
|
||
frameNum: 0,
|
||
cropLeft: 0,
|
||
cropRight: 0,
|
||
cropTop: 0,
|
||
cropBottom: 0,
|
||
year: 0,
|
||
month: 0,
|
||
week: 0,
|
||
day: 0,
|
||
hour: 0,
|
||
minute: 0,
|
||
second: 0,
|
||
milliseconds: 0
|
||
}, n = this.oWASM._JSPlayM4_GetFrameInfo(this.iPort), t.port = this.oWASM.HEAP32[n >> 2], t.frameType = this.oWASM.HEAP32[n + 4 >> 2], t.frameSize = this.oWASM.HEAP32[n + 8 >> 2], t.width = this.oWASM.HEAP32[n + 12 >> 2], t.height = this.oWASM.HEAP32[n + 16 >> 2], t.timeStamp = this.oWASM.HEAP32[n + 20 >> 2], t.frameRate = this.oWASM.HEAP32[n + 24 >> 2], t.bitPerSample = this.oWASM.HEAP32[n + 28 >> 2], t.samplesPerSec = this.oWASM.HEAP32[n + 32 >> 2], t.channel = this.oWASM.HEAP32[n + 36 >> 2], t.frameNum = this.oWASM.HEAP32[n + 40 >> 2], t.cropLeft = this.oWASM.HEAP32[n + 44 >> 2], t.cropRight = this.oWASM.HEAP32[n + 48 >> 2], t.cropTop = this.oWASM.HEAP32[n + 52 >> 2], t.cropBottom = this.oWASM.HEAP32[n + 56 >> 2], t.year = this.oWASM.HEAP16[n + 60 >> 1], t.month = this.oWASM.HEAP16[n + 62 >> 1], t.week = this.oWASM.HEAP16[n + 64 >> 1], t.day = this.oWASM.HEAP16[n + 66 >> 1], t.hour = this.oWASM.HEAP16[n + 68 >> 1], t.minute = this.oWASM.HEAP16[n + 70 >> 1], t.second = this.oWASM.HEAP16[n + 72 >> 1], t.milliseconds = this.oWASM.HEAP16[n + 74 >> 1], e(t))
|
||
}
|
||
}, {
|
||
key: "PlayM4_ReversePlay", value: function () {
|
||
return this.oWASM._JSPlayM4_ReversePlay(this.iPort)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetAdditionDataCallBack", value: function (e, t) {
|
||
return this.oWASM._JSPlayM4_SetAdditionDataCallBack(this.iPort, e, t)
|
||
}
|
||
}]), a);
|
||
|
||
function a(e, t, n, s) {
|
||
(0, i.default)(this, a), this.szCanvasID = e, this.clonedCanvas = null, this.oWASM = null, this.iPort = -1, this.pCanvasData = null, this.iYUVWidth = 0, this.iYUVHeight = 0, this.bPlay = !1, this.bPause = !1, this.bOnebyOne = !1, this.bIsFirstFrame = !0, this.bIsGetYUV = !1, this.bIsInput = !1, this.iZoomNum = 0, this.iCanvasWidth = 0, this.iCanvasHeight = 0, this.nDecFrameType = 0, n && "function" == typeof n && (this.fnCallBack = n), this.aInputDataBuffer = [], this.setCallBack = function (e, t, n, i, r) {
|
||
var a = o;
|
||
a.id = s, a.cmd = t, a.data = n, a.errorCode = i, a.status = r, (a.instance = e).fnCallBack(a)
|
||
}, this.aInputDataLens = [], this.aInputDataBuffer = [], this.bIsGetYUV = !1, this.bIsFirstFrame = !0, this.iInputMaxBufSize = 5242880, this.bIsInput = !1, this.bIsInputBufOver = !1, this.iInputDataLen = 5e3, t && (this.oWASM = t)
|
||
}
|
||
|
||
t.JSPlayCtrl = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.JSPlayCtrl = void 0;
|
||
var i = u(n(53)), r = u(n(54)), a = u(n(1)), s = u(n(2)), o = u(n(11));
|
||
|
||
function u(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var d = 28944, l = 28945, h = 29217, c = 29280, f = 29281, m = 29282, p = 8193, y = 8192, v = 4096,
|
||
g = {width: 0, height: 0, frameNum: 0, yuvData: null},
|
||
M = {width: 0, height: 0, frameNum: 0, yuvData: null},
|
||
L = {sampleRate: 0, channel: 0, bitsPerSample: 0, length: 0, pcmData: null}, _ = !1, S = !1, k = !1,
|
||
b = {id: null, cmd: null, data: null, errorCode: 0, status: null};
|
||
|
||
function w(n) {
|
||
return new o.default(function (e) {
|
||
var t = document.createElement("script");
|
||
t.type = "text/javascript", t.src = n, t.onload = function () {
|
||
e()
|
||
}, document.body.appendChild(t)
|
||
})
|
||
}
|
||
|
||
var D;
|
||
t.JSPlayCtrl = ((0, s.default)(T, [{
|
||
key: "_loadRenderFiles",
|
||
value: (D = (0, r.default)(i.default.mark(function e() {
|
||
return i.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if (S && _) {
|
||
e.next = 5;
|
||
break
|
||
}
|
||
return e.next = 3, o.default.all([w(this.szBasePath + "AudioRenderer.js"), w(this.szBasePath + "SuperRender_10.js")]);
|
||
case 3:
|
||
_ = S = !0;
|
||
case 5:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, this)
|
||
})), function () {
|
||
return D.apply(this, arguments)
|
||
})
|
||
}, {
|
||
key: "PlayM4_SetCurrentFrameNum", value: function (e, t) {
|
||
return null != this.decodeWorker && null != this.oSuperRender && this.bPlay ? e < 0 || 0 !== t && 1 !== t ? this.iLastErrorCode = 0 : this.PlayM4_SetPlayPosition(0, e, t) : this.iLastErrorCode = 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetPlayPosition", value: function (e, t, n) {
|
||
return null != this.decodeWorker && null != this.oSuperRender && this.bPlay ? 0 !== e && 1 !== e || t < 0 || 0 !== n && 1 !== n ? this.iLastErrorCode = 0 : (this.SetPlayPositionFlag = !0, this.iFrameNumOrTime = t, this.bSetPlayPositionType = n, this.decodeWorker.postMessage({
|
||
command: "SetPlayPosition",
|
||
data: this.iFrameNumOrTime,
|
||
type: e
|
||
}), this.aAudioBuffer.splice(0, this.aAudioBuffer.length), this.iAudioBufferSize = 0, this.aVideoFrameBuffer.splice(0, this.aVideoFrameBuffer.length), this.aInputDataBuffer.splice(0, this.aInputDataBuffer.length), this.aInputDataLens.splice(0, this.aInputDataLens.length), this.bIsFirstFrame = !0, this.bIsInputBufOver = !1, this.iLastErrorCode = 1) : this.iLastErrorCode = 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_OpenPlayerSDKPrintLog", value: function (e) {
|
||
return k = !0 === e, this.decodeWorker.postMessage({
|
||
command: "printLog",
|
||
data: e
|
||
}), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_DownloadYUVdata", value: function () {
|
||
return this.bWriteYUVData = !0, this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_DownloadPCMdata", value: function () {
|
||
return this.bWritePCMData = !0, this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDecCallBack", value: function (e) {
|
||
return k && console.log(">>>JS MainThread-PlayM4_SetDecCallBack"), e && "function" == typeof e ? (this.DecCallBackFun = e, this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDisplayCallBack", value: function (e) {
|
||
return k && console.log(">>>JS MainThread-PlayM4_SetDisplayCallBack"), e && "function" == typeof e ? (this.DisplayCallBackFun = e, this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetPCMCallBack", value: function (e) {
|
||
return k && console.log(">>>JS MainThread-PlayM4_SetDisplayCallBack"), e && "function" == typeof e ? (this.PCMCallBackFun = e, this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetStreamOpenMode", value: function (e) {
|
||
return null == e || void 0 === e || 0 !== e && 1 !== e ? this.iLastErrorCode = 0 : (this.streamOpenMode = e, k && console.log(">>>JS PlayM4_SetStreamOpenMode nMode:" + e), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_DownloadRTPData", value: function (e) {
|
||
this.downloadRTP = e
|
||
}
|
||
}, {
|
||
key: "PlayM4_OpenStream", value: function (e, t, n) {
|
||
if (k && console.log(">>>JS PlayM4_OpenStream 1 nSysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), null == this.decodeWorker) return this.iLastErrorCode = 2;
|
||
if (this.downloadRTP && (i = new Uint8Array(e.buffer), this.DownloadRTPData(i), console.log("write 40 hik head")), null == e || t <= 0 || n <= 0) return this.iLastErrorCode = 0;
|
||
this.bPlay = !1, this.bPause = !1, this.bOnebyOne = !1, this.bIsFirstFrame = !0, this.bIsGetYUV = !1, this.bIsInput = !1;
|
||
var i = this.checkAudioType(e);
|
||
return this.bAudioTypeSupport = 1 === i, this.decodeWorker.postMessage({
|
||
command: "SetStreamOpenMode",
|
||
data: this.streamOpenMode
|
||
}), k && console.log(">>>JS PlayM4_OpenStream 2 nSysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), this.decodeWorker.postMessage({
|
||
command: "OpenStream",
|
||
data: e,
|
||
dataSize: t,
|
||
bufPoolSize: n
|
||
}), k && console.log(">>>JS PlayM4_OpenStream 3 nSysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), this.bOpenStream = !0, this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_CloseStream", value: function () {
|
||
return k && console.log(">>>JS PlayM4_CloseStream 1 nSysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), null === this.decodeWorker || !1 === this.bOpenStream ? this.iLastErrorCode = 2 : (this.bOnlyPlaySound = !1, this.PlayM4_Stop(), this.decodeWorker.postMessage({command: "CloseStream"}), null !== this.oSuperRender && (this.oSuperRender.SR_Destroy(), this.oSuperRender = null), null !== this.audioRenderer && (this.audioRenderer.Stop(), this.audioRenderer = null), this.aAudioBuffer.splice(0, this.aAudioBuffer.length), this.aVideoFrameBuffer.splice(0, this.aVideoFrameBuffer.length), this.aInputDataBuffer.splice(0, this.aInputDataBuffer.length), this.aInputDataLens.splice(0, this.aInputDataLens.length), this.aAudioEncBuffer.splice(0, this.aAudioEncBuffer.length), this.aVideoYUVBuffer.splice(0, this.aVideoYUVBuffer.length), this.aAudioPCMBuffer.splice(0, this.aAudioPCMBuffer.length), this.aRawDataBuffer.splice(0, this.aRawDataBuffer.length), this.bOpenStream = !1, this.iAudioBufferSize = 0, this.szOSDTime = null, this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_Destroy", value: function () {
|
||
return k && console.log(">>>JS PlayM4_Destroy 1 nSysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), null === this.decodeWorker || (this.PlayM4_CloseStream(), this.decodeWorker.terminate(), this.decodeWorker = null), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_InputData", value: function (e, t) {
|
||
var n = this.aInputDataBuffer.length;
|
||
if (4 === t) {
|
||
var i = new Uint8Array(e.buffer);
|
||
if (1 === i[0] && 2 === i[1] && 3 === i[2] && 4 === i[3]) return k && console.log(">>>JS PlaySDKInterface PlayM4_InputData:intput end"), this.bIsFirstFrame ? (k && console.log(">>>JS inputData FirstTime"), this.inputDataFun()) : this.bIsGetYUV ? this.inputDataFun() : this.bIsInput = !0, i = null, this.iLastErrorCode = 1
|
||
}
|
||
if (n + t > this.iInputMaxBufSize) return console.log("input over"), this.inputDataFun(), this.iLastErrorCode = 11;
|
||
var r = null, a = t;
|
||
switch (this.streamOpenMode) {
|
||
case 1:
|
||
r = new Uint8Array(e.buffer), this.downloadRTP && (this.DownloadRTPData(r), this.rtpNum++, console.log("rtpNUm:" + this.rtpNum)), this.aInputDataLens.push(t);
|
||
break;
|
||
case 0:
|
||
var a = t + 4, s = new Uint32Array([t]), s = new Uint8Array(s.buffer);
|
||
(r = new Uint8Array(a)).set(s, 0), r.set(e, 4), this.downloadRTP && (this.DownloadRTPData(r), this.rtpNum++, console.log("rtpNUm:" + this.rtpNum)), 0, this.aInputDataLens.push(t + 4);
|
||
break;
|
||
default:
|
||
return this.iLastErrorCode = 16
|
||
}
|
||
for (var o = 0; o < a; o++) this.aInputDataBuffer[n + o] = r[o];
|
||
return this.bPlay && null !== this.decodeWorker && !1 !== this.bOpenStream && (r = null, k && console.log(">>>JS PlayM4_InputData 1: nSize:%d, iInputBufLen:%d, iInputMaxBufSize;%d", t, this.aInputDataBuffer.length, this.iInputMaxBufSize), this.bOnlyPlaySound ? (k && console.log(">>>JS PlayM4_InputData: OnlyPlaySound"), this.inputDataFun()) : this.bIsFirstFrame ? (k && console.log(">>>JS PlayM4_InputData is firstFrame"), this.inputDataFun()) : this.bIsGetYUV ? (k && console.log(">>>JS PlayM4_InputData is GetYUV"), this.inputDataFun()) : (k && console.log(">>>JS PlayM4_InputData 1-3 sysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), this.bIsInput = !0), this.iLastErrorCode = 1), 1
|
||
}
|
||
}, {
|
||
key: "DownloadRTPData", value: function (e) {
|
||
if (this.bWriteRTPData) {
|
||
for (var t = new Uint8Array(e), n = this.aRTPDataBuffer.length, i = 0, r = t.length; i < r; i++) this.aRTPDataBuffer[n + i] = t[i];
|
||
this.iRTPDataSize++, t = null
|
||
}
|
||
this.bWriteRTPData && 200 <= this.iRTPDataSize && (console.log("download200RTPdata"), e = new Uint8Array(this.aRTPDataBuffer), this.downloadFile(e, "RTP.data"), this.aRTPDataBuffer.splice(0, this.aRTPDataBuffer.length), this.bWriteRTPData = !1, this.iRTPDataSize = 0, this.rtpNum = 0, this.downloadRTP = !1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_Play", value: function (e) {
|
||
if (null === this.decodeWorker) return this.iLastErrorCode = 2;
|
||
if (k && console.log(">>>JS PlayM4_Play canvasID: " + e), null === e) this.bOnlyPlaySound = !0, this.sCanvasId = null; else {
|
||
if ("string" != typeof e) return this.iLastErrorCode = 0;
|
||
if (this.bOnebyOne && (this.bPlayRateChange = !1, this.bOnebyOne = !1, this.bPause = !1, this.draw()), this.bPlay) return this.iLastErrorCode = 1;
|
||
if (null == this.oSuperRender && (this.oSuperRender = new SuperRender(e, this.szBasePath), null == this.oSuperRender)) return this.iLastErrorCode = 61;
|
||
this.sCanvasId = e, this.bPlay = !0, this.bPause = !1, this.bOnebyOne = !1, this.bPlaySound = !1, this.bPlayRateChange = !1, this.bOnlyPlaySound = !1, this.draw()
|
||
}
|
||
return null == this.audioRenderer && (this.audioRenderer = new AudioRenderer, null == this.audioRenderer) ? this.iLastErrorCode = 61 : this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_Stop", value: function () {
|
||
if (k && console.log(">>>JS PlayM4_Stop 1"), null == this.decodeWorker || null == this.oSuperRender) return this.iLastErrorCode = 2;
|
||
if (!this.bPlay) return this.iLastErrorCode = 2;
|
||
this.bPlaySound && (this.PlayM4_StopSound(), this.bPlaySound = !0), this.bPlay = !1, this.bOnebyOne = !1, this.bPause = !1, this.oSuperRender.SR_SetDisplayRect(null), this.iZoomNum = 0, this.bDisRect = !1, this.oSuperRender.SR_DisplayFrameData(this.nWidth, this.nHeight, null);
|
||
var e = document.getElementById(this.sCanvasId);
|
||
return e && (this.clonedCanvas = e.cloneNode(!0), this.clonedCanvasParentNode = e.parentNode, this.clonedCanvasParentNode.replaceChild(this.clonedCanvas, e)), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_PlayRate", value: function (e) {
|
||
return null == this.decodeWorker ? this.iLastErrorCode = 2 : (this.bPlayRateChange = 1 !== e, this.iInputDataLen = 20480 * (e = e < 1 ? 1 : e), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_Pause", value: function (e) {
|
||
return null == this.decodeWorker || null == this.oSuperRender || !this.bPlay || this.bOnebyOne ? this.iLastErrorCode = 2 : "boolean" != typeof e ? this.iLastErrorCode = 0 : (this.bPause = e, this.bIsFirstFrame = !0, k && console.log(">>>JS PlayM4_Pause:" + e), e ? this.bPlaySound && (this.PlayM4_StopSound(), this.bPlaySound = !0) : (this.bPlaySound && this.PlayM4_PlaySound(), this.draw()), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_OneByOne", value: function (e) {
|
||
return null != this.decodeWorker && null != this.oSuperRender && this.bPlay ? 10 < e || e <= 0 ? this.iLastErrorCode = 0 : (e = e || 1, this.iInputDataLen = 20480, this.FrameForwardLen = e, this.bPause = !0, this.bOnebyOne = !0, this.bIsFirstFrame = !0, this.draw(), this.iLastErrorCode = 1) : this.iLastErrorCode = 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_PlaySound", value: function (e) {
|
||
return null === this.decodeWorker || !1 === this.bOpenStream ? this.iLastErrorCode = 2 : this.bAudioTypeSupport ? e < 0 || 16 < e ? this.iLastErrorCode = 0 : null == this.audioRenderer && (this.audioRenderer = new AudioRenderer, null == this.audioRenderer) ? this.iLastErrorCode = 61 : (this.audioRenderer.SetWndNum(e), this.audioRenderer.oAudioContext.resume(), this.bPlaySound = !0, this.iLastErrorCode = 1) : this.iLastErrorCode = 16
|
||
}
|
||
}, {
|
||
key: "PlayM4_StopSound", value: function () {
|
||
return null != this.decodeWorker && null != this.audioRenderer && this.bPlaySound ? (this.bPlaySound = !1, this.iLastErrorCode = 1) : this.iLastErrorCode = 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDisplayBuf", value: function (e) {
|
||
return null == this.decodeWorker ? this.iLastErrorCode = 2 : e <= 0 ? this.iLastErrorCode = 0 : (this.YUVBufferSize = e, this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetSecretKey", value: function (e, t, n) {
|
||
if (null == this.decodeWorker || !1 === this.bOpenStream) return this.iLastErrorCode = 2;
|
||
if (null == t) return this.iLastErrorCode = 0;
|
||
if (1 === e) {
|
||
if (128 !== n) return this.iLastErrorCode = 0;
|
||
if (null == t || void 0 === t) return this.iLastErrorCode = 0
|
||
} else if (0 !== e) return this.iLastErrorCode = 0;
|
||
return this.decodeWorker.postMessage({
|
||
command: "SetSecretKey",
|
||
data: t,
|
||
nKeyType: e,
|
||
nKeyLen: n
|
||
}), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDecodeFrameType", value: function (e) {
|
||
return null == this.decodeWorker || null == this.oSuperRender ? this.iLastErrorCode = 2 : 0 !== e && 1 !== e ? this.iLastErrorCode = 0 : (k && (console.log(">>>JS PlayM4_SetDecodeFrameType"), console.log(e)), this.nDecFrameType = e, this.decodeWorker.postMessage({
|
||
command: "SetDecodeFrameType",
|
||
data: e
|
||
}), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetIFrameDecInterval", value: function (e) {
|
||
return 1 !== this.nDecFrameType ? this.iLastErrorCode = 2 : e < 0 ? this.iLastErrorCode = 0 : (this.decodeWorker.postMessage({
|
||
command: "SetIFrameDecInterval",
|
||
data: e
|
||
}), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetLostFrameMode", value: function (e) {
|
||
return e < 0 || 1 < e ? 0 : (this.decodeWorker.postMessage({command: "SetLostFrameMode", data: e}), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetDisplayRegion", value: function (e, t) {
|
||
if (k && console.log("PlayM4_SetDisplayRegion "), null === this.decodeWorker || !1 === this.bPlay || null === this.oSuperRender || null === this.canvasId) return this.iLastErrorCode = 2;
|
||
if (!0 === t) {
|
||
if (null == e) return k && console.log("PlayM4_SetDisplayRegion: dipalyRect is null"), this.iLastErrorCode = 0;
|
||
if ("number" != typeof e.left || "number" != typeof e.top || "number" != typeof e.right || "number" != typeof e.bottom) return this.iLastErrorCode = 0;
|
||
if (e.right < 0 || e.left < 0 || e.top < 0 || e.bottom < 0) return k && console.log("PlayM4_SetDisplayRegion: dipalyRect rectParameter is wrong"), this.iLastErrorCode = 0;
|
||
var t = e.left, n = e.right, i = e.top, e = e.bottom,
|
||
r = document.getElementById(this.sCanvasId).getBoundingClientRect();
|
||
if (this.iCanvasWidth = r.width, this.iCanvasHeight = r.height, n - t < 16 || e - i < 16 || n - t > this.iCanvasWidth || e - i > this.iCanvasHeight) return this.iLastErrorCode = 0;
|
||
0 !== this.iZoomNum && (t = Math.round(t / this.iRatio_x) + this.stDisplayRect.left, i = Math.round(i / this.iRatio_y) + this.stDisplayRect.top, n = Math.round(n / this.iRatio_x) + this.stDisplayRect.left, e = Math.round(e / this.iRatio_y) + this.stDisplayRect.top), this.stDisplayRect = {
|
||
top: i,
|
||
left: t,
|
||
right: n,
|
||
bottom: e
|
||
}, this.oSuperRender.SR_SetDisplayRect(this.stDisplayRect), this.bDisRect = !0;
|
||
r = e - i;
|
||
this.iRatio_x = this.iCanvasWidth / (n - t), this.iRatio_y = this.iCanvasHeight / r, this.iZoomNum++
|
||
} else this.oSuperRender.SR_SetDisplayRect(null), this.iZoomNum = 0, this.bDisRect = !1;
|
||
return (this.bPause || this.bOnebyOne || this.bPlayRateChange) && this.oSuperRender.SR_DisplayFrameData(this.nWidth, this.nHeight, new Uint8Array(this.aDisplayBuf)), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetBMP", value: function (e) {
|
||
return this.getPic(e, "GetBMP")
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetJPEG", value: function (e) {
|
||
return this.getPic(e, "GetJPEG")
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetVolume", value: function (e) {
|
||
return null == this.decodeWorker || null == this.audioRenderer ? this.iLastErrorCode = 2 : e < 0 || 100 < e ? this.iLastErrorCode = 0 : (this.audioRenderer.SetVolume(e / 100), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetVolume", value: function (e) {
|
||
return null == this.decodeWorker || null == this.audioRenderer ? this.iLastErrorCode = 2 : e && "function" == typeof e ? null === (t = this.audioRenderer.GetVolume()) ? 63 : (e(10 * Math.round(10 * t)), this.iLastErrorCode = 1) : this.iLastErrorCode = 0;
|
||
var t
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetOSDTime", value: function (e) {
|
||
return null != this.decodeWorker && this.bPlay ? e && "function" == typeof e ? (e(this.szOSDTime), this.iLastErrorCode = 1) : this.iLastErrorCode = 0 : this.iLastErrorCode = 2
|
||
}
|
||
}, {
|
||
key: "PlayM4_IsVisible", value: function (e) {
|
||
return this.bVisibility = e, k && console.log(">>>JS PlayM4_IsVisible visibility:" + e), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetSdkVersion", value: function () {
|
||
return "20211104"
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetBuildDate", value: function () {
|
||
return "20210923"
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetInputBufSize", value: function () {
|
||
return this.aInputDataBuffer.length
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetInputBufSize", value: function (e) {
|
||
return 0 < e ? (this.iInputMaxBufSize = e, this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetYUVBufSize", value: function () {
|
||
return this.aVideoFrameBuffer.length
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetFrameResolution", value: function (e) {
|
||
return null == this.decodeWorker ? this.iLastErrorCode = 2 : e && "function" == typeof e ? (e(this.nWidth, this.nHeight), this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_RegisterYUVBufSizeCB", value: function (e) {
|
||
return e && "function" == typeof e ? (this.YUVBufSizeCBFun = e, this.iLastErrorCode = 1) : this.iLastErrorCode = 0
|
||
}
|
||
}, {
|
||
key: "PlayM4_UnRegisterYUVBufSizeCB", value: function () {
|
||
return null != this.YUVBufSizeCBFun && (this.YUVBufSizeCBFun = null), this.iLastErrorCode = 1
|
||
}
|
||
}, {
|
||
key: "PlayM4_ClearCanvas", value: function () {
|
||
return null == this.oSuperRender ? this.iLastErrorCode = 2 : (this.oSuperRender.SR_DisplayFrameData(this.nWidth, this.nHeight, null), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_ReleaseInputBuffer", value: function () {
|
||
return null === this.aInputDataBuffer ? this.iLastErrorCode = 2 : (this.aInputDataBuffer.splice(0, this.aInputDataBuffer.length), this.aInputDataLens.splice(0, this.aInputDataLens.length), this.iLastErrorCode = 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetDecodeFrameType", value: function () {
|
||
return this.nDecFrameType
|
||
}
|
||
}, {
|
||
key: "PlayM4_CreateAudEncode", value: function (e) {
|
||
return k && console.log(">>>JS PlayM4_CreateAudEncode 1 nEncoderType:" + e), null == this.decodeWorker ? 79 : e < 1 || 6 < e || 5 === e ? 71 : (this.decodeWorker.postMessage({
|
||
command: "CreateAudEncode",
|
||
encodertype: e
|
||
}), k && console.log(">>>JS PlayM4_CreateAudEncode 2 nEncoderType:" + e), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_SetAudEncodeParam", value: function (e, t, n, i) {
|
||
return k && console.log(">>>JS PlayM4_SetAudEncodeParam 1 nSampleRate:" + e + ",nChannel:" + t + " ,nBitRate:" + n + " ,nBitWidth:" + i), null == this.decodeWorker ? 79 : 1 != t || 16 != i ? 71 : (this.decodeWorker.postMessage({
|
||
command: "SetAudEncodeParam",
|
||
samplerate: e,
|
||
channel: t,
|
||
bitrate: n,
|
||
bitwidth: i
|
||
}), k && console.log(">>>JS PlayM4_SetAudEncodeParam 2 nSampleRate:" + e + ",nChannel:" + t + " ,nBitRate:" + n + " ,nBitWidth:" + i), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_InputAudEncodeData", value: function (e, t) {
|
||
return k && console.log(">>>JS PlayM4_InputAudEncodeData 1 dataSize:" + t), null == this.decodeWorker ? 79 : (k && console.log(">>>JS PlayM4_InputAudEncodeData 2 dataSize:" + t + ", nSysTime:" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), this.decodeWorker.postMessage({
|
||
command: "InputAudEncodeData",
|
||
data: e,
|
||
dataSize: t
|
||
}), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_DestroyAudEncode", value: function () {
|
||
return k && console.log(">>>JS MainThread-PlayM4_DestroyAudEncode 1 "), null == this.decodeWorker ? 79 : (this.aAudioEncBuffer.splice(0, this.aAudioEncBuffer.length), this.iAudioEncBufferSize = 0, this.decodeWorker.postMessage({command: "DestroyAudEncode"}), 1)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetAudioEmcBuf", value: function () {
|
||
return this.aAudioEncBuffer
|
||
}
|
||
}, {
|
||
key: "PlayM4_RegisterAudEncodeCB", value: function (e) {
|
||
return k && console.log(">>>JS PlayM4_RegisterAudEncodeCB 1 callback:" + e), e && "function" == typeof e ? (this.AudEncodeDataCBFun = e, k && console.log(">>>JS PlayM4_RegisterAudEncodeCB 2 callback:" + e), 1) : 0
|
||
}
|
||
}, {
|
||
key: "downloadFile", value: function (e, t) {
|
||
var n = e,
|
||
e = (e instanceof Blob || e instanceof File || (n = new Blob([e])), window.URL.createObjectURL(n)),
|
||
n = window.document.createElement("a"),
|
||
e = (n.href = e, n.download = t, document.createEvent("MouseEvents"));
|
||
e.initEvent("click", !0, !0), n.dispatchEvent(e)
|
||
}
|
||
}, {
|
||
key: "PlayM4_GetLastError", value: function () {
|
||
return this.iLastErrorCode
|
||
}
|
||
}]), T);
|
||
|
||
function T(e, t, s) {
|
||
if ((0, a.default)(this, T), null == e || void 0 === e || "string" != typeof e) return 0;
|
||
if (this.szBasePath = e, !t || "function" != typeof t) return 0;
|
||
this.fnCallBack = t, this.decodeWorker = null, this.streamOpenMode = null, this.bOpenStream = !1, this.iFrameNumOrTime = 0, this.bSetPlayPositionType = 0, this.audioRenderer = null, this.aAudioBuffer = [], this.iAudioBufferSize = 0, this.bWriteAudEnc = !1, this.iAudioEncBufferSize = 0, this.aAudioEncBuffer = [], this.oSuperRender = null, this.aVideoFrameBuffer = [], this.YUVBufferSize = 1, this.szOSDTime = null, this.bWriteYUVData = !1, this.iYUV10size = 0, this.aVideoYUVBuffer = [], this.bWritePCMData = !1, this.iAudioBuffer500Size = 0, this.aAudioPCMBuffer = [], this.bWriteRawData = !1, this.iRawDataSize = 0, this.aRawDataBuffer = [], this.bWriteRTPData = !0, this.iRTPDataSize = 0, this.aRTPDataBuffer = [], this.downloadRTP = !1, this.rtpNum = 0, this.bPlaySound = !1, this.bPlay = !1, this.bPause = !1, this.bOnebyOne = !1, this.bPlayRateChange = !1, this.bAudioTypeSupport = !0, this.audioNum = 0, this.videoNum = 0, this.SetPlayPositionFlag = !1, this.FrameForwardLen = 1, this.bOnlyPlaySound = !1, this.dataCallBackFun = null, this.YUVBufSizeCBFun = null, this.AudEncodeDataCBFun = null, this.DecCallBackFun = null, this.DisplayCallBackFun = null, this.PCMCallBackFun = null, this.DecInfoYUV = g, this.DisplayInfoYUV = M, this.DecInfoPCM = L, this.nWidth = 0, this.nHeight = 0, this.nSPSCropLeft = 0, this.nSPSCropRight = 0, this.nSPSCropTop = 0, this.nSPSCropBottom = 0, this.sCanvasId = null, this.aDisplayBuf = null, this.bVisibility = !0, this.nDecFrameType = 0, this.iCanvasWidth = 0, this.iCanvasHeight = 0, this.iZoomNum = 0, this.iRatio_x = 1, this.iRatio_y = 1, this.stDisplayRect = {
|
||
top: 0,
|
||
left: 0,
|
||
right: 0,
|
||
bottom: 0
|
||
}, this.bDisRect = !1, this.stYUVRect = {
|
||
top: 0,
|
||
left: 0,
|
||
right: 0,
|
||
bottom: 0
|
||
}, this.aInputDataLens = [], this.aInputDataBuffer = [], this.bIsGetYUV = !1, this.bIsFirstFrame = !0, this.iInputMaxBufSize = 5242880, this.bIsInput = !1, this.bIsInputBufOver = !1, this.iInputDataLen = 20480;
|
||
var _ = this;
|
||
this.iLastErrorCode = 1, this.setCallBack = function (e, t, n, i, r) {
|
||
var a = b;
|
||
a.id = s, a.cmd = t, a.data = n, a.errorCode = i, a.status = r, e.fnCallBack(a)
|
||
}, this._loadRenderFiles(), this.convertErrorCode = function (e) {
|
||
switch (e) {
|
||
case 1:
|
||
return this.iLastErrorCode = 1;
|
||
case 98:
|
||
return this.iLastErrorCode = 0;
|
||
default:
|
||
return this.iLastErrorCode = e
|
||
}
|
||
}, this.arrayBufferCopy = function (e) {
|
||
for (var t = e.byteLength, n = new Uint8Array(t), i = new Uint8Array(e), r = 0, r = 0; r < t; r++) n[r] = i[r];
|
||
return n
|
||
}, this.inputDataFun = function () {
|
||
var e = 0;
|
||
if (_.bIsGetYUV = !1, _.bIsInputBufOver) {
|
||
k && console.log(">>>JS inputDataFun over!");
|
||
var t = new Uint8Array(1), n = {command: "InputData", data: new Uint8Array(t).buffer, dataSize: 0};
|
||
_.decodeWorker.postMessage(n, [n.data])
|
||
} else if (_.bPlay && (!_.bPause || _.bOnebyOne) || this.bOnlyPlaySound) {
|
||
for (; 0 < _.aInputDataLens.length && !((e += _.aInputDataLens.shift()) > _.iInputDataLen);) ;
|
||
k && console.log(">>>JS inputDataFun-len:%d,totalSize:%d", e, _.aInputDataBuffer.length), t = _.aInputDataBuffer.splice(0, e);
|
||
n = {command: "InputData", data: new Uint8Array(t).buffer, dataSize: e};
|
||
_.decodeWorker.postMessage(n, [n.data])
|
||
}
|
||
t = null
|
||
}, this.getPic = function (e, t) {
|
||
if (null == this.decodeWorker || null == this.oSuperRender) return this.iLastErrorCode = 2;
|
||
if (!this.bPlay) return this.iLastErrorCode = 2;
|
||
if (!e || "function" != typeof e) return this.iLastErrorCode = 0;
|
||
var n;
|
||
if (this.dataCallBackFun = e, 0 === this.iZoomNum) this.stYUVRect.left = 0, this.stYUVRect.top = 0, this.stYUVRect.right = 0, this.stYUVRect.bottom = 0; else if (0 === this.iCanvasWidth || 0 === this.iCanvasHeight ? (this.stYUVRect.left = 0, this.stYUVRect.top = 0, this.stYUVRect.right = 0, this.stYUVRect.bottom = 0) : (e = this.nWidth / this.iCanvasWidth, n = this.nHeight / this.iCanvasHeight, this.stYUVRect.left = Math.round(this.stDisplayRect.left * e), this.stYUVRect.top = Math.round(this.stDisplayRect.top * n), this.stYUVRect.right = Math.round(this.stDisplayRect.right * e), this.stYUVRect.bottom = Math.round(this.stDisplayRect.bottom * n)), this.stYUVRect.right - this.stYUVRect.left < 32 || this.stYUVRect.bottom - this.stYUVRect.top < 32) return this.iLastErrorCode = 0;
|
||
if (null == this.aDisplayBuf) return this.iLastErrorCode = 2;
|
||
e = {
|
||
command: t,
|
||
data: this.arrayBufferCopy(this.aDisplayBuf).buffer,
|
||
width: this.nWidth,
|
||
height: this.nHeight,
|
||
rect: this.stYUVRect
|
||
};
|
||
return k && console.log(">>>JS capture nWidth = %d,nWidth = %d", this.nWidth, this.nHeight), this.decodeWorker.postMessage(e), this.iLastErrorCode = 1
|
||
}, this.createWorker = function (c) {
|
||
if (window.Worker) {
|
||
if (null == this.decodeWorker && (this.decodeWorker = new Worker(_.szBasePath + "DecodeWorker.js"), k && console.log(">>>JS createWorker success!!!!!!!!!!!!!!!!!!!!!!!!!"), null == this.decodeWorker)) return this.iLastErrorCode = 60;
|
||
this.decodeWorker.onmessage = function (e) {
|
||
var t = null, n = e.data;
|
||
switch (n.function) {
|
||
case"printLog":
|
||
console.log("print JSPlayerSDK log failed");
|
||
break;
|
||
case"loaded":
|
||
c.setCallBack(c, t = "loaded", 0, 0, !0);
|
||
break;
|
||
case"SetStreamOpenMode":
|
||
t = "SetStreamOpenMode";
|
||
break;
|
||
case"OpenStream":
|
||
if (t = "OpenStream", 1 === n.errorCode) return void (_.bOpenStream = !0);
|
||
break;
|
||
case"InputData":
|
||
t = "InputData", 11 === n.errorCode && (_.bIsInputBufOver = !0, _.inputDataFun(), k && console.log(">>>JS InputData PLAYM4_BUF_OVER")), 31 === n.errorCode && (_.bIsInputBufOver = !1, k && console.log(">>>JS InputData PLAYM4_NEED_MORE_DATA"));
|
||
break;
|
||
case"GetFrameData":
|
||
if (t = "GetFrameData", !_.bOnlyPlaySound) {
|
||
if (k && console.log(">>>JS mainthread display GetFrameData 1-1"), null != n.data && null != n.frameInfo && (n.frameInfo.width, n.frameInfo.height), !_.bPlay) return;
|
||
if (!_.bIsFirstFrame && 31 === n.errorCode) {
|
||
_.bIsInputBufOver = !1, setTimeout(_.inputDataFun(), 5);
|
||
break
|
||
}
|
||
_.bIsInputBufOver ? _.inputDataFun() : "videoType" === n.type && (0 < _.aInputDataLens.length && _.bIsInput ? (_.inputDataFun(), _.bIsInput = !1) : _.bIsGetYUV = !0, _.bIsFirstFrame = !1)
|
||
}
|
||
if (k && console.log(">>>JS mainthread display GetFrameData bVisibility:" + _.bVisibility), _.bVisibility) if (1 === n.errorCode) switch (n.type) {
|
||
case"videoType":
|
||
if (k && console.log(">>>JS mainthread display GetFrameData type:" + n.type), null == n.data || null == n.frameInfo) return this.iLastErrorCode = 0;
|
||
if (null != _.DecCallBackFun && (k && console.log(">>>JS MainThread-GetYUVData"), _.DecInfoYUV.height = n.frameInfo.height, _.DecInfoYUV.width = n.frameInfo.width, _.DecInfoYUV.frameNum = n.frameInfo.frameNum, _.DecInfoYUV.yuvData = new Uint8Array(n.data), _.DecCallBackFun(_.DecInfoYUV)), _.bIsFirstFrame = !1, c.nWidth = n.frameInfo.width, c.nHeight = n.frameInfo.height, c.nSPSCropLeft = n.frameInfo.cropLeft, c.nSPSCropRight = n.frameInfo.cropRight, c.nSPSCropTop = n.frameInfo.cropTop, c.nSPSCropBottom = n.frameInfo.cropBottom, (o = new Object).data = n.data, o.osdTime = n.osd, o.nWidth = n.frameInfo.width, o.nHeight = n.frameInfo.height, o.frameNum = n.frameInfo.frameNum, o.timeStamp = n.frameInfo.timeStamp, c.bWriteYUVData) {
|
||
for (var i = new Uint8Array(n.data), r = c.aVideoYUVBuffer.length, a = 0, s = i.length; a < s; a++) c.aVideoYUVBuffer[r + a] = i[a];
|
||
c.iYUV10size++, i = null
|
||
}
|
||
c.bWriteYUVData && 20 <= c.iYUV10size && (u = new Uint8Array(c.aVideoYUVBuffer), c.downloadFile(u, "videoYUV.data"), c.aVideoYUVBuffer.splice(0, c.aVideoYUVBuffer.length), c.bWriteYUVData = !1, c.iYUV10size = 0, u = null), k && console.log(">>>JS mainthread getVideoInfo Width:" + o.nWidth + ",height:" + o.nHeight + ",frameNum:" + o.frameNum), c.aVideoFrameBuffer.push(o);
|
||
var o = null, u = c.aVideoFrameBuffer.length;
|
||
if (5 < u && (k && console.log(">>>JS render loose frame iYUVNum:%d", u), c.bOnebyOne || c.aVideoFrameBuffer.splice(0, 2)), c.SetPlayPositionFlag && 1 === c.bSetPlayPositionType && (n.frameInfo.frameNum === c.iFrameNumOrTime || n.frameInfo.timeStamp === c.iFrameNumOrTime)) {
|
||
c.setCallBack(c, "SetFrameNum", 0, 0, !1), c.bIsFirstFrame = !0;
|
||
break
|
||
}
|
||
if (c.bOnebyOne && 15 <= c.aVideoFrameBuffer.length) {
|
||
c.setCallBack(c, "OnebyOne", 0, 0, !1), c.bIsFirstFrame = !0;
|
||
break
|
||
}
|
||
break;
|
||
case"audioType":
|
||
if (k && console.log(">>>JS mainthread display GetFrameData 2-3 type:" + n.type + ",bPlaySound:" + c.bPlaySound + ",!bPlayRateChange:" + !c.bPlayRateChange + ",bOnlyPlaySound:" + _.bOnlyPlaySound), c.bPlaySound && !c.bPlayRateChange || _.bOnlyPlaySound) {
|
||
k && console.log(">>>JS mainthread display GetFrameData 2-4 type" + n.type + "bOnlyPlaySound:" + _.bOnlyPlaySound), null != _.PCMCallBackFun && (k && console.log(">>>JS MainThread-GetYUVData"), _.DecInfoPCM.sampleRate = n.frameInfo.samplesPerSec, _.DecInfoPCM.channel = n.frameInfo.channels, _.DecInfoPCM.bitsPerSample = n.frameInfo.bitsPerSample, _.DecInfoPCM.pcmData = new Uint8Array(n.data), _.DecInfoPCM.length = _.DecInfoPCM.pcmData.length, _.PCMCallBackFun(_.DecInfoPCM));
|
||
for (var i = new Uint8Array(n.data), r = c.aAudioBuffer.length, a = 0, s = i.length; a < s; a++) c.aAudioBuffer[r + a] = i[a];
|
||
if (c.iAudioBufferSize++, i = null, k && console.log(">>>JS play sound 1 iAudioBufferNum:%d, BufferLen:%d", c.iAudioBufferSize, c.aAudioBuffer.length), c.bWritePCMData) {
|
||
for (i = new Uint8Array(n.data), r = c.aAudioPCMBuffer.length, a = 0, s = i.length; a < s; a++) c.aAudioPCMBuffer[r + a] = i[a];
|
||
console.log("audio_type num:" + c.iAudioBuffer500Size + ", len:" + i.length), c.iAudioBuffer500Size++, i = null
|
||
}
|
||
c.bWritePCMData && 100 <= c.iAudioBuffer500Size && (o = new Uint8Array(c.aAudioPCMBuffer), c.downloadFile(o, "audioPCM.data"), c.aAudioPCMBuffer.splice(0, c.aAudioPCMBuffer.length), c.bWritePCMData = !1, c.iAudioBuffer500Size = 0, o = null), 25 <= c.iAudioBufferSize && (k && console.log(">>>JS play sound 2 iAudioBufferNum:%d, BufferLen:%d", c.iAudioBufferSize, c.aAudioBuffer.length), c.audioRenderer.Play(c.aAudioBuffer, c.aAudioBuffer.length, n.frameInfo), k && console.log(">>>JS mainthread display Audio push 3 sysTime:" + ((new Date).getMonth() + 1) + "-" + (new Date).getDate() + " " + (new Date).getHours() + ":" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), c.aAudioBuffer.splice(0, c.aAudioBuffer.length), c.aAudioBuffer.length = 0, c.iAudioBufferSize = 0)
|
||
}
|
||
break;
|
||
case"privateType":
|
||
k && console.log(">>>JS mainthread display GetFrameData 2-5 type" + n.type + "bOnlyPlaySound:" + _.bOnlyPlaySound);
|
||
break;
|
||
default:
|
||
k && console.log(">>>JS mainthread display GetFrameData 2-6 type:" + n.type + ",bOnlyPlaySound:" + _.bOnlyPlaySound)
|
||
} else k && console.log(">>>JS mainthread GetFrameData is not Ok,errorCode:" + n.errorCode);
|
||
break;
|
||
case"GetRawData":
|
||
if (t = "GetRawData", c.bWriteRawData) {
|
||
for (var d = new Uint8Array(n.data), l = c.aRawDataBuffer.length, a = 0, s = d.length; a < s; a++) c.aRawDataBuffer[l + a] = d[a];
|
||
c.iRawDataSize++, d = null
|
||
}
|
||
c.bWriteRawData && 100 <= c.iRawDataSize && (h = new Uint8Array(c.aRawDataBuffer), c.downloadFile(h, "rawBuffer.data"), c.aRawDataBuffer.splice(0, c.aRawDataBuffer.length), c.bWriteRawData = !1, c.iRawDataSize = 0, h = null);
|
||
break;
|
||
case"PlaySound":
|
||
t = "PlaySound";
|
||
break;
|
||
case"SetPlayPosition":
|
||
console.log(">>>JS mainthread SetPlayPosition error,errorCode:" + n.errorCode);
|
||
break;
|
||
case"GetJPEG":
|
||
var t = "GetJPEG", h = n.data;
|
||
c.dataCallBackFun(h);
|
||
break;
|
||
case"GetBMP":
|
||
t = "GetBMP";
|
||
var h = n.data;
|
||
c.dataCallBackFun(h);
|
||
break;
|
||
case"GetAudEncodeData":
|
||
if (k && console.log(">>>JS MainThread-GetAudEncodeData 1"), t = "GetAudEncodeData", 1 === n.errorCode) {
|
||
if (null != _.AudEncodeDataCBFun && (k && console.log(">>>JS GetAudEncodeData 1 dataSize" + n.dataSize + ", nSysTime:" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds()), _.AudEncodeDataCBFun(new Uint8Array(n.data)), k && console.log(">>>JS GetAudEncodeData 2 dataSize" + n.dataSize + ", nSysTime:" + (new Date).getMinutes() + ":" + (new Date).getSeconds() + "." + (new Date).getMilliseconds())), c.bWriteAudEnc) {
|
||
for (i = new Uint8Array(n.data), r = c.aAudioEncBuffer.length, a = 0, s = i.length; a < s; a++) c.aAudioEncBuffer[r + a] = i[a];
|
||
c.iAudioEncBufferSize++, i = null
|
||
}
|
||
c.bWriteAudEnc && 200 <= c.iAudioEncBufferSize && (h = new Uint8Array(c.aAudioEncBuffer), c.downloadFile(h, "Enc.AAC"), c.aAudioEncBuffer.splice(0, c.aAudioEncBuffer.length), c.bWriteAudEnc = !1, c.iAudioEncBufferSize = 0, h = null)
|
||
} else k && console.log(">>>JS MainThread-GetAudEncodeData 2 err")
|
||
}
|
||
"GetFrameData" === t && "GetAudEncodeData" === t && 16 !== n.errorCode && 101 !== n.errorCode && 100 !== n.errorCode && 48 !== n.errorCode || c.setCallBack(c, t, 0, c.convertErrorCode(n.errorCode), !0)
|
||
}
|
||
}
|
||
}, this.createWorker(_), this.draw = function () {
|
||
if (_.bPlay) {
|
||
if (!_.bPause || _.bOnebyOne) {
|
||
requestAnimationFrame(_.draw);
|
||
var e = _.aVideoFrameBuffer.length;
|
||
if (null != _.YUVBufSizeCBFun && _.YUVBufSizeCBFun(e), _.bOnebyOne) {
|
||
if (e <= 8 && _.setCallBack(_, "OnebyOne", 0, 31, !0), e <= _.FrameForwardLen + 1) return void _.setCallBack(_, "OnebyOne", 0, 31, !0);
|
||
for (var t = _.FrameForwardLen; 1 < t;) {
|
||
_.aVideoFrameBuffer.shift();
|
||
t--
|
||
}
|
||
_.bOnebyOne = !1
|
||
}
|
||
if (k && console.log(">>>JS Draw aVideoFrameBuffer.length == " + e), e > _.YUVBufferSize) {
|
||
e = _.aVideoFrameBuffer.shift();
|
||
if (_.SetPlayPositionFlag) {
|
||
if (k && console.log(">>>JS SetPlayPositionFlag frameNumOrTime:" + _.iFrameNumOrTime + ",currentFrameNum:" + e.frameNum), e.frameNum != _.iFrameNumOrTime) return void (k && console.log(">>>JS frameNum!= frameNumOrTime:" + e.frameNum));
|
||
1 === _.bSetPlayPositionType && (_.bPause = !0), _.SetPlayPositionFlag = !1
|
||
}
|
||
k && console.log(">>>after display frameNum:" + e.frameNum), _.aDisplayBuf = e.data;
|
||
var n = new Uint8Array(_.aDisplayBuf);
|
||
k && console.log(">>>JS SR_DisplayFrameData 1 nWidth:%d, nHeight:%d, nWidth1:%d, nHeight1:%d", e.nWidth, e.nHeight, _.nWidth, _.nHeight), _.oSuperRender.SR_DisplayFrameData(e.nWidth, e.nHeight, n, e.nWidth - _.nSPSCropLeft - _.nSPSCropRight, e.nHeight - _.nSPSCropTop - _.nSPSCropBottom), null != _.DisplayCallBackFun && (k && console.log(">>>JS MainThread-DisplayCallBackFun"), _.DisplayInfoYUV.height = e.nHeight, _.DisplayInfoYUV.width = e.nWidth, _.DisplayInfoYUV.frameNum = e.frameNum, _.DisplayInfoYUV.yuvData = new Uint8Array(n), _.DisplayCallBackFun(_.DisplayInfoYUV)), k && _.bOnebyOne && console.log("OneByOne frameNum:" + e.frameNum), k && console.log(">>>JS SR_DisplayFrameData 2 nWidth:%d, nHeight:%d, nWidth1:%d, nHeight1:%d", e.nWidth, e.nHeight, _.nWidth, _.nHeight), n = null, _.szOSDTime = e.osdTime
|
||
} else _.setCallBack(_, "Play", 0, 31, !0)
|
||
}
|
||
} else _.bPlay || (k && console.log(">>>JS mainThread stop play jsplaySDKInterface"), _.aVideoFrameBuffer.splice(0, _.aVideoFrameBuffer.length), _.aAudioBuffer.splice(0, _.aAudioBuffer.length))
|
||
}, this.checkAudioType = function (e) {
|
||
var t, e = [e[12], e[13], 0, 0];
|
||
switch (255 & e[t = 0] | (255 & e[t + 1]) << 8 | (255 & e[t + 2]) << 16 | (255 & e[t + 3]) << 24) {
|
||
case l:
|
||
case d:
|
||
case h:
|
||
case m:
|
||
case f:
|
||
case c:
|
||
case p:
|
||
case y:
|
||
case v:
|
||
return this.iLastErrorCode = 1;
|
||
default:
|
||
return this.iLastErrorCode = 16
|
||
}
|
||
}
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.JSTalkCtrl = void 0;
|
||
var i = r(n(1)), n = r(n(2));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var s = {id: null, cmd: null, data: null, errorCode: 0, status: null}, a = null,
|
||
n = (window.JSAUDIOCOM_EncodeDataCBFun = function (e, t, n, i) {
|
||
a && null != a.AudEncodeDataCBFun && a.AudEncodeDataCBFun(new Uint8Array(t))
|
||
}, (0, n.default)(o, [{
|
||
key: "Talk_CreateAudEncode", value: function (e) {
|
||
this.iTalkEncodePort = this.oTalkWASM._JSAUDIOCOM_CreateEncodeHandle(e), console.log("_JSAUDIOCOM_CreateEncodeHandle port :" + this.iTalkEncodePort)
|
||
}
|
||
}, {
|
||
key: "Talk_SetAudEncodeParam", value: function (e, t, n, i) {
|
||
0 == this.oTalkWASM._JSAUDIOCOM_RegisterEncodeDataCallBack(this.iTalkEncodePort, t, i, e, n) && (t = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkEncodePort), console.log("resEncodeDataCallBack resError :" + t)), 1 !== this.oTalkWASM._JSAUDIOCOM_StartEncode(this.iTalkEncodePort) && (i = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkEncodePort), console.log("_JSAUDIOCOM_StartEncode resError :" + i))
|
||
}
|
||
}, {
|
||
key: "Talk_RegisterAudEncodeCB", value: function (e) {
|
||
return e && "function" == typeof e ? (this.AudEncodeDataCBFun = e, 1) : 0
|
||
}
|
||
}, {
|
||
key: "Talk_InputAudEncodeData", value: function (e, t) {
|
||
var n = this.oTalkWASM._malloc(t);
|
||
if (null === n) return console.log("inputdata malloc failed!!!"), -1;
|
||
e = new Uint8Array(e), e = void this.oTalkWASM.writeArrayToMemory(e, n);
|
||
try {
|
||
e = this.oTalkWASM._JSAUDIOCOM_InputEncodeData(this.iTalkEncodePort, n, t)
|
||
} catch (e) {
|
||
console.error(e)
|
||
}
|
||
return 1 !== e && (t = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkEncodePort), console.log("_JSAUDIOCOM_InputEncodeData resError :" + t)), null !== n && (this.oTalkWASM._free(n), n = null), 1
|
||
}
|
||
}, {
|
||
key: "Talk_DestroyAudEncode", value: function () {
|
||
return this.oTalkWASM._JSAUDIOCOM_StopEncode(this.iTalkEncodePort), this.oTalkWASM._JSAUDIOCOM_ReleaseEncodeHandle(this.iTalkEncodePort), this.iTalkEncodePort = -1, 1
|
||
}
|
||
}, {
|
||
key: "Talk_CreateAuDecode", value: function () {
|
||
this.oTalkWASM._JSAUDIOCOM_LoadLibrary(), this.oTalkWASM._JSAUDIOCOM_GetPlayDeviceNum();
|
||
var e = this.oTalkWASM._JSAUDIOCOM_GetOnePlayDeviceName(0);
|
||
this.iTalkDecodePort = this.oTalkWASM._JSAUDIOCOM_CreatePlayHandle(), console.log("JSAUDIOCOM getNameRes:" + e + ", port:" + this.iTalkDecodePort)
|
||
}
|
||
}, {
|
||
key: "Talk_SetAudDecodeParam", value: function (e, t, n, i, r) {
|
||
1 !== this.oTalkWASM._JSAUDIOCOM_OpenStream(this.iTalkDecodePort, t, i, e, n, r) && (t = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkDecodePort), console.log("_JSAUDIOCOM_OpenStream resError :" + t))
|
||
}
|
||
}, {
|
||
key: "Talk_OpenStreamDecodeData", value: function () {
|
||
var e;
|
||
1 !== this.oTalkWASM._JSAUDIOCOM_StartPlay(this.iTalkDecodePort) && (e = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkDecodePort), console.log("_JSAUDIOCOM_StartPlay resError :" + e))
|
||
}
|
||
}, {
|
||
key: "Talk_InputAudDecodeData", value: function (e, t) {
|
||
var n = this.oTalkWASM._malloc(t);
|
||
if (null === n) return console.log("inputdata malloc failed!!!"), -1;
|
||
var e = new Uint8Array(e);
|
||
return this.oTalkWASM.writeArrayToMemory(e, n), 1 !== this.oTalkWASM._JSAUDIOCOM_InputStreamData(this.iTalkDecodePort, n, t) && (e = this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkDecodePort), console.log("_JSAUDIOCOM_InputStreamData resError :" + e)), null !== n && (this.oTalkWASM._free(n), 0), 1
|
||
}
|
||
}, {
|
||
key: "Talk_DestroyAudDecode", value: function () {
|
||
this.oTalkWASM._JSAUDIOCOM_StopPlay(this.iTalkDecodePort), this.oTalkWASM._JSAUDIOCOM_ReleasePlayHandle(this.iTalkDecodePort), this.iTalkDecodePort = -1
|
||
}
|
||
}, {
|
||
key: "Talk_SetTalkLogFlag", value: function (e) {
|
||
this.oTalkWASM._JSAUDIOCOM_SetPrintLogFlag(this.iTalkDecodePort, e), this.oTalkWASM._JSAUDIOCOM_SetPrintLogFlag(this.iTalkEncodePort, e)
|
||
}
|
||
}, {
|
||
key: "Talk_SetVolume", value: function (e) {
|
||
return this.oTalkWASM._JSAUDIOCOM_SetVolume(this.iTalkDecodePort, e)
|
||
}
|
||
}, {
|
||
key: "Talk_GetVolume", value: function (e) {
|
||
if (e && "function" == typeof e) return e(this.oTalkWASM._JSAUDIOCOM_GetVolume(this.iTalkDecodePort)), RETURN_OK
|
||
}
|
||
}, {
|
||
key: "Talk_GetLastError", value: function () {
|
||
return this.oTalkWASM._JSAUDIOCOM_GetLastError(this.iTalkDecodePort)
|
||
}
|
||
}]), o);
|
||
|
||
function o(e, t) {
|
||
var n = this,
|
||
t = ((0, i.default)(this, o), a = this, t && "function" == typeof t && (this.fnCallBack = t), this.setCallBack = function (e, t, n, i, r) {
|
||
var a = s;
|
||
a.cmd = t, a.data = n, a.errorCode = i, a.status = r, e.fnCallBack(a)
|
||
}, this.iTalkEncodePort = -1, this.iTalkDecodePort = -1, this.AudEncodeDataCBFun = null, this.oTalkWASM = null, e),
|
||
e = document.createElement("script");
|
||
e.type = "text/javascript", e.src = t, e.onload = function () {
|
||
JSAudioInterComModule().then(function (e) {
|
||
n.oTalkWASM = e, n.setCallBack(n, "loaded")
|
||
})
|
||
}, document.body.appendChild(e)
|
||
}
|
||
|
||
t.JSTalkCtrl = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.StorageManager = void 0;
|
||
var i = h(n(53)), r = h(n(54)), u = h(n(11)), o = h(n(1)), a = h(n(2)), d = h(n(87)), s = n(86), l = h(n(55));
|
||
|
||
function h(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
var c = new Uint8Array([1, 2, 3, 4]);
|
||
window.requestFileSystem = window.requestFileSystem || window.webkitRequestFileSystem, window.URL = window.URL || window.webkitURL;
|
||
(0, a.default)(f, [{
|
||
key: "init", value: function () {
|
||
var n = this,
|
||
i = (0 === this.iStreamType ? this.szPath = "Web/RecordFiles/" : 1 === this.iStreamType && (this.szPath = "Web/PlaybackFiles/"), this.szPath += this.getDateDir(), this.szPath.split("/"));
|
||
return new u.default(function (t) {
|
||
window.requestFileSystem(window.TEMPORARY, n.options.iFileSize, function (e) {
|
||
n.createDir(e.root, i, function () {
|
||
t()
|
||
})
|
||
}, n.errorHandler)
|
||
})
|
||
}
|
||
}, {
|
||
key: "getDateDir", value: function () {
|
||
return s.oTool.dateFormat(new Date, "yyyy-MM-dd")
|
||
}
|
||
}, {
|
||
key: "createDir", value: function (e, t, n) {
|
||
var i = this;
|
||
t.length ? e.getDirectory(t[0], {create: !0}, function (e) {
|
||
i.createDir(e, t.slice(1), n)
|
||
}, this.errorHandler) : n()
|
||
}
|
||
}, {
|
||
key: "errorHandler", value: function () {
|
||
}
|
||
}, {
|
||
key: "openFile", value: function () {
|
||
var t = this;
|
||
window.requestFileSystem(window.TEMPORARY, this.options.iFileSize, function (e) {
|
||
e.root.getFile(t.szPath + "/" + t.szFileName, {create: !0}, function (e) {
|
||
e.createWriter(function (e) {
|
||
e.onwriteend = function () {
|
||
t.writeFile(e)
|
||
}, e.onerror = function () {
|
||
}
|
||
}, t.errorHandler)
|
||
}, t.errorHandler)
|
||
}, this.errorHandler)
|
||
}
|
||
}, {
|
||
key: "writeFileHeader", value: function (n) {
|
||
var i = this;
|
||
window.requestFileSystem(window.TEMPORARY, this.options.iFileSize, function (e) {
|
||
e.root.getFile(i.szFileName, {create: !0}, function (e) {
|
||
e.createWriter(function (e) {
|
||
i.bStart = !0, e.onwriteend = function () {
|
||
i.writeFile(e)
|
||
}, e.onerror = function () {
|
||
}, e.seek(e.length);
|
||
var t = new Blob([n]);
|
||
e.write(t)
|
||
}, i.errorHandler)
|
||
}, function (e) {
|
||
console.log("getFile error:", e.message)
|
||
})
|
||
}, this.errorHandler)
|
||
}
|
||
}, {
|
||
key: "writeFileContent", value: function (e) {
|
||
this.aStreamList.push(e)
|
||
}
|
||
}, {
|
||
key: "writeFile", value: function (e) {
|
||
var t = this;
|
||
if (0 < this.aStreamList.length) {
|
||
var n = this.aStreamList.shift();
|
||
if (e.seek(e.length), e.length >= this.options.iFileSize) return void (this.options.cbEventHandler && this.options.cbEventHandler(3001, this.szUUID));
|
||
n = new Blob([n]);
|
||
e.write(n)
|
||
} else !1 === this.bStop && setTimeout(function () {
|
||
t.writeFile(e)
|
||
}, 500);
|
||
5 !== this.iPackType && 0 === this.aStreamList.length && !0 === this.bStop && this.bStart && (this.bStart = !1, this.stopWriteFile()), this.getStopData && 0 === this.aStreamList.length && (this.bStart = !1, this.stopWriteFile(), this.getStopData = !1)
|
||
}
|
||
}, {
|
||
key: "stopWriteFile", value: function () {
|
||
var t, a = this;
|
||
return new u.default((t = (0, r.default)(i.default.mark(function e(r) {
|
||
return i.default.wrap(function (e) {
|
||
for (; ;) switch (e.prev = e.next) {
|
||
case 0:
|
||
if (a.bStop) {
|
||
e.next = 2;
|
||
break
|
||
}
|
||
return e.abrupt("return", r());
|
||
case 2:
|
||
if ((!a.getStopData || 0 < a.aStreamList.length) && 5 === a.iPackType) return e.abrupt("return", r());
|
||
e.next = 4;
|
||
break;
|
||
case 4:
|
||
if (0 < a.aStreamList.length && 5 !== a.iPackType) return e.abrupt("return", r());
|
||
e.next = 6;
|
||
break;
|
||
case 6:
|
||
return a.options.cbStreamCB && a.options.cbStreamCB(c), a.options.cbStreamCB = null, e.next = 10, window.requestFileSystem(window.TEMPORARY, a.options.iFileSize, function (e) {
|
||
e.root.getFile(a.szFileName, {create: !1}, function (i) {
|
||
i.file(function (e) {
|
||
var t, n;
|
||
r(), t = i.toURL(), e = e.name, (n = window.document.createElement("a")).href = t, n.download = e, (t = document.createEvent("MouseEvents")).initEvent("click", !0, !0), n.dispatchEvent(t), a.bStop = !1
|
||
})
|
||
}, a.errorHandler)
|
||
}, a.errorHandler);
|
||
case 10:
|
||
case"end":
|
||
return e.stop()
|
||
}
|
||
}, e, a)
|
||
})), function (e) {
|
||
return t.apply(this, arguments)
|
||
}))
|
||
}
|
||
}]);
|
||
var _ = f;
|
||
|
||
function f(e, t, n, i, r) {
|
||
(0, o.default)(this, f), this.szUUID = e, this.szFileName = t, this.iStreamType = n, this.szPath = "", this.bStart = !1, this.getStopData = !1, this.aStreamList = [], this.options = r, this.iPackType = i, this.bStop = !1
|
||
}
|
||
|
||
(0, a.default)(p, [{
|
||
key: "init", value: function () {
|
||
var n = this;
|
||
return new u.default(function (e, t) {
|
||
n.initFileSystem().then(function () {
|
||
!0 === n.isTranse ? n.initWorker().then(function () {
|
||
e(n.szUUID)
|
||
}, function (e) {
|
||
t(e)
|
||
}) : e(n.szUUID)
|
||
}, function (e) {
|
||
t(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "initFileSystem", value: function () {
|
||
var n = this;
|
||
return new u.default(function (e, t) {
|
||
2 !== n.options.irecordType && (n.oFileSystem = new _(n.szUUID, n.szFileName, n.iStreamType, n.iPackType, n.options), n.oFileSystem.init().then(function () {
|
||
e()
|
||
}, function (e) {
|
||
t(e)
|
||
})), e()
|
||
})
|
||
}
|
||
}, {
|
||
key: "initWorker", value: function () {
|
||
var i = this;
|
||
return new u.default(function (n) {
|
||
i.oWorker = new Worker(i.szBasePath + "systemTransform-worker.js"), i.oWorker.onmessage = function (e) {
|
||
var e = e.data, t = i.iPackType;
|
||
1 === i.options.iPackage && (t = 12), "loaded" === e.type ? i.oWorker.postMessage({
|
||
type: "create",
|
||
buf: i.aHeadBuf.buffer,
|
||
len: 40,
|
||
packType: t
|
||
}) : "created" === e.type ? n() : "outputData" === e.type && (t = new Uint8Array(e.buf), 2 !== i.options.irecordType && (1 === e.dType ? i.oFileSystem.writeFileHeader(t) : i.oFileSystem.writeFileContent(t), 6 === e.dType && (i.oFileSystem.getStopData = !0)), 1 !== i.options.irecordType && (i.options.cbStreamCB && i.options.cbStreamCB(t), 6 === e.dType && 2 === i.options.irecordType && (i.options.cbStreamCB && i.options.cbStreamCB(c), i.options.cbStreamCB = null)))
|
||
}
|
||
})
|
||
}
|
||
}, {
|
||
key: "inputData", value: function (e) {
|
||
var t;
|
||
!0 === this.isTranse ? this.oWorker && (t = new Uint8Array(e), this.oWorker.postMessage({
|
||
type: "inputData",
|
||
buf: t.buffer,
|
||
len: t.length
|
||
})) : (2 !== this.options.irecordType && (!0 === this.bHead ? (1 === this.iPackType ? (this.oFileSystem.writeFileHeader(this.aHeadBuf), this.oFileSystem.writeFileContent(e)) : this.oFileSystem.writeFileHeader(e), this.bHead = !1) : this.oFileSystem.writeFileContent(e)), 1 !== this.options.irecordType && (!0 === this.bHead && (this.options.cbStreamCB && this.options.cbStreamCB(this.aHeadBuf), this.bHead = !1), this.options.cbStreamCB && this.options.cbStreamCB(e)))
|
||
}
|
||
}, {
|
||
key: "stopRecord", value: function () {
|
||
var n = this;
|
||
return new u.default(function (e, t) {
|
||
!0 === n.isTranse && (n.oWorker ? n.oWorker.postMessage({type: "release"}) : t()), n.oFileSystem ? (n.oFileSystem.bStop = !0, n.oFileSystem.stopWriteFile().then(function () {
|
||
n.bHead = !0, e()
|
||
}, function () {
|
||
t()
|
||
})) : (5 !== n.iPackType && (n.options.cbStreamCB && n.options.cbStreamCB(c), n.options.cbStreamCB = null), e())
|
||
})
|
||
}
|
||
}]);
|
||
var m = p;
|
||
|
||
function p(e, t, n, i, r, a, s) {
|
||
(0, o.default)(this, p), this.szBasePath = e, this.szUUID = t, this.szFileName = n, this.aHeadBuf = new Uint8Array(i), this.iPackType = r, this.iStreamType = a, this.oWorker = null, this.oFileSystem = null, this.options = s, this.bHead = !0, this.isTranse = !0, (2 === i[8] && 0 === i[9] && 2 === r || "audio" === i || 1 === r) && (this.isTranse = !1)
|
||
}
|
||
|
||
n = function () {
|
||
function n(e, t) {
|
||
(0, o.default)(this, n), this.szBasePath = e, this.oStorageList = {}, this.options = {
|
||
iFileSize: 1073741824,
|
||
irecordType: 1,
|
||
cbStreamCB: null
|
||
}
|
||
}
|
||
|
||
return (0, a.default)(n, [{
|
||
key: "startRecord", value: function (e, t, n, i, r) {
|
||
var a = this, s = d.default.v4(), r = l.default.extend(this.options, r),
|
||
o = new m(this.szBasePath, s, e, t, n, i, r);
|
||
return new u.default(function (t, n) {
|
||
o.init().then(function (e) {
|
||
a.oStorageList[e] = o, t(e)
|
||
}, function (e) {
|
||
n(e)
|
||
})
|
||
})
|
||
}
|
||
}, {
|
||
key: "inputData", value: function (e, t) {
|
||
e = this.oStorageList[e];
|
||
e && e.inputData(t)
|
||
}
|
||
}, {
|
||
key: "stopRecord", value: function (i) {
|
||
var r = this;
|
||
return new u.default(function (e, t) {
|
||
var n = r.oStorageList[i];
|
||
n ? n.stopRecord().then(function () {
|
||
delete r.oStorageList[i], e()
|
||
}, function () {
|
||
t()
|
||
}) : t()
|
||
})
|
||
}
|
||
}]), n
|
||
}();
|
||
t.StorageManager = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.ESCanvas = void 0;
|
||
var g = function (e, t, n) {
|
||
return t && i(e.prototype, t), n && i(e, n), e
|
||
};
|
||
|
||
function i(e, t) {
|
||
for (var n = 0; n < t.length; n++) {
|
||
var i = t[n];
|
||
i.enumerable = i.enumerable || !1, i.configurable = !0, "value" in i && (i.writable = !0), Object.defineProperty(e, i.key, i)
|
||
}
|
||
}
|
||
|
||
var n = n(55), M = (n = n) && n.__esModule ? n : {default: n};
|
||
|
||
function L(e, t) {
|
||
if (e) return !t || "object" != typeof t && "function" != typeof t ? e : t;
|
||
throw new ReferenceError("this hasn't been initialised - super() hasn't been called")
|
||
}
|
||
|
||
function S(e, t) {
|
||
if ("function" != typeof t && null !== t) throw new TypeError("Super expression must either be null or a function, not " + typeof t);
|
||
e.prototype = Object.create(t && t.prototype, {
|
||
constructor: {
|
||
value: e,
|
||
enumerable: !1,
|
||
writable: !0,
|
||
configurable: !0
|
||
}
|
||
}), t && (Object.setPrototypeOf ? Object.setPrototypeOf(e, t) : e.__proto__ = t)
|
||
}
|
||
|
||
function k(e, t) {
|
||
if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function")
|
||
}
|
||
|
||
n = function () {
|
||
var m = null;
|
||
|
||
function l() {
|
||
m.oContext.clearRect(0, 0, m.m_iCanvasWidth, m.m_iCanvasHeight);
|
||
for (var e = 0, t = m.aShapes.length; e < t; e++) m.aShapes[e].draw()
|
||
}
|
||
|
||
function h(e) {
|
||
m.aShapes.length < m.iMaxShapeNumSupport && m.aShapes.push(e)
|
||
}
|
||
|
||
function t() {
|
||
var r = !1, a = 0, s = 0, o = "draw", u = null;
|
||
|
||
function d() {
|
||
for (var e = -1, t = 0, n = m.aShapes.length; t < n; t++) if (m.aShapes[t].m_bChoosed) {
|
||
e = t;
|
||
break
|
||
}
|
||
return e
|
||
}
|
||
|
||
m.oCanvas[0].oncontextmenu = function () {
|
||
return !1
|
||
}, m.oCanvas[0].onselectstart = function () {
|
||
return !1
|
||
}, m.oCanvas.unbind(), m.oCanvas.bind("mousedown", function (e) {
|
||
if (m.oCanvas[0].id === e.target.id) if (2 === e.button) m.bPolygonDrawing && u && u.m_aPoint.length >= u.m_iMinClosed && (u.m_bClosed = !0, m.bPolygonDrawing = !1, u.setPointInfo(u.m_aPoint), h(u), l(), r = !1, m.bDrawShapeMultiOneTime || (m.bDrawStatus = !1), window.onDrawShapeEvent && window.onDrawShapeEvent(u.m_szType, "onDrawEnd", u.m_szId)); else if (0 === e.button) {
|
||
if (a = e.offsetX, s = e.offsetY, o = "draw", !m.bPolygonDrawing) {
|
||
var t = d();
|
||
if ("stretch" !== (o = -1 !== t && m.aShapes[t].inArc(e.offsetX, e.offsetY, 5) ? "stretch" : o)) for (var n = 0, i = m.aShapes.length; n < i; n++) m.aShapes[n].inShape(e.offsetX, e.offsetY) ? (m.aShapes[n].m_bChoosed = !0, m.aShapes[n].getMouseDownPoints(e.offsetX, e.offsetY), o = "drag", window.onDrawShapeEvent && window.onDrawShapeEvent(m.aShapes[n].m_szType, "onChoose", m.aShapes[n].m_szId)) : m.aShapes[n].m_bChoosed = !1;
|
||
m.oCanvas[0].style.cursor = "drag" === o ? "move" : "default", "draw" === o && 1 === m.aShapes.length && 1 === m.aShapes[0].m_iRedrawMode && (m.deleteRepeatPolyonById(m.aShapes[0].m_szId), m.bDrawStatus = !0), m.bDrawStatus && !m.bDrawShapeMultiOneTime && (o = "draw")
|
||
}
|
||
if ("draw" === o && m.bDrawStatus) {
|
||
if (m.iMaxShapeNumSupport <= m.aShapes.length && "Grid" !== m.szShapeType && "Point" !== m.szShapeType) return;
|
||
"Rect" === m.szShapeType ? u = new c : "Grid" === m.szShapeType ? 0 === m.aShapes.length && h(u = new _) : "Polygon" === m.szShapeType ? (m.bPolygonDrawing || (m.bPolygonDrawing = !0, (u = new f).m_szId = m.oCurrentShapeInfo.szId || "", u.m_szTips = m.oCurrentShapeInfo.szTips || "", u.m_iMinClosed = m.oCurrentShapeInfo.iMinClosed || 3, u.m_iMaxPointNum = m.oCurrentShapeInfo.iMaxPointNum || 11, u.m_iPolygonType = m.oCurrentShapeInfo.iPolygonType, u.m_szDrawColor = m.oCurrentShapeInfo.szDrawColor, u.m_szFillColor = m.oCurrentShapeInfo.szFillColor, u.m_iTranslucent = m.oCurrentShapeInfo.iTranslucent, u.m_iRedrawMode = m.oCurrentShapeInfo.iRedrawMode), 1 === u.m_iPolygonType && (u.addPoint(a, s), u.m_aPoint.length === u.m_iMaxPointNum && (u.m_bClosed = !0, m.bPolygonDrawing = !1, h(u), l(), r = !1, m.bDrawShapeMultiOneTime || (m.bDrawStatus = !1), window.onDrawShapeEvent && window.onDrawShapeEvent(u.m_szType, "onDrawEnd", u.m_szId)))) : "Point" === m.szShapeType && (m.clearShapeByType("Point"), (u = new p).m_szId = m.oCurrentShapeInfo.szId || "", u.m_szDrawColor = m.oCurrentShapeInfo.szDrawColor, u.setPointInfo([[a, s]]), h(u), l())
|
||
}
|
||
r = !0
|
||
}
|
||
}), m.oCanvas.bind("mousemove", function (e) {
|
||
var t;
|
||
m.bPolygonDrawing ? m.bDrawStatus && r && ("Polygon" === m.szShapeType && 0 === u.m_iPolygonType && (u.m_bClosed = !0), l(), u.move(e.offsetX, e.offsetY, a, s)) : -1 < (t = d()) ? r && ("drag" === o ? (m.aShapes[t].drag(e.offsetX, e.offsetY), window.onDrawShapeEvent && window.onDrawShapeEvent(m.aShapes[t].m_szType, "onDrag", m.aShapes[t].m_szId)) : "stretch" === o && (m.aShapes[t].stretch(e.offsetX, e.offsetY), window.onDrawShapeEvent && window.onDrawShapeEvent(m.aShapes[t].m_szType, "onStretch", m.aShapes[t].m_szId))) : m.bDrawStatus && r && ("Rect" === m.szShapeType ? u.move([[a, s], [e.offsetX, e.offsetY]]) : "Grid" === m.szShapeType && m.aShapes[0].move(a, s, e.offsetX, e.offsetY))
|
||
}), m.oCanvas.bind("mouseup", function (e) {
|
||
var t;
|
||
m.oCanvas[0].style.cursor = "default", null != u && "draw" === o && ("Rect" === m.szShapeType ? (2 < Math.abs(e.offsetX - a) && 2 < Math.abs(e.offsetY - s) && (h(u), m.bDrawShapeMultiOneTime || (m.bDrawStatus = !1)), m.oEventCallback && (t = {
|
||
startPos: [],
|
||
endPos: []
|
||
}, e.offsetX > a && e.offsetY > s ? (t.startPos = u.m_aPoint[0] || [e.offsetX, e.offsetY], t.endPos = u.m_aPoint[2] || [e.offsetX, e.offsetY]) : (t.startPos = u.m_aPoint[2] || [e.offsetX, e.offsetY], t.endPos = u.m_aPoint[0] || [e.offsetX, e.offsetY]), m.oEventCallback && m.oEventCallback(t), m.clearAllShape()), u = null) : "Polygon" === m.szShapeType && 0 === u.m_iPolygonType && m.bPolygonDrawing && 2 < Math.abs(e.offsetX - a) && 2 < Math.abs(e.offsetY - s) && (h(u), m.bPolygonDrawing = !1, m.bDrawShapeMultiOneTime || (m.bDrawStatus = !1), window.onDrawShapeEvent && window.onDrawShapeEvent(u.m_szType, "onDrawEnd", u.m_szId))), r = !!m.bPolygonDrawing, m.bPolygonDrawing || l()
|
||
}), m.oCanvas.bind("dblclick", function () {
|
||
m.bDrawStatus && "Grid" === m.szShapeType && (m.aShapes[0].m_szGridMap = "fffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffcfffffc", l())
|
||
}), m.oCanvas.bind("mouseout", function () {
|
||
m.oCanvas[0].style.cursor = "default", r = !!m.bPolygonDrawing
|
||
})
|
||
}
|
||
|
||
g(n, [{
|
||
key: "draw", value: function () {
|
||
}
|
||
}, {
|
||
key: "drag", value: function (e, t) {
|
||
for (var n = this.m_aPoint.length, i = 0, i = 0; i < n; i++) if (this.m_aPoint[i][0] + e - this.m_iDriftStartX > m.m_iCanvasWidth || this.m_aPoint[i][1] + t - this.m_iDriftStartY > m.m_iCanvasHeight || this.m_aPoint[i][0] + e - this.m_iDriftStartX < 0 || this.m_aPoint[i][1] + t - this.m_iDriftStartY < 0) return this.m_iDriftStartX = e, void (this.m_iDriftStartY = t);
|
||
for (i = 0; i < n; i++) this.m_aPoint[i][0] = this.m_aPoint[i][0] + e - this.m_iDriftStartX, this.m_aPoint[i][1] = this.m_aPoint[i][1] + t - this.m_iDriftStartY;
|
||
this.m_iDriftStartX = e, this.m_iDriftStartY = t, this.setPointInfo(this.m_aPoint), l()
|
||
}
|
||
}, {
|
||
key: "stretch", value: function (e, t) {
|
||
0 === this.m_iEditType && (-1 !== this.m_iIndexChoosePoint && (this.m_aPoint[this.m_iIndexChoosePoint][0] = e, this.m_aPoint[this.m_iIndexChoosePoint][1] = t), this.setPointInfo(this.m_aPoint), l())
|
||
}
|
||
}, {
|
||
key: "inShape", value: function (e, t) {
|
||
for (var n = !1, i = this.m_aPoint.length, r = 0, a = i - 1; r < i; a = r++) this.m_aPoint[r][1] > t != this.m_aPoint[a][1] > t && e < (this.m_aPoint[a][0] - this.m_aPoint[r][0]) * (t - this.m_aPoint[r][1]) / (this.m_aPoint[a][1] - this.m_aPoint[r][1]) + this.m_aPoint[r][0] && (n = !n);
|
||
return n
|
||
}
|
||
}, {
|
||
key: "inArc", value: function (e, t, n) {
|
||
for (var i = !1, r = 0, a = this.m_aPoint.length; r < a; r++) if (Math.sqrt((e - this.m_aPoint[r][0]) * (e - this.m_aPoint[r][0]) + (t - this.m_aPoint[r][1]) * (t - this.m_aPoint[r][1])) < n) {
|
||
i = !0, this.m_iIndexChoosePoint = r;
|
||
break
|
||
}
|
||
return i
|
||
}
|
||
}, {
|
||
key: "getMouseDownPoints", value: function (e, t) {
|
||
this.m_iDriftStartX = e, this.m_iDriftStartY = t
|
||
}
|
||
}, {
|
||
key: "getPointInfo", value: function () {
|
||
return this.m_aPoint
|
||
}
|
||
}, {
|
||
key: "setPointInfo", value: function (e) {
|
||
null != e && 0 < e.length && (this.m_aPoint = e, this.setEdgePoints(e))
|
||
}
|
||
}, {
|
||
key: "addPoint", value: function (e, t) {
|
||
this.m_aPoint.length < this.m_iMaxPointNum && this.m_aPoint.push([e, t]), this.m_aPoint.length === this.m_iMaxPointNum && this.setPointInfo(this.m_aPoint)
|
||
}
|
||
}, {
|
||
key: "setEdgePoints", value: function (e) {
|
||
for (var t = 0, n = e.length; t < n; t++) 0 === t ? (this.m_oEdgePoints.top.x = e[t][0], this.m_oEdgePoints.top.y = e[t][1], this.m_oEdgePoints.left.x = e[t][0], this.m_oEdgePoints.left.y = e[t][1], this.m_oEdgePoints.right.x = e[t][0], this.m_oEdgePoints.right.y = e[t][1], this.m_oEdgePoints.bottom.x = e[t][0], this.m_oEdgePoints.bottom.y = e[t][1]) : (e[t][1] < this.m_oEdgePoints.top.y && (this.m_oEdgePoints.top.x = e[t][0], this.m_oEdgePoints.top.y = e[t][1]), e[t][0] > this.m_oEdgePoints.right.x && (this.m_oEdgePoints.right.x = e[t][0], this.m_oEdgePoints.right.y = e[t][1]), e[t][1] > this.m_oEdgePoints.bottom.y && (this.m_oEdgePoints.bottom.x = e[t][0], this.m_oEdgePoints.bottom.y = e[t][1]), e[t][0] < this.m_oEdgePoints.left.x && (this.m_oEdgePoints.left.x = e[t][0], this.m_oEdgePoints.left.y = e[t][1]))
|
||
}
|
||
}]);
|
||
var e = n;
|
||
|
||
function n() {
|
||
k(this, n), this.m_szId = "", this.m_aPoint = [], this.m_bChoosed = !1, this.m_szDrawColor = m.oShapeStyle.szDrawColor, this.m_szFillColor = m.oShapeStyle.szFillColor, this.m_iTranslucent = m.oShapeStyle.iTranslucent, this.m_iIndexChoosePoint = -1, this.m_iDriftStartX = 0, this.m_iDriftStartY = 0, this.m_oEdgePoints = {
|
||
top: {
|
||
x: 0,
|
||
y: 0
|
||
}, left: {x: 0, y: 0}, right: {x: 0, y: 0}, bottom: {x: 0, y: 0}
|
||
}, this.m_szTips = "", this.m_iEditType = 0, this.m_iMinClosed = 3, this.m_iMaxPointNum = 11, this.m_bClosed = !1, this.m_iRedrawMode = 0
|
||
}
|
||
|
||
S(i, e), g(i, [{
|
||
key: "setPointInfo", value: function (e) {
|
||
if (null != e) {
|
||
for (var t = e[0][0], n = e[0][1], i = e[0][0], r = e[0][1], a = 0, s = e.length; a < s; a++) t > e[a][0] && (t = e[a][0]), n > e[a][1] && (n = e[a][1]), i < e[a][0] && (i = e[a][0]), r < e[a][1] && (r = e[a][1]);
|
||
this.m_aPoint = [[t, n], [i, n], [i, r], [t, r]]
|
||
}
|
||
}
|
||
}, {
|
||
key: "draw", value: function () {
|
||
m.oContext.fillStyle = this.m_szFillColor, m.oContext.strokeStyle = this.m_szDrawColor;
|
||
var e = this.m_aPoint[0][0], t = this.m_aPoint[0][1], n = this.m_aPoint[2][0] - e,
|
||
i = this.m_aPoint[2][1] - t;
|
||
if (m.oContext.globalAlpha = this.m_iTranslucent, m.oContext.fillRect(e, t, n, i), m.oContext.globalAlpha = 1, m.oContext.fillText(this.m_szTips, (e + this.m_aPoint[2][0]) / 2, (t + this.m_aPoint[2][1]) / 2), this.m_bChoosed) {
|
||
var r = Math.round(n / 2), a = Math.round(i / 2);
|
||
if (0 === this.m_iEditType) for (var s = [e, e + r, e + n, e, e + n, e, e + r, e + n], o = [t, t, t, t + a, t + a, t + i, t + i, t + i], u = 0; u < 8; u++) m.oContext.beginPath(), m.oContext.arc(s[u], o[u], 3, 0, 360, !1), m.oContext.fillStyle = this.m_szDrawColor, m.oContext.closePath(), m.oContext.fill()
|
||
}
|
||
m.oContext.strokeRect(e, t, n, i)
|
||
}
|
||
}, {
|
||
key: "stretch", value: function (e, t) {
|
||
0 === this.m_iEditType && (0 === this.m_iIndexChoosePoint ? e < this.m_aPoint[2][0] && t < this.m_aPoint[2][1] && (this.m_aPoint[0][0] = e, this.m_aPoint[0][1] = t, this.m_aPoint[3][0] = e, this.m_aPoint[1][1] = t) : 1 === this.m_iIndexChoosePoint ? t < this.m_aPoint[2][1] && (this.m_aPoint[0][1] = t, this.m_aPoint[1][1] = t) : 2 === this.m_iIndexChoosePoint ? e > this.m_aPoint[3][0] && t < this.m_aPoint[3][1] && (this.m_aPoint[1][0] = e, this.m_aPoint[1][1] = t, this.m_aPoint[2][0] = e, this.m_aPoint[0][1] = t) : 3 === this.m_iIndexChoosePoint ? e < this.m_aPoint[2][0] && (this.m_aPoint[0][0] = e, this.m_aPoint[3][0] = e) : 4 === this.m_iIndexChoosePoint ? e > this.m_aPoint[0][0] && (this.m_aPoint[1][0] = e, this.m_aPoint[2][0] = e) : 5 === this.m_iIndexChoosePoint ? e < this.m_aPoint[1][0] && t > this.m_aPoint[1][1] && (this.m_aPoint[3][0] = e, this.m_aPoint[3][1] = t, this.m_aPoint[0][0] = e, this.m_aPoint[2][1] = t) : 6 === this.m_iIndexChoosePoint ? t > this.m_aPoint[1][1] && (this.m_aPoint[2][1] = t, this.m_aPoint[3][1] = t) : 7 === this.m_iIndexChoosePoint && e > this.m_aPoint[0][0] && t > this.m_aPoint[0][1] && (this.m_aPoint[2][0] = e, this.m_aPoint[2][1] = t, this.m_aPoint[1][0] = e, this.m_aPoint[3][1] = t), l())
|
||
}
|
||
}, {
|
||
key: "move", value: function (e) {
|
||
l(), this.m_bChoosed = !0;
|
||
var t = e[0][0], n = e[0][1], i = e[1][0], e = e[1][1];
|
||
this.setPointInfo([[t, n], [i, n], [i, e], [t, e]]), this.draw()
|
||
}
|
||
}, {
|
||
key: "inArc", value: function (e, t, n) {
|
||
for (var i = this.m_aPoint[0][0], r = this.m_aPoint[0][1], a = this.m_aPoint[2][0] - i, s = this.m_aPoint[2][1] - r, o = Math.round(a / 2), u = Math.round(s / 2), d = [i, i + o, i + a, i, i + a, i, i + o, i + a], l = [r, r, r, r + u, r + u, r + s, r + s, r + s], h = 0; h < 8; h++) if (Math.sqrt((e - d[h]) * (e - d[h]) + (t - l[h]) * (t - l[h])) < n) return this.m_iIndexChoosePoint = h, !0;
|
||
return !1
|
||
}
|
||
}]);
|
||
var c = i;
|
||
|
||
function i() {
|
||
k(this, i);
|
||
var e = L(this, (i.__proto__ || Object.getPrototypeOf(i)).call(this));
|
||
return e.m_szType = "Rect", e
|
||
}
|
||
|
||
S(r, e), g(r, [{
|
||
key: "draw", value: function () {
|
||
var e, t, n, i;
|
||
"true" === this.m_szEnabled && (e = this.m_aPoint[0][0], t = this.m_aPoint[0][1], n = this.m_aPoint[2][0] - e, i = this.m_aPoint[2][1] - t, m.oContext.beginPath(), m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.globalAlpha = 1, m.oContext.rect(e, t, n, i), m.oContext.font = "15px serif", m.oContext.strokeText(this.m_szText, e, t + 15), m.oContext.stroke())
|
||
}
|
||
}, {
|
||
key: "drag", value: function (e, t) {
|
||
var n = this.m_aPoint.length, i = 0;
|
||
if ("0" === this.m_szAlignment) {
|
||
for (i = 0; i < n; i++) if (this.m_aPoint[i][1] + t - this.m_iDriftStartY > m.m_iCanvasHeight || this.m_aPoint[i][0] + e - this.m_iDriftStartX < 0 || this.m_aPoint[i][1] + t - this.m_iDriftStartY < 0) return this.m_iDriftStartX = e, void (this.m_iDriftStartY = t);
|
||
for (i = 0; i < n; i++) this.m_aPoint[i][0] = this.m_aPoint[i][0] + e - this.m_iDriftStartX, this.m_aPoint[i][1] = this.m_aPoint[i][1] + t - this.m_iDriftStartY
|
||
} else if ("1" === this.m_szAlignment || "2" === this.m_szAlignment) {
|
||
for (i = 0; i < n; i++) if (this.m_aPoint[i][1] + t - this.m_iDriftStartY > m.m_iCanvasHeight || this.m_aPoint[i][1] + t - this.m_iDriftStartY < 0) return this.m_iDriftStartX = e, void (this.m_iDriftStartY = t);
|
||
for (i = 0; i < n; i++) this.m_aPoint[i][1] = this.m_aPoint[i][1] + t - this.m_iDriftStartY
|
||
}
|
||
this.m_iDriftStartX = e, this.m_iDriftStartY = t, this.setEdgePoints(this.m_aPoint), l()
|
||
}
|
||
}, {
|
||
key: "stretch", value: function () {
|
||
}
|
||
}]);
|
||
var a = r;
|
||
|
||
function r(e, t) {
|
||
k(this, r);
|
||
var n = L(this, (r.__proto__ || Object.getPrototypeOf(r)).call(this));
|
||
return n.m_szType = "RectOSD", n.m_szOSDType = "overlay-date", n.m_szText = e || "", n.m_szEnabled = t || "", n.m_szDateStyle = "", n.m_szClockType = "", n.m_szDisplayWeek = "", n.m_szId = "", n.m_szAlignment = "0", n
|
||
}
|
||
|
||
S(s, e), g(s, [{
|
||
key: "draw", value: function () {
|
||
for (var e = m.m_iCanvasWidth / this.m_iGridColNum, t = m.m_iCanvasHeight / this.m_iGridRowNum, n = "", i = 0; i < this.m_iGridRowNum; i++) {
|
||
for (var r = this.m_szGridMap.substring(6 * i, 6 * i + 6), a = parseInt("f" + r, 16).toString(2).split("").slice(4), s = "", o = 0; o < this.m_iGridColNum; o++) {
|
||
var u = "",
|
||
u = "1" === a[o] ? (m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.globalAlpha = 1, m.oContext.strokeRect(e * o, t * i, e, t), "1") : "0";
|
||
this.m_aAddGridMap.length && 1 === this.m_aAddGridMap[i][o] && (m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.strokeRect(e * o, t * i, e, t), u = "1"), s += u
|
||
}
|
||
n += parseInt("1111" + s + "00", 2).toString(16).substring(1)
|
||
}
|
||
this.m_szGridMap = n
|
||
}
|
||
}, {
|
||
key: "move", value: function (e, t, n, i) {
|
||
for (var r = m.m_iCanvasWidth / this.m_iGridColNum, a = m.m_iCanvasHeight / this.m_iGridRowNum, s = Math.floor(e / r), o = Math.floor(t / a), u = Math.floor(Math.abs(n - e) / r), d = Math.floor(Math.abs(i - t) / a), l = 1, h = 1, l = 0 < n - e ? 1 : -1, h = 0 < i - t ? 1 : -1, c = [], _ = 0; _ < this.m_iGridRowNum; _++) {
|
||
c[_] = [];
|
||
for (var f = 0; f < this.m_iGridColNum; f++) c[_][f] = 1 === l ? 1 === h ? o <= _ && _ <= o + d && s <= f && f <= s + u ? 1 : 0 : _ <= o && o - d <= _ && s <= f && f <= s + u ? 1 : 0 : 1 === h ? o <= _ && _ <= o + d && f <= s && s - u <= f ? 1 : 0 : _ <= o && o - d <= _ && f <= s && s - u <= f ? 1 : 0
|
||
}
|
||
this.m_aAddGridMap = c, this.draw()
|
||
}
|
||
}]);
|
||
var _ = s;
|
||
|
||
function s() {
|
||
k(this, s);
|
||
var e = L(this, (s.__proto__ || Object.getPrototypeOf(s)).call(this));
|
||
return e.m_szType = "Grid", e.m_iGridColNum = 22, e.m_iGridRowNum = 18, e.m_szGridMap = "", e.m_aAddGridMap = [], e
|
||
}
|
||
|
||
S(u, e), g(u, [{
|
||
key: "draw", value: function () {
|
||
0 === this.m_iLineType ? this.drawNormalLine() : 1 === this.m_iLineType ? this.drawArrowLine() : 3 === this.m_iLineType ? this.drawCrossLine() : 4 === this.m_iLineType && this.drawLineCount()
|
||
}
|
||
}, {
|
||
key: "drawNormalLine", value: function () {
|
||
if (m.oContext.globalAlpha = 1, 0 < this.m_aPoint.length) {
|
||
m.oContext.beginPath(), m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.lineWidth = 2, m.oContext.moveTo(this.m_aPoint[0][0], this.m_aPoint[0][1]);
|
||
for (var e = 1, t = this.m_aPoint.length; e < t; e++) m.oContext.lineTo(this.m_aPoint[e][0], this.m_aPoint[e][1]);
|
||
if (m.oContext.stroke(), this.m_bChoosed) for (var n = 0, i = this.m_aPoint.length; n < i; n++) m.oContext.beginPath(), m.oContext.fillStyle = this.m_szDrawColor, m.oContext.arc(this.m_aPoint[n][0], this.m_aPoint[n][1], 3, 0, 2 * Math.PI, !0), m.oContext.closePath(), m.oContext.fill();
|
||
"" !== this.m_szTips && (m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.fillText(this.m_szTips, this.m_aPoint[0][0] + 10, this.m_aPoint[0][1] + 4))
|
||
}
|
||
}
|
||
}, {
|
||
key: "drawArrowLine", value: function (e, t, n, i, r, a, s, o) {
|
||
a = void 0 !== a ? a : 30, s = void 0 !== s ? s : 10, o = void 0 !== o ? o : 1;
|
||
var u = 180 * Math.atan2(n - r, t - i) / Math.PI, d = (u + a) * Math.PI / 180,
|
||
u = (u - a) * Math.PI / 180, a = s * Math.cos(d), d = s * Math.sin(d), l = s * Math.cos(u),
|
||
s = s * Math.sin(u), u = (m.oContext.save(), m.oContext.beginPath(), t - a);
|
||
m.oContext.moveTo(u, n - d), m.oContext.lineTo(t, n), m.oContext.lineTo(t - l, n - s), m.oContext.moveTo(t, n), m.oContext.lineTo(i, r), 1 === e && (m.oContext.moveTo(i + a, r + d), m.oContext.lineTo(i, r), m.oContext.lineTo(i + l, r + s)), m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.lineWidth = o, m.oContext.stroke(), m.oContext.restore()
|
||
}
|
||
}, {
|
||
key: "drawCrossLine", value: function () {
|
||
this.drawNormalLine();
|
||
var e = (this.m_aPoint[0][0] + this.m_aPoint[1][0]) / 2,
|
||
t = (this.m_aPoint[0][1] + this.m_aPoint[1][1]) / 2,
|
||
n = 180 * Math.atan2(t - this.m_aPoint[0][1], e - this.m_aPoint[0][0]) / Math.PI,
|
||
i = (90 + n) * Math.PI / 180, n = (n - 90) * Math.PI / 180, r = 25 * Math.cos(i),
|
||
i = 25 * Math.sin(i), a = 25 * Math.cos(n), n = 25 * Math.sin(n), s = 0, o = 0, s = e - r,
|
||
o = t - i, r = 0, i = 0,
|
||
i = 0 === this.m_iDirection ? (r = -10, -15) : 1 === this.m_iDirection ? r = 10 : (r = 10, -15);
|
||
0 !== this.m_iDirection && this.drawArrowLine(0, s, o, e, t), m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.font = "8px", m.oContext.strokeText("A", s + r, o + 4), s = e - a, o = t - n, 1 !== this.m_iDirection && this.drawArrowLine(0, s, o, e, t), m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.font = "8px", m.oContext.strokeText("B", s + i, o + 4)
|
||
}
|
||
}, {
|
||
key: "drawLineCount", value: function () {
|
||
this.drawNormalLine();
|
||
var e = (this.m_aPoint[0][0] + this.m_aPoint[1][0]) / 2,
|
||
t = (this.m_aPoint[0][1] + this.m_aPoint[1][1]) / 2,
|
||
n = 180 * Math.atan2(t - this.m_aPoint[0][1], e - this.m_aPoint[0][0]) / Math.PI,
|
||
i = (90 + n) * Math.PI / 180, n = (n - 90) * Math.PI / 180, r = 25 * Math.cos(i),
|
||
i = 25 * Math.sin(i), a = 25 * Math.cos(n), n = 25 * Math.sin(n), s = 0, o = 0, s = e - r,
|
||
o = t - i;
|
||
1 === this.m_iArrowType ? this.drawArrowLine(0, s = e - a, o = t - n, e, t) : 0 === this.m_iArrowType && this.drawArrowLine(0, s, o, e, t), this.m_aCrossArrowPoint = [[e, t], [s, o]]
|
||
}
|
||
}, {
|
||
key: "inShape", value: function (e, t) {
|
||
for (var n = !1, i = 0, r = this.m_aPoint.length - 1; i < r; i++) {
|
||
var a = Math.sqrt((this.m_aPoint[i + 1][0] - this.m_aPoint[i][0]) * (this.m_aPoint[i + 1][0] - this.m_aPoint[i][0]) + (this.m_aPoint[i + 1][1] - this.m_aPoint[i][1]) * (this.m_aPoint[i + 1][1] - this.m_aPoint[i][1]));
|
||
Math.sqrt((e - this.m_aPoint[i][0]) * (e - this.m_aPoint[i][0]) + (t - this.m_aPoint[i][1]) * (t - this.m_aPoint[i][1])) + Math.sqrt((e - this.m_aPoint[i + 1][0]) * (e - this.m_aPoint[i + 1][0]) + (t - this.m_aPoint[i + 1][1]) * (t - this.m_aPoint[i + 1][1])) - a < 1 && (n = !0)
|
||
}
|
||
return n
|
||
}
|
||
}]);
|
||
var o = u;
|
||
|
||
function u() {
|
||
k(this, u);
|
||
var e = L(this, (u.__proto__ || Object.getPrototypeOf(u)).call(this));
|
||
return e.m_szType = "Line", e.m_iLineType = 0, e.m_iDirection = 0, e.m_iArrowType = 0, e.m_aCrossArrowPoint = [], e
|
||
}
|
||
|
||
S(d, e), g(d, [{
|
||
key: "setPointInfo", value: function (e) {
|
||
if (null != e) {
|
||
if (0 === this.m_iPolygonType) {
|
||
for (var t = e[0][0], n = e[0][1], i = e[0][0], r = e[0][1], a = 0, s = e.length; a < s; a++) t > e[a][0] && (t = e[a][0]), n > e[a][1] && (n = e[a][1]), i < e[a][0] && (i = e[a][0]), r < e[a][1] && (r = e[a][1]);
|
||
this.m_aPoint = [[t, n], [i, n], [i, r], [t, r]]
|
||
} else this.m_iPolygonType, this.m_aPoint = e;
|
||
this.setEdgePoints(e)
|
||
}
|
||
}
|
||
}, {
|
||
key: "draw", value: function () {
|
||
if (0 < this.m_aPoint.length) {
|
||
m.oContext.fillStyle = this.m_szFillColor, m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.globalAlpha = 1;
|
||
var e = 0, t = 0;
|
||
if (this.m_bChoosed) for (e = 0, t = this.m_aPoint.length; e < t; e++) m.oContext.beginPath(), m.oContext.arc(this.m_aPoint[e][0], this.m_aPoint[e][1], 3, 0, 360, !1), m.oContext.fillStyle = this.m_szDrawColor, m.oContext.closePath(), m.oContext.fill();
|
||
for (m.oContext.beginPath(), m.oContext.moveTo(this.m_aPoint[0][0], this.m_aPoint[0][1]), e = 0, t = this.m_aPoint.length; e < t; e++) 0 !== e && m.oContext.lineTo(this.m_aPoint[e][0], this.m_aPoint[e][1]);
|
||
m.oContext.stroke(), this.m_bClosed && (m.oContext.fillText(this.m_szTips, (this.m_oEdgePoints.left.x + this.m_oEdgePoints.right.x) / 2, (this.m_oEdgePoints.top.y + this.m_oEdgePoints.bottom.y) / 2), m.oContext.closePath(), m.oContext.stroke(), m.oContext.globalAlpha = this.m_iTranslucent, m.oContext.fill())
|
||
}
|
||
}
|
||
}, {
|
||
key: "move", value: function (e, t, n, i) {
|
||
if (1 === this.m_iPolygonType) {
|
||
if (this.m_aPoint.length < this.m_iMaxPointNum && 0 < this.m_aPoint.length) {
|
||
m.oContext.fillStyle = this.m_szFillColor, m.oContext.strokeStyle = this.m_szDrawColor, m.oContext.globalAlpha = 1;
|
||
for (var r = 0, a = 0, r = 0, a = this.m_aPoint.length; r < a; r++) m.oContext.beginPath(), m.oContext.arc(this.m_aPoint[r][0], this.m_aPoint[r][1], 3, 0, 360, !1), m.oContext.fillStyle = this.m_szDrawColor, m.oContext.closePath(), m.oContext.fill();
|
||
for (m.oContext.beginPath(), m.oContext.moveTo(this.m_aPoint[0][0], this.m_aPoint[0][1]), r = 0, a = this.m_aPoint.length; r < a; r++) 0 !== r && m.oContext.lineTo(this.m_aPoint[r][0], this.m_aPoint[r][1]);
|
||
m.oContext.lineTo(e, t), m.oContext.closePath(), m.oContext.stroke()
|
||
}
|
||
} else 0 === this.m_iPolygonType && (this.m_bChoosed = !0, this.setPointInfo([[n, i], [e, i], [e, t], [n, t]]), this.draw())
|
||
}
|
||
}, {
|
||
key: "stretch", value: function (e, t) {
|
||
0 === this.m_iEditType && (1 === this.m_iPolygonType ? -1 !== this.m_iIndexChoosePoint && (this.m_aPoint[this.m_iIndexChoosePoint][0] = e, this.m_aPoint[this.m_iIndexChoosePoint][1] = t) : 0 === this.m_iIndexChoosePoint ? e < this.m_aPoint[2][0] && t < this.m_aPoint[2][1] && (this.m_aPoint[0][0] = e, this.m_aPoint[0][1] = t, this.m_aPoint[3][0] = e, this.m_aPoint[1][1] = t) : 1 === this.m_iIndexChoosePoint ? e > this.m_aPoint[3][0] && t < this.m_aPoint[3][1] && (this.m_aPoint[1][0] = e, this.m_aPoint[1][1] = t, this.m_aPoint[2][0] = e, this.m_aPoint[0][1] = t) : 2 === this.m_iIndexChoosePoint ? e > this.m_aPoint[0][0] && t > this.m_aPoint[0][1] && (this.m_aPoint[2][0] = e, this.m_aPoint[2][1] = t, this.m_aPoint[1][0] = e, this.m_aPoint[3][1] = t) : 3 === this.m_iIndexChoosePoint && e < this.m_aPoint[1][0] && t > this.m_aPoint[1][1] && (this.m_aPoint[3][0] = e, this.m_aPoint[3][1] = t, this.m_aPoint[0][0] = e, this.m_aPoint[2][1] = t), this.setPointInfo(this.m_aPoint), l())
|
||
}
|
||
}]);
|
||
var f = d;
|
||
|
||
function d() {
|
||
k(this, d);
|
||
var e = L(this, (d.__proto__ || Object.getPrototypeOf(d)).call(this));
|
||
return e.m_szType = "Polygon", e.m_iPolygonType = 1, e
|
||
}
|
||
|
||
S(y, e), g(y, [{
|
||
key: "draw", value: function () {
|
||
m.oContext.beginPath(), m.oContext.fillStyle = this.m_szDrawColor, m.oContext.globalAlpha = 1, m.oContext.arc(this.m_aPoint[0][0], this.m_aPoint[0][1], 10, 0, 2 * Math.PI, !0), m.oContext.closePath(), m.oContext.fill()
|
||
}
|
||
}, {
|
||
key: "drag", value: function () {
|
||
}
|
||
}, {
|
||
key: "stretch", value: function () {
|
||
}
|
||
}]);
|
||
var p = y;
|
||
|
||
function y() {
|
||
k(this, y);
|
||
var e = L(this, (y.__proto__ || Object.getPrototypeOf(y)).call(this));
|
||
return e.m_szType = "Point", e.m_szId = "", e
|
||
}
|
||
|
||
function v(e) {
|
||
k(this, v), (m = this).oCanvas = (0, M.default)("#" + e), this.oContext = this.oCanvas[0].getContext("2d"), this.aShapes = [], this.bDrawStatus = !1, this.szShapeType = "Rect", this.iMaxShapeNumSupport = 10, this.bDrawShapeMultiOneTime = !0, this.oCurrentShapeInfo = {}, this.oEventCallback = null, this.oShapeStyle = {
|
||
szDrawColor: "#ff0000",
|
||
szFillColor: "#343434",
|
||
iTranslucent: .7
|
||
}, this.bPolygonDrawing = !1, this.m_iCanvasWidth = this.oCanvas.width(), this.m_iCanvasHeight = this.oCanvas.height(), this.m_iHorizontalResolution = 0, this.m_iVerticalResolution = 0, this.m_szDisplayMode = "", this.m_szVideoFormat = "", t(), this.aShapes.length = 0
|
||
}
|
||
|
||
return g(v, [{
|
||
key: "setDrawMutiShapeOneTime", value: function (e) {
|
||
this.bDrawShapeMultiOneTime = e
|
||
}
|
||
}, {
|
||
key: "setMaxShapeSupport", value: function (e) {
|
||
this.iMaxShapeNumSupport = e
|
||
}
|
||
}, {
|
||
key: "getMaxShapeSupport", value: function () {
|
||
return this.iMaxShapeNumSupport
|
||
}
|
||
}, {
|
||
key: "setDrawStatus", value: function (e, t) {
|
||
this.bDrawStatus = e, t && e && (this.oEventCallback = t), e || (this.oEventCallback = null)
|
||
}
|
||
}, {
|
||
key: "setShapeType", value: function (e) {
|
||
this.szShapeType = e, l()
|
||
}
|
||
}, {
|
||
key: "setCurrentShapeInfo", value: function (e) {
|
||
this.oCurrentShapeInfo = e || {
|
||
szId: "",
|
||
szTips: "",
|
||
iMinClosed: 3,
|
||
iMaxPointNum: 11,
|
||
iPolygonType: 1,
|
||
iRedrawMode: 0
|
||
}
|
||
}
|
||
}, {
|
||
key: "getShapeType", value: function () {
|
||
return this.szShapeType
|
||
}
|
||
}, {
|
||
key: "getAllShapesInfo", value: function () {
|
||
for (var e = [], t = 0, n = this.aShapes.length; t < n; t++) "Grid" === this.aShapes[t].m_szType ? e.push({
|
||
szType: this.aShapes[t].m_szType,
|
||
szGridMap: this.aShapes[t].m_szGridMap,
|
||
iGridColNum: this.aShapes[t].m_iGridColNum,
|
||
iGridRowNum: this.aShapes[t].m_iGridRowNum
|
||
}) : "RectOSD" === this.aShapes[t].m_szType ? e.push({
|
||
szType: this.aShapes[t].m_szType,
|
||
szText: this.aShapes[t].m_szText,
|
||
szEnabled: this.aShapes[t].m_szEnabled,
|
||
szOSDType: this.aShapes[t].m_szOSDType,
|
||
iPositionX: this.aShapes[t].m_aPoint[0][0],
|
||
iPositionY: this.aShapes[t].m_aPoint[0][1],
|
||
szDateStyle: this.aShapes[t].m_szDateStyle,
|
||
szClockType: this.aShapes[t].m_szClockType,
|
||
szDisplayWeek: this.aShapes[t].m_szDisplayWeek,
|
||
szId: this.aShapes[t].m_szId,
|
||
szAlignment: this.aShapes[t].m_szAlignment
|
||
}) : e.push({
|
||
szType: this.aShapes[t].m_szType,
|
||
aPoint: this.aShapes[t].m_aPoint,
|
||
szId: this.aShapes[t].m_szId,
|
||
bChoosed: this.aShapes[t].m_bChoosed
|
||
});
|
||
return e
|
||
}
|
||
}, {
|
||
key: "deleteRepeatPolyonById", value: function (e) {
|
||
var t = this.getAllShapesInfo(), n = t.length;
|
||
if (0 < n) for (var i = 0; i < n; i++) "Polygon" === t[i].szType && t[i].szId === e && this.deleteShape(i)
|
||
}
|
||
}, {
|
||
key: "getShapesInfoByType", value: function (e) {
|
||
for (var t = [], n = 0, i = this.aShapes.length; n < i; n++) this.aShapes[n].m_szType === e && ("Grid" === this.aShapes[n].m_szType ? t.push({
|
||
szType: this.aShapes[n].m_szType,
|
||
szGridMap: this.aShapes[n].m_szGridMap,
|
||
iGridColNum: this.aShapes[n].m_iGridColNum,
|
||
iGridRowNum: this.aShapes[n].m_iGridRowNum
|
||
}) : "RectOSD" === this.aShapes[n].m_szType ? t.push({
|
||
szType: this.aShapes[n].m_szType,
|
||
szText: this.aShapes[n].m_szText,
|
||
szEnabled: this.aShapes[n].m_szEnabled,
|
||
szOSDType: this.aShapes[n].m_szOSDType,
|
||
iPositionX: this.aShapes[n].m_aPoint[0][0],
|
||
iPositionY: this.aShapes[n].m_aPoint[0][1],
|
||
szDateStyle: this.aShapes[n].m_szDateStyle,
|
||
szClockType: this.aShapes[n].m_szClockType,
|
||
szDisplayWeek: this.aShapes[n].m_szDisplayWeek,
|
||
szId: this.aShapes[n].m_szId,
|
||
szAlignment: this.aShapes[n].m_szAlignment
|
||
}) : "Polygon" === e ? t.push({
|
||
szType: this.aShapes[n].m_szType,
|
||
szId: this.aShapes[n].m_szId,
|
||
iPolygonType: this.aShapes[n].m_iPolygonType,
|
||
iMinClosed: this.aShapes[n].m_iMinClosed,
|
||
iMaxPointNum: this.aShapes[n].m_iMaxPointNum,
|
||
iEditType: this.aShapes[n].m_iEditType,
|
||
aPoint: this.aShapes[n].m_aPoint,
|
||
bClosed: this.aShapes[n].m_bClosed,
|
||
szTips: this.aShapes[n].m_szTips,
|
||
szDrawColor: this.aShapes[n].m_szDrawColor,
|
||
szFillColor: this.aShapes[n].m_szFillColor,
|
||
iTranslucent: this.aShapes[n].m_iTranslucent
|
||
}) : "Line" === e ? t.push({
|
||
szType: this.aShapes[n].m_szType,
|
||
szId: this.aShapes[n].m_szId,
|
||
aPoint: this.aShapes[n].m_aPoint,
|
||
szTips: this.aShapes[n].m_szTips,
|
||
iLineType: this.aShapes[n].m_iLineType,
|
||
iDirection: this.aShapes[n].m_iDirection,
|
||
iArrowType: this.aShapes[n].m_iArrowType,
|
||
szDrawColor: this.aShapes[n].m_szDrawColor,
|
||
aCrossArrowPoint: this.aShapes[n].m_aCrossArrowPoint
|
||
}) : "Rect" === e ? t.push({
|
||
szType: this.aShapes[n].m_szType,
|
||
iEditType: this.aShapes[n].m_iEditType,
|
||
aPoint: this.aShapes[n].m_aPoint,
|
||
szTips: this.aShapes[n].m_szTips,
|
||
szDrawColor: this.aShapes[n].m_szDrawColor,
|
||
szFillColor: this.aShapes[n].m_szFillColor,
|
||
iTranslucent: this.aShapes[n].m_iTranslucent
|
||
}) : t.push({szType: this.aShapes[n].m_szType, aPoint: this.aShapes[n].m_aPoint}));
|
||
return t
|
||
}
|
||
}, {
|
||
key: "setShapesInfoByType", value: function (e, t) {
|
||
t = t || [];
|
||
var n = null;
|
||
if ("Rect" === e || "Polygon" === e || "Line" === e || "Point" === e) for (var i = 0, r = t.length; i < r; i++) "Rect" === e ? ((n = new c).m_iEditType = t[i].iEditType, n.m_szTips = t[i].szTips || "", n.m_szDrawColor = t[i].szDrawColor, n.m_szFillColor = t[i].szFillColor, n.m_iTranslucent = t[i].iTranslucent, n.m_iRedrawMode = t[i].iRedrawMode) : "Polygon" === e ? (n = new f, 0 === t[i].iPolygonType ? n.m_bClosed = !0 : n.m_bClosed = t[i].bClosed, n.m_szTips = t[i].szTips || "", n.m_szId = t[i].szId || "", n.m_iPolygonType = t[i].iPolygonType, n.m_iMinClosed = t[i].iMinClosed || 3, n.m_iMaxPointNum = t[i].iMaxPointNum || 11, n.m_iEditType = t[i].iEditType, n.m_szDrawColor = t[i].szDrawColor, n.m_szFillColor = t[i].szFillColor, n.m_iTranslucent = t[i].iTranslucent, n.m_iRedrawMode = t[i].iRedrawMode) : "Line" === e ? ((n = new o).m_iLineType = t[i].iLineType, n.m_szTips = t[i].szTips || "", n.m_szId = t[i].szId, n.m_iDirection = t[i].iDirection, n.m_iArrowType = t[i].iArrowType, n.m_szDrawColor = t[i].szDrawColor, n.setPointInfo(t[i].aPoint)) : "Point" === e && ((n = new p).m_szId = t[i].szId, n.m_szDrawColor = t[i].szDrawColor, n.setPointInfo(t[i].aPoint)), n.setPointInfo(t[i].aPoint), 0 === i && (n.m_bChoosed = !0), h(n); else "Grid" === e && ((n = new _).m_szGridMap = t[0].szGridMap || "", n.m_iGridColNum = t[0].iGridColNum || 22, n.m_iGridRowNum = t[0].iGridRowNum || 18, h(n));
|
||
l()
|
||
}
|
||
}, {
|
||
key: "addOSDShape", value: function (e, t, n, i, r) {
|
||
n || i || (i = n = 0), r = r || {};
|
||
t = new a(e, t), e = 10 * e.length;
|
||
t.m_szOSDType = r.szOSDType || "", t.m_szDateStyle = r.szDateStyle || "", t.m_szClockType = r.szClockType || "", t.m_szDisplayWeek = r.szDisplayWeek || "", t.m_szId = r.szId || "", t.m_szAlignment = "" + r.szAlignment || "0", "0" === t.m_szAlignment ? t.m_aPoint = [[n, i], [e + n, i], [e + n, i + 20], [n, i + 20]] : "1" === t.m_szAlignment ? t.m_aPoint = [[0, i], [e, i], [e, i + 20], [0, i + 20]] : "2" === t.m_szAlignment ? t.m_aPoint = [[this.m_iCanvasWidth - e, i], [this.m_iCanvasWidth, i], [this.m_iCanvasWidth, i + 20], [this.m_iCanvasWidth - e, i + 20]] : t.m_aPoint = [[n, i], [e + n, i], [e + n, i + 20], [n, i + 20]], h(t), l()
|
||
}
|
||
}, {
|
||
key: "selectShapeById", value: function (e, t) {
|
||
for (var n = 0, i = m.aShapes.length; n < i; n++) e === m.aShapes[n].m_szType && (t === m.aShapes[n].m_szId ? m.aShapes[n].m_bChoosed = !0 : m.aShapes[n].m_bChoosed = !1);
|
||
l()
|
||
}
|
||
}, {
|
||
key: "setCanvasSize", value: function (e, t) {
|
||
0 < e && 0 < t && (this.m_iCanvasWidth = e, this.m_iCanvasHeight = t, l())
|
||
}
|
||
}, {
|
||
key: "setDrawStyle", value: function (e, t, n) {
|
||
this.oShapeStyle = {szDrawColor: e, szFillColor: t, iTranslucent: n}
|
||
}
|
||
}, {
|
||
key: "clearAllShape", value: function () {
|
||
this.aShapes.length = 0, m.bPolygonDrawing = !1, l()
|
||
}
|
||
}, {
|
||
key: "clearShapeByType", value: function (e) {
|
||
for (var t = this.aShapes.length; 0 < t; t--) this.aShapes[t - 1].m_szType === e && ("Grid" === e ? (this.aShapes[t - 1].m_szGridMap = "", this.aShapes[t - 1].m_aAddGridMap = []) : this.aShapes.splice(t - 1, 1));
|
||
"Polygon" === e && (m.bPolygonDrawing = !1), l()
|
||
}
|
||
}, {
|
||
key: "deleteShape", value: function (e) {
|
||
this.aShapes.length > e && this.aShapes.splice(e, 1), l()
|
||
}
|
||
}, {
|
||
key: "updateCanvas", value: function (e) {
|
||
this.oCanvas = (0, M.default)("#" + e), this.oContext = this.oCanvas[0].getContext("2d"), this.m_iCanvasWidth = this.oCanvas.width(), this.m_iCanvasHeight = this.oCanvas.height(), t()
|
||
}
|
||
}, {
|
||
key: "resizeCanvas", value: function () {
|
||
this.m_iCanvasWidth = this.oCanvas.width(), this.m_iCanvasHeight = this.oCanvas.height()
|
||
}
|
||
}, {
|
||
key: "canvasRedraw", value: function () {
|
||
l()
|
||
}
|
||
}]), v
|
||
}();
|
||
t.ESCanvas = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
e.exports = n(291).default
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = _(n(9)), r = _(n(227)), a = _(n(301)), s = n(15), o = _(n(317)), u = _(n(333)), d = _(n(39)),
|
||
l = n(234), h = _(n(64)), c = n(5);
|
||
|
||
function _(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
r.default.install();
|
||
n = {
|
||
createPlayer: function (e, t) {
|
||
if (null == e || "object" !== (void 0 === e ? "undefined" : (0, i.default)(e))) throw new c.InvalidArgumentException("MediaDataSource must be an javascript object!");
|
||
if (e.hasOwnProperty("type")) return new ("flv" !== e.type ? u : o).default(e, t);
|
||
throw new c.InvalidArgumentException("MediaDataSource must has type field to indicate video file type!")
|
||
}, isSupported: function () {
|
||
return a.default.supportMSEH264Playback()
|
||
}, getFeatureList: function () {
|
||
return a.default.getFeatureList()
|
||
}
|
||
};
|
||
n.BaseLoader = s.BaseLoader, n.LoaderStatus = s.LoaderStatus, n.LoaderErrors = s.LoaderErrors, n.Events = d.default, n.ErrorTypes = l.ErrorTypes, n.ErrorDetails = l.ErrorDetails, n.FlvPlayer = o.default, n.NativePlayer = u.default, n.LoggingControl = h.default, Object.defineProperty(n, "version", {
|
||
enumerable: !0,
|
||
get: function () {
|
||
return "__VERSION__"
|
||
}
|
||
}), t.default = n
|
||
}, function (e, t, n) {
|
||
n(293), e.exports = n(3).Object.assign
|
||
}, function (e, t, n) {
|
||
var i = n(8);
|
||
i(i.S + i.F, "Object", {assign: n(294)})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var c = n(14), _ = n(30), f = n(59), m = n(37), p = n(24), y = n(72), r = Object.assign;
|
||
e.exports = !r || n(23)(function () {
|
||
var e = {}, t = {}, n = Symbol(), i = "abcdefghijklmnopqrst";
|
||
return e[n] = 7, i.split("").forEach(function (e) {
|
||
t[e] = e
|
||
}), 7 != r({}, e)[n] || Object.keys(r({}, t)).join("") != i
|
||
}) ? function (e, t) {
|
||
for (var n = p(e), i = arguments.length, r = 1, a = f.f, s = m.f; r < i;) for (var o, u = y(arguments[r++]), d = a ? _(u).concat(a(u)) : _(u), l = d.length, h = 0; h < l;) o = d[h++], c && !s.call(u, o) || (n[o] = u[o]);
|
||
return n
|
||
} : r
|
||
}, function (e, t, n) {
|
||
n(296), e.exports = n(3).Object.setPrototypeOf
|
||
}, function (e, t, n) {
|
||
var i = n(8);
|
||
i(i.S, "Object", {setPrototypeOf: n(297).set})
|
||
}, function (e, t, r) {
|
||
function a(e, t) {
|
||
if (i(e), !n(t) && null !== t) throw TypeError(t + ": can't set as prototype!")
|
||
}
|
||
|
||
var n = r(16), i = r(13);
|
||
e.exports = {
|
||
set: Object.setPrototypeOf || ("__proto__" in {} ? function (e, n, i) {
|
||
try {
|
||
(i = r(22)(Function.call, r(60).f(Object.prototype, "__proto__").set, 2))(e, []), n = !(e instanceof Array)
|
||
} catch (e) {
|
||
n = !0
|
||
}
|
||
return function (e, t) {
|
||
return a(e, t), n ? e.__proto__ = t : i(e, t), e
|
||
}
|
||
}({}, !1) : void 0), check: a
|
||
}
|
||
}, function (e, t, n) {
|
||
!function (ie, re) {
|
||
/*!
|
||
* @overview es6-promise - a tiny implementation of Promises/A+.
|
||
* @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
|
||
* @license Licensed under MIT license
|
||
* See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE
|
||
* @version v4.2.8+1e68dce6
|
||
*/
|
||
e.exports = function () {
|
||
"use strict";
|
||
|
||
function i(e) {
|
||
var t = typeof e;
|
||
return e !== null && (t === "object" || t === "function")
|
||
}
|
||
|
||
function u(e) {
|
||
return typeof e === "function"
|
||
}
|
||
|
||
var e = void 0;
|
||
if (Array.isArray) e = Array.isArray; else e = function (e) {
|
||
return Object.prototype.toString.call(e) === "[object Array]"
|
||
};
|
||
var n = e, r = 0, t = void 0, a = void 0, s = function e(t, n) {
|
||
p[r] = t;
|
||
p[r + 1] = n;
|
||
r += 2;
|
||
if (r === 2) if (a) a(y); else v()
|
||
};
|
||
|
||
function o(e) {
|
||
a = e
|
||
}
|
||
|
||
function d(e) {
|
||
s = e
|
||
}
|
||
|
||
var l = typeof window !== "undefined" ? window : undefined, h = l || {},
|
||
c = h.MutationObserver || h.WebKitMutationObserver,
|
||
_ = typeof self === "undefined" && typeof ie !== "undefined" && {}.toString.call(ie) === "[object process]",
|
||
f = typeof Uint8ClampedArray !== "undefined" && typeof importScripts !== "undefined" && typeof MessageChannel !== "undefined";
|
||
|
||
function I() {
|
||
return function () {
|
||
return ie.nextTick(y)
|
||
}
|
||
}
|
||
|
||
function W() {
|
||
if (typeof t !== "undefined") return function () {
|
||
t(y)
|
||
};
|
||
return m()
|
||
}
|
||
|
||
function H() {
|
||
var e = 0;
|
||
var t = new c(y);
|
||
var n = document.createTextNode("");
|
||
t.observe(n, {characterData: true});
|
||
return function () {
|
||
n.data = e = ++e % 2
|
||
}
|
||
}
|
||
|
||
function j() {
|
||
var e = new MessageChannel;
|
||
e.port1.onmessage = y;
|
||
return function () {
|
||
return e.port2.postMessage(0)
|
||
}
|
||
}
|
||
|
||
function m() {
|
||
var e = setTimeout;
|
||
return function () {
|
||
return e(y, 1)
|
||
}
|
||
}
|
||
|
||
var p = new Array(1e3);
|
||
|
||
function y() {
|
||
for (var e = 0; e < r; e += 2) {
|
||
var t = p[e];
|
||
var n = p[e + 1];
|
||
t(n);
|
||
p[e] = undefined;
|
||
p[e + 1] = undefined
|
||
}
|
||
r = 0
|
||
}
|
||
|
||
function F() {
|
||
try {
|
||
var e = Function("return this")().require("vertx");
|
||
t = e.runOnLoop || e.runOnContext;
|
||
return W()
|
||
} catch (e) {
|
||
return m()
|
||
}
|
||
}
|
||
|
||
var v = void 0;
|
||
if (_) v = I(); else if (c) v = H(); else if (f) v = j(); else if (l === undefined && "function" === "function") v = F(); else v = m();
|
||
|
||
function g(e, t) {
|
||
var n = this;
|
||
var i = new this.constructor(S);
|
||
if (i[L] === undefined) x(i);
|
||
var r = n._state;
|
||
if (r) {
|
||
var a = arguments[r - 1];
|
||
s(function () {
|
||
return R(r, i, a, n._result)
|
||
})
|
||
} else P(n, i, e, t);
|
||
return i
|
||
}
|
||
|
||
function M(e) {
|
||
var t = this;
|
||
if (e && typeof e === "object" && e.constructor === t) return e;
|
||
var n = new t(S);
|
||
T(n, e);
|
||
return n
|
||
}
|
||
|
||
var L = Math.random().toString(36).substring(2);
|
||
|
||
function S() {
|
||
}
|
||
|
||
var k = void 0, b = 1, w = 2;
|
||
|
||
function B() {
|
||
return new TypeError("You cannot resolve a promise with itself")
|
||
}
|
||
|
||
function N() {
|
||
return new TypeError("A promises callback cannot return that same promise.")
|
||
}
|
||
|
||
function z(e, t, n, i) {
|
||
try {
|
||
e.call(t, n, i)
|
||
} catch (e) {
|
||
return e
|
||
}
|
||
}
|
||
|
||
function U(e, i, r) {
|
||
s(function (t) {
|
||
var n = false;
|
||
var e = z(r, i, function (e) {
|
||
if (n) return;
|
||
n = true;
|
||
if (i !== e) T(t, e); else E(t, e)
|
||
}, function (e) {
|
||
if (n) return;
|
||
n = true;
|
||
Y(t, e)
|
||
}, "Settle: " + (t._label || " unknown promise"));
|
||
if (!n && e) {
|
||
n = true;
|
||
Y(t, e)
|
||
}
|
||
}, e)
|
||
}
|
||
|
||
function V(t, e) {
|
||
if (e._state === b) E(t, e._result); else if (e._state === w) Y(t, e._result); else P(e, undefined, function (e) {
|
||
return T(t, e)
|
||
}, function (e) {
|
||
return Y(t, e)
|
||
})
|
||
}
|
||
|
||
function D(e, t, n) {
|
||
if (t.constructor === e.constructor && n === g && t.constructor.resolve === M) V(e, t); else if (n === undefined) E(e, t); else if (u(n)) U(e, t, n); else E(e, t)
|
||
}
|
||
|
||
function T(t, e) {
|
||
if (t === e) Y(t, B()); else if (i(e)) {
|
||
var n = void 0;
|
||
try {
|
||
n = e.then
|
||
} catch (e) {
|
||
Y(t, e);
|
||
return
|
||
}
|
||
D(t, e, n)
|
||
} else E(t, e)
|
||
}
|
||
|
||
function G(e) {
|
||
if (e._onerror) e._onerror(e._result);
|
||
C(e)
|
||
}
|
||
|
||
function E(e, t) {
|
||
if (e._state !== k) return;
|
||
e._result = t;
|
||
e._state = b;
|
||
if (e._subscribers.length !== 0) s(C, e)
|
||
}
|
||
|
||
function Y(e, t) {
|
||
if (e._state !== k) return;
|
||
e._state = w;
|
||
e._result = t;
|
||
s(G, e)
|
||
}
|
||
|
||
function P(e, t, n, i) {
|
||
var r = e._subscribers;
|
||
var a = r.length;
|
||
e._onerror = null;
|
||
r[a] = t;
|
||
r[a + b] = n;
|
||
r[a + w] = i;
|
||
if (a === 0 && e._state) s(C, e)
|
||
}
|
||
|
||
function C(e) {
|
||
var t = e._subscribers;
|
||
var n = e._state;
|
||
if (t.length === 0) return;
|
||
var i = void 0, r = void 0, a = e._result;
|
||
for (var s = 0; s < t.length; s += 3) {
|
||
i = t[s];
|
||
r = t[s + n];
|
||
if (i) R(n, i, r, a); else r(a)
|
||
}
|
||
e._subscribers.length = 0
|
||
}
|
||
|
||
function R(e, t, n, i) {
|
||
var r = u(n), a = void 0, s = void 0, o = true;
|
||
if (r) {
|
||
try {
|
||
a = n(i)
|
||
} catch (e) {
|
||
o = false;
|
||
s = e
|
||
}
|
||
if (t === a) {
|
||
Y(t, N());
|
||
return
|
||
}
|
||
} else a = i;
|
||
if (t._state !== k) ; else if (r && o) T(t, a); else if (o === false) Y(t, s); else if (e === b) E(t, a); else if (e === w) Y(t, a)
|
||
}
|
||
|
||
function J(n, e) {
|
||
try {
|
||
e(function e(t) {
|
||
T(n, t)
|
||
}, function e(t) {
|
||
Y(n, t)
|
||
})
|
||
} catch (e) {
|
||
Y(n, e)
|
||
}
|
||
}
|
||
|
||
var A = 0;
|
||
|
||
function q() {
|
||
return A++
|
||
}
|
||
|
||
function x(e) {
|
||
e[L] = A++;
|
||
e._state = undefined;
|
||
e._result = undefined;
|
||
e._subscribers = []
|
||
}
|
||
|
||
function K() {
|
||
return new Error("Array Methods must be provided an Array")
|
||
}
|
||
|
||
var X = function () {
|
||
function e(e, t) {
|
||
this._instanceConstructor = e;
|
||
this.promise = new e(S);
|
||
if (!this.promise[L]) x(this.promise);
|
||
if (n(t)) {
|
||
this.length = t.length;
|
||
this._remaining = t.length;
|
||
this._result = new Array(this.length);
|
||
if (this.length === 0) E(this.promise, this._result); else {
|
||
this.length = this.length || 0;
|
||
this._enumerate(t);
|
||
if (this._remaining === 0) E(this.promise, this._result)
|
||
}
|
||
} else Y(this.promise, K())
|
||
}
|
||
|
||
e.prototype._enumerate = function e(t) {
|
||
for (var n = 0; this._state === k && n < t.length; n++) this._eachEntry(t[n], n)
|
||
};
|
||
e.prototype._eachEntry = function e(t, n) {
|
||
var i = this._instanceConstructor;
|
||
var r = i.resolve;
|
||
if (r === M) {
|
||
var a = void 0;
|
||
var s = void 0;
|
||
var o = false;
|
||
try {
|
||
a = t.then
|
||
} catch (e) {
|
||
o = true;
|
||
s = e
|
||
}
|
||
if (a === g && t._state !== k) this._settledAt(t._state, n, t._result); else if (typeof a !== "function") {
|
||
this._remaining--;
|
||
this._result[n] = t
|
||
} else if (i === O) {
|
||
var u = new i(S);
|
||
if (o) Y(u, s); else D(u, t, a);
|
||
this._willSettleAt(u, n)
|
||
} else this._willSettleAt(new i(function (e) {
|
||
return e(t)
|
||
}), n)
|
||
} else this._willSettleAt(r(t), n)
|
||
};
|
||
e.prototype._settledAt = function e(t, n, i) {
|
||
var r = this.promise;
|
||
if (r._state === k) {
|
||
this._remaining--;
|
||
if (t === w) Y(r, i); else this._result[n] = i
|
||
}
|
||
if (this._remaining === 0) E(r, this._result)
|
||
};
|
||
e.prototype._willSettleAt = function e(t, n) {
|
||
var i = this;
|
||
P(t, undefined, function (e) {
|
||
return i._settledAt(b, n, e)
|
||
}, function (e) {
|
||
return i._settledAt(w, n, e)
|
||
})
|
||
};
|
||
return e
|
||
}();
|
||
|
||
function Z(e) {
|
||
return new X(this, e).promise
|
||
}
|
||
|
||
function $(r) {
|
||
var a = this;
|
||
if (!n(r)) return new a(function (e, t) {
|
||
return t(new TypeError("You must pass an array to race."))
|
||
}); else return new a(function (e, t) {
|
||
var n = r.length;
|
||
for (var i = 0; i < n; i++) a.resolve(r[i]).then(e, t)
|
||
})
|
||
}
|
||
|
||
function Q(e) {
|
||
var t = this;
|
||
var n = new t(S);
|
||
Y(n, e);
|
||
return n
|
||
}
|
||
|
||
function ee() {
|
||
throw new TypeError("You must pass a resolver function as the first argument to the promise constructor")
|
||
}
|
||
|
||
function te() {
|
||
throw new TypeError("Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.")
|
||
}
|
||
|
||
var O = function () {
|
||
function t(e) {
|
||
this[L] = q();
|
||
this._result = this._state = undefined;
|
||
this._subscribers = [];
|
||
if (S !== e) {
|
||
typeof e !== "function" && ee();
|
||
this instanceof t ? J(this, e) : te()
|
||
}
|
||
}
|
||
|
||
t.prototype.catch = function e(t) {
|
||
return this.then(null, t)
|
||
};
|
||
t.prototype.finally = function e(t) {
|
||
var n = this;
|
||
var i = n.constructor;
|
||
if (u(t)) return n.then(function (e) {
|
||
return i.resolve(t()).then(function () {
|
||
return e
|
||
})
|
||
}, function (e) {
|
||
return i.resolve(t()).then(function () {
|
||
throw e
|
||
})
|
||
});
|
||
return n.then(t, t)
|
||
};
|
||
return t
|
||
}();
|
||
|
||
function ne() {
|
||
var e = void 0;
|
||
if (typeof re !== "undefined") e = re; else if (typeof self !== "undefined") e = self; else try {
|
||
e = Function("return this")()
|
||
} catch (e) {
|
||
throw new Error("polyfill failed because global object is unavailable in this environment")
|
||
}
|
||
var t = e.Promise;
|
||
if (t) {
|
||
var n = null;
|
||
try {
|
||
n = Object.prototype.toString.call(t.resolve())
|
||
} catch (e) {
|
||
}
|
||
if (n === "[object Promise]" && !t.cast) return
|
||
}
|
||
e.Promise = O
|
||
}
|
||
|
||
return O.prototype.then = g, O.all = Z, O.race = $, O.resolve = M, O.reject = Q, O._setScheduler = o, O._setAsap = d, O._asap = s, O.polyfill = ne, O.Promise = O
|
||
}()
|
||
}.call(this, n(299), n(300))
|
||
}, function (e, t) {
|
||
var n, i, e = e.exports = {};
|
||
|
||
function r() {
|
||
throw new Error("setTimeout has not been defined")
|
||
}
|
||
|
||
function a() {
|
||
throw new Error("clearTimeout has not been defined")
|
||
}
|
||
|
||
try {
|
||
n = "function" == typeof setTimeout ? setTimeout : r
|
||
} catch (e) {
|
||
n = r
|
||
}
|
||
try {
|
||
i = "function" == typeof clearTimeout ? clearTimeout : a
|
||
} catch (e) {
|
||
i = a
|
||
}
|
||
|
||
function s(t) {
|
||
if (n === setTimeout) return setTimeout(t, 0);
|
||
if ((n === r || !n) && setTimeout) return (n = setTimeout)(t, 0);
|
||
try {
|
||
return n(t, 0)
|
||
} catch (e) {
|
||
try {
|
||
return n.call(null, t, 0)
|
||
} catch (e) {
|
||
return n.call(this, t, 0)
|
||
}
|
||
}
|
||
}
|
||
|
||
var o, u = [], d = !1, l = -1;
|
||
|
||
function h() {
|
||
d && o && (d = !1, o.length ? u = o.concat(u) : l = -1, u.length && c())
|
||
}
|
||
|
||
function c() {
|
||
if (!d) {
|
||
for (var e = s(h), t = (d = !0, u.length); t;) {
|
||
for (o = u, u = []; ++l < t;) o && o[l].run();
|
||
l = -1, t = u.length
|
||
}
|
||
o = null, d = !1, !function (t) {
|
||
if (i === clearTimeout) return clearTimeout(t);
|
||
if ((i === a || !i) && clearTimeout) return (i = clearTimeout)(t);
|
||
try {
|
||
i(t)
|
||
} catch (e) {
|
||
try {
|
||
return i.call(null, t)
|
||
} catch (e) {
|
||
return i.call(this, t)
|
||
}
|
||
}
|
||
}(e)
|
||
}
|
||
}
|
||
|
||
function _(e, t) {
|
||
this.fun = e, this.array = t
|
||
}
|
||
|
||
function f() {
|
||
}
|
||
|
||
e.nextTick = function (e) {
|
||
var t = new Array(arguments.length - 1);
|
||
if (1 < arguments.length) for (var n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
|
||
u.push(new _(e, t)), 1 !== u.length || d || s(c)
|
||
}, _.prototype.run = function () {
|
||
this.fun.apply(null, this.array)
|
||
}, e.title = "browser", e.browser = !0, e.env = {}, e.argv = [], e.version = "", e.versions = {}, e.on = f, e.addListener = f, e.once = f, e.off = f, e.removeListener = f, e.removeAllListeners = f, e.emit = f, e.prependListener = f, e.prependOnceListener = f, e.listeners = function (e) {
|
||
return []
|
||
}, e.binding = function (e) {
|
||
throw new Error("process.binding is not supported")
|
||
}, e.cwd = function () {
|
||
return "/"
|
||
}, e.chdir = function (e) {
|
||
throw new Error("process.chdir is not supported")
|
||
}, e.umask = function () {
|
||
return 0
|
||
}
|
||
}, function (e, t) {
|
||
var n = function () {
|
||
return this
|
||
}();
|
||
try {
|
||
n = n || new Function("return this")()
|
||
} catch (e) {
|
||
"object" == typeof window && (n = window)
|
||
}
|
||
e.exports = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = o(n(1)), r = o(n(2)), a = o(n(228)), s = n(63);
|
||
|
||
function o(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(u, null, [{
|
||
key: "supportMSEH264Playback", value: function () {
|
||
return window.MediaSource && window.MediaSource.isTypeSupported('video/mp4; codecs="avc1.42E01E,mp4a.40.2"')
|
||
}
|
||
}, {
|
||
key: "supportNetworkStreamIO", value: function () {
|
||
var e = new a.default({}, (0, s.createDefaultConfig)()), t = e.loaderType;
|
||
return e.destroy(), "fetch-stream-loader" == t || "xhr-moz-chunked-loader" == t
|
||
}
|
||
}, {
|
||
key: "getNetworkLoaderTypeName", value: function () {
|
||
var e = new a.default({}, (0, s.createDefaultConfig)()), t = e.loaderType;
|
||
return e.destroy(), t
|
||
}
|
||
}, {
|
||
key: "supportNativeMediaPlayback", value: function (e) {
|
||
e = (u.videoElement = null == u.videoElement ? window.document.createElement("video") : u.videoElement).canPlayType(e);
|
||
return "probably" === e || "maybe" == e
|
||
}
|
||
}, {
|
||
key: "getFeatureList", value: function () {
|
||
var e = {
|
||
mseFlvPlayback: !1,
|
||
mseLiveFlvPlayback: !1,
|
||
networkStreamIO: !1,
|
||
networkLoaderName: "",
|
||
nativeMP4H264Playback: !1,
|
||
nativeWebmVP8Playback: !1,
|
||
nativeWebmVP9Playback: !1
|
||
};
|
||
return e.mseFlvPlayback = u.supportMSEH264Playback(), e.networkStreamIO = u.supportNetworkStreamIO(), e.networkLoaderName = u.getNetworkLoaderTypeName(), e.mseLiveFlvPlayback = e.mseFlvPlayback && e.networkStreamIO, e.nativeMP4H264Playback = u.supportNativeMediaPlayback('video/mp4; codecs="avc1.42001E, mp4a.40.2"'), e.nativeWebmVP8Playback = u.supportNativeMediaPlayback('video/webm; codecs="vp8.0, vorbis"'), e.nativeWebmVP9Playback = u.supportNativeMediaPlayback('video/webm; codecs="vp9"'), e
|
||
}
|
||
}]);
|
||
n = u;
|
||
|
||
function u() {
|
||
(0, i.default)(this, u)
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
n(303), e.exports = n(3).Object.getPrototypeOf
|
||
}, function (e, t, n) {
|
||
var i = n(24), r = n(74);
|
||
n(52)("getPrototypeOf", function () {
|
||
return function (e) {
|
||
return r(i(e))
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(305), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(306);
|
||
var i = n(3).Object;
|
||
e.exports = function (e, t) {
|
||
return i.create(e, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(8);
|
||
i(i.S, "Object", {create: n(46)})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var d = _(n(9)), i = _(n(21)), r = _(n(1)), a = _(n(25)), s = _(n(32)), o = _(n(2)), u = _(n(26)),
|
||
l = (_(n(4)), _(n(33))), h = n(15), c = n(5);
|
||
|
||
function _(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = h.BaseLoader, (0, u.default)(f, n), (0, o.default)(f, null, [{
|
||
key: "isSupported", value: function () {
|
||
try {
|
||
var e = l.default.msedge && 15048 <= l.default.version.minor, t = !l.default.msedge || e;
|
||
return self.fetch && self.ReadableStream && t
|
||
} catch (e) {
|
||
return !1
|
||
}
|
||
}
|
||
}]), (0, o.default)(f, [{
|
||
key: "destroy", value: function () {
|
||
this.isWorking() && this.abort(), (0, s.default)(f.prototype.__proto__ || (0, i.default)(f.prototype), "destroy", this).call(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (e, t) {
|
||
var n = this, i = (this._dataSource = e, this._range = t, e.url),
|
||
r = (this._config.reuseRedirectedURL && null != e.redirectedURL && (i = e.redirectedURL), this._seekHandler.getConfig(i, t)),
|
||
a = new self.Headers;
|
||
if ("object" === (0, d.default)(r.headers)) {
|
||
var s, o = r.headers;
|
||
for (s in o) o.hasOwnProperty(s) && a.append(s, o[s])
|
||
}
|
||
i = {
|
||
method: "GET",
|
||
headers: a,
|
||
mode: "cors",
|
||
cache: "default",
|
||
referrerPolicy: "no-referrer-when-downgrade"
|
||
};
|
||
if ("object" === (0, d.default)(this._config.headers)) for (var u in this._config.headers) a.append(u, this._config.headers[u]);
|
||
!1 === e.cors && (i.mode = "same-origin"), e.withCredentials && (i.credentials = "include"), e.referrerPolicy && (i.referrerPolicy = e.referrerPolicy), this._status = h.LoaderStatus.kConnecting, self.fetch(r.url, i).then(function (e) {
|
||
if (n._requestAbort) return n._requestAbort = !1, void (n._status = h.LoaderStatus.kIdle);
|
||
var t;
|
||
if (e.ok && 200 <= e.status && e.status <= 299) return e.url !== r.url && n._onURLRedirect && (t = n._seekHandler.removeURLParameters(e.url), n._onURLRedirect(t)), null != (t = e.headers.get("Content-Length")) && (n._contentLength = parseInt(t), 0 !== n._contentLength && n._onContentLengthKnown && n._onContentLengthKnown(n._contentLength)), n._pump.call(n, e.body.getReader());
|
||
if (n._status = h.LoaderStatus.kError, !n._onError) throw new c.RuntimeException("FetchStreamLoader: Http code invalid, " + e.status + " " + e.statusText);
|
||
n._onError(h.LoaderErrors.HTTP_STATUS_CODE_INVALID, {code: e.status, msg: e.statusText})
|
||
}).catch(function (e) {
|
||
if (n._status = h.LoaderStatus.kError, !n._onError) throw e;
|
||
n._onError(h.LoaderErrors.EXCEPTION, {code: -1, msg: e.message})
|
||
})
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
this._requestAbort = !0
|
||
}
|
||
}, {
|
||
key: "_pump", value: function (i) {
|
||
var r = this;
|
||
return i.read().then(function (e) {
|
||
if (e.done) if (null !== r._contentLength && r._receivedLength < r._contentLength) {
|
||
r._status = h.LoaderStatus.kError;
|
||
var t = h.LoaderErrors.EARLY_EOF, n = {code: -1, msg: "Fetch stream meet Early-EOF"};
|
||
if (!r._onError) throw new c.RuntimeException(n.msg);
|
||
r._onError(t, n)
|
||
} else r._status = h.LoaderStatus.kComplete, r._onComplete && r._onComplete(r._range.from, r._range.from + r._receivedLength - 1); else {
|
||
if (!0 === r._requestAbort) return r._requestAbort = !1, r._status = h.LoaderStatus.kComplete, i.cancel();
|
||
r._status = h.LoaderStatus.kBuffering;
|
||
t = e.value.buffer, n = r._range.from + r._receivedLength;
|
||
r._receivedLength += t.byteLength, r._onDataArrival && r._onDataArrival(t, n, r._receivedLength), r._pump(i)
|
||
}
|
||
}).catch(function (e) {
|
||
if (11 !== e.code || !l.default.msedge) {
|
||
r._status = h.LoaderStatus.kError;
|
||
var t = 0, n = null,
|
||
n = 19 !== e.code && "network error" !== e.message || !(null === r._contentLength || null !== r._contentLength && r._receivedLength < r._contentLength) ? (t = h.LoaderErrors.EXCEPTION, {
|
||
code: e.code,
|
||
msg: e.message
|
||
}) : (t = h.LoaderErrors.EARLY_EOF, {code: e.code, msg: "Fetch stream meet Early-EOF"});
|
||
if (!r._onError) throw new c.RuntimeException(n.msg);
|
||
r._onError(t, n)
|
||
}
|
||
})
|
||
}
|
||
}]);
|
||
u = f;
|
||
|
||
function f(e, t) {
|
||
(0, r.default)(this, f);
|
||
var n = (0, a.default)(this, (f.__proto__ || (0, i.default)(f)).call(this, "fetch-stream-loader"));
|
||
return n.TAG = "FetchStreamLoader", n._seekHandler = e, n._config = t, n._needStash = !0, n._requestAbort = !1, n._contentLength = null, n._receivedLength = 0, n
|
||
}
|
||
|
||
t.default = u
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(309), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(310);
|
||
var i = n(3).Object;
|
||
e.exports = function (e, t) {
|
||
return i.getOwnPropertyDescriptor(e, t)
|
||
}
|
||
}, function (e, t, n) {
|
||
var i = n(19), r = n(60).f;
|
||
n(52)("getOwnPropertyDescriptor", function () {
|
||
return function (e, t) {
|
||
return r(i(e), t)
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var u = _(n(9)), i = _(n(21)), r = _(n(1)), a = _(n(25)), s = _(n(32)), o = _(n(2)), d = _(n(26)), l = _(n(4)),
|
||
h = n(15), c = n(5);
|
||
|
||
function _(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = h.BaseLoader, (0, d.default)(f, n), (0, o.default)(f, null, [{
|
||
key: "isSupported", value: function () {
|
||
try {
|
||
var e = new XMLHttpRequest;
|
||
return e.open("GET", "https://example.com", !0), (e.responseType = "moz-chunked-arraybuffer") === e.responseType
|
||
} catch (e) {
|
||
return l.default.w("MozChunkedLoader", e.message), !1
|
||
}
|
||
}
|
||
}]), (0, o.default)(f, [{
|
||
key: "destroy", value: function () {
|
||
this.isWorking() && this.abort(), this._xhr && (this._xhr.onreadystatechange = null, this._xhr.onprogress = null, this._xhr.onloadend = null, this._xhr.onerror = null, this._xhr = null), (0, s.default)(f.prototype.__proto__ || (0, i.default)(f.prototype), "destroy", this).call(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (e, t) {
|
||
this._dataSource = e, this._range = t;
|
||
var n = e.url,
|
||
n = (this._config.reuseRedirectedURL && null != e.redirectedURL && (n = e.redirectedURL), this._seekHandler.getConfig(n, t)),
|
||
i = (this._requestURL = n.url, this._xhr = new XMLHttpRequest);
|
||
if (i.open("GET", n.url, !0), i.responseType = "moz-chunked-arraybuffer", i.onreadystatechange = this._onReadyStateChange.bind(this), i.onprogress = this._onProgress.bind(this), i.onloadend = this._onLoadEnd.bind(this), i.onerror = this._onXhrError.bind(this), e.withCredentials && (i.withCredentials = !0), "object" === (0, u.default)(n.headers)) {
|
||
var r, a = n.headers;
|
||
for (r in a) a.hasOwnProperty(r) && i.setRequestHeader(r, a[r])
|
||
}
|
||
if ("object" === (0, u.default)(this._config.headers)) {
|
||
var s, o = this._config.headers;
|
||
for (s in o) o.hasOwnProperty(s) && i.setRequestHeader(s, o[s])
|
||
}
|
||
this._status = h.LoaderStatus.kConnecting, i.send()
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
this._requestAbort = !0, this._xhr && this._xhr.abort(), this._status = h.LoaderStatus.kComplete
|
||
}
|
||
}, {
|
||
key: "_onReadyStateChange", value: function (e) {
|
||
var t, e = e.target;
|
||
if (2 === e.readyState) if (null != e.responseURL && e.responseURL !== this._requestURL && this._onURLRedirect && (t = this._seekHandler.removeURLParameters(e.responseURL), this._onURLRedirect(t)), 0 !== e.status && (e.status < 200 || 299 < e.status)) {
|
||
if (this._status = h.LoaderStatus.kError, !this._onError) throw new c.RuntimeException("MozChunkedLoader: Http code invalid, " + e.status + " " + e.statusText);
|
||
this._onError(h.LoaderErrors.HTTP_STATUS_CODE_INVALID, {code: e.status, msg: e.statusText})
|
||
} else this._status = h.LoaderStatus.kBuffering
|
||
}
|
||
}, {
|
||
key: "_onProgress", value: function (e) {
|
||
var t;
|
||
this._status !== h.LoaderStatus.kError && (null === this._contentLength && null !== e.total && 0 !== e.total && (this._contentLength = e.total, this._onContentLengthKnown && this._onContentLengthKnown(this._contentLength)), e = e.target.response, t = this._range.from + this._receivedLength, this._receivedLength += e.byteLength, this._onDataArrival && this._onDataArrival(e, t, this._receivedLength))
|
||
}
|
||
}, {
|
||
key: "_onLoadEnd", value: function (e) {
|
||
!0 === this._requestAbort ? this._requestAbort = !1 : this._status !== h.LoaderStatus.kError && (this._status = h.LoaderStatus.kComplete, this._onComplete && this._onComplete(this._range.from, this._range.from + this._receivedLength - 1))
|
||
}
|
||
}, {
|
||
key: "_onXhrError", value: function (e) {
|
||
this._status = h.LoaderStatus.kError;
|
||
var t = 0, n = null,
|
||
n = this._contentLength && e.loaded < this._contentLength ? (t = h.LoaderErrors.EARLY_EOF, {
|
||
code: -1,
|
||
msg: "Moz-Chunked stream meet Early-Eof"
|
||
}) : (t = h.LoaderErrors.EXCEPTION, {code: -1, msg: e.constructor.name + " " + e.type});
|
||
if (!this._onError) throw new c.RuntimeException(n.msg);
|
||
this._onError(t, n)
|
||
}
|
||
}]);
|
||
d = f;
|
||
|
||
function f(e, t) {
|
||
(0, r.default)(this, f);
|
||
var n = (0, a.default)(this, (f.__proto__ || (0, i.default)(f)).call(this, "xhr-moz-chunked-loader"));
|
||
return n.TAG = "MozChunkedLoader", n._seekHandler = e, n._config = t, n._needStash = !0, n._xhr = null, n._requestAbort = !1, n._contentLength = null, n._receivedLength = 0, n
|
||
}
|
||
|
||
t.default = d
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var u = _(n(9)), i = _(n(21)), r = _(n(1)), a = _(n(25)), s = _(n(32)), o = _(n(2)), d = _(n(26)), l = _(n(4)),
|
||
h = n(15), c = n(5);
|
||
|
||
function _(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = h.BaseLoader, (0, d.default)(f, n), (0, o.default)(f, null, [{
|
||
key: "isSupported", value: function () {
|
||
try {
|
||
if (void 0 === self.MSStream || void 0 === self.MSStreamReader) return !1;
|
||
var e = new XMLHttpRequest;
|
||
return e.open("GET", "https://example.com", !0), (e.responseType = "ms-stream") === e.responseType
|
||
} catch (e) {
|
||
return l.default.w("MSStreamLoader", e.message), !1
|
||
}
|
||
}
|
||
}]), (0, o.default)(f, [{
|
||
key: "destroy", value: function () {
|
||
this.isWorking() && this.abort(), this._reader && (this._reader.onprogress = null, this._reader.onload = null, this._reader.onerror = null, this._reader = null), this._xhr && (this._xhr.onreadystatechange = null, this._xhr = null), (0, s.default)(f.prototype.__proto__ || (0, i.default)(f.prototype), "destroy", this).call(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (e, t) {
|
||
this._internalOpen(e, t, !1)
|
||
}
|
||
}, {
|
||
key: "_internalOpen", value: function (e, t, n) {
|
||
this._dataSource = e, n ? this._currentRange = t : this._totalRange = t;
|
||
var n = e.url,
|
||
n = (this._config.reuseRedirectedURL && (null != this._currentRedirectedURL ? n = this._currentRedirectedURL : null != e.redirectedURL && (n = e.redirectedURL)), this._seekHandler.getConfig(n, t)),
|
||
t = (this._currentRequestURL = n.url, this._reader = new self.MSStreamReader),
|
||
i = (t.onprogress = this._msrOnProgress.bind(this), t.onload = this._msrOnLoad.bind(this), t.onerror = this._msrOnError.bind(this), this._xhr = new XMLHttpRequest);
|
||
if (i.open("GET", n.url, !0), i.responseType = "ms-stream", i.onreadystatechange = this._xhrOnReadyStateChange.bind(this), i.onerror = this._xhrOnError.bind(this), e.withCredentials && (i.withCredentials = !0), "object" === (0, u.default)(n.headers)) {
|
||
var r, a = n.headers;
|
||
for (r in a) a.hasOwnProperty(r) && i.setRequestHeader(r, a[r])
|
||
}
|
||
if ("object" === (0, u.default)(this._config.headers)) {
|
||
var s, o = this._config.headers;
|
||
for (s in o) o.hasOwnProperty(s) && i.setRequestHeader(s, o[s])
|
||
}
|
||
this._isReconnecting ? this._isReconnecting = !1 : this._status = h.LoaderStatus.kConnecting, i.send()
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
this._internalAbort(), this._status = h.LoaderStatus.kComplete
|
||
}
|
||
}, {
|
||
key: "_internalAbort", value: function () {
|
||
this._reader && (1 === this._reader.readyState && this._reader.abort(), this._reader.onprogress = null, this._reader.onload = null, this._reader.onerror = null, this._reader = null), this._xhr && (this._xhr.abort(), this._xhr.onreadystatechange = null, this._xhr = null)
|
||
}
|
||
}, {
|
||
key: "_xhrOnReadyStateChange", value: function (e) {
|
||
e = e.target;
|
||
if (2 === e.readyState) if (200 <= e.status && e.status <= 299) {
|
||
this._status = h.LoaderStatus.kBuffering, null != e.responseURL && (t = this._seekHandler.removeURLParameters(e.responseURL), e.responseURL !== this._currentRequestURL && t !== this._currentRedirectedURL && (this._currentRedirectedURL = t, this._onURLRedirect && this._onURLRedirect(t)));
|
||
var t = e.getResponseHeader("Content-Length");
|
||
null == t || null != this._contentLength || 0 < (t = parseInt(t)) && (this._contentLength = t, this._onContentLengthKnown && this._onContentLengthKnown(this._contentLength))
|
||
} else {
|
||
if (this._status = h.LoaderStatus.kError, !this._onError) throw new c.RuntimeException("MSStreamLoader: Http code invalid, " + e.status + " " + e.statusText);
|
||
this._onError(h.LoaderErrors.HTTP_STATUS_CODE_INVALID, {code: e.status, msg: e.statusText})
|
||
} else 3 === e.readyState && 200 <= e.status && e.status <= 299 && (this._status = h.LoaderStatus.kBuffering, t = e.response, this._reader.readAsArrayBuffer(t))
|
||
}
|
||
}, {
|
||
key: "_xhrOnError", value: function (e) {
|
||
this._status = h.LoaderStatus.kError;
|
||
var t = h.LoaderErrors.EXCEPTION, e = {code: -1, msg: e.constructor.name + " " + e.type};
|
||
if (!this._onError) throw new c.RuntimeException(e.msg);
|
||
this._onError(t, e)
|
||
}
|
||
}, {
|
||
key: "_msrOnProgress", value: function (e) {
|
||
var t, n, e = e.target.result;
|
||
null == e ? this._doReconnectIfNeeded() : (t = e.slice(this._lastTimeBufferSize), this._lastTimeBufferSize = e.byteLength, n = this._totalRange.from + this._receivedLength, this._receivedLength += t.byteLength, this._onDataArrival && this._onDataArrival(t, n, this._receivedLength), e.byteLength >= this._bufferLimit && (l.default.v(this.TAG, "MSStream buffer exceeded max size near " + (n + t.byteLength) + ", reconnecting..."), this._doReconnectIfNeeded()))
|
||
}
|
||
}, {
|
||
key: "_doReconnectIfNeeded", value: function () {
|
||
var e;
|
||
(null == this._contentLength || this._receivedLength < this._contentLength) && (this._isReconnecting = !0, this._lastTimeBufferSize = 0, this._internalAbort(), e = {
|
||
from: this._totalRange.from + this._receivedLength,
|
||
to: -1
|
||
}, this._internalOpen(this._dataSource, e, !0))
|
||
}
|
||
}, {
|
||
key: "_msrOnLoad", value: function (e) {
|
||
this._status = h.LoaderStatus.kComplete, this._onComplete && this._onComplete(this._totalRange.from, this._totalRange.from + this._receivedLength - 1)
|
||
}
|
||
}, {
|
||
key: "_msrOnError", value: function (e) {
|
||
this._status = h.LoaderStatus.kError;
|
||
var t = 0, n = null,
|
||
n = this._contentLength && this._receivedLength < this._contentLength ? (t = h.LoaderErrors.EARLY_EOF, {
|
||
code: -1,
|
||
msg: "MSStream meet Early-Eof"
|
||
}) : (t = h.LoaderErrors.EARLY_EOF, {code: -1, msg: e.constructor.name + " " + e.type});
|
||
if (!this._onError) throw new c.RuntimeException(n.msg);
|
||
this._onError(t, n)
|
||
}
|
||
}]);
|
||
d = f;
|
||
|
||
function f(e, t) {
|
||
(0, r.default)(this, f);
|
||
var n = (0, a.default)(this, (f.__proto__ || (0, i.default)(f)).call(this, "xhr-msstream-loader"));
|
||
return n.TAG = "MSStreamLoader", n._seekHandler = e, n._config = t, n._needStash = !0, n._xhr = null, n._reader = null, n._totalRange = null, n._currentRange = null, n._currentRequestURL = null, n._currentRedirectedURL = null, n._contentLength = null, n._receivedLength = 0, n._bufferLimit = 16777216, n._lastTimeBufferSize = 0, n._isReconnecting = !1, n
|
||
}
|
||
|
||
t.default = d
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var u = f(n(9)), i = f(n(21)), r = f(n(1)), a = f(n(25)), s = f(n(32)), o = f(n(2)), d = f(n(26)), l = f(n(4)),
|
||
h = f(n(62)), c = n(15), _ = n(5);
|
||
|
||
function f(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = c.BaseLoader, (0, d.default)(m, n), (0, o.default)(m, null, [{
|
||
key: "isSupported", value: function () {
|
||
try {
|
||
var e = new XMLHttpRequest;
|
||
return e.open("GET", "https://example.com", !0), (e.responseType = "arraybuffer") === e.responseType
|
||
} catch (e) {
|
||
return l.default.w("RangeLoader", e.message), !1
|
||
}
|
||
}
|
||
}]), (0, o.default)(m, [{
|
||
key: "destroy", value: function () {
|
||
this.isWorking() && this.abort(), this._xhr && (this._xhr.onreadystatechange = null, this._xhr.onprogress = null, this._xhr.onload = null, this._xhr.onerror = null, this._xhr = null), (0, s.default)(m.prototype.__proto__ || (0, i.default)(m.prototype), "destroy", this).call(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (e, t) {
|
||
this._dataSource = e, this._range = t, this._status = c.LoaderStatus.kConnecting;
|
||
e = !1;
|
||
null != this._dataSource.filesize && 0 !== this._dataSource.filesize && (e = !0, this._totalLength = this._dataSource.filesize), this._totalLengthReceived || e ? this._openSubRange() : (this._waitForTotalLength = !0, this._internalOpen(this._dataSource, {
|
||
from: 0,
|
||
to: -1
|
||
}))
|
||
}
|
||
}, {
|
||
key: "_openSubRange", value: function () {
|
||
var e = 1024 * this._currentChunkSizeKB, t = this._range.from + this._receivedLength, e = t + e;
|
||
null != this._contentLength && e - this._range.from >= this._contentLength && (e = this._range.from + this._contentLength - 1), this._currentRequestRange = {
|
||
from: t,
|
||
to: e
|
||
}, this._internalOpen(this._dataSource, this._currentRequestRange)
|
||
}
|
||
}, {
|
||
key: "_internalOpen", value: function (e, t) {
|
||
this._lastTimeLoaded = 0;
|
||
var n = e.url,
|
||
n = (this._config.reuseRedirectedURL && (null != this._currentRedirectedURL ? n = this._currentRedirectedURL : null != e.redirectedURL && (n = e.redirectedURL)), this._seekHandler.getConfig(n, t)),
|
||
i = (this._currentRequestURL = n.url, this._xhr = new XMLHttpRequest);
|
||
if (i.open("GET", n.url, !0), i.responseType = "arraybuffer", i.onreadystatechange = this._onReadyStateChange.bind(this), i.onprogress = this._onProgress.bind(this), i.onload = this._onLoad.bind(this), i.onerror = this._onXhrError.bind(this), e.withCredentials && (i.withCredentials = !0), "object" === (0, u.default)(n.headers)) {
|
||
var r, a = n.headers;
|
||
for (r in a) a.hasOwnProperty(r) && i.setRequestHeader(r, a[r])
|
||
}
|
||
if ("object" === (0, u.default)(this._config.headers)) {
|
||
var s, o = this._config.headers;
|
||
for (s in o) o.hasOwnProperty(s) && i.setRequestHeader(s, o[s])
|
||
}
|
||
i.send()
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
this._requestAbort = !0, this._internalAbort(), this._status = c.LoaderStatus.kComplete
|
||
}
|
||
}, {
|
||
key: "_internalAbort", value: function () {
|
||
this._xhr && (this._xhr.onreadystatechange = null, this._xhr.onprogress = null, this._xhr.onload = null, this._xhr.onerror = null, this._xhr.abort(), this._xhr = null)
|
||
}
|
||
}, {
|
||
key: "_onReadyStateChange", value: function (e) {
|
||
var t, e = e.target;
|
||
if (2 === e.readyState) if (null != e.responseURL && (t = this._seekHandler.removeURLParameters(e.responseURL), e.responseURL !== this._currentRequestURL && t !== this._currentRedirectedURL && (this._currentRedirectedURL = t, this._onURLRedirect && this._onURLRedirect(t))), 200 <= e.status && e.status <= 299) this._waitForTotalLength || (this._status = c.LoaderStatus.kBuffering); else {
|
||
if (this._status = c.LoaderStatus.kError, !this._onError) throw new _.RuntimeException("RangeLoader: Http code invalid, " + e.status + " " + e.statusText);
|
||
this._onError(c.LoaderErrors.HTTP_STATUS_CODE_INVALID, {code: e.status, msg: e.statusText})
|
||
}
|
||
}
|
||
}, {
|
||
key: "_onProgress", value: function (e) {
|
||
if (this._status !== c.LoaderStatus.kError) {
|
||
if (null === this._contentLength) {
|
||
var t = !1;
|
||
if (this._waitForTotalLength && (this._waitForTotalLength = !1, t = this._totalLengthReceived = !0, n = e.total, this._internalAbort(), null != n & 0 !== n && (this._totalLength = n)), -1 === this._range.to ? this._contentLength = this._totalLength - this._range.from : this._contentLength = this._range.to - this._range.from + 1, t) return void this._openSubRange();
|
||
this._onContentLengthKnown && this._onContentLengthKnown(this._contentLength)
|
||
}
|
||
var n = e.loaded - this._lastTimeLoaded;
|
||
this._lastTimeLoaded = e.loaded, this._speedSampler.addBytes(n)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_normalizeSpeed", value: function (e) {
|
||
var t, n = this._chunkSizeKBList, i = n.length - 1, r = 0, a = i;
|
||
if (e < n[0]) return n[0];
|
||
for (; r <= a;) {
|
||
if ((t = r + Math.floor((a - r) / 2)) === i || e >= n[t] && e < n[t + 1]) return n[t];
|
||
n[t] < e ? r = t + 1 : a = t - 1
|
||
}
|
||
}
|
||
}, {
|
||
key: "_onLoad", value: function (e) {
|
||
var t, n;
|
||
this._status !== c.LoaderStatus.kError && (this._waitForTotalLength ? this._waitForTotalLength = !1 : ((this._lastTimeLoaded = 0) === (t = this._speedSampler.lastSecondKBps) && (this._zeroSpeedChunkCount++, 3 <= this._zeroSpeedChunkCount && (t = this._speedSampler.currentKBps)), 0 !== t && (t = this._normalizeSpeed(t), this._currentSpeedNormalized !== t && (this._currentSpeedNormalized = t, this._currentChunkSizeKB = t)), t = e.target.response, e = this._range.from + this._receivedLength, this._receivedLength += t.byteLength, n = !1, null != this._contentLength && this._receivedLength < this._contentLength ? this._openSubRange() : n = !0, this._onDataArrival && this._onDataArrival(t, e, this._receivedLength), n && (this._status = c.LoaderStatus.kComplete, this._onComplete && this._onComplete(this._range.from, this._range.from + this._receivedLength - 1))))
|
||
}
|
||
}, {
|
||
key: "_onXhrError", value: function (e) {
|
||
this._status = c.LoaderStatus.kError;
|
||
var t = 0, n = null,
|
||
n = this._contentLength && 0 < this._receivedLength && this._receivedLength < this._contentLength ? (t = c.LoaderErrors.EARLY_EOF, {
|
||
code: -1,
|
||
msg: "RangeLoader meet Early-Eof"
|
||
}) : (t = c.LoaderErrors.EXCEPTION, {code: -1, msg: e.constructor.name + " " + e.type});
|
||
if (!this._onError) throw new _.RuntimeException(n.msg);
|
||
this._onError(t, n)
|
||
}
|
||
}, {
|
||
key: "currentSpeed", get: function () {
|
||
return this._speedSampler.lastSecondKBps
|
||
}
|
||
}]);
|
||
d = m;
|
||
|
||
function m(e, t) {
|
||
(0, r.default)(this, m);
|
||
var n = (0, a.default)(this, (m.__proto__ || (0, i.default)(m)).call(this, "xhr-range-loader"));
|
||
return n.TAG = "RangeLoader", n._seekHandler = e, n._config = t, n._needStash = !1, n._chunkSizeKBList = [128, 256, 384, 512, 768, 1024, 1536, 2048, 3072, 4096, 5120, 6144, 7168, 8192], n._currentChunkSizeKB = 384, n._currentSpeedNormalized = 0, n._zeroSpeedChunkCount = 0, n._xhr = null, n._speedSampler = new h.default, n._requestAbort = !1, n._waitForTotalLength = !1, n._totalLengthReceived = !1, n._currentRequestURL = null, n._currentRedirectedURL = null, n._currentRequestRange = null, n._totalLength = null, n._contentLength = null, n._receivedLength = 0, n._lastTimeLoaded = 0, n
|
||
}
|
||
|
||
t.default = d
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = h(n(21)), r = h(n(1)), a = h(n(25)), s = h(n(32)), o = h(n(2)), u = h(n(26)), d = (h(n(4)), n(15)),
|
||
l = n(5);
|
||
|
||
function h(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = d.BaseLoader, (0, u.default)(c, n), (0, o.default)(c, null, [{
|
||
key: "isSupported", value: function () {
|
||
try {
|
||
return void 0 !== self.WebSocket
|
||
} catch (e) {
|
||
return !1
|
||
}
|
||
}
|
||
}]), (0, o.default)(c, [{
|
||
key: "destroy", value: function () {
|
||
this._ws && this.abort(), (0, s.default)(c.prototype.__proto__ || (0, i.default)(c.prototype), "destroy", this).call(this)
|
||
}
|
||
}, {
|
||
key: "open", value: function (t) {
|
||
try {
|
||
var e = this._ws = new self.WebSocket(t.url);
|
||
e.binaryType = "arraybuffer", e.onopen = this._onWebSocketOpen.bind(this), e.onclose = this._onWebSocketClose.bind(this), e.onmessage = this._onWebSocketMessage.bind(this), e.onerror = this._onWebSocketError.bind(this), this._status = d.LoaderStatus.kConnecting
|
||
} catch (e) {
|
||
this._status = d.LoaderStatus.kError;
|
||
t = {code: e.code, msg: e.message};
|
||
if (!this._onError) throw new l.RuntimeException(t.msg);
|
||
this._onError(d.LoaderErrors.EXCEPTION, t)
|
||
}
|
||
}
|
||
}, {
|
||
key: "abort", value: function () {
|
||
var e = this._ws;
|
||
!e || 0 !== e.readyState && 1 !== e.readyState || (this._requestAbort = !0, e.close()), this._ws = null, this._status = d.LoaderStatus.kComplete
|
||
}
|
||
}, {
|
||
key: "_onWebSocketOpen", value: function (e) {
|
||
this._status = d.LoaderStatus.kBuffering
|
||
}
|
||
}, {
|
||
key: "_onWebSocketClose", value: function (e) {
|
||
!0 === this._requestAbort ? this._requestAbort = !1 : (this._status = d.LoaderStatus.kComplete, this._onComplete && this._onComplete(0, this._receivedLength - 1))
|
||
}
|
||
}, {
|
||
key: "_onWebSocketMessage", value: function (e) {
|
||
var t = this;
|
||
if (e.data instanceof ArrayBuffer) this._dispatchArrayBuffer(e.data); else if (e.data instanceof Blob) {
|
||
var n = new FileReader;
|
||
n.onload = function () {
|
||
t._dispatchArrayBuffer(n.result)
|
||
}, n.readAsArrayBuffer(e.data)
|
||
} else {
|
||
this._status = d.LoaderStatus.kError;
|
||
e = {code: -1, msg: "Unsupported WebSocket message type: " + e.data.constructor.name};
|
||
if (!this._onError) throw new l.RuntimeException(e.msg);
|
||
this._onError(d.LoaderErrors.EXCEPTION, e)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_dispatchArrayBuffer", value: function (e) {
|
||
var t = this._receivedLength;
|
||
this._receivedLength += e.byteLength, this._onDataArrival && this._onDataArrival(e, t, this._receivedLength)
|
||
}
|
||
}, {
|
||
key: "_onWebSocketError", value: function (e) {
|
||
this._status = d.LoaderStatus.kError;
|
||
e = {code: e.code, msg: e.message};
|
||
if (!this._onError) throw new l.RuntimeException(e.msg);
|
||
this._onError(d.LoaderErrors.EXCEPTION, e)
|
||
}
|
||
}]);
|
||
u = c;
|
||
|
||
function c() {
|
||
(0, r.default)(this, c);
|
||
var e = (0, a.default)(this, (c.__proto__ || (0, i.default)(c)).call(this, "websocket-loader"));
|
||
return e.TAG = "WebSocketLoader", e._needStash = !0, e._ws = null, e._requestAbort = !1, e._receivedLength = 0, e
|
||
}
|
||
|
||
t.default = u
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "getConfig", value: function (e, t) {
|
||
var n, i = {};
|
||
return 0 !== t.from || -1 !== t.to ? (n = void 0, n = -1 !== t.to ? "bytes=" + t.from.toString() + "-" + t.to.toString() : "bytes=" + t.from.toString() + "-", i.Range = n) : this._zeroStart && (i.Range = "bytes=0-"), {
|
||
url: e,
|
||
headers: i
|
||
}
|
||
}
|
||
}, {
|
||
key: "removeURLParameters", value: function (e) {
|
||
return e
|
||
}
|
||
}]);
|
||
n = a;
|
||
|
||
function a(e) {
|
||
(0, i.default)(this, a), this._zeroStart = e || !1
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function a(e, t) {
|
||
(0, i.default)(this, a), this._startName = e, this._endName = t
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "getConfig", value: function (e, t) {
|
||
var n;
|
||
return 0 === t.from && -1 === t.to || (n = !0, -1 === e.indexOf("?") && (e += "?", n = !1), n && (e += "&"), e += this._startName + "=" + t.from.toString(), -1 !== t.to && (e += "&" + this._endName + "=" + t.to.toString())), {
|
||
url: e,
|
||
headers: {}
|
||
}
|
||
}
|
||
}, {
|
||
key: "removeURLParameters", value: function (e) {
|
||
var t = e.split("?")[0], n = void 0, i = e.indexOf("?"), r = "";
|
||
if (null != (n = -1 !== i ? e.substring(i + 1) : n) && 0 < n.length) for (var a = n.split("&"), s = 0; s < a.length; s++) {
|
||
var o = a[s].split("=");
|
||
o[0] !== this._startName && o[0] !== this._endName && (0 < s && (r += "&"), r += a[s])
|
||
}
|
||
return 0 === r.length ? t : t + "?" + r
|
||
}
|
||
}]), t.default = a
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = M(n(11)), r = M(n(20)), a = M(n(9)), s = M(n(1)), o = M(n(2)), u = M(n(10)), d = M(n(4)), l = M(n(33)),
|
||
h = (M(n(62)), M(n(39))), c = M(n(318)), _ = M(n(40)), f = M(n(332)), m = M(n(232)), p = n(234), y = n(63),
|
||
v = n(5), g = M(n(233));
|
||
|
||
function M(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, o.default)(L, [{
|
||
key: "destroy", value: function () {
|
||
null != this._progressChecker && (window.clearInterval(this._progressChecker), this._progressChecker = null), this._transmuxer && this.unload(), this._mediaElement && this.detachMediaElement(), this.e = null, this._mediaDataSource = null, this._emitter && (this._emitter.removeAllListeners(), this._emitter = null)
|
||
}
|
||
}, {
|
||
key: "on", value: function (e, t) {
|
||
var n = this;
|
||
e === h.default.MEDIA_INFO ? null != this._mediaInfo && i.default.resolve().then(function () {
|
||
n._emitter.emit(h.default.MEDIA_INFO, n.mediaInfo)
|
||
}) : e === h.default.STATISTICS_INFO && null != this._statisticsInfo && i.default.resolve().then(function () {
|
||
n._emitter.emit(h.default.STATISTICS_INFO, n.statisticsInfo)
|
||
}), this._emitter.addListener(e, t)
|
||
}
|
||
}, {
|
||
key: "off", value: function (e, t) {
|
||
this._emitter.removeListener(e, t)
|
||
}
|
||
}, {
|
||
key: "attachMediaElement", value: function (e) {
|
||
var t = this;
|
||
if ((this._mediaElement = e).addEventListener("loadedmetadata", this.e.onvLoadedMetadata), e.addEventListener("seeking", this.e.onvSeeking), e.addEventListener("canplay", this.e.onvCanPlay), e.addEventListener("stalled", this.e.onvStalled), e.addEventListener("progress", this.e.onvProgress), e.addEventListener("timeupdate", this.e.onvTimeUpdate), this._msectl = new f.default(this._config), this._msectl.on(m.default.UPDATE_END, this._onmseUpdateEnd.bind(this)), this._msectl.on(m.default.BUFFER_FULL, this._onmseBufferFull.bind(this)), this._msectl.on(m.default.SOURCE_OPEN, function () {
|
||
if (t._mseSourceOpened = !0, t._hasPendingLoad) for (t._hasPendingLoad = !1, t.load(), 0 < t._stashArray.length && console.warn("stash before source open", t._stashArray.length); 0 < t._stashArray.length;) {
|
||
var e = t._stashArray.shift();
|
||
t._onLoaderChunkArrival(e.data, e.byteStart)
|
||
}
|
||
}), this._msectl.on(m.default.SOURCE_END, function () {
|
||
t._emitter.emit(h.default.MEDIA_SOURCE_ENDED)
|
||
}), this._msectl.on(m.default.SOURCE_CLOSE, function () {
|
||
t._mseSourceOpened = !1, t._emitter.emit(h.default.MEDIA_SOURCE_CLOSE)
|
||
}), this._msectl.on(m.default.ERROR, function (e) {
|
||
t._emitter.emit(h.default.ERROR, p.ErrorTypes.MEDIA_ERROR, p.ErrorDetails.MEDIA_MSE_ERROR, e)
|
||
}), this._msectl.attachMediaElement(e), null != this._pendingSeekTime) try {
|
||
e.currentTime = this._pendingSeekTime, this._pendingSeekTime = null
|
||
} catch (e) {
|
||
}
|
||
}
|
||
}, {
|
||
key: "detachMediaElement", value: function () {
|
||
this._mediaElement && (this._msectl.detachMediaElement(), this._mediaElement.removeEventListener("loadedmetadata", this.e.onvLoadedMetadata), this._mediaElement.removeEventListener("seeking", this.e.onvSeeking), this._mediaElement.removeEventListener("canplay", this.e.onvCanPlay), this._mediaElement.removeEventListener("stalled", this.e.onvStalled), this._mediaElement.removeEventListener("progress", this.e.onvProgress), this._mediaElement.removeEventListener("timeupdate", this.e.onvTimeUpdate), this._mediaElement = null), this._msectl && (this._msectl.destroy(), this._msectl = null), this._stashArray = []
|
||
}
|
||
}, {
|
||
key: "load", value: function () {
|
||
var i = this;
|
||
if (!this._mediaElement) throw new v.IllegalStateException("HTMLMediaElement must be attached before load()!");
|
||
if (this._transmuxer) throw new v.IllegalStateException("FlvPlayer.load() has been called, please call unload() first!");
|
||
this._hasPendingLoad || (this._config.deferLoadAfterSourceOpen && !1 === this._mseSourceOpened ? this._hasPendingLoad = !0 : (0 < this._mediaElement.readyState && (this._requestSetTime = !0, this._mediaElement.currentTime = 0), this.openLatencyMonitor(), this._transmuxer = new c.default(this._mediaDataSource, this._config), this._transmuxer.on(_.default.INIT_SEGMENT, function (e, t) {
|
||
i._msectl.appendInitSegment(t)
|
||
}), this._transmuxer.on(_.default.MEDIA_SEGMENT, function (e, t) {
|
||
var n;
|
||
i._msectl.appendMediaSegment(t), i._config.lazyLoad && !i._config.isLive && (n = i._mediaElement.currentTime, t.info.endDts >= 1e3 * (n + i._config.lazyLoadMaxDuration) && null == i._progressChecker && (d.default.v(i.TAG, "Maximum buffering duration exceeded, suspend transmuxing task"), i._suspendTransmuxer()))
|
||
}), this._transmuxer.on(_.default.LOADING_COMPLETE, function () {
|
||
i._msectl.endOfStream(), i._emitter.emit(h.default.LOADING_COMPLETE)
|
||
}), this._transmuxer.on(_.default.RECOVERED_EARLY_EOF, function () {
|
||
i._emitter.emit(h.default.RECOVERED_EARLY_EOF)
|
||
}), this._transmuxer.on(_.default.IO_ERROR, function (e, t) {
|
||
i._emitter.emit(h.default.ERROR, p.ErrorTypes.NETWORK_ERROR, e, t)
|
||
}), this._transmuxer.on(_.default.DEMUX_ERROR, function (e, t) {
|
||
i._emitter.emit(h.default.ERROR, p.ErrorTypes.MEDIA_ERROR, e, {code: -1, msg: t})
|
||
}), this._transmuxer.on(_.default.MEDIA_INFO, function (e) {
|
||
i._mediaInfo = e, i._emitter.emit(h.default.MEDIA_INFO, (0, r.default)({}, e))
|
||
}), this._transmuxer.on(_.default.METADATA_ARRIVED, function (e) {
|
||
i._emitter.emit(h.default.METADATA_ARRIVED, e)
|
||
}), this._transmuxer.on(_.default.SCRIPTDATA_ARRIVED, function (e) {
|
||
i._emitter.emit(h.default.SCRIPTDATA_ARRIVED, e)
|
||
}), this._transmuxer.on(_.default.STATISTICS_INFO, function (e) {
|
||
i._statisticsInfo = i._fillStatisticsInfo(e), i._emitter.emit(h.default.STATISTICS_INFO, (0, r.default)({}, i._statisticsInfo))
|
||
}), this._transmuxer.on(_.default.RECOMMEND_SEEKPOINT, function (e) {
|
||
i._mediaElement && !i._config.accurateSeek && (i._requestSetTime = !0, i._mediaElement.currentTime = e / 1e3)
|
||
}), this._transmuxer.on(_.default.VIDEO_RESOLUTION_CHANGED, function (e) {
|
||
i._emitter.emit(h.default.VIDEO_RESOLUTION_CHANGED, e)
|
||
}), this._transmuxer.on(_.default.PARSEDDATA_ARRIVED, function (e, t) {
|
||
i._onParsedData(e, t, i.iWndNum)
|
||
}), this._transmuxer.open()))
|
||
}
|
||
}, {
|
||
key: "unload", value: function () {
|
||
this._mediaElement && this._mediaElement.pause(), this._msectl && this._msectl.seek(0), this._transmuxer && (this._transmuxer.close(), this._transmuxer.destroy(), this._transmuxer = null), this._durationMonitor && (self.clearInterval(this._durationMonitor), this._durationMonitor = null), this._latencyDetectTimer && (self.clearInterval(this._latencyDetectTimer), this._latencyDetectTimer = null, this._latencyAdjustCount = 0, d.default.i(this.TAG, "--== Total latency adjust count : " + this._latencyAdjustCountTotal), this._latencyAdjustCountTotal = 0), this._forzenTimes = 0, this._lastDecodedFrames = 0
|
||
}
|
||
}, {
|
||
key: "play", value: function () {
|
||
return this._mediaElement.play()
|
||
}
|
||
}, {
|
||
key: "pause", value: function () {
|
||
this._mediaElement.pause()
|
||
}
|
||
}, {
|
||
key: "openFileSystem", value: function (e) {
|
||
this._isRecord = !0, this._fs = new g.default(e, this._initSegment.data)
|
||
}
|
||
}, {
|
||
key: "downloadFile", value: function () {
|
||
if (!this._isRecord || !this._fs) throw new Error("FileSystem is not ready");
|
||
this._fs.download(), this._isRecord = !1, this._fs = null
|
||
}
|
||
}, {
|
||
key: "setRecordFlag", value: function (e) {
|
||
this._transmuxer.setRecordFlag(e)
|
||
}
|
||
}, {
|
||
key: "_onLoaderChunkArrival", value: function (e, t, n) {
|
||
this._transmuxer.feed(e, t, n)
|
||
}
|
||
}, {
|
||
key: "onLoaderChunkArrival", value: function (e, t, n) {
|
||
this._mseSourceOpened ? (0 < this._stashArray.length && this._stashArray.push({
|
||
data: e,
|
||
byteStart: t
|
||
}), this._onLoaderChunkArrival(e, t, n)) : this._stashArray.push({data: e, byteStart: t})
|
||
}
|
||
}, {
|
||
key: "_fillStatisticsInfo", value: function (e) {
|
||
var t, n, i, r;
|
||
return e.playerType = this._type, this._mediaElement instanceof HTMLVideoElement && (t = !0, r = i = 0, this._mediaElement.getVideoPlaybackQuality ? (i = (n = this._mediaElement.getVideoPlaybackQuality()).totalVideoFrames, r = n.droppedVideoFrames) : null != this._mediaElement.webkitDecodedFrameCount ? (i = this._mediaElement.webkitDecodedFrameCount, r = this._mediaElement.webkitDroppedFrameCount) : t = !1, t && (e.decodedFrames = i, e.droppedFrames = r)), e
|
||
}
|
||
}, {
|
||
key: "enableVideoStateMonitor", value: function (e) {
|
||
this._enableDurationMonitor = e, this._enableVideoFrozenMonitor = e
|
||
}
|
||
}, {
|
||
key: "_increaseLatency", value: function (e) {
|
||
this._curLatencyThreshold += e, this._curLatencyThreshold > this._config.highLatencyThreshold && (this._curLatencyThreshold = this._config.highLatencyThreshold), d.default.i(this.TAG, "latency +" + this._curLatencyThreshold)
|
||
}
|
||
}, {
|
||
key: "_decreaseLatency", value: function (e) {
|
||
this._curLatencyThreshold -= e, this._curLatencyThreshold < this._config.lowLatencyThreshold && (this._curLatencyThreshold = this._config.lowLatencyThreshold), d.default.i(this.TAG, "latency -" + this._curLatencyThreshold)
|
||
}
|
||
}, {
|
||
key: "_updateCurrentLatencyThreshold", value: function (e) {
|
||
this._curLatencyThreshold = e, this._curLatencyThreshold < this._config.lowLatencyThreshold && (this._curLatencyThreshold = this._config.lowLatencyThreshold), this._curLatencyThreshold > this._config.highLatencyThreshold && (this._curLatencyThreshold = this._config.highLatencyThreshold), d.default.i(this.TAG, "update current latency threshold : " + this._curLatencyThreshold)
|
||
}
|
||
}, {
|
||
key: "_adjustDurationGap", value: function () {
|
||
this._latencyAdjustCount < this._latencyDetectThreshold ? this._decreaseLatency(this._latencyDetectAdjustStep) : this._latencyAdjustCount > this._latencyDetectThreshold && this._increaseLatency(5 * this._latencyDetectAdjustStep), this._latencyAdjustCount = 0
|
||
}
|
||
}, {
|
||
key: "_doDurationMonitor", value: function () {
|
||
if (this._enableDurationMonitor && this._mseSourceOpened && (!this._msectl || !this._msectl.checkSourceBufferNull())) {
|
||
var e = this._mediaElement.buffered, t = this._mediaElement.currentTime,
|
||
n = this._mediaElement.paused;
|
||
if (null != e && 0 != e.length) {
|
||
var e = e.end(0), t = e - t;
|
||
if (!n && t > this._curLatencyThreshold && (n = e - this._decreaseDurationStep, d.default.w(this.TAG, "high latency gap {" + t + "}, decrease " + this._decreaseDurationStep + " and set to " + n), this._mediaElement.currentTime = n, this._requestSetTime = !0, this._latencyAdjustCountTotal++, 2 < this._latencyAdjustCountTotal && (++this._latencyAdjustCount, e = t + this._latencyDetectAdjustStep, this._updateCurrentLatencyThreshold(e))), this._enableVideoFrozenMonitor) {
|
||
n = 0;
|
||
if (this._mediaElement.getVideoPlaybackQuality) n = this._mediaElement.getVideoPlaybackQuality().totalVideoFrames; else {
|
||
if (null == this._mediaElement.webkitDecodedFrameCount) return;
|
||
n = this._mediaElement.webkitDecodedFrameCount
|
||
}
|
||
0 != this._lastDecodedFrames && (this._lastDecodedFrames == n ? this._forzenTimes++ : this._forzenTimes = 0), this._lastDecodedFrames = n, this._forzenTimes >= this._frozenTimesThreshold && (d.default.w(this.TAG, "Report video frozen event"), this._emitter.emit(h.default.VIDEO_FROZEN), this._forzenTimes = 0)
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "openLatencyMonitor", value: function () {
|
||
this._enableDurationMonitor && null == this._durationMonitor && (this._durationMonitor = self.setInterval(this._doDurationMonitor.bind(this), this._videoStateMonitorInterval), this._forzenTimes = 0, this._lastDecodedFrames = 0, this._latencyDetectTimer = self.setInterval(this._adjustDurationGap.bind(this), this._latencyDetectInterval))
|
||
}
|
||
}, {
|
||
key: "closeLatencyMonitor", value: function () {
|
||
this._durationMonitor && (clearInterval(this._durationMonitor), this._durationMonitor = null), this._latencyDetectTimer && (clearInterval(this._latencyDetectTimer), this._latencyDetectTimer = null), this._emitter.listeners("timeupdate") && this._mediaElement.removeEventListener("timeupdate", this.e.onvTimeUpdate)
|
||
}
|
||
}, {
|
||
key: "_onmseUpdateEnd", value: function () {
|
||
if (this._config.lazyLoad && !this._config.isLive) {
|
||
for (var e = this._mediaElement.buffered, t = this._mediaElement.currentTime, n = 0, i = 0; i < e.length; i++) {
|
||
var r = e.start(i), a = e.end(i);
|
||
if (r <= t && t < a) {
|
||
n = a;
|
||
break
|
||
}
|
||
}
|
||
n >= t + this._config.lazyLoadMaxDuration && null == this._progressChecker && (d.default.v(this.TAG, "Maximum buffering duration exceeded, suspend transmuxing task"), this._suspendTransmuxer())
|
||
}
|
||
}
|
||
}, {
|
||
key: "_onmseBufferFull", value: function () {
|
||
d.default.v(this.TAG, "MSE SourceBuffer is full, suspend transmuxing task"), null == this._progressChecker && this._suspendTransmuxer(), this._emitter.emit(h.default.MS_BUFFER_FULL)
|
||
}
|
||
}, {
|
||
key: "_suspendTransmuxer", value: function () {
|
||
this._transmuxer && (this._transmuxer.pause(), null == this._progressChecker && (this._progressChecker = window.setInterval(this._checkProgressAndResume.bind(this), 1e3)))
|
||
}
|
||
}, {
|
||
key: "_checkProgressAndResume", value: function () {
|
||
for (var e = this._mediaElement.currentTime, t = this._mediaElement.buffered, n = !1, i = 0; i < t.length; i++) {
|
||
var r = t.start(i), a = t.end(i);
|
||
if (r <= e && e < a) {
|
||
e >= a - this._config.lazyLoadRecoverDuration && (n = !0);
|
||
break
|
||
}
|
||
}
|
||
n && (window.clearInterval(this._progressChecker), this._progressChecker = null, n && (d.default.v(this.TAG, "Continue loading from paused position"), this._transmuxer.resume()))
|
||
}
|
||
}, {
|
||
key: "_isTimepointBuffered", value: function (e) {
|
||
for (var t = this._mediaElement.buffered, n = 0; n < t.length; n++) {
|
||
var i = t.start(n), r = t.end(n);
|
||
if (i <= e && e < r) return !0
|
||
}
|
||
return !1
|
||
}
|
||
}, {
|
||
key: "_internalSeek", value: function (e) {
|
||
var t, n = this._isTimepointBuffered(e), i = !1, r = 0;
|
||
e < 1 && 0 < this._mediaElement.buffered.length && (((t = this._mediaElement.buffered.start(0)) < 1 && e < t || l.default.safari) && (i = !0, r = l.default.safari ? .1 : t)), i ? (this._requestSetTime = !0, this._mediaElement.currentTime = r) : n ? (this._alwaysSeekKeyframe ? (t = this._msectl.getNearestKeyframe(Math.floor(1e3 * e)), this._requestSetTime = !0, this._mediaElement.currentTime = null != t ? t.dts / 1e3 : e) : (this._requestSetTime = !0, this._mediaElement.currentTime = e), null != this._progressChecker && this._checkProgressAndResume()) : (null != this._progressChecker && (window.clearInterval(this._progressChecker), this._progressChecker = null), this._msectl.seek(e), this._transmuxer.seek(Math.floor(1e3 * e)), this._config.accurateSeek && (this._requestSetTime = !0, this._mediaElement.currentTime = e))
|
||
}
|
||
}, {
|
||
key: "_checkAndApplyUnbufferedSeekpoint", value: function () {
|
||
var e;
|
||
this._seekpointRecord && (this._seekpointRecord.recordTime <= this._now() - 100 ? (e = this._mediaElement.currentTime, this._seekpointRecord = null, this._isTimepointBuffered(e) || (null != this._progressChecker && (window.clearTimeout(this._progressChecker), this._progressChecker = null), this._msectl.seek(e), this._transmuxer.seek(Math.floor(1e3 * e)), this._config.accurateSeek && (this._requestSetTime = !0, this._mediaElement.currentTime = e))) : window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this), 50))
|
||
}
|
||
}, {
|
||
key: "_checkAndResumeStuckPlayback", value: function (e) {
|
||
var t = this._mediaElement;
|
||
e || !this._receivedCanPlay || t.readyState < 2 ? 0 < (e = t.buffered).length && t.currentTime < e.start(0) && (d.default.w(this.TAG, "Playback seems stuck at " + t.currentTime + ", seek to " + e.start(0)), this._requestSetTime = !0, this._mediaElement.currentTime = e.start(0), this._mediaElement.removeEventListener("progress", this.e.onvProgress)) : this._mediaElement.removeEventListener("progress", this.e.onvProgress)
|
||
}
|
||
}, {
|
||
key: "_onvLoadedMetadata", value: function (e) {
|
||
null != this._pendingSeekTime && (this._mediaElement.currentTime = this._pendingSeekTime, this._pendingSeekTime = null), this._emitter.emit(h.default.LOADED_META_DATA)
|
||
}
|
||
}, {
|
||
key: "_onvSeeking", value: function (e) {
|
||
var t = this._mediaElement.currentTime, n = this._mediaElement.buffered;
|
||
if (this._requestSetTime) this._requestSetTime = !1; else {
|
||
if (t < 1 && 0 < n.length) {
|
||
var n = n.start(0);
|
||
if (n < 1 && t < n || l.default.safari) return this._requestSetTime = !0, void (this._mediaElement.currentTime = l.default.safari ? .1 : n)
|
||
}
|
||
if (this._isTimepointBuffered(t)) return this._alwaysSeekKeyframe && null != (n = this._msectl.getNearestKeyframe(Math.floor(1e3 * t))) && (this._requestSetTime = !0, this._mediaElement.currentTime = n.dts / 1e3), void (null != this._progressChecker && this._checkProgressAndResume());
|
||
this._seekpointRecord = {
|
||
seekPoint: t,
|
||
recordTime: this._now()
|
||
}, window.setTimeout(this._checkAndApplyUnbufferedSeekpoint.bind(this), 50)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_onvCanPlay", value: function (e) {
|
||
var t;
|
||
this._receivedCanPlay = !0, this._mediaElement.removeEventListener("canplay", this.e.onvCanPlay), this._mediaElement.play(), this._enableAudioGain && (g_audioSource || (t = this._mediaElement, g_audioSource = g_audioCtx.createMediaElementSource(t)), g_audioSource.connect(g_audioGain), d.default.d(this.TAG, "Enable audio gain, level = " + this._audioGainLevel))
|
||
}
|
||
}, {
|
||
key: "_onvStalled", value: function (e) {
|
||
this._checkAndResumeStuckPlayback(!0)
|
||
}
|
||
}, {
|
||
key: "_onvProgress", value: function (e) {
|
||
this._checkAndResumeStuckPlayback()
|
||
}
|
||
}, {
|
||
key: "_onvTimeUpdate", value: function (e) {
|
||
var t, n, i, e = e.target;
|
||
e.currentTime && e.seekable && e.playbackRate && 0 != e.seekable.length && (t = e.currentTime, i = e.seekable.end(0), n = e.playbackRate, (i = i - t) > this._fastvalue && 1 === n && (e.playbackRate = 1.2), i < this._slowvalue && 1 < n && (e.playbackRate = 1))
|
||
}
|
||
}, {
|
||
key: "type", get: function () {
|
||
return this._type
|
||
}
|
||
}, {
|
||
key: "buffered", get: function () {
|
||
return this._mediaElement.buffered
|
||
}
|
||
}, {
|
||
key: "duration", get: function () {
|
||
return this._mediaElement.duration
|
||
}
|
||
}, {
|
||
key: "volume", get: function () {
|
||
return this._mediaElement.volume
|
||
}, set: function (e) {
|
||
this._mediaElement.volume = e
|
||
}
|
||
}, {
|
||
key: "muted", get: function () {
|
||
return this._mediaElement.muted
|
||
}, set: function (e) {
|
||
this._mediaElement.muted = e
|
||
}
|
||
}, {
|
||
key: "currentTime", get: function () {
|
||
return this._mediaElement ? this._mediaElement.currentTime : 0
|
||
}, set: function (e) {
|
||
this._mediaElement ? this._internalSeek(e) : this._pendingSeekTime = e
|
||
}
|
||
}, {
|
||
key: "mediaInfo", get: function () {
|
||
return (0, r.default)({}, this._mediaInfo)
|
||
}
|
||
}, {
|
||
key: "statisticsInfo", get: function () {
|
||
return null == this._statisticsInfo && (this._statisticsInfo = {}), this._statisticsInfo = this._fillStatisticsInfo(this._statisticsInfo), (0, r.default)({}, this._statisticsInfo)
|
||
}
|
||
}, {
|
||
key: "onParsedData", set: function (e) {
|
||
this._onParsedData = e
|
||
}
|
||
}]);
|
||
n = L;
|
||
|
||
function L(e, t) {
|
||
if ((0, s.default)(this, L), this.TAG = "FlvPlayer", this._type = "FlvPlayer", this._emitter = new u.default, this._config = (0, y.createDefaultConfig)(), "object" === (void 0 === t ? "undefined" : (0, a.default)(t)) && (0, r.default)(this._config, t), "flv" !== e.type.toLowerCase()) throw new v.InvalidArgumentException("FlvPlayer requires an flv MediaDataSource input!");
|
||
!0 === e.isLive && (this._config.isLive = !0), this.e = {
|
||
onvLoadedMetadata: this._onvLoadedMetadata.bind(this),
|
||
onvSeeking: this._onvSeeking.bind(this),
|
||
onvCanPlay: this._onvCanPlay.bind(this),
|
||
onvStalled: this._onvStalled.bind(this),
|
||
onvProgress: this._onvProgress.bind(this),
|
||
onvTimeUpdate: this._onvTimeUpdate.bind(this)
|
||
}, self.performance && self.performance.now ? this._now = self.performance.now.bind(self.performance) : this._now = Date.now, this._pendingSeekTime = null, this._requestSetTime = !1, this._seekpointRecord = null, this._progressChecker = null, this._mediaDataSource = e, this._mediaElement = null, this._msectl = null, this._transmuxer = null, this._fastvalue = 1.5, this._slowvalue = .5, 0 < e.stashInitialSize && (this._fastvalue = 4, this._slowvalue = 2.5), this._stashArray = [], this._mseSourceOpened = !1, this._hasPendingLoad = !1, this._receivedCanPlay = !1, this._mediaInfo = null, this._statisticsInfo = null;
|
||
t = l.default.chrome && (l.default.version.major < 50 || 50 === l.default.version.major && l.default.version.build < 2661);
|
||
this._alwaysSeekKeyframe = !!(t || l.default.msedge || l.default.msie), this._alwaysSeekKeyframe && (this._config.accurateSeek = !1), this._videoStateMonitorInterval = this._config.videoStateMonitorInterval, this._enableDurationMonitor = this._config.enableDurationMonitor, this._curLatencyThreshold = this._config.lowLatencyThreshold, this._decreaseDurationStep = this._config.decreaseDurationStep, this._durationMonitor = null, this._enableVideoFrozenMonitor = this._config.enableVideoFrozenMonitor, this._frozenTimesThreshold = this._config.frozenTimesThreshold, this._forzenTimes = 0, this._lastDecodedFrames = 0, this._latencyDetectInterval = this._config.latencyDetectInterval, this._latencyDetectThreshold = this._config.latencyDetectThreshold, this._latencyDetectAdjustStep = this._config.latencyDetectAdjustStep, this._latencyDetectTimer = null, this._latencyAdjustCount = 0, this._latencyAdjustCountTotal = 0, this._enableAudioGain = this._config.enableAudioGain, this._audioGainLevel = 0 < this._config.audioGainLevel ? this._config.audioGainLevel : 1, this.iWndNum = this._config.WDInfo.index
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = f(n(38)), a = f(n(11)), r = f(n(1)), s = f(n(2)), o = f(n(10)), u = f(n(4)), d = f(n(64)),
|
||
l = f(n(229)), h = f(n(40)), c = (f(n(231)), f(n(65))), _ = f(n(331));
|
||
|
||
function f(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function m(t, n) {
|
||
if ((0, r.default)(this, m), this.TAG = "Transmuxer", this._emitter = new o.default, n.enableWorker && "undefined" != typeof Worker) try {
|
||
this._worker = (0, _.default)(231), this._workerDestroying = !1, this._worker.addEventListener("message", this._onWorkerMessage.bind(this)), this._worker.postMessage({
|
||
cmd: "init",
|
||
param: [t, n]
|
||
}), this.e = {onLoggingConfigChanged: this._onLoggingConfigChanged.bind(this)}, d.default.registerListener(this.e.onLoggingConfigChanged), this._worker.postMessage({
|
||
cmd: "logging_config",
|
||
param: d.default.getConfig()
|
||
})
|
||
} catch (e) {
|
||
u.default.e(this.TAG, "Error while initialize transmuxing worker, fallback to inline transmuxing"), this._worker = null, this._controller = new l.default(t, n)
|
||
} else this._controller = new l.default(t, n);
|
||
this._controller && ((t = this._controller).on(h.default.IO_ERROR, this._onIOError.bind(this)), t.on(h.default.DEMUX_ERROR, this._onDemuxError.bind(this)), t.on(h.default.INIT_SEGMENT, this._onInitSegment.bind(this)), t.on(h.default.MEDIA_SEGMENT, this._onMediaSegment.bind(this)), t.on(h.default.LOADING_COMPLETE, this._onLoadingComplete.bind(this)), t.on(h.default.RECOVERED_EARLY_EOF, this._onRecoveredEarlyEof.bind(this)), t.on(h.default.MEDIA_INFO, this._onMediaInfo.bind(this)), t.on(h.default.METADATA_ARRIVED, this._onMetaDataArrived.bind(this)), t.on(h.default.SCRIPTDATA_ARRIVED, this._onScriptDataArrived.bind(this)), t.on(h.default.STATISTICS_INFO, this._onStatisticsInfo.bind(this)), t.on(h.default.RECOMMEND_SEEKPOINT, this._onRecommendSeekpoint.bind(this)), t.on(h.default.VIDEO_RESOLUTION_CHANGED, this._onVideoResolutionChanged.bind(this)), t.on(h.default.PARSEDDATA_ARRIVED, this._parsedDataArrived.bind(this)))
|
||
}
|
||
|
||
(0, s.default)(m, [{
|
||
key: "destroy", value: function () {
|
||
this._worker ? this._workerDestroying || (this._workerDestroying = !0, this._worker.postMessage({cmd: "destroy"}), d.default.removeListener(this.e.onLoggingConfigChanged), this.e = null) : (this._controller.destroy(), this._controller = null), this._emitter.removeAllListeners(), this._emitter = null
|
||
}
|
||
}, {
|
||
key: "on", value: function (e, t) {
|
||
this._emitter.addListener(e, t)
|
||
}
|
||
}, {
|
||
key: "off", value: function (e, t) {
|
||
this._emitter.removeListener(e, t)
|
||
}
|
||
}, {
|
||
key: "hasWorker", value: function () {
|
||
return null != this._worker
|
||
}
|
||
}, {
|
||
key: "open", value: function () {
|
||
this._worker ? this._worker.postMessage({cmd: "start"}) : this._controller.start()
|
||
}
|
||
}, {
|
||
key: "close", value: function () {
|
||
this._worker ? this._worker.postMessage({cmd: "stop"}) : this._controller.stop()
|
||
}
|
||
}, {
|
||
key: "seek", value: function (e) {
|
||
this._worker ? this._worker.postMessage({cmd: "seek", param: e}) : this._controller.seek(e)
|
||
}
|
||
}, {
|
||
key: "pause", value: function () {
|
||
this._worker ? this._worker.postMessage({cmd: "pause"}) : this._controller.pause()
|
||
}
|
||
}, {
|
||
key: "resume", value: function () {
|
||
this._worker ? this._worker.postMessage({cmd: "resume"}) : this._controller.resume()
|
||
}
|
||
}, {
|
||
key: "feed", value: function (e, t, n) {
|
||
this.hasWorker() ? this._worker.postMessage({
|
||
cmd: "feed",
|
||
feedData: {data: e, byteStart: t, receivedLength: n}
|
||
}) : this._controller._ioctl._onLoaderChunkArrival(e, t, n)
|
||
}
|
||
}, {
|
||
key: "setRecordFlag", value: function (e) {
|
||
this.hasWorker() ? this._worker.postMessage({
|
||
cmd: "set_record_flag",
|
||
value: e
|
||
}) : this._controller._demuxer.recordFlag = e
|
||
}
|
||
}, {
|
||
key: "_onInitSegment", value: function (e, t) {
|
||
var n = this;
|
||
a.default.resolve().then(function () {
|
||
null != n._emitter && n._emitter.emit(h.default.INIT_SEGMENT, e, t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onMediaSegment", value: function (e, t) {
|
||
var n = this;
|
||
a.default.resolve().then(function () {
|
||
null != n._emitter && n._emitter.emit(h.default.MEDIA_SEGMENT, e, t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onLoadingComplete", value: function () {
|
||
var e = this;
|
||
a.default.resolve().then(function () {
|
||
e._emitter.emit(h.default.LOADING_COMPLETE)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onRecoveredEarlyEof", value: function () {
|
||
var e = this;
|
||
a.default.resolve().then(function () {
|
||
e._emitter.emit(h.default.RECOVERED_EARLY_EOF)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onMediaInfo", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
null != t._emitter && t._emitter.emit(h.default.MEDIA_INFO, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onMetaDataArrived", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
null != t._emitter && t._emitter.emit(h.default.METADATA_ARRIVED, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onScriptDataArrived", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
null != t._emitter && t._emitter.emit(h.default.SCRIPTDATA_ARRIVED, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onStatisticsInfo", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
t._emitter.emit(h.default.STATISTICS_INFO, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onIOError", value: function (e, t) {
|
||
var n = this;
|
||
a.default.resolve().then(function () {
|
||
null != n._emitter && n._emitter.emit(h.default.IO_ERROR, e, t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onDemuxError", value: function (e, t) {
|
||
var n = this;
|
||
a.default.resolve().then(function () {
|
||
null != n._emitter && n._emitter.emit(h.default.DEMUX_ERROR, e, t)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onRecommendSeekpoint", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
t._emitter.emit(h.default.RECOMMEND_SEEKPOINT, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onLoggingConfigChanged", value: function (e) {
|
||
this._worker && this._worker.postMessage({cmd: "logging_config", param: e})
|
||
}
|
||
}, {
|
||
key: "_onVideoResolutionChanged", value: function (e) {
|
||
var t = this;
|
||
a.default.resolve().then(function () {
|
||
null != t._emitter && t._emitter.emit(h.default.VIDEO_RESOLUTION_CHANGED, e)
|
||
})
|
||
}
|
||
}, {
|
||
key: "_onWorkerMessage", value: function (e) {
|
||
var t = e.data, n = t.data;
|
||
if ("destroyed" === t.msg || this._workerDestroying) return this._workerDestroying = !1, this._worker.terminate(), void (this._worker = null);
|
||
switch (t.msg) {
|
||
case h.default.INIT_SEGMENT:
|
||
case h.default.MEDIA_SEGMENT:
|
||
this._emitter.emit(t.msg, n.type, n.data);
|
||
break;
|
||
case h.default.LOADING_COMPLETE:
|
||
case h.default.RECOVERED_EARLY_EOF:
|
||
this._emitter.emit(t.msg);
|
||
break;
|
||
case h.default.MEDIA_INFO:
|
||
(0, i.default)(n, c.default.prototype), this._emitter.emit(t.msg, n);
|
||
break;
|
||
case h.default.METADATA_ARRIVED:
|
||
case h.default.SCRIPTDATA_ARRIVED:
|
||
case h.default.STATISTICS_INFO:
|
||
this._emitter.emit(t.msg, n);
|
||
break;
|
||
case h.default.IO_ERROR:
|
||
case h.default.DEMUX_ERROR:
|
||
this._emitter.emit(t.msg, n.type, n.info);
|
||
break;
|
||
case h.default.RECOMMEND_SEEKPOINT:
|
||
this._emitter.emit(t.msg, n);
|
||
break;
|
||
case"logcat_callback":
|
||
u.default.emitter.emit("log", n.type, n.logcat);
|
||
break;
|
||
case h.default.PARSEDDATA_ARRIVED:
|
||
this._emitter.emit(t.msg, n.databuf, n.dataType)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_parsedDataArrived", value: function (e, t, n, i) {
|
||
var r = this;
|
||
a.default.resolve().then(function () {
|
||
r._emitter && r._emitter.emit(h.default.PARSEDDATA_ARRIVED, e, t, n, i)
|
||
})
|
||
}
|
||
}]), t.default = m
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var r = l(n(85)), a = l(n(20)), s = l(n(9)), p = l(n(320)), i = l(n(1)), o = l(n(2)), b = l(n(4)),
|
||
u = l(n(324)), w = l(n(326)), D = l(n(66)), d = l(n(65)), y = n(5);
|
||
|
||
function l(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, o.default)(v, [{
|
||
key: "destroy", value: function () {
|
||
this._mediaInfo = null, this._metadata = null, this._audioMetadata = null, this._videoMetadata = null, this._videoTrack = null, this._audioTrack = null, this._onError = null, this._onMediaInfo = null, this._onMetaDataArrived = null, this._onScriptDataArrived = null, this._onTrackMetadata = null, this._onDataAvailable = null, this._lastVideoDimension = null, this._recordFlag = !1, this._firstrVideo = !0, this._firstAudio = !0, this._flvHead = "", this._firstParseAudio = !0, this._bpsCalculator && (self.clearInterval(this._bpsCalculator), this._bpsCalculator = null, this._bpsInfo = null)
|
||
}
|
||
}, {
|
||
key: "bindDataSource", value: function (e) {
|
||
return e.onDataArrival = this.parseChunks.bind(this), this
|
||
}
|
||
}, {
|
||
key: "resetMediaInfo", value: function () {
|
||
this._mediaInfo = new d.default
|
||
}
|
||
}, {
|
||
key: "_isInitialMetadataDispatched", value: function () {
|
||
return this._hasAudio && this._hasVideo ? this._audioInitialMetadataDispatched && this._videoInitialMetadataDispatched : this._hasAudio && !this._hasVideo ? this._audioInitialMetadataDispatched : !(this._hasAudio || !this._hasVideo) && this._videoInitialMetadataDispatched
|
||
}
|
||
}, {
|
||
key: "_calculateRealtimeBitrate", value: function () {
|
||
this._bpsInfo && (this._bpsInfo.time_gap_factor < 1 && (this._bpsInfo.time_gap_factor = 1), 0 != this._bpsInfo.lastVideoBytes && (this._bpsInfo.bps_video = 8 * this._bpsInfo.lastVideoBytes / 1024 / this._bpsInfo.time_gap_factor, this._bpsInfo.lastVideoBytes = 0), 0 != this._bpsInfo.lastAudioBytes && (this._bpsInfo.bps_audio = 8 * this._bpsInfo.lastAudioBytes / 1024 / this._bpsInfo.time_gap_factor, this._bpsInfo.lastAudioBytes = 0), this._videoInfo.bitRate = this._bpsInfo.bps_video + this._bpsInfo.bps_audio, this._onParsedData(this._videoInfo, 3))
|
||
}
|
||
}, {
|
||
key: "parseChunks", value: function (e, t) {
|
||
if (!(this._onError && this._onMediaInfo && this._onTrackMetadata && this._onDataAvailable)) throw new y.IllegalStateException("Flv: onError & onMediaInfo & onTrackMetadata & onDataAvailable callback must be specified");
|
||
var n = 0, i = this._littleEndian;
|
||
if (0 === t) {
|
||
if (!(13 < e.byteLength)) return 0;
|
||
n = v.probe(e).dataOffset
|
||
}
|
||
this._bpsCalculator || (this._bpsCalculator = self.setInterval(this._calculateRealtimeBitrate.bind(this), 1e3)), this._firstParse && (this._firstParse = !1, t + n !== this._dataOffset && b.default.w(this.TAG, "First time parsing but chunk byteStart invalid!"), 0 !== new DataView(e, n).getUint32(0, !i) && b.default.w(this.TAG, "PrevTagSize0 !== 0 !!!"), n += 4, this._flvHead = new Uint8Array(e, 0, 13));
|
||
for (var r, a = 0, s = 0; n < e.byteLength;) {
|
||
this._dispatch = !0;
|
||
var o = new DataView(e, n);
|
||
if (n + 11 + 4 > e.byteLength) break;
|
||
var u = o.getUint8(0), d = 16777215 & o.getUint32(0, !i);
|
||
if (n + 11 + d + 4 > e.byteLength) break;
|
||
if (8 !== u && 9 !== u && 18 !== u && 191 !== u) b.default.w(this.TAG, "Unsupported tag type " + u + ", skipped"), n += 11 + d + 4; else {
|
||
var l, h = o.getUint8(4), c = o.getUint8(5),
|
||
_ = o.getUint8(6) | c << 8 | h << 16 | o.getUint8(7) << 24,
|
||
f = (0 != (16777215 & o.getUint32(7, !i)) && b.default.w(this.TAG, "Meet tag which has StreamID != 0!"), n + 11);
|
||
switch (!this._recordFlag || 8 !== u && 9 !== u && 18 !== u || this._onParsedData(new Uint8Array(e, n, 11 + d + 4), 1), u) {
|
||
case 8:
|
||
this._firstAudio && (l = (this._firstAudio = !1, p.default)(this._flvHead).concat((0, p.default)(new Uint8Array(e, n, 11 + d + 4))), this._flvHead = new Uint8Array(l), this._onParsedData(this._flvHead, 5)), this._parseAudioData(e, f, d, _), s += d;
|
||
break;
|
||
case 9:
|
||
this._firstrVideo && (l = (this._firstrVideo = !1, p.default)(this._flvHead).concat((0, p.default)(new Uint8Array(e, n, 11 + d + 4))), this._flvHead = new Uint8Array(l), this._onParsedData(this._flvHead, 5), this._osdtimeInfo.flvstartTime = _), this._osdtimeInfo.flvduration = _ - this._osdtimeInfo.flvstartTime, this._parseVideoData(e, f, d, _, t + n), a += d;
|
||
break;
|
||
case 18:
|
||
var m = (0, p.default)(this._flvHead).concat((0, p.default)(new Uint8Array(e, n, 11 + d + 4)));
|
||
this._flvHead = new Uint8Array(m), this._parseScriptData(e, f, d);
|
||
break;
|
||
case 191:
|
||
this._parsePrivateData(e, f, d)
|
||
}
|
||
c = o.getUint32(11 + d, !i);
|
||
c !== 11 + d && (b.default.w(this.TAG, "Invalid PrevTagSize " + c), (2097152 < c || c < 16) && this._onParsedData("reset decoder", 11)), n += 11 + d + 4
|
||
}
|
||
}
|
||
return this._bpsInfo && (this._bpsInfo.lastAudioBytes += s, this._bpsInfo.lastVideoBytes += a, 0 != this._bpsInfo.data_updated_time && (r = (r = (this._now() - this._bpsInfo.data_updated_time) / 1e3) < 1 ? 1 : Math.round(r), this._bpsInfo.time_gap_factor = r), this._bpsInfo.data_updated_time = this._now()), this._isInitialMetadataDispatched() && this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack), n
|
||
}
|
||
}, {
|
||
key: "_parseScriptData", value: function (e, t, n) {
|
||
e = u.default.parseScriptData(e, t, n);
|
||
if (e.hasOwnProperty("onMetaData")) {
|
||
if (null == e.onMetaData || "object" !== (0, s.default)(e.onMetaData)) return void b.default.w(this.TAG, "Invalid onMetaData structure!");
|
||
this._metadata && b.default.w(this.TAG, "Found another onMetaData tag!"), this._metadata = e;
|
||
var i, t = this._metadata.onMetaData;
|
||
this._onMetaDataArrived && this._onMetaDataArrived((0, a.default)({}, t)), "boolean" == typeof t.hasAudio && !1 === this._hasAudioFlagOverrided && (this._hasAudio = t.hasAudio, this._mediaInfo.hasAudio = this._hasAudio), "boolean" == typeof t.hasVideo && !1 === this._hasVideoFlagOverrided && (this._hasVideo = t.hasVideo, this._mediaInfo.hasVideo = this._hasVideo), "number" == typeof t.audiodatarate && (this._mediaInfo.audioDataRate = t.audiodatarate), "number" == typeof t.videodatarate && (this._mediaInfo.videoDataRate = t.videodatarate), "number" == typeof t.width && (this._mediaInfo.width = t.width), "number" == typeof t.height && (this._mediaInfo.height = t.height), "number" == typeof t.duration ? this._durationOverrided || (n = Math.floor(t.duration * this._timescale), this._duration = n, this._mediaInfo.duration = n) : this._mediaInfo.duration = 0, "number" != typeof t.framerate || 0 < (n = Math.floor(1e3 * t.framerate)) && (i = n / 1e3, this._referenceFrameRate.fixed = !0, this._referenceFrameRate.fps = i, this._referenceFrameRate.fps_num = n, this._referenceFrameRate.fps_den = 1e3, this._mediaInfo.fps = i), "object" === (0, s.default)(t.keyframes) ? (this._mediaInfo.hasKeyframesIndex = !0, n = t.keyframes, this._mediaInfo.keyframesIndex = this._parseKeyframesIndex(n), t.keyframes = null) : this._mediaInfo.hasKeyframesIndex = !1, this._dispatch = !1, this._mediaInfo.metadata = t, b.default.v(this.TAG, "Parsed onMetaData, hasAudio:" + this._mediaInfo.hasAudio + ", hasVideo:" + this._mediaInfo.hasVideo + ", video demension:" + this._mediaInfo.width + "x" + this._mediaInfo.height + "@" + this._mediaInfo.fps + " fps, hasKeyframesIndex=" + this._mediaInfo.hasKeyframesIndex + ", video_bitrate=" + this._mediaInfo.videoDataRate + ", audio_bitrate=" + this._mediaInfo.audioDataRate), this._mediaInfo.isComplete() && this._onMediaInfo(this._mediaInfo)
|
||
}
|
||
0 < (0, r.default)(e).length && this._onScriptDataArrived && this._onScriptDataArrived((0, a.default)({}, e))
|
||
}
|
||
}, {
|
||
key: "_parseKeyframesIndex", value: function (e) {
|
||
for (var t = [], n = [], i = 1; i < e.times.length; i++) {
|
||
var r = this._timestampBase + Math.floor(1e3 * e.times[i]);
|
||
t.push(r), n.push(e.filepositions[i])
|
||
}
|
||
return {times: t, filepositions: n}
|
||
}
|
||
}, {
|
||
key: "_parseAudioData", value: function (e, t, n, i) {
|
||
if (n <= 1) b.default.w(this.TAG, "Flv: Invalid audio packet, missing SoundData payload!"); else if (!0 === this._hasAudioFlagOverrided && !1 === this._hasAudio) {
|
||
if (this._firstParseAudio) {
|
||
this._firstParseAudio = !1;
|
||
var r = this._parseAACAudioData(e, t + 1, n - 1);
|
||
if (null == r) return;
|
||
this._videoInfo.audioType = "AAC", this._videoInfo.audioSampleRate = r.data.samplingRate
|
||
}
|
||
} else {
|
||
this._littleEndian;
|
||
var r = new DataView(e, t, n).getUint8(0), a = r >>> 4;
|
||
if (2 != a && 10 != a) this._onError(D.default.CODEC_UNSUPPORTED, "Flv: Unsupported audio codec idx: " + a); else {
|
||
var s = 0, o = (12 & r) >>> 2;
|
||
if (0 <= o && o <= 4) {
|
||
var s = this._flvSoundRateTable[o], r = 1 & r, u = this._audioMetadata,
|
||
d = this._audioTrack;
|
||
if (u || (!1 === this._hasAudio && !1 === this._hasAudioFlagOverrided && (this._hasAudio = !0, this._mediaInfo.hasAudio = !0), (u = this._audioMetadata = {type: "audio"}).id = d.id, u.timescale = this._timescale, u.duration = this._duration, u.audioSampleRate = s, u.channelCount = 0 == r ? 1 : 2), 10 == a) {
|
||
s = this._parseAACAudioData(e, t + 1, n - 1);
|
||
if (null != s) {
|
||
if (0 === s.packetType) {
|
||
u.config && b.default.w(this.TAG, "Found another AudioSpecificConfig!");
|
||
r = s.data;
|
||
if (b.default.v(this.TAG, "old {channel:" + u.channelCount + ", codec:" + u.codec + ", sample rate:" + u.audioSampleRate + ", orignal codec:" + r.originalCodec + ", config:" + u.config + "}"), b.default.v(this.TAG, "new {channel:" + r.channelCount + ", codec:" + r.codec + ", sample rate:" + r.samplingRate + ", orignal codec:" + r.originalCodec + ", config:" + r.config + "}"), this._videoInfo.audioSampleRate = r.samplingRate, this._onParsedData(this._videoInfo, 3), u.channelCount === r.channelCount && u.audioSampleRate === r.samplingRate && u.codec === r.codec && u.originalCodec === r.originalCodec) return void b.default.w(this.TAG, "audio specific config do not changed, discard it.");
|
||
u.audioSampleRate = r.samplingRate, u.channelCount = r.channelCount, u.codec = r.codec, u.originalCodec = r.originalCodec, u.config = r.config, u.refSampleDuration = 1024 / u.audioSampleRate * u.timescale, this._isInitialMetadataDispatched() ? this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack) : this._audioInitialMetadataDispatched = !0, this._dispatch = !1, this._onTrackMetadata("audio", u);
|
||
r = this._mediaInfo;
|
||
r.audioCodec = u.originalCodec, r.audioSampleRate = u.audioSampleRate, r.audioChannelCount = u.channelCount, r.hasVideo ? null != r.videoCodec && (r.mimeType = 'video/x-flv; codecs="' + r.videoCodec + "," + r.audioCodec + '"') : r.mimeType = 'video/x-flv; codecs="' + r.audioCodec + '"', r.isComplete() && this._onMediaInfo(r)
|
||
} else 1 === s.packetType ? (r = this._timestampBase + i, r = {
|
||
unit: s.data,
|
||
length: s.data.byteLength,
|
||
dts: r,
|
||
pts: r
|
||
}, d.samples.push(r), d.length += s.data.length) : b.default.e(this.TAG, "Flv: Unsupported AAC data type " + s.packetType);
|
||
this._videoInfo.audioType = "AAC"
|
||
}
|
||
} else if (2 == a) {
|
||
if (!u.codec) {
|
||
r = this._parseMP3AudioData(e, t + 1, n - 1, !0);
|
||
if (null == r) return;
|
||
u.audioSampleRate = r.samplingRate, u.channelCount = r.channelCount, u.codec = r.codec, u.originalCodec = r.originalCodec, u.refSampleDuration = 1152 / u.audioSampleRate * u.timescale, b.default.v(this.TAG, "Parsed MPEG Audio Frame Header"), this._audioInitialMetadataDispatched = !0, this._onTrackMetadata("audio", u);
|
||
s = this._mediaInfo;
|
||
s.audioCodec = u.codec, s.audioSampleRate = u.audioSampleRate, s.audioChannelCount = u.channelCount, s.audioDataRate = r.bitRate, s.hasVideo ? null != s.videoCodec && (s.mimeType = 'video/x-flv; codecs="' + s.videoCodec + "," + s.audioCodec + '"') : s.mimeType = 'video/x-flv; codecs="' + s.audioCodec + '"', s.isComplete() && this._onMediaInfo(s), this._videoInfo.audioType = "MP3"
|
||
}
|
||
a = this._parseMP3AudioData(e, t + 1, n - 1, !1);
|
||
null != a && (u = this._timestampBase + i, r = {
|
||
unit: a,
|
||
length: a.byteLength,
|
||
dts: u,
|
||
pts: u
|
||
}, d.samples.push(r), d.length += a.length)
|
||
}
|
||
} else this._onError(D.default.FORMAT_ERROR, "Flv: Invalid audio sample rate idx: " + o)
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_parseAACAudioData", value: function (e, t, n) {
|
||
var i, r;
|
||
{
|
||
if (!(n <= 1)) return i = {}, r = new Uint8Array(e, t, n), i.packetType = r[0], 0 === r[0] ? i.data = this._parseAACAudioSpecificConfig(e, t + 1, n - 1) : i.data = r.subarray(1), i;
|
||
b.default.w(this.TAG, "Flv: Invalid AAC packet, missing AACPacketType or/and Data!")
|
||
}
|
||
}
|
||
}, {
|
||
key: "_parseAACAudioSpecificConfig", value: function (e, t, n) {
|
||
var i, r, e = new Uint8Array(e, t, n), t = null, n = 0, a = null, n = i = e[0] >>> 3;
|
||
if ((r = (7 & e[0]) << 1 | e[1] >>> 7) < 0 || r >= this._mpegSamplingRates.length) this._onError(D.default.FORMAT_ERROR, "Flv: AAC invalid sampling frequency index!"); else {
|
||
var s = this._mpegSamplingRates[r], o = (120 & e[1]) >>> 3;
|
||
if (!(o < 0 || 8 <= o)) return 5 === n && (a = (7 & e[1]) << 1 | e[2] >>> 7, e[2]), -1 !== (e = self.navigator.userAgent.toLowerCase()).indexOf("firefox") ? a = 6 <= r ? (n = 5, t = new Array(4), r - 3) : (n = 2, t = new Array(2), r) : -1 !== e.indexOf("android") ? (n = 2, t = new Array(2), a = r) : (n = 5, a = r, t = new Array(4), 6 <= r ? a = r - 3 : 1 == o && (n = 2, t = new Array(2), a = r)), t[0] = n << 3, t[0] |= (15 & r) >>> 1, t[1] = (15 & r) << 7, t[1] |= (15 & o) << 3, 5 === n && (t[1] |= (15 & a) >>> 1, t[2] = (1 & a) << 7, t[2] |= 8, t[3] = 0), {
|
||
config: t,
|
||
samplingRate: s,
|
||
channelCount: o,
|
||
codec: "mp4a.40." + n,
|
||
originalCodec: "mp4a.40." + i
|
||
};
|
||
this._onError(D.default.FORMAT_ERROR, "Flv: AAC invalid channel configuration")
|
||
}
|
||
}
|
||
}, {
|
||
key: "_parseMP3AudioData", value: function (e, t, n, i) {
|
||
if (!(n < 4)) {
|
||
this._littleEndian;
|
||
e = new Uint8Array(e, t, n), t = null;
|
||
if (i) {
|
||
if (255 !== e[0]) return;
|
||
var n = e[1] >>> 3 & 3, i = (6 & e[1]) >> 1, r = (240 & e[2]) >>> 4, a = (12 & e[2]) >>> 2,
|
||
s = 3 != (e[3] >>> 6 & 3) ? 2 : 1, o = 0, u = 0;
|
||
switch (n) {
|
||
case 0:
|
||
o = this._mpegAudioV25SampleRateTable[a];
|
||
break;
|
||
case 2:
|
||
o = this._mpegAudioV20SampleRateTable[a];
|
||
break;
|
||
case 3:
|
||
o = this._mpegAudioV10SampleRateTable[a]
|
||
}
|
||
switch (i) {
|
||
case 1:
|
||
r < this._mpegAudioL3BitRateTable.length && (u = this._mpegAudioL3BitRateTable[r]);
|
||
break;
|
||
case 2:
|
||
r < this._mpegAudioL2BitRateTable.length && (u = this._mpegAudioL2BitRateTable[r]);
|
||
break;
|
||
case 3:
|
||
r < this._mpegAudioL1BitRateTable.length && (u = this._mpegAudioL1BitRateTable[r])
|
||
}
|
||
t = {bitRate: u, samplingRate: o, channelCount: s, codec: "mp3", originalCodec: "mp3"}
|
||
} else t = e;
|
||
return t
|
||
}
|
||
b.default.w(this.TAG, "Flv: Invalid MP3 packet, header missing!")
|
||
}
|
||
}, {
|
||
key: "_parseVideoData", value: function (e, t, n, i, r) {
|
||
var a, s;
|
||
n <= 1 ? b.default.w(this.TAG, "Flv: Invalid video packet, missing VideoData payload!") : !0 === this._hasVideoFlagOverrided && !1 === this._hasVideo || (a = (240 & (s = new Uint8Array(e, t, n)[0])) >>> 4, 7 != (s = 15 & s) ? this._onError(D.default.CODEC_UNSUPPORTED, "Flv: Unsupported codec in video frame: " + s) : this._parseAVCVideoPacket(e, t + 1, n - 1, i, r, a))
|
||
}
|
||
}, {
|
||
key: "_parseAVCVideoPacket", value: function (e, t, n, i, r, a) {
|
||
var s, o, u;
|
||
n < 4 ? b.default.w(this.TAG, "Flv: Invalid AVC packet, missing AVCPacketType or/and CompositionTime") : (s = this._littleEndian, o = (u = new DataView(e, t, n)).getUint8(0), u = (16777215 & u.getUint32(0, !s)) << 8 >> 8, 0 === o ? this._parseAVCDecoderConfigurationRecord(e, t + 4, n - 4) : 1 === o ? this._parseAVCVideoData(e, t + 4, n - 4, i, r, a, u) : 2 !== o && this._onError(D.default.FORMAT_ERROR, "Flv: Invalid video packet type " + o))
|
||
}
|
||
}, {
|
||
key: "_parseAVCDecoderConfigurationRecord", value: function (e, t, n) {
|
||
if (n < 7) b.default.w(this.TAG, "Flv: Invalid AVCDecoderConfigurationRecord, lack of data!"); else {
|
||
var i = this._videoMetadata, r = this._videoTrack, a = this._littleEndian,
|
||
s = new DataView(e, t, n), o = !1,
|
||
r = (i ? void 0 !== i.avcc && (o = !0) : (!1 === this._hasVideo && !1 === this._hasVideoFlagOverrided && (this._hasVideo = !0, this._mediaInfo.hasVideo = !0), (i = this._videoMetadata = {type: "video"}).id = r.id, i.timescale = this._timescale, i.duration = this._duration), s.getUint8(0)),
|
||
u = s.getUint8(1);
|
||
s.getUint8(2), s.getUint8(3);
|
||
if (1 !== r || 0 === u) this._onError(D.default.FORMAT_ERROR, "Flv: Invalid AVCDecoderConfigurationRecord"); else if (this._naluLengthSize = 1 + (3 & s.getUint8(4)), 3 !== this._naluLengthSize && 4 !== this._naluLengthSize) this._onError(D.default.FORMAT_ERROR, "Flv: Strange NaluLengthSizeMinusOne: " + (this._naluLengthSize - 1)); else {
|
||
var d = 31 & s.getUint8(5);
|
||
if (0 == d) this._onError(D.default.FORMAT_ERROR, "Flv: Invalid AVCDecoderConfigurationRecord: No SPS"); else {
|
||
1 < d && b.default.w(this.TAG, "Flv: Strange AVCDecoderConfigurationRecord: SPS Count = " + d);
|
||
for (var l = !0, h = 6, c = 0; c < d; c++) {
|
||
var _ = s.getUint16(h, !a);
|
||
if (h += 2, 0 !== _) {
|
||
var f = new Uint8Array(e, t + h, _), _ = (h += _, w.default.parseSPS(f));
|
||
if (0 === c) {
|
||
l = _.codec_size.width >= _.codec_size.height;
|
||
if (o && this._lastVideoDimension) {
|
||
if (this._lastVideoDimension.width != _.codec_size.width || this._lastVideoDimension.height != _.codec_size.height) {
|
||
this._resolutionChanged = !0, b.default.d(this.TAG, "video resolution changed from [" + this._lastVideoDimension.width + "x" + this._lastVideoDimension.height + "] to [" + _.codec_size.width + "x" + _.codec_size.height + "]"), this._lastVideoDimension.width = _.codec_size.width, this._lastVideoDimension.height = _.codec_size.height, this._lastVideoDimension.profile = _.profile_string, this._lastVideoDimension.level = _.level_string;
|
||
var m = {};
|
||
m.width = _.codec_size.width, m.height = _.codec_size.height, this._onVideoResolutionChanged(m)
|
||
} else if (this._lastVideoDimension.profile == _.profile_string && this._lastVideoDimension.level == _.level_string) return
|
||
} else this._lastVideoDimension.width = _.codec_size.width, this._lastVideoDimension.height = _.codec_size.height, this._lastVideoDimension.profile = _.profile_string, this._lastVideoDimension.level = _.level_string, b.default.d(this.TAG, "got new video dimension: [" + this._lastVideoDimension.width + "x" + this._lastVideoDimension.height + "]");
|
||
i.codecWidth = _.codec_size.width, i.codecHeight = _.codec_size.height, i.presentWidth = _.present_size.width, i.presentHeight = _.present_size.height, i.profile = _.profile_string, i.level = _.level_string, i.bitDepth = _.bit_depth, i.chromaFormat = _.chroma_format, i.sarRatio = _.sar_ratio, i.frameRate = _.frame_rate, !1 !== _.frame_rate.fixed && 0 !== _.frame_rate.fps_num && 0 !== _.frame_rate.fps_den || (i.frameRate = this._referenceFrameRate);
|
||
for (var m = i.frameRate.fps_den, p = i.frameRate.fps_num, y = (i.refSampleDuration = i.timescale * (m / p), f.subarray(1, 4)), v = "avc1.", g = 0; g < 3; g++) {
|
||
var M = y[g].toString(16);
|
||
v += M = M.length < 2 ? "0" + M : M
|
||
}
|
||
i.codec = v;
|
||
p = this._mediaInfo;
|
||
p.width = i.codecWidth, p.height = i.codecHeight, p.fps = i.frameRate.fps, p.profile = i.profile, p.level = i.level, p.refFrames = _.ref_frames, p.chromaFormat = _.chroma_format_string, p.sarNum = i.sarRatio.width, p.sarDen = i.sarRatio.height, p.videoCodec = v, p.hasAudio ? null != p.audioCodec && (p.mimeType = 'video/x-flv; codecs="' + p.videoCodec + "," + p.audioCodec + '"') : p.mimeType = 'video/x-flv; codecs="' + p.videoCodec + '"', p.isComplete() && this._onMediaInfo(p)
|
||
}
|
||
}
|
||
}
|
||
var L = s.getUint8(h);
|
||
if (0 === L) this._onError(D.default.FORMAT_ERROR, "Flv: Invalid AVCDecoderConfigurationRecord: No PPS"); else {
|
||
1 < L && b.default.w(this.TAG, "Flv: Strange AVCDecoderConfigurationRecord: PPS Count = " + L), h++;
|
||
for (var S = 0; S < L; S++) {
|
||
var k = s.getUint16(h, !a);
|
||
h += 2, 0 !== k && (h += k)
|
||
}
|
||
i.avcc = new Uint8Array(n), i.avcc.set(new Uint8Array(e, t, n), 0), b.default.v(this.TAG, "Parsed AVCDecoderConfigurationRecord done, " + i.codecWidth + "x" + i.codecHeight + "@" + i.frameRate.fps + " fps, profile=" + i.profile + ", level=" + i.level), this._isInitialMetadataDispatched() ? this._dispatch && (this._audioTrack.length || this._videoTrack.length) && this._onDataAvailable(this._audioTrack, this._videoTrack) : this._videoInitialMetadataDispatched = !0, this._dispatch = !1, this._config.enableConstVideoViewSize && (b.default.w(this.TAG, "--== const video view size enabled, use {" + this._config.constVideoViewWidth + "x" + this._config.constVideoViewHeight + "} ==--"), i.codecWidth = l ? this._config.constVideoViewWidth : this._config.constVideoViewHeight, i.codecHeight = l ? this._config.constVideoViewHeight : this._config.constVideoViewWidth), this._onTrackMetadata("video", i), this._videoInfo.bitRate = this._mediaInfo.videoDataRate, this._videoInfo.frameRate = i.frameRate.fps, this._videoInfo.width = i.codecWidth, this._videoInfo.height = i.codecHeight, this._onParsedData(this._videoInfo, 3)
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_parseAVCVideoData", value: function (e, t, n, i, r, a, s) {
|
||
for (var o = this._littleEndian, u = new DataView(e, t, n), d = [], l = 0, h = 0, c = this._naluLengthSize, _ = this._timestampBase + i, f = 1 === a; h < n;) {
|
||
if (n <= h + 4) {
|
||
b.default.w(this.TAG, "Malformed Nalu near timestamp " + _ + ", offset = " + h + ", dataSize = " + n);
|
||
break
|
||
}
|
||
var m = u.getUint32(h, !o);
|
||
if (3 === c && (m >>>= 8), n - c < m) return void b.default.w(this.TAG, "Malformed Nalus near timestamp " + _ + ", NaluSize > DataSize!");
|
||
var p = 31 & u.getUint8(h + c), y = (5 == p && (f = !0), new Uint8Array(e, t + h, c + m));
|
||
d.push({type: p, data: y}), l += y.byteLength, h += c + m
|
||
}
|
||
f && this._onParsedData(this._osdtimeInfo, 2), d.length && (i = this._videoTrack, a = {
|
||
units: d,
|
||
length: l,
|
||
isKeyframe: f,
|
||
dts: _,
|
||
cts: s,
|
||
pts: _ + s
|
||
}, f && (a.fileposition = r), i.samples.push(a), i.length += l)
|
||
}
|
||
}, {
|
||
key: "_parsePrivateData", value: function (e, t, n) {
|
||
var i, r, a, e = new Uint8Array(e, t, n);
|
||
64 === e[0] && 14 === e[1] && (this._firstTimeStamp = !1, t = e[6] + 2e3, n = e[7] >> 4, i = (15 & e[7]) << 1 | e[8] >> 7, r = e[8] >> 2 & 31, a = (3 & e[8]) << 4 | e[9] >> 4, e = (15 & e[9]) << 2 | e[10] >> 6, this._osdtimeInfo.globalTime = t + "-" + n + "-" + i + " " + r + ":" + a + ":" + e)
|
||
}
|
||
}, {
|
||
key: "recordFlag", get: function () {
|
||
return this._recordFlag
|
||
}, set: function (e) {
|
||
e && this._onParsedData(this._flvHead, 1), this._recordFlag = e
|
||
}
|
||
}, {
|
||
key: "onTrackMetadata", get: function () {
|
||
return this._onTrackMetadata
|
||
}, set: function (e) {
|
||
this._onTrackMetadata = e
|
||
}
|
||
}, {
|
||
key: "onMediaInfo", get: function () {
|
||
return this._onMediaInfo
|
||
}, set: function (e) {
|
||
this._onMediaInfo = e
|
||
}
|
||
}, {
|
||
key: "onMetaDataArrived", get: function () {
|
||
return this._onMetaDataArrived
|
||
}, set: function (e) {
|
||
this._onMetaDataArrived = e
|
||
}
|
||
}, {
|
||
key: "onScriptDataArrived", get: function () {
|
||
return this._onScriptDataArrived
|
||
}, set: function (e) {
|
||
this._onScriptDataArrived = e
|
||
}
|
||
}, {
|
||
key: "onError", get: function () {
|
||
return this._onError
|
||
}, set: function (e) {
|
||
this._onError = e
|
||
}
|
||
}, {
|
||
key: "onDataAvailable", get: function () {
|
||
return this._onDataAvailable
|
||
}, set: function (e) {
|
||
this._onDataAvailable = e
|
||
}
|
||
}, {
|
||
key: "timestampBase", get: function () {
|
||
return this._timestampBase
|
||
}, set: function (e) {
|
||
this._timestampBase = e
|
||
}
|
||
}, {
|
||
key: "overridedDuration", get: function () {
|
||
return this._duration
|
||
}, set: function (e) {
|
||
this._durationOverrided = !0, this._duration = e, this._mediaInfo.duration = e
|
||
}
|
||
}, {
|
||
key: "overridedHasAudio", set: function (e) {
|
||
this._hasAudioFlagOverrided = !0, this._hasAudio = e, this._mediaInfo.hasAudio = e
|
||
}
|
||
}, {
|
||
key: "overridedHasVideo", set: function (e) {
|
||
this._hasVideoFlagOverrided = !0, this._hasVideo = e, this._mediaInfo.hasVideo = e
|
||
}
|
||
}, {
|
||
key: "onVideoResolutionChanged", get: function () {
|
||
return this._onVideoResolutionChanged
|
||
}, set: function (e) {
|
||
this._onVideoResolutionChanged = e
|
||
}
|
||
}, {
|
||
key: "onParsedData", set: function (e) {
|
||
this._onParsedData = e
|
||
}
|
||
}], [{
|
||
key: "probe", value: function (e) {
|
||
var e = new Uint8Array(e), t = {match: !1};
|
||
if (70 !== e[0] || 76 !== e[1] || 86 !== e[2] || 1 !== e[3]) return t;
|
||
var n, i = (4 & e[4]) >>> 2 != 0, r = 0 != (1 & e[4]),
|
||
e = e[n = 5] << 24 | e[n + 1] << 16 | e[n + 2] << 8 | e[n + 3];
|
||
return e < 9 ? t : {match: !0, consumed: e, dataOffset: e, hasAudioTrack: i, hasVideoTrack: r}
|
||
}
|
||
}]);
|
||
n = v;
|
||
|
||
function v(e, t) {
|
||
(0, i.default)(this, v), this.TAG = "FLVDemuxer", this._config = t, this._onError = null, this._onMediaInfo = null, this._onMetaDataArrived = null, this._onScriptDataArrived = null, this._onTrackMetadata = null, this._onDataAvailable = null, this._onVideoResolutionChanged = null, this._onParsedData = null, this._dataOffset = e.dataOffset, this._firstParse = !0, this._dispatch = !1, this._hasAudio = !1, this._hasVideo = e.hasVideoTrack, this._hasAudioFlagOverrided = !1, this._hasVideoFlagOverrided = !1, this._audioInitialMetadataDispatched = !1, this._videoInitialMetadataDispatched = !1, this._mediaInfo = new d.default, this._mediaInfo.hasAudio = this._hasAudio, this._mediaInfo.hasVideo = this._hasVideo, this._metadata = null, this._audioMetadata = null, this._videoMetadata = null, this._naluLengthSize = 4, this._timestampBase = 0, this._timescale = 1e3, this._duration = 0, this._durationOverrided = !1, this._referenceFrameRate = {
|
||
fixed: !0,
|
||
fps: 23.976,
|
||
fps_num: 23976,
|
||
fps_den: 1e3
|
||
}, this._flvSoundRateTable = [5500, 11025, 22050, 44100, 48e3], this._mpegSamplingRates = [96e3, 88200, 64e3, 48e3, 44100, 32e3, 24e3, 22050, 16e3, 12e3, 11025, 8e3, 7350], this._lastVideoDimension = {
|
||
width: -1,
|
||
height: -1,
|
||
profile: "",
|
||
level: ""
|
||
}, this._bpsCalculator = null, this._bpsInfo = {
|
||
lastVideoBytes: 0,
|
||
lastAudioBytes: 0,
|
||
bps_video: 0,
|
||
bps_audio: 0,
|
||
data_updated_time: 0,
|
||
time_gap_factor: 1
|
||
}, this._resolutionChanged = !1, self.performance && self.performance.now ? this._now = self.performance.now.bind(self.performance) : this._now = Date.now, this._mpegAudioV10SampleRateTable = [44100, 48e3, 32e3, 0], this._mpegAudioV20SampleRateTable = [22050, 24e3, 16e3, 0], this._mpegAudioV25SampleRateTable = [11025, 12e3, 8e3, 0], this._mpegAudioL1BitRateTable = [0, 32, 64, 96, 128, 160, 192, 224, 256, 288, 320, 352, 384, 416, 448, -1], this._mpegAudioL2BitRateTable = [0, 32, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, 384, -1], this._mpegAudioL3BitRateTable = [0, 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256, 320, -1], this._videoTrack = {
|
||
type: "video",
|
||
id: 1,
|
||
sequenceNumber: 0,
|
||
samples: [],
|
||
length: 0
|
||
}, this._audioTrack = {
|
||
type: "audio",
|
||
id: 2,
|
||
sequenceNumber: 0,
|
||
samples: [],
|
||
length: 0
|
||
}, this._littleEndian = (t = new ArrayBuffer(2), new DataView(t).setInt16(0, 256, !0), 256 === new Int16Array(t)[0]), this._recordFlag = !1, this._firstrVideo = !0, this._firstAudio = !0, this._firstTimeStamp = !0, this._flvHead = "", this._videoInfo = {
|
||
VideType: "H264",
|
||
audioType: "without",
|
||
width: 0,
|
||
height: 0,
|
||
frameRate: 25,
|
||
bitRate: 0,
|
||
systemFormt: "flv",
|
||
audioSampleRate: 0
|
||
}, this._firstParseAudio = !0, this._osdtimeInfo = {flvstartTime: 0, globalTime: 0, flvduration: 0}
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
e.exports = {default: n(321), __esModule: !0}
|
||
}, function (e, t, n) {
|
||
n(41), n(322), e.exports = n(3).Array.from
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var h = n(22), i = n(8), c = n(24), _ = n(77), f = n(78), m = n(47), p = n(323), y = n(79);
|
||
i(i.S + i.F * !n(84)(function (e) {
|
||
Array.from(e)
|
||
}), "Array", {
|
||
from: function (e) {
|
||
var t, n, i, r, a = c(e), e = "function" == typeof this ? this : Array, s = arguments.length,
|
||
o = 1 < s ? arguments[1] : void 0, u = void 0 !== o, d = 0, l = y(a);
|
||
if (u && (o = h(o, 2 < s ? arguments[2] : void 0, 2)), null == l || e == Array && f(l)) for (n = new e(t = m(a.length)); d < t; d++) p(n, d, u ? o(a[d], d) : a[d]); else for (r = l.call(a), n = new e; !(i = r.next()).done; d++) p(n, d, u ? _(r, o, [i.value, d], !0) : i.value);
|
||
return n.length = d, n
|
||
}
|
||
})
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
var i = n(12), r = n(28);
|
||
e.exports = function (e, t, n) {
|
||
t in e ? i.f(e, t, r(0, n)) : e[t] = n
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = s(n(1)), r = s(n(2)), v = s(n(4)), a = s(n(325)), g = n(5);
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
n = new ArrayBuffer(2), new DataView(n).setInt16(0, 256, !0);
|
||
var M = 256 === new Int16Array(n)[0], n = ((0, r.default)(L, null, [{
|
||
key: "parseScriptData", value: function (e, t, n) {
|
||
var i = {};
|
||
try {
|
||
var r = L.parseValue(e, t, n), a = L.parseValue(e, t + r.size, n - r.size);
|
||
i[r.data] = a.data
|
||
} catch (e) {
|
||
v.default.e("AMF", e.toString())
|
||
}
|
||
return i
|
||
}
|
||
}, {
|
||
key: "parseObject", value: function (e, t, n) {
|
||
if (n < 3) throw new g.IllegalStateException("Data not enough when parse ScriptDataObject");
|
||
var i = L.parseString(e, t, n), e = L.parseValue(e, t + i.size, n - i.size), t = e.objectEnd;
|
||
return {data: {name: i.data, value: e.data}, size: i.size + e.size, objectEnd: t}
|
||
}
|
||
}, {
|
||
key: "parseVariable", value: function (e, t, n) {
|
||
return L.parseObject(e, t, n)
|
||
}
|
||
}, {
|
||
key: "parseString", value: function (e, t, n) {
|
||
if (n < 2) throw new g.IllegalStateException("Data not enough when parse String");
|
||
n = new DataView(e, t, n).getUint16(0, !M);
|
||
return {data: 0 < n ? (0, a.default)(new Uint8Array(e, t + 2, n)) : "", size: 2 + n}
|
||
}
|
||
}, {
|
||
key: "parseLongString", value: function (e, t, n) {
|
||
if (n < 4) throw new g.IllegalStateException("Data not enough when parse LongString");
|
||
n = new DataView(e, t, n).getUint32(0, !M);
|
||
return {data: 0 < n ? (0, a.default)(new Uint8Array(e, t + 4, n)) : "", size: 4 + n}
|
||
}
|
||
}, {
|
||
key: "parseDate", value: function (e, t, n) {
|
||
if (n < 10) throw new g.IllegalStateException("Data size invalid when parse Date");
|
||
e = new DataView(e, t, n), t = e.getFloat64(0, !M);
|
||
return t += 60 * e.getInt16(8, !M) * 1e3, {data: new Date(t), size: 10}
|
||
}
|
||
}, {
|
||
key: "parseValue", value: function (e, t, n) {
|
||
if (n < 1) throw new g.IllegalStateException("Data not enough when parse Value");
|
||
var i = new DataView(e, t, n), r = 1, a = i.getUint8(0), s = void 0, o = !1;
|
||
try {
|
||
switch (a) {
|
||
case 0:
|
||
s = i.getFloat64(1, !M), r += 8;
|
||
break;
|
||
case 1:
|
||
s = !!i.getUint8(1);
|
||
r += 1;
|
||
break;
|
||
case 2:
|
||
var u = L.parseString(e, t + 1, n - 1);
|
||
s = u.data, r += u.size;
|
||
break;
|
||
case 3:
|
||
s = {};
|
||
var d = 0;
|
||
for (9 == (16777215 & i.getUint32(n - 4, !M)) && (d = 3); r < n - 4;) {
|
||
var l = L.parseObject(e, t + r, n - r - d);
|
||
if (l.objectEnd) break;
|
||
s[l.data.name] = l.data.value, r += l.size
|
||
}
|
||
r <= n - 3 && 9 == (16777215 & i.getUint32(r - 1, !M)) && (r += 3);
|
||
break;
|
||
case 8:
|
||
s = {}, r += 4;
|
||
var h = 0;
|
||
for (9 == (16777215 & i.getUint32(n - 4, !M)) && (h = 3); r < n - 8;) {
|
||
var c = L.parseVariable(e, t + r, n - r - h);
|
||
if (c.objectEnd) break;
|
||
s[c.data.name] = c.data.value, r += c.size
|
||
}
|
||
r <= n - 3 && 9 == (16777215 & i.getUint32(r - 1, !M)) && (r += 3);
|
||
break;
|
||
case 9:
|
||
r = 1, o = !(s = void 0);
|
||
break;
|
||
case 10:
|
||
s = [];
|
||
var _ = i.getUint32(1, !M);
|
||
r += 4;
|
||
for (var f = 0; f < _; f++) {
|
||
var m = L.parseValue(e, t + r, n - r);
|
||
s.push(m.data), r += m.size
|
||
}
|
||
break;
|
||
case 11:
|
||
var p = L.parseDate(e, t + 1, n - 1);
|
||
s = p.data, r += p.size;
|
||
break;
|
||
case 12:
|
||
var y = L.parseString(e, t + 1, n - 1);
|
||
s = y.data, r += y.size;
|
||
break;
|
||
default:
|
||
r = n, v.default.w("AMF", "Unsupported AMF value type " + a)
|
||
}
|
||
} catch (e) {
|
||
v.default.e("AMF", e.toString())
|
||
}
|
||
return {data: s, size: r, objectEnd: o}
|
||
}
|
||
}]), L);
|
||
|
||
function L() {
|
||
(0, i.default)(this, L)
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
|
||
function o(e, t, n) {
|
||
var i = e;
|
||
if (t + n < i.length) {
|
||
for (; n--;) if (128 != (192 & i[++t])) return;
|
||
return 1
|
||
}
|
||
}
|
||
|
||
Object.defineProperty(t, "__esModule", {value: !0}), t.default = function (e) {
|
||
for (var t = [], n = e, i = 0, r = e.length; i < r;) if (n[i] < 128) t.push(String.fromCharCode(n[i])), ++i; else {
|
||
if (!(n[i] < 192)) if (n[i] < 224) {
|
||
if (o(n, i, 1)) {
|
||
var a = (31 & n[i]) << 6 | 63 & n[i + 1];
|
||
if (128 <= a) {
|
||
t.push(String.fromCharCode(65535 & a)), i += 2;
|
||
continue
|
||
}
|
||
}
|
||
} else if (n[i] < 240) {
|
||
if (o(n, i, 2)) {
|
||
a = (15 & n[i]) << 12 | (63 & n[i + 1]) << 6 | 63 & n[i + 2];
|
||
if (2048 <= a && 55296 != (63488 & a)) {
|
||
t.push(String.fromCharCode(65535 & a)), i += 3;
|
||
continue
|
||
}
|
||
}
|
||
} else if (n[i] < 248 && o(n, i, 3)) {
|
||
var s = (7 & n[i]) << 18 | (63 & n[i + 1]) << 12 | (63 & n[i + 2]) << 6 | 63 & n[i + 3];
|
||
if (65536 < s && s < 1114112) {
|
||
s -= 65536, t.push(String.fromCharCode(s >>> 10 | 55296)), t.push(String.fromCharCode(1023 & s | 56320)), i += 4;
|
||
continue
|
||
}
|
||
}
|
||
t.push(String.fromCharCode(65533)), ++i
|
||
}
|
||
return t.join("")
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = a(n(1)), r = a(n(2)), T = a(n(327));
|
||
|
||
function a(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(E, null, [{
|
||
key: "_ebsp2rbsp", value: function (e) {
|
||
for (var t = e, n = t.byteLength, i = new Uint8Array(n), r = 0, a = 0; a < n; a++) 2 <= a && 3 === t[a] && 0 === t[a - 1] && 0 === t[a - 2] || (i[r] = t[a], r++);
|
||
return new Uint8Array(i.buffer, 0, r)
|
||
}
|
||
}, {
|
||
key: "parseSPS", value: function (e) {
|
||
var e = E._ebsp2rbsp(e), t = new T.default(e), e = (t.readByte(), t.readByte()),
|
||
n = (t.readByte(), t.readByte()), i = (t.readUEG(), E.getProfileString(e)), n = E.getLevelString(n),
|
||
r = 1, a = 420, s = 8;
|
||
if ((100 === e || 110 === e || 122 === e || 244 === e || 44 === e || 83 === e || 86 === e || 118 === e || 128 === e || 138 === e || 144 === e) && (3 === (r = t.readUEG()) && t.readBits(1), r <= 3 && (a = [0, 420, 422, 444][r]), s = t.readUEG() + 8, t.readUEG(), t.readBits(1), t.readBool())) for (var o = 3 !== r ? 8 : 12, u = 0; u < o; u++) t.readBool() && E._skipScalingList(t, u < 6 ? 16 : 64);
|
||
t.readUEG();
|
||
e = t.readUEG();
|
||
if (0 === e) t.readUEG(); else if (1 === e) {
|
||
t.readBits(1), t.readSEG(), t.readSEG();
|
||
for (var d = t.readUEG(), l = 0; l < d; l++) t.readSEG()
|
||
}
|
||
var e = t.readUEG(), h = (t.readBits(1), t.readUEG()), c = t.readUEG(), _ = t.readBits(1),
|
||
f = (0 === _ && t.readBits(1), t.readBits(1), 0), m = 0, p = 0, y = 0,
|
||
v = (t.readBool() && (f = t.readUEG(), m = t.readUEG(), p = t.readUEG(), y = t.readUEG()), 1),
|
||
g = 1, M = 0, L = !0, S = 0, k = 0,
|
||
b = (t.readBool() && (t.readBool() && (0 < (w = t.readByte()) && w < 16 ? (v = [1, 12, 10, 16, 40, 24, 20, 32, 80, 18, 15, 64, 160, 4, 3, 2][w - 1], g = [1, 11, 11, 11, 33, 11, 11, 11, 33, 11, 11, 33, 99, 3, 2, 1][w - 1]) : 255 === w && (v = t.readByte() << 8 | t.readByte(), g = t.readByte() << 8 | t.readByte())), t.readBool() && t.readBool(), t.readBool() && (t.readBits(4), t.readBool() && t.readBits(24)), t.readBool() && (t.readUEG(), t.readUEG()), t.readBool() && (w = t.readBits(32), b = t.readBits(32), L = t.readBool(), M = (S = b) / (k = 2 * w))), 1),
|
||
w = (1 === v && 1 === g || (b = v / g), 0), D = 0,
|
||
r = (D = 0 === r ? (w = 1, 2 - _) : (w = 3 === r ? 1 : 2, (1 === r ? 2 : 1) * (2 - _)), 16 * (h + 1)),
|
||
h = 16 * (c + 1) * (2 - _), c = (r -= (f + m) * w, h -= (p + y) * D, Math.ceil(r * b));
|
||
return t.destroy(), t = null, {
|
||
profile_string: i,
|
||
level_string: n,
|
||
bit_depth: s,
|
||
ref_frames: e,
|
||
chroma_format: a,
|
||
chroma_format_string: E.getChromaFormatString(a),
|
||
frame_rate: {fixed: L, fps: M, fps_den: k, fps_num: S},
|
||
sar_ratio: {width: v, height: g},
|
||
codec_size: {width: r, height: h},
|
||
present_size: {width: c, height: h}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_skipScalingList", value: function (e, t) {
|
||
for (var n = 8, i = 8, r = 0; r < t; r++) n = 0 === (i = 0 !== i ? (n + e.readSEG() + 256) % 256 : i) ? n : i
|
||
}
|
||
}, {
|
||
key: "getProfileString", value: function (e) {
|
||
switch (e) {
|
||
case 66:
|
||
return "Baseline";
|
||
case 77:
|
||
return "Main";
|
||
case 88:
|
||
return "Extended";
|
||
case 100:
|
||
return "High";
|
||
case 110:
|
||
return "High10";
|
||
case 122:
|
||
return "High422";
|
||
case 244:
|
||
return "High444";
|
||
default:
|
||
return "Unknown"
|
||
}
|
||
}
|
||
}, {
|
||
key: "getLevelString", value: function (e) {
|
||
return (e / 10).toFixed(1)
|
||
}
|
||
}, {
|
||
key: "getChromaFormatString", value: function (e) {
|
||
switch (e) {
|
||
case 420:
|
||
return "4:2:0";
|
||
case 422:
|
||
return "4:2:2";
|
||
case 444:
|
||
return "4:4:4";
|
||
default:
|
||
return "Unknown"
|
||
}
|
||
}
|
||
}]);
|
||
n = E;
|
||
|
||
function E() {
|
||
(0, i.default)(this, E)
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = s(n(1)), r = s(n(2)), a = n(5);
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(o, [{
|
||
key: "destroy", value: function () {
|
||
this._buffer = null
|
||
}
|
||
}, {
|
||
key: "_fillCurrentWord", value: function () {
|
||
var e = this._total_bytes - this._buffer_index;
|
||
if (e <= 0) throw new a.IllegalStateException("ExpGolomb: _fillCurrentWord() but no bytes available");
|
||
var e = Math.min(4, e), t = new Uint8Array(4);
|
||
t.set(this._buffer.subarray(this._buffer_index, this._buffer_index + e)), this._current_word = new DataView(t.buffer).getUint32(0, !1), this._buffer_index += e, this._current_word_bits_left = 8 * e
|
||
}
|
||
}, {
|
||
key: "readBits", value: function (e) {
|
||
if (32 < e) throw new a.InvalidArgumentException("ExpGolomb: readBits() bits exceeded max 32bits!");
|
||
if (e <= this._current_word_bits_left) return t = this._current_word >>> 32 - e, this._current_word <<= e, this._current_word_bits_left -= e, t;
|
||
var t = this._current_word_bits_left ? this._current_word : 0,
|
||
e = (t >>>= 32 - this._current_word_bits_left, e - this._current_word_bits_left),
|
||
e = (this._fillCurrentWord(), Math.min(e, this._current_word_bits_left)),
|
||
n = this._current_word >>> 32 - e;
|
||
return this._current_word <<= e, this._current_word_bits_left -= e, t = t << e | n
|
||
}
|
||
}, {
|
||
key: "readBool", value: function () {
|
||
return 1 === this.readBits(1)
|
||
}
|
||
}, {
|
||
key: "readByte", value: function () {
|
||
return this.readBits(8)
|
||
}
|
||
}, {
|
||
key: "_skipLeadingZero", value: function () {
|
||
for (var e = void 0, e = 0; e < this._current_word_bits_left; e++) if (0 != (this._current_word & 2147483648 >>> e)) return this._current_word <<= e, this._current_word_bits_left -= e, e;
|
||
return this._fillCurrentWord(), e + this._skipLeadingZero()
|
||
}
|
||
}, {
|
||
key: "readUEG", value: function () {
|
||
var e = this._skipLeadingZero();
|
||
return this.readBits(e + 1) - 1
|
||
}
|
||
}, {
|
||
key: "readSEG", value: function () {
|
||
var e = this.readUEG();
|
||
return 1 & e ? e + 1 >>> 1 : -1 * (e >>> 1)
|
||
}
|
||
}]);
|
||
n = o;
|
||
|
||
function o(e) {
|
||
(0, i.default)(this, o), this.TAG = "ExpGolomb", this._buffer = e, this._buffer_index = 0, this._total_bytes = e.byteLength, this._total_bits = 8 * e.byteLength, this._current_word = 0, this._current_word_bits_left = 0
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = s(n(1)), r = s(n(2)), A = s(n(4)), x = s(n(329)), O = s(n(330)), I = s(n(33)), W = n(230), a = n(5);
|
||
|
||
function s(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(o, [{
|
||
key: "destroy", value: function () {
|
||
this._dtsBase = -1, this._dtsBaseInited = !1, this._audioMeta = null, this._videoMeta = null, this._audioSegmentInfoList.clear(), this._audioSegmentInfoList = null, this._videoSegmentInfoList.clear(), this._videoSegmentInfoList = null, this._onInitSegment = null, this._onMediaSegment = null
|
||
}
|
||
}, {
|
||
key: "bindDataSource", value: function (e) {
|
||
return e.onDataAvailable = this.remux.bind(this), e.onTrackMetadata = this._onTrackMetadataReceived.bind(this), this
|
||
}
|
||
}, {
|
||
key: "insertDiscontinuity", value: function () {
|
||
this._audioNextDts = this._videoNextDts = void 0
|
||
}
|
||
}, {
|
||
key: "seek", value: function (e) {
|
||
this._audioStashedLastSample = null, this._videoStashedLastSample = null, this._videoSegmentInfoList.clear(), this._audioSegmentInfoList.clear()
|
||
}
|
||
}, {
|
||
key: "remux", value: function (e, t) {
|
||
if (!this._onMediaSegment) throw new a.IllegalStateException("MP4Remuxer: onMediaSegment callback must be specificed!");
|
||
this._dtsBaseInited || this._calculateDtsBase(e, t), this._remuxVideo(t), this._remuxAudio(e)
|
||
}
|
||
}, {
|
||
key: "_onTrackMetadataReceived", value: function (e, t) {
|
||
var n = null, i = "mp4", r = t.codec;
|
||
if ("audio" === e) n = "mp3" === (this._audioMeta = t).codec && this._mp3UseMpegAudio ? (i = "mpeg", r = "", new Uint8Array) : x.default.generateInitSegment(t); else {
|
||
if ("video" !== e) return;
|
||
this._videoMeta = t, n = x.default.generateInitSegment(t)
|
||
}
|
||
if (!this._onInitSegment) throw new a.IllegalStateException("MP4Remuxer: onInitSegment callback must be specified!");
|
||
this._onInitSegment(e, {
|
||
type: e,
|
||
data: n.buffer,
|
||
codec: r,
|
||
container: e + "/" + i,
|
||
mediaDuration: t.duration
|
||
})
|
||
}
|
||
}, {
|
||
key: "_calculateDtsBase", value: function (e, t) {
|
||
this._dtsBaseInited || (e.samples && e.samples.length && (this._audioDtsBase = e.samples[0].dts), t.samples && t.samples.length && (this._videoDtsBase = t.samples[0].dts), this._dtsBase = Math.min(this._audioDtsBase, this._videoDtsBase), this._dtsBaseInited = !0)
|
||
}
|
||
}, {
|
||
key: "flushStashedSamples", value: function () {
|
||
var e = this._videoStashedLastSample, t = this._audioStashedLastSample,
|
||
n = {type: "video", id: 1, sequenceNumber: 0, samples: [], length: 0},
|
||
e = (null != e && (n.samples.push(e), n.length = e.length), {
|
||
type: "audio",
|
||
id: 2,
|
||
sequenceNumber: 0,
|
||
samples: [],
|
||
length: 0
|
||
});
|
||
null != t && (e.samples.push(t), e.length = t.length), this._videoStashedLastSample = null, this._audioStashedLastSample = null, this._remuxVideo(n, !0), this._remuxAudio(e, !0)
|
||
}
|
||
}, {
|
||
key: "_remuxAudio", value: function (e, t) {
|
||
if (null != this._audioMeta) {
|
||
var n = e.samples, i = void 0, r = -1, a = this._audioMeta.refSampleDuration,
|
||
s = "mp3" === this._audioMeta.codec && this._mp3UseMpegAudio,
|
||
o = this._dtsBaseInited && void 0 === this._audioNextDts, u = !1;
|
||
if (n && 0 !== n.length && (1 !== n.length || t)) {
|
||
for (var d = 0, l = null, h = 0, h = s ? (d = 0, e.length) : (d = 8) + e.length, c = null, t = (1 < n.length && (h -= (c = n.pop()).length), null != this._audioStashedLastSample && (t = this._audioStashedLastSample, this._audioStashedLastSample = null, n.unshift(t), h += t.length), null != c && (this._audioStashedLastSample = c), n[0].dts - this._dtsBase), _ = (this._audioNextDts ? i = t - this._audioNextDts : this._audioSegmentInfoList.isEmpty() ? (i = 0, this._fillSilentAfterSeek && !this._videoSegmentInfoList.isEmpty() && "mp3" !== this._audioMeta.originalCodec && (u = !0)) : i = null != (C = this._audioSegmentInfoList.getLastSampleBefore(t)) ? (P = t - (C.originalDts + C.duration), t - (C.dts + C.duration + (P = P <= 3 ? 0 : P))) : 0, u && (C = t - i, null != (P = this._videoSegmentInfoList.getLastSegmentBefore(t)) && P.beginDts < C ? (t = O.default.getSilentFrame(this._audioMeta.originalCodec, this._audioMeta.channelCount)) && (R = P.beginDts, C = C - P.beginDts, A.default.v(this.TAG, "InsertPrefixSilentAudio: dts: " + R + ", duration: " + C), n.unshift({
|
||
unit: t,
|
||
dts: R,
|
||
pts: R
|
||
}), h += t.byteLength) : u = !1), []), f = 0; f < n.length; f++) {
|
||
var m = n[f], p = m.unit, y = m.dts - this._dtsBase, v = y, g = !1, M = null, L = 0;
|
||
if (!(y < -.001)) {
|
||
if ("mp3" !== this._audioMeta.codec) {
|
||
var S = y;
|
||
if ((i = y - (S = this._audioNextDts ? this._audioNextDts : S)) <= -3 * a) {
|
||
A.default.w(this.TAG, "Dropping 1 audio frame (originalDts: " + y + " ms ,curRefDts: " + S + " ms) due to dtsCorrection: " + i + " ms overlap.");
|
||
continue
|
||
}
|
||
if (3 * a <= i && this._fillAudioTimestampGap && !I.default.safari) {
|
||
var g = !0, k = Math.floor(i / a),
|
||
b = (A.default.w(this.TAG, "Large audio timestamp gap detected, may cause AV sync to drift. Silent frames will be generated to avoid unsync.\noriginalDts: " + y + " ms, curRefDts: " + S + " ms, dtsCorrection: " + Math.round(i) + " ms, generate: " + k + " frames"), v = Math.floor(S), L = Math.floor(S + a) - v, O.default.getSilentFrame(this._audioMeta.originalCodec, this._audioMeta.channelCount));
|
||
null == b && (A.default.w(this.TAG, "Unable to generate silent frame for " + this._audioMeta.originalCodec + " with " + this._audioMeta.channelCount + " channels, repeat last frame"), b = p);
|
||
for (var M = [], w = 0; w < k; w++) {
|
||
S += a;
|
||
var D = Math.floor(S), T = Math.floor(S + a) - D, D = {
|
||
dts: D,
|
||
pts: D,
|
||
cts: 0,
|
||
unit: b,
|
||
size: b.byteLength,
|
||
duration: T,
|
||
originalDts: y,
|
||
flags: {isLeading: 0, dependsOn: 1, isDependedOn: 0, hasRedundancy: 0}
|
||
};
|
||
M.push(D), h += p.byteLength
|
||
}
|
||
this._audioNextDts = S + a
|
||
} else v = Math.floor(S), L = Math.floor(S + a) - v, this._audioNextDts = S + a
|
||
} else {
|
||
v = y - i;
|
||
L = f !== n.length - 1 ? n[f + 1].dts - this._dtsBase - i - v : null != c ? c.dts - this._dtsBase - i - v : 1 <= _.length ? _[_.length - 1].duration : Math.floor(a), this._audioNextDts = v + L
|
||
}
|
||
-1 === r && (r = v), _.push({
|
||
dts: v,
|
||
pts: v,
|
||
cts: 0,
|
||
unit: m.unit,
|
||
size: m.unit.byteLength,
|
||
duration: L,
|
||
originalDts: y,
|
||
flags: {isLeading: 0, dependsOn: 1, isDependedOn: 0, hasRedundancy: 0}
|
||
}), g && _.push.apply(_, M)
|
||
}
|
||
}
|
||
if (0 === _.length) return e.samples = [], void (e.length = 0);
|
||
s ? l = new Uint8Array(h) : ((l = new Uint8Array(h))[0] = h >>> 24 & 255, l[1] = h >>> 16 & 255, l[2] = h >>> 8 & 255, l[3] = 255 & h, l.set(x.default.types.mdat, 4));
|
||
for (var E = 0; E < _.length; E++) {
|
||
var Y = _[E].unit;
|
||
l.set(Y, d), d += Y.byteLength
|
||
}
|
||
var P = _[_.length - 1], C = P.dts + P.duration, R = new W.MediaSegmentInfo,
|
||
t = (R.beginDts = r, R.endDts = C, R.beginPts = r, R.endPts = C, R.originalBeginDts = _[0].originalDts, R.originalEndDts = P.originalDts + P.duration, R.firstSample = new W.SampleInfo(_[0].dts, _[0].pts, _[0].duration, _[0].originalDts, !1), R.lastSample = new W.SampleInfo(P.dts, P.pts, P.duration, P.originalDts, !1), this._isLive || this._audioSegmentInfoList.append(R), e.samples = _, e.sequenceNumber++, null),
|
||
t = s ? new Uint8Array : x.default.moof(e, r), u = (e.samples = [], e.length = 0, {
|
||
type: "audio",
|
||
data: this._mergeBoxes(t, l).buffer,
|
||
sampleCount: _.length,
|
||
info: R
|
||
});
|
||
s && o && (u.timestampOffset = r), this._onMediaSegment("audio", u)
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_remuxVideo", value: function (e, t) {
|
||
if (null != this._videoMeta) {
|
||
var n = e, i = n.samples, r = void 0, a = -1, s = -1;
|
||
if (i && 0 !== i.length && (1 !== i.length || t)) {
|
||
for (var o = 8, u = null, t = 8 + e.length, d = null, e = (1 < i.length && (t -= (d = i.pop()).length), null != this._videoStashedLastSample && (e = this._videoStashedLastSample, this._videoStashedLastSample = null, i.unshift(e), t += e.length), null != d && (this._videoStashedLastSample = d), i[0].dts - this._dtsBase), l = (r = this._videoNextDts ? e - this._videoNextDts : !this._videoSegmentInfoList.isEmpty() && null != (b = this._videoSegmentInfoList.getLastSampleBefore(e)) ? (w = e - (b.originalDts + b.duration), e - (b.dts + b.duration + (w = w <= 3 ? 0 : w))) : 0, new W.MediaSegmentInfo), h = [], c = 0; c < i.length; c++) {
|
||
var _, f = i[c], m = f.dts - this._dtsBase, p = f.isKeyframe, y = m - r, v = f.cts,
|
||
g = y + v, M = (-1 === a && (a = y, s = g), 0);
|
||
M = c !== i.length - 1 ? i[c + 1].dts - this._dtsBase - r - y : null != d ? d.dts - this._dtsBase - r - y : 1 <= h.length ? h[h.length - 1].duration : Math.floor(this._videoMeta.refSampleDuration), p && ((_ = new W.SampleInfo(y, g, M, f.dts, !0)).fileposition = f.fileposition, l.appendSyncPoint(_)), h.push({
|
||
dts: y,
|
||
pts: g,
|
||
cts: v,
|
||
units: f.units,
|
||
size: f.length,
|
||
isKeyframe: p,
|
||
duration: M,
|
||
originalDts: m,
|
||
flags: {
|
||
isLeading: 0,
|
||
dependsOn: p ? 2 : 1,
|
||
isDependedOn: p ? 1 : 0,
|
||
hasRedundancy: 0,
|
||
isNonSync: p ? 0 : 1
|
||
}
|
||
})
|
||
}
|
||
(u = new Uint8Array(t))[0] = t >>> 24 & 255, u[1] = t >>> 16 & 255, u[2] = t >>> 8 & 255, u[3] = 255 & t, u.set(x.default.types.mdat, 4);
|
||
for (var L = 0; L < h.length; L++) for (var S = h[L].units; S.length;) {
|
||
var k = S.shift().data;
|
||
u.set(k, o), o += k.byteLength
|
||
}
|
||
var e = h[h.length - 1], b = e.dts + e.duration, w = e.pts + e.duration,
|
||
b = (this._videoNextDts = b, l.beginDts = a, l.endDts = b, l.beginPts = s, l.endPts = w, l.originalBeginDts = h[0].originalDts, l.originalEndDts = e.originalDts + e.duration, l.firstSample = new W.SampleInfo(h[0].dts, h[0].pts, h[0].duration, h[0].originalDts, h[0].isKeyframe), l.lastSample = new W.SampleInfo(e.dts, e.pts, e.duration, e.originalDts, e.isKeyframe), this._isLive || this._videoSegmentInfoList.append(l), n.samples = h, n.sequenceNumber++, this._forceFirstIDR && ((t = h[0].flags).dependsOn = 2, t.isNonSync = 0), x.default.moof(n, a));
|
||
n.samples = [], n.length = 0, this._onMediaSegment("video", {
|
||
type: "video",
|
||
data: this._mergeBoxes(b, u).buffer,
|
||
sampleCount: h.length,
|
||
info: l
|
||
})
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_mergeBoxes", value: function (e, t) {
|
||
var n = new Uint8Array(e.byteLength + t.byteLength);
|
||
return n.set(e, 0), n.set(t, e.byteLength), n
|
||
}
|
||
}, {
|
||
key: "onInitSegment", get: function () {
|
||
return this._onInitSegment
|
||
}, set: function (e) {
|
||
this._onInitSegment = e
|
||
}
|
||
}, {
|
||
key: "onMediaSegment", get: function () {
|
||
return this._onMediaSegment
|
||
}, set: function (e) {
|
||
this._onMediaSegment = e
|
||
}
|
||
}]);
|
||
n = o;
|
||
|
||
function o(e) {
|
||
(0, i.default)(this, o), this.TAG = "MP4Remuxer", this._config = e, this._isLive = !0 === e.isLive, this._dtsBase = -1, this._dtsBaseInited = !1, this._audioDtsBase = 1 / 0, this._videoDtsBase = 1 / 0, this._audioNextDts = void 0, this._videoNextDts = void 0, this._audioStashedLastSample = null, this._videoStashedLastSample = null, this._audioMeta = null, this._videoMeta = null, this._audioSegmentInfoList = new W.MediaSegmentInfoList("audio"), this._videoSegmentInfoList = new W.MediaSegmentInfoList("video"), this._onInitSegment = null, this._onMediaSegment = null, this._forceFirstIDR = !(!I.default.chrome || !(I.default.version.major < 50 || 50 === I.default.version.major && I.default.version.build < 2661)), this._fillSilentAfterSeek = I.default.msedge || I.default.msie, this._mp3UseMpegAudio = !I.default.firefox, this._fillAudioTimestampGap = this._config.fixAudioTimestampGap
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r(n(2)).default)(l, null, [{
|
||
key: "init", value: function () {
|
||
for (var e in l.types = {
|
||
avc1: [],
|
||
avcC: [],
|
||
btrt: [],
|
||
dinf: [],
|
||
dref: [],
|
||
esds: [],
|
||
ftyp: [],
|
||
hdlr: [],
|
||
mdat: [],
|
||
mdhd: [],
|
||
mdia: [],
|
||
mfhd: [],
|
||
minf: [],
|
||
moof: [],
|
||
moov: [],
|
||
mp4a: [],
|
||
mvex: [],
|
||
mvhd: [],
|
||
sdtp: [],
|
||
stbl: [],
|
||
stco: [],
|
||
stsc: [],
|
||
stsd: [],
|
||
stsz: [],
|
||
stts: [],
|
||
tfdt: [],
|
||
tfhd: [],
|
||
traf: [],
|
||
trak: [],
|
||
trun: [],
|
||
trex: [],
|
||
tkhd: [],
|
||
vmhd: [],
|
||
smhd: [],
|
||
".mp3": []
|
||
}) l.types.hasOwnProperty(e) && (l.types[e] = [e.charCodeAt(0), e.charCodeAt(1), e.charCodeAt(2), e.charCodeAt(3)]);
|
||
var t = l.constants = {};
|
||
t.FTYP = new Uint8Array([105, 115, 111, 109, 0, 0, 0, 1, 105, 115, 111, 109, 97, 118, 99, 49]), t.STSD_PREFIX = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1]), t.STTS = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0]), t.STSC = t.STCO = t.STTS, t.STSZ = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), t.HDLR_VIDEO = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 118, 105, 100, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 105, 100, 101, 111, 72, 97, 110, 100, 108, 101, 114, 0]), t.HDLR_AUDIO = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 115, 111, 117, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 111, 117, 110, 100, 72, 97, 110, 100, 108, 101, 114, 0]), t.DREF = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 12, 117, 114, 108, 32, 0, 0, 0, 1]), t.SMHD = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0]), t.VMHD = new Uint8Array([0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0])
|
||
}
|
||
}, {
|
||
key: "box", value: function (e) {
|
||
for (var t = 8, n = null, i = Array.prototype.slice.call(arguments, 1), r = i.length, a = 0; a < r; a++) t += i[a].byteLength;
|
||
(n = new Uint8Array(t))[0] = t >>> 24 & 255, n[1] = t >>> 16 & 255, n[2] = t >>> 8 & 255, n[3] = 255 & t, n.set(e, 4);
|
||
for (var s = 8, o = 0; o < r; o++) n.set(i[o], s), s += i[o].byteLength;
|
||
return n
|
||
}
|
||
}, {
|
||
key: "generateInitSegment", value: function (e) {
|
||
var t = l.box(l.types.ftyp, l.constants.FTYP), e = l.moov(e),
|
||
n = new Uint8Array(t.byteLength + e.byteLength);
|
||
return n.set(t, 0), n.set(e, t.byteLength), n
|
||
}
|
||
}, {
|
||
key: "moov", value: function (e) {
|
||
var t = l.mvhd(e.timescale, e.duration), n = l.trak(e), e = l.mvex(e);
|
||
return l.box(l.types.moov, t, n, e)
|
||
}
|
||
}, {
|
||
key: "mvhd", value: function (e, t) {
|
||
return l.box(l.types.mvhd, new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, e >>> 24 & 255, e >>> 16 & 255, e >>> 8 & 255, 255 & e, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255]))
|
||
}
|
||
}, {
|
||
key: "trak", value: function (e) {
|
||
return l.box(l.types.trak, l.tkhd(e), l.mdia(e))
|
||
}
|
||
}, {
|
||
key: "tkhd", value: function (e) {
|
||
var t = e.id, n = e.duration, i = e.presentWidth, e = e.presentHeight;
|
||
return l.box(l.types.tkhd, new Uint8Array([0, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 0, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t, 0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, i >>> 8 & 255, 255 & i, 0, 0, e >>> 8 & 255, 255 & e, 0, 0]))
|
||
}
|
||
}, {
|
||
key: "mdia", value: function (e) {
|
||
return l.box(l.types.mdia, l.mdhd(e), l.hdlr(e), l.minf(e))
|
||
}
|
||
}, {
|
||
key: "mdhd", value: function (e) {
|
||
var t = e.timescale, e = e.duration;
|
||
return l.box(l.types.mdhd, new Uint8Array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t, e >>> 24 & 255, e >>> 16 & 255, e >>> 8 & 255, 255 & e, 85, 196, 0, 0]))
|
||
}
|
||
}, {
|
||
key: "hdlr", value: function (e) {
|
||
var t = null, t = "audio" === e.type ? l.constants.HDLR_AUDIO : l.constants.HDLR_VIDEO;
|
||
return l.box(l.types.hdlr, t)
|
||
}
|
||
}, {
|
||
key: "minf", value: function (e) {
|
||
var t = null,
|
||
t = "audio" === e.type ? l.box(l.types.smhd, l.constants.SMHD) : l.box(l.types.vmhd, l.constants.VMHD);
|
||
return l.box(l.types.minf, t, l.dinf(), l.stbl(e))
|
||
}
|
||
}, {
|
||
key: "dinf", value: function () {
|
||
return l.box(l.types.dinf, l.box(l.types.dref, l.constants.DREF))
|
||
}
|
||
}, {
|
||
key: "stbl", value: function (e) {
|
||
return l.box(l.types.stbl, l.stsd(e), l.box(l.types.stts, l.constants.STTS), l.box(l.types.stsc, l.constants.STSC), l.box(l.types.stsz, l.constants.STSZ), l.box(l.types.stco, l.constants.STCO))
|
||
}
|
||
}, {
|
||
key: "stsd", value: function (e) {
|
||
return "audio" === e.type ? "mp3" === e.codec ? l.box(l.types.stsd, l.constants.STSD_PREFIX, l.mp3(e)) : l.box(l.types.stsd, l.constants.STSD_PREFIX, l.mp4a(e)) : l.box(l.types.stsd, l.constants.STSD_PREFIX, l.avc1(e))
|
||
}
|
||
}, {
|
||
key: "mp3", value: function (e) {
|
||
var t = e.channelCount, e = e.audioSampleRate,
|
||
t = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, t, 0, 16, 0, 0, 0, 0, e >>> 8 & 255, 255 & e, 0, 0]);
|
||
return l.box(l.types[".mp3"], t)
|
||
}
|
||
}, {
|
||
key: "mp4a", value: function (e) {
|
||
var t = e.channelCount, n = e.audioSampleRate,
|
||
t = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, t, 0, 16, 0, 0, 0, 0, n >>> 8 & 255, 255 & n, 0, 0]);
|
||
return l.box(l.types.mp4a, t, l.esds(e))
|
||
}
|
||
}, {
|
||
key: "esds", value: function (e) {
|
||
var e = e.config || [], t = e.length,
|
||
t = new Uint8Array([0, 0, 0, 0, 3, 23 + t, 0, 1, 0, 4, 15 + t, 64, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5].concat([t]).concat(e).concat([6, 1, 2]));
|
||
return l.box(l.types.esds, t)
|
||
}
|
||
}, {
|
||
key: "avc1", value: function (e) {
|
||
var t = e.avcc, n = e.codecWidth, e = e.codecHeight,
|
||
n = new Uint8Array([0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, n >>> 8 & 255, 255 & n, e >>> 8 & 255, 255 & e, 0, 72, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 1, 10, 120, 113, 113, 47, 102, 108, 118, 46, 106, 115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 255, 255]);
|
||
return l.box(l.types.avc1, n, l.box(l.types.avcC, t))
|
||
}
|
||
}, {
|
||
key: "mvex", value: function (e) {
|
||
return l.box(l.types.mvex, l.trex(e))
|
||
}
|
||
}, {
|
||
key: "trex", value: function (e) {
|
||
e = e.id, e = new Uint8Array([0, 0, 0, 0, e >>> 24 & 255, e >>> 16 & 255, e >>> 8 & 255, 255 & e, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]);
|
||
return l.box(l.types.trex, e)
|
||
}
|
||
}, {
|
||
key: "moof", value: function (e, t) {
|
||
return l.box(l.types.moof, l.mfhd(e.sequenceNumber), l.traf(e, t))
|
||
}
|
||
}, {
|
||
key: "mfhd", value: function (e) {
|
||
e = new Uint8Array([0, 0, 0, 0, e >>> 24 & 255, e >>> 16 & 255, e >>> 8 & 255, 255 & e]);
|
||
return l.box(l.types.mfhd, e)
|
||
}
|
||
}, {
|
||
key: "traf", value: function (e, t) {
|
||
var n = e.id,
|
||
n = l.box(l.types.tfhd, new Uint8Array([0, 0, 0, 0, n >>> 24 & 255, n >>> 16 & 255, n >>> 8 & 255, 255 & n])),
|
||
t = l.box(l.types.tfdt, new Uint8Array([0, 0, 0, 0, t >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t])),
|
||
i = l.sdtp(e), e = l.trun(e, i.byteLength + 16 + 16 + 8 + 16 + 8 + 8);
|
||
return l.box(l.types.traf, n, t, e, i)
|
||
}
|
||
}, {
|
||
key: "sdtp", value: function (e) {
|
||
for (var t = e.samples || [], n = t.length, i = new Uint8Array(4 + n), r = 0; r < n; r++) {
|
||
var a = t[r].flags;
|
||
i[r + 4] = a.isLeading << 6 | a.dependsOn << 4 | a.isDependedOn << 2 | a.hasRedundancy
|
||
}
|
||
return l.box(l.types.sdtp, i)
|
||
}
|
||
}, {
|
||
key: "trun", value: function (e, t) {
|
||
var n = e.samples || [], i = n.length, e = 12 + 16 * i, r = new Uint8Array(e);
|
||
r.set([0, 0, 15, 1, i >>> 24 & 255, i >>> 16 & 255, i >>> 8 & 255, 255 & i, (t += 8 + e) >>> 24 & 255, t >>> 16 & 255, t >>> 8 & 255, 255 & t], 0);
|
||
for (var a = 0; a < i; a++) {
|
||
var s = n[a].duration, o = n[a].size, u = n[a].flags, d = n[a].cts;
|
||
r.set([s >>> 24 & 255, s >>> 16 & 255, s >>> 8 & 255, 255 & s, o >>> 24 & 255, o >>> 16 & 255, o >>> 8 & 255, 255 & o, u.isLeading << 2 | u.dependsOn, u.isDependedOn << 6 | u.hasRedundancy << 4 | u.isNonSync, 0, 0, d >>> 24 & 255, d >>> 16 & 255, d >>> 8 & 255, 255 & d], 12 + 16 * a)
|
||
}
|
||
return l.box(l.types.trun, r)
|
||
}
|
||
}, {
|
||
key: "mdat", value: function (e) {
|
||
return l.box(l.types.mdat, e)
|
||
}
|
||
}]);
|
||
n = l;
|
||
|
||
function l() {
|
||
(0, i.default)(this, l)
|
||
}
|
||
|
||
n.init(), t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function a() {
|
||
(0, i.default)(this, a)
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, null, [{
|
||
key: "getSilentFrame", value: function (e, t) {
|
||
if ("mp4a.40.2" === e) {
|
||
if (1 === t) return new Uint8Array([0, 200, 0, 128, 35, 128]);
|
||
if (2 === t) return new Uint8Array([33, 0, 73, 144, 2, 25, 0, 35, 128]);
|
||
if (3 === t) return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 142]);
|
||
if (4 === t) return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 128, 44, 128, 8, 2, 56]);
|
||
if (5 === t) return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 130, 48, 4, 153, 0, 33, 144, 2, 56]);
|
||
if (6 === t) return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 130, 48, 4, 153, 0, 33, 144, 2, 0, 178, 0, 32, 8, 224])
|
||
} else {
|
||
if (1 === t) return new Uint8Array([1, 64, 34, 128, 163, 78, 230, 128, 186, 8, 0, 0, 0, 28, 6, 241, 193, 10, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 94]);
|
||
if (2 === t) return new Uint8Array([1, 64, 34, 128, 163, 94, 230, 128, 186, 8, 0, 0, 0, 0, 149, 0, 6, 241, 161, 10, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 94]);
|
||
if (3 === t) return new Uint8Array([1, 64, 34, 128, 163, 94, 230, 128, 186, 8, 0, 0, 0, 0, 149, 0, 6, 241, 161, 10, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 90, 94])
|
||
}
|
||
return null
|
||
}
|
||
}]), t.default = a
|
||
}, function (e, t, h) {
|
||
function a(n) {
|
||
var i = {};
|
||
|
||
function r(e) {
|
||
if (i[e]) return i[e].exports;
|
||
var t = i[e] = {i: e, l: !1, exports: {}};
|
||
return n[e].call(t.exports, t, t.exports, r), t.l = !0, t.exports
|
||
}
|
||
|
||
r.m = n, r.c = i, r.i = function (e) {
|
||
return e
|
||
}, r.d = function (e, t, n) {
|
||
r.o(e, t) || Object.defineProperty(e, t, {configurable: !1, enumerable: !0, get: n})
|
||
}, r.r = function (e) {
|
||
Object.defineProperty(e, "__esModule", {value: !0})
|
||
}, r.n = function (e) {
|
||
var t = e && e.__esModule ? function () {
|
||
return e.default
|
||
} : function () {
|
||
return e
|
||
};
|
||
return r.d(t, "a", t), t
|
||
}, r.o = function (e, t) {
|
||
return Object.prototype.hasOwnProperty.call(e, t)
|
||
}, r.p = "/", r.oe = function (e) {
|
||
throw console.error(e), e
|
||
};
|
||
var e = r(r.s = ENTRY_MODULE);
|
||
return e.default || e
|
||
}
|
||
|
||
var c = "[\\.|\\-|\\+|\\w|/|@]+", _ = "\\(\\s*(/\\*.*?\\*/)?\\s*.*?(" + c + ").*?\\)";
|
||
|
||
function f(e) {
|
||
return (e + "").replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&")
|
||
}
|
||
|
||
function m(e, t, n) {
|
||
var i = {}, r = (i[n] = [], t.toString()), t = r.match(/^function\s?\w*\(\w+,\s*\w+,\s*(\w+)\)/);
|
||
if (t) {
|
||
for (var a, t = t[1], s = new RegExp("(\\\\n|\\W)" + f(t) + _, "g"); a = s.exec(r);) "dll-reference" !== a[3] && i[n].push(a[3]);
|
||
for (s = new RegExp("\\(" + f(t) + '\\("(dll-reference\\s(' + c + '))"\\)\\)' + _, "g"); a = s.exec(r);) e[a[2]] || (i[n].push(a[1]), e[a[2]] = h(a[1]).m), i[a[2]] = i[a[2]] || [], i[a[2]].push(a[4]);
|
||
for (var o, u = Object.keys(i), d = 0; d < u.length; d++) for (var l = 0; l < i[u[d]].length; l++) o = i[u[d]][l], isNaN(+o) || (i[u[d]][l] = +i[u[d]][l])
|
||
}
|
||
return i
|
||
}
|
||
|
||
function s(e, t) {
|
||
for (var n = {main: [t]}, i = {main: []}, r = {main: {}}; function (n) {
|
||
return Object.keys(n).reduce(function (e, t) {
|
||
return e || 0 < n[t].length
|
||
}, !1)
|
||
}(n);) for (var a = Object.keys(n), s = 0; s < a.length; s++) {
|
||
var o = a[s], u = n[o].pop();
|
||
if (r[o] = r[o] || {}, !r[o][u] && e[o][u]) {
|
||
r[o][u] = !0, i[o] = i[o] || [], i[o].push(u);
|
||
for (var d = m(e, e[o][u], o), l = Object.keys(d), h = 0; h < l.length; h++) n[l[h]] = n[l[h]] || [], n[l[h]] = n[l[h]].concat(d[l[h]])
|
||
}
|
||
}
|
||
return i
|
||
}
|
||
|
||
e.exports = function (e, t) {
|
||
var n = {main: h.m}, i = (t = t || {}).all ? {main: Object.keys(n.main)} : s(n, e), r = "",
|
||
e = (Object.keys(i).filter(function (e) {
|
||
return "main" !== e
|
||
}).forEach(function (t) {
|
||
for (var e = 0; i[t][e];) e++;
|
||
i[t].push(e), n[t][e] = "(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })", r = r + "var " + t + " = (" + a.toString().replace("ENTRY_MODULE", JSON.stringify(e)) + ")({" + i[t].map(function (e) {
|
||
return JSON.stringify(e) + ": " + n[t][e].toString()
|
||
}).join(",") + "});\n"
|
||
}), r = r + "new ((" + a.toString().replace("ENTRY_MODULE", JSON.stringify(e)) + ")({" + i.main.map(function (e) {
|
||
return JSON.stringify(e) + ": " + n.main[e].toString()
|
||
}).join(",") + "}))(self);", new window.Blob([r], {type: "text/javascript"}));
|
||
if (t.bare) return e;
|
||
t = (window.URL || window.webkitURL || window.mozURL || window.msURL).createObjectURL(e), e = new window.Worker(t);
|
||
return e.objectURL = t, e
|
||
}
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = c(n(1)), r = c(n(2)), a = c(n(10)), o = c(n(4)), u = c(n(33)), s = c(n(232)), d = n(230), l = n(5),
|
||
h = (c(n(233)), c(n(0)));
|
||
|
||
function c(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, r.default)(_, [{
|
||
key: "destroy", value: function () {
|
||
(this._mediaElement || this._mediaSource) && this.detachMediaElement(), this.e = null, this._emitter.removeAllListeners(), this._emitter = null
|
||
}
|
||
}, {
|
||
key: "on", value: function (e, t) {
|
||
this._emitter.addListener(e, t)
|
||
}
|
||
}, {
|
||
key: "off", value: function (e, t) {
|
||
this._emitter.removeListener(e, t)
|
||
}
|
||
}, {
|
||
key: "attachMediaElement", value: function (e) {
|
||
if (this._mediaSource) throw new l.IllegalStateException("MediaSource has been attached to an HTMLMediaElement!");
|
||
var t = this._mediaSource = new window.MediaSource;
|
||
t.addEventListener("sourceopen", this.e.onSourceOpen), t.addEventListener("sourceended", this.e.onSourceEnded), t.addEventListener("sourceclose", this.e.onSourceClose), this._mediaElement = e, this._mediaSourceObjectURL = window.URL.createObjectURL(this._mediaSource), e.src = this._mediaSourceObjectURL
|
||
}
|
||
}, {
|
||
key: "detachMediaElement", value: function () {
|
||
if (this._mediaSource) {
|
||
var e, t = this._mediaSource;
|
||
for (e in this._sourceBuffers) {
|
||
var n = this._pendingSegments[e],
|
||
n = (n.splice(0, n.length), this._pendingSegments[e] = null, this._pendingRemoveRanges[e] = null, this._lastInitSegments[e] = null, this._sourceBuffers[e]);
|
||
if (n) {
|
||
if ("closed" !== t.readyState) {
|
||
try {
|
||
t.removeSourceBuffer(n)
|
||
} catch (e) {
|
||
o.default.e(this.TAG, e.message)
|
||
}
|
||
n.removeEventListener("error", this.e.onSourceBufferError), n.removeEventListener("updateend", this.e.onSourceBufferUpdateEnd)
|
||
}
|
||
this._mimeTypes[e] = null, this._sourceBuffers[e] = null
|
||
}
|
||
}
|
||
if ("open" === t.readyState) try {
|
||
t.endOfStream()
|
||
} catch (e) {
|
||
o.default.e(this.TAG, e.message)
|
||
}
|
||
t.removeEventListener("sourceopen", this.e.onSourceOpen), t.removeEventListener("sourceended", this.e.onSourceEnded), t.removeEventListener("sourceclose", this.e.onSourceClose), this._pendingSourceBufferInit = [], this._isBufferFull = !1, this._idrList.clear(), this._mediaSource = null
|
||
}
|
||
this._mediaElement && (this._mediaElement.src = "", this._mediaElement.removeAttribute("src"), this._mediaElement = null), this._mediaSourceObjectURL && (window.URL.revokeObjectURL(this._mediaSourceObjectURL), this._mediaSourceObjectURL = null), this._hasAudio = !0
|
||
}
|
||
}, {
|
||
key: "checkAudioSourceBufferInit", value: function (e) {
|
||
return this._sourceBuffers.audio || "audio" === e.type || !this._hasAudio
|
||
}
|
||
}, {
|
||
key: "_onAudioSourceBufferInited", value: function () {
|
||
if (0 < this._pendingSourceBufferInit.length) for (var e = this._pendingSourceBufferInit; e.length;) {
|
||
var t = e.shift();
|
||
this.appendInitSegment(t, !0)
|
||
}
|
||
this._hasPendingSegments() && this._doAppendSegments(), this._emitter.emit(s.default.SOURCE_OPEN)
|
||
}
|
||
}, {
|
||
key: "checkMediaSource", value: function (e) {
|
||
return !(!this._mediaSource || "open" !== this._mediaSource.readyState)
|
||
}
|
||
}, {
|
||
key: "appendInitSegment", value: function (e, t) {
|
||
if (!this.checkMediaSource("appendInitSegment") || !this.checkAudioSourceBufferInit(e)) return this._pendingSourceBufferInit.push(e), void this._pendingSegments[e.type].push(e);
|
||
var n = "" + e.container, i = (e.codec && 0 < e.codec.length && (n += ";codecs=" + e.codec), !1);
|
||
if (this._lastInitSegments[e.type] = e, n !== this._mimeTypes[e.type]) {
|
||
if (this._mimeTypes[e.type]) o.default.v(this.TAG, "Notice: " + e.type + " mimeType changed, origin: " + this._mimeTypes[e.type] + ", target: " + n); else {
|
||
i = !0, console.info("[debug] %c" + (0, h.default)().format("YYYY-MM-DD HH:mm:ss.SSS") + "%c appendInitSegment", "color: blue", "color: black", this._mediaElement.readyState, n);
|
||
try {
|
||
var r = this._sourceBuffers[e.type] = this._mediaSource.addSourceBuffer(n);
|
||
r.addEventListener("error", this.e.onSourceBufferError), r.addEventListener("updateend", this.e.onSourceBufferUpdateEnd), "audio" === e.type && this._onAudioSourceBufferInited()
|
||
} catch (e) {
|
||
return o.default.e(this.TAG, e.message, this._mediaElement.error), void this._emitter.emit(s.default.ERROR, {
|
||
code: e.code,
|
||
msg: e.message
|
||
})
|
||
}
|
||
}
|
||
this._mimeTypes[e.type] = n
|
||
}
|
||
t || this._pendingSegments[e.type].push(e), i || this._sourceBuffers[e.type] && !this._sourceBuffers[e.type].updating && this._doAppendSegments(), u.default.safari && "audio/mpeg" === e.container && 0 < e.mediaDuration && (this._requireSetMediaDuration = !0, this._pendingMediaDuration = e.mediaDuration / 1e3, this._updateMediaSourceDuration())
|
||
}
|
||
}, {
|
||
key: "appendMediaSegment", value: function (e) {
|
||
var t;
|
||
this.checkMediaSource("appendMediaSegment") && (this._pendingSegments[(e = e).type].push(e), this._config.autoCleanupSourceBuffer && this._needCleanupSourceBuffer() && this._doCleanupSourceBuffer(), !(t = this._sourceBuffers[e.type]) || t.updating || this._hasPendingRemoveRanges() ? this._hasAudio && 5 < this._pendingSegments[e.type].length && (this._hasAudio = !1, this._onAudioSourceBufferInited()) : this._doAppendSegments())
|
||
}
|
||
}, {
|
||
key: "seek", value: function (e) {
|
||
if (this.checkMediaSource("seek")) for (var t in this._sourceBuffers) if (this._sourceBuffers[t]) {
|
||
var n = this._sourceBuffers[t];
|
||
if ("open" === this._mediaSource.readyState) try {
|
||
n.abort()
|
||
} catch (e) {
|
||
o.default.e(this.TAG, e.message)
|
||
}
|
||
this._idrList.clear();
|
||
var i = this._pendingSegments[t];
|
||
if (i.splice(0, i.length), "closed" !== this._mediaSource.readyState) {
|
||
for (var r = 0; r < n.buffered.length; r++) {
|
||
var a = n.buffered.start(r), s = n.buffered.end(r);
|
||
this._pendingRemoveRanges[t].push({start: a, end: s})
|
||
}
|
||
n.updating || this._doRemoveRanges("seek"), !u.default.safari || (i = this._lastInitSegments[t]) && (this._pendingSegments[t].push(i), n.updating || this._doAppendSegments())
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "endOfStream", value: function () {
|
||
var e = this._mediaSource, t = this._sourceBuffers;
|
||
e && "open" === e.readyState ? t.video && t.video.updating || t.audio && t.audio.updating ? this._hasPendingEos = !0 : (this._hasPendingEos = !1, e.endOfStream()) : e && "closed" === e.readyState && this._hasPendingSegments() && (this._hasPendingEos = !0)
|
||
}
|
||
}, {
|
||
key: "getNearestKeyframe", value: function (e) {
|
||
return this._idrList.getLastSyncPointBeforeDts(e)
|
||
}
|
||
}, {
|
||
key: "checkSourceBufferNull", value: function () {
|
||
var e, t = !0;
|
||
for (e in this._sourceBuffers) if (null != this._sourceBuffers[e]) {
|
||
t = !1;
|
||
break
|
||
}
|
||
return t
|
||
}
|
||
}, {
|
||
key: "_needCleanupSourceBuffer", value: function () {
|
||
if (this._config.autoCleanupSourceBuffer && this.checkMediaSource("_needCleanupSourceBuffer")) {
|
||
var e, t = this._mediaElement.currentTime;
|
||
for (e in this._sourceBuffers) {
|
||
var n = this._sourceBuffers[e];
|
||
if (n) {
|
||
n = n.buffered;
|
||
if (1 <= n.length && t - n.start(0) >= this._config.autoCleanupMaxBackwardDuration) return !0
|
||
}
|
||
}
|
||
}
|
||
return !1
|
||
}
|
||
}, {
|
||
key: "_doCleanupSourceBuffer", value: function () {
|
||
var e = this._mediaElement.currentTime;
|
||
if (this.checkMediaSource("_doCleanupSourceBuffer")) for (var t in this._sourceBuffers) {
|
||
var n = this._sourceBuffers[t];
|
||
if (n) {
|
||
for (var i = n.buffered, r = !1, a = 0; a < i.length; a++) {
|
||
var s, o = i.start(a), u = i.end(a);
|
||
o <= e && e < u + 3 ? e - o >= this._config.autoCleanupMaxBackwardDuration && (r = !0, s = e - this._config.autoCleanupMinBackwardDuration, this._pendingRemoveRanges[t].push({
|
||
start: o,
|
||
end: s
|
||
})) : u < e && (r = !0, this._pendingRemoveRanges[t].push({start: o, end: u}))
|
||
}
|
||
r && !n.updating && this._doRemoveRanges("_doCleanupSourceBuffer")
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_updateMediaSourceDuration", value: function () {
|
||
var e, t;
|
||
this.checkMediaSource("_updateMediaSourceDuration") && (e = this._sourceBuffers, 0 === this._mediaElement.readyState || "open" !== this._mediaSource.readyState || e.video && e.video.updating || e.audio && e.audio.updating || (e = this._mediaSource.duration, 0 < (t = this._pendingMediaDuration) && (isNaN(e) || e < t) && (o.default.v(this.TAG, "Update MediaSource duration from " + e + " to " + t), this._mediaSource.duration = t), this._requireSetMediaDuration = !1, this._pendingMediaDuration = 0))
|
||
}
|
||
}, {
|
||
key: "_doRemoveRanges", value: function (e) {
|
||
if (this.checkMediaSource("_doRemoveRanges")) for (var t in this._pendingRemoveRanges) if (this._sourceBuffers[t] && !this._sourceBuffers[t].updating) for (var n = this._sourceBuffers[t], i = this._pendingRemoveRanges[t]; i.length && !n.updating;) {
|
||
var r = i.shift();
|
||
n.remove(r.start, r.end)
|
||
}
|
||
}
|
||
}, {
|
||
key: "_doAppendSegments", value: function () {
|
||
if (this.checkMediaSource("_doAppendSegments")) {
|
||
var t, e = this._pendingSegments;
|
||
for (t in e) if (this._sourceBuffers[t] && !this._sourceBuffers[t].updating && 0 < e[t].length) {
|
||
var n, i, r = e[t].shift();
|
||
if (r.timestampOffset && (n = this._sourceBuffers[t].timestampOffset, i = r.timestampOffset / 1e3, .1 < Math.abs(n - i) && (o.default.v(this.TAG, "Update MPEG audio timestampOffset from " + n + " to " + i), this._sourceBuffers[t].timestampOffset = i), delete r.timestampOffset), r.data && 0 !== r.data.byteLength) try {
|
||
this._sourceBuffers[t].appendBuffer(r.data), this._isBufferFull = !1, "video" === t && r.hasOwnProperty("info") && this._idrList.appendArray(r.info.syncPoints)
|
||
} catch (e) {
|
||
this._pendingSegments[t].unshift(r), 22 === e.code ? (this._isBufferFull || this._emitter.emit(s.default.BUFFER_FULL), this._isBufferFull = !0) : (o.default.e(this.TAG, e.message, this._mediaElement.error), this._emitter.emit(s.default.ERROR, {
|
||
code: e.code,
|
||
msg: e.message
|
||
}))
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}, {
|
||
key: "_onSourceOpen", value: function () {
|
||
if (o.default.v(this.TAG, "MediaSource onSourceOpen"), this._mediaSource.removeEventListener("sourceopen", this.e.onSourceOpen), 0 < this._pendingSourceBufferInit.length) for (var e = this._pendingSourceBufferInit; e.length;) {
|
||
var t = e.shift();
|
||
this.appendInitSegment(t, !0)
|
||
}
|
||
this._hasPendingSegments() && this._doAppendSegments(), this._emitter.emit(s.default.SOURCE_OPEN)
|
||
}
|
||
}, {
|
||
key: "_onSourceEnded", value: function () {
|
||
o.default.v(this.TAG, "MediaSource onSourceEnded"), this._emitter.emit(s.default.SOURCE_END)
|
||
}
|
||
}, {
|
||
key: "_onSourceClose", value: function () {
|
||
o.default.v(this.TAG, "MediaSource onSourceClose"), this._mediaSource && null != this.e && (this._mediaSource.removeEventListener("sourceopen", this.e.onSourceOpen), this._mediaSource.removeEventListener("sourceended", this.e.onSourceEnded), this._mediaSource.removeEventListener("sourceclose", this.e.onSourceClose)), this._emitter.emit(s.default.SOURCE_CLOSE)
|
||
}
|
||
}, {
|
||
key: "_hasPendingSegments", value: function () {
|
||
var e = this._pendingSegments;
|
||
return 0 < e.video.length || 0 < e.audio.length
|
||
}
|
||
}, {
|
||
key: "_hasPendingRemoveRanges", value: function () {
|
||
var e = this._pendingRemoveRanges;
|
||
return 0 < e.video.length || 0 < e.audio.length
|
||
}
|
||
}, {
|
||
key: "_onSourceBufferUpdateEnd", value: function () {
|
||
this._requireSetMediaDuration ? this._updateMediaSourceDuration() : this._hasPendingRemoveRanges() ? this._doRemoveRanges("_onSourceBufferUpdateEnd") : this._hasPendingSegments() ? this._doAppendSegments() : this._hasPendingEos && this.endOfStream(), this._emitter.emit(s.default.UPDATE_END)
|
||
}
|
||
}, {
|
||
key: "_onSourceBufferError", value: function (e) {
|
||
o.default.e(this.TAG, "SourceBuffer Error: ", e), this._emitter.emit(s.default.ERROR, {
|
||
code: e.code,
|
||
msg: e.message
|
||
})
|
||
}
|
||
}]);
|
||
n = _;
|
||
|
||
function _(e) {
|
||
(0, i.default)(this, _), this.TAG = "MSEController", this._config = e, this._emitter = new a.default, this._config.isLive && null == this._config.autoCleanupSourceBuffer && (this._config.autoCleanupSourceBuffer = !0), this.e = {
|
||
onSourceOpen: this._onSourceOpen.bind(this),
|
||
onSourceEnded: this._onSourceEnded.bind(this),
|
||
onSourceClose: this._onSourceClose.bind(this),
|
||
onSourceBufferError: this._onSourceBufferError.bind(this),
|
||
onSourceBufferUpdateEnd: this._onSourceBufferUpdateEnd.bind(this)
|
||
}, this._mediaSource = null, this._mediaSourceObjectURL = null, this._mediaElement = null, this._hasAudio = !0, this._isBufferFull = !1, this._hasPendingEos = !1, this._requireSetMediaDuration = !1, this._pendingMediaDuration = 0, this._pendingSourceBufferInit = [], this._mimeTypes = {
|
||
video: null,
|
||
audio: null
|
||
}, this._sourceBuffers = {video: null, audio: null}, this._lastInitSegments = {
|
||
video: null,
|
||
audio: null
|
||
}, this._pendingSegments = {video: [], audio: []}, this._pendingRemoveRanges = {
|
||
video: [],
|
||
audio: []
|
||
}, this._idrList = new d.IDRSampleList
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = c(n(11)), r = c(n(20)), a = c(n(9)), s = c(n(1)), o = c(n(2)), u = c(n(10)), d = c(n(39)), l = n(63),
|
||
h = n(5);
|
||
|
||
function c(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
(0, o.default)(_, [{
|
||
key: "destroy", value: function () {
|
||
this._mediaElement && (this.unload(), this.detachMediaElement()), this.e = null, this._mediaDataSource = null, this._emitter.removeAllListeners(), this._emitter = null
|
||
}
|
||
}, {
|
||
key: "on", value: function (e, t) {
|
||
var n = this;
|
||
e === d.default.MEDIA_INFO ? null != this._mediaElement && 0 !== this._mediaElement.readyState && i.default.resolve().then(function () {
|
||
n._emitter.emit(d.default.MEDIA_INFO, n.mediaInfo)
|
||
}) : e === d.default.STATISTICS_INFO && null != this._mediaElement && 0 !== this._mediaElement.readyState && i.default.resolve().then(function () {
|
||
n._emitter.emit(d.default.STATISTICS_INFO, n.statisticsInfo)
|
||
}), this._emitter.addListener(e, t)
|
||
}
|
||
}, {
|
||
key: "off", value: function (e, t) {
|
||
this._emitter.removeListener(e, t)
|
||
}
|
||
}, {
|
||
key: "attachMediaElement", value: function (e) {
|
||
if ((this._mediaElement = e).addEventListener("loadedmetadata", this.e.onvLoadedMetadata), null != this._pendingSeekTime) try {
|
||
e.currentTime = this._pendingSeekTime, this._pendingSeekTime = null
|
||
} catch (e) {
|
||
}
|
||
}
|
||
}, {
|
||
key: "detachMediaElement", value: function () {
|
||
this._mediaElement && (this._mediaElement.src = "", this._mediaElement.removeAttribute("src"), this._mediaElement.removeEventListener("loadedmetadata", this.e.onvLoadedMetadata), this._mediaElement = null), null != this._statisticsReporter && (window.clearInterval(this._statisticsReporter), this._statisticsReporter = null)
|
||
}
|
||
}, {
|
||
key: "load", value: function () {
|
||
if (!this._mediaElement) throw new h.IllegalStateException("HTMLMediaElement must be attached before load()!");
|
||
this._mediaElement.src = this._mediaDataSource.url, 0 < this._mediaElement.readyState && (this._mediaElement.currentTime = 0), this._mediaElement.preload = "auto", this._mediaElement.load(), this._statisticsReporter = window.setInterval(this._reportStatisticsInfo.bind(this), this._config.statisticsInfoReportInterval)
|
||
}
|
||
}, {
|
||
key: "unload", value: function () {
|
||
this._mediaElement && (this._mediaElement.src = "", this._mediaElement.removeAttribute("src")), null != this._statisticsReporter && (window.clearInterval(this._statisticsReporter), this._statisticsReporter = null)
|
||
}
|
||
}, {
|
||
key: "play", value: function () {
|
||
return this._mediaElement.play()
|
||
}
|
||
}, {
|
||
key: "pause", value: function () {
|
||
this._mediaElement.pause()
|
||
}
|
||
}, {
|
||
key: "_onvLoadedMetadata", value: function (e) {
|
||
null != this._pendingSeekTime && (this._mediaElement.currentTime = this._pendingSeekTime, this._pendingSeekTime = null), this._emitter.emit(d.default.MEDIA_INFO, this.mediaInfo)
|
||
}
|
||
}, {
|
||
key: "_reportStatisticsInfo", value: function () {
|
||
this._emitter.emit(d.default.STATISTICS_INFO, this.statisticsInfo)
|
||
}
|
||
}, {
|
||
key: "type", get: function () {
|
||
return this._type
|
||
}
|
||
}, {
|
||
key: "buffered", get: function () {
|
||
return this._mediaElement.buffered
|
||
}
|
||
}, {
|
||
key: "duration", get: function () {
|
||
return this._mediaElement.duration
|
||
}
|
||
}, {
|
||
key: "volume", get: function () {
|
||
return this._mediaElement.volume
|
||
}, set: function (e) {
|
||
this._mediaElement.volume = e
|
||
}
|
||
}, {
|
||
key: "muted", get: function () {
|
||
return this._mediaElement.muted
|
||
}, set: function (e) {
|
||
this._mediaElement.muted = e
|
||
}
|
||
}, {
|
||
key: "currentTime", get: function () {
|
||
return this._mediaElement ? this._mediaElement.currentTime : 0
|
||
}, set: function (e) {
|
||
this._mediaElement ? this._mediaElement.currentTime = e : this._pendingSeekTime = e
|
||
}
|
||
}, {
|
||
key: "mediaInfo", get: function () {
|
||
var e = {mimeType: (this._mediaElement instanceof HTMLAudioElement ? "audio/" : "video/") + this._mediaDataSource.type};
|
||
return this._mediaElement && (e.duration = Math.floor(1e3 * this._mediaElement.duration), this._mediaElement instanceof HTMLVideoElement && (e.width = this._mediaElement.videoWidth, e.height = this._mediaElement.videoHeight)), e
|
||
}
|
||
}, {
|
||
key: "statisticsInfo", get: function () {
|
||
var e, t, n, i, r = {playerType: this._type, url: this._mediaDataSource.url};
|
||
return this._mediaElement instanceof HTMLVideoElement && (e = !0, i = n = 0, this._mediaElement.getVideoPlaybackQuality ? (n = (t = this._mediaElement.getVideoPlaybackQuality()).totalVideoFrames, i = t.droppedVideoFrames) : null != this._mediaElement.webkitDecodedFrameCount ? (n = this._mediaElement.webkitDecodedFrameCount, i = this._mediaElement.webkitDroppedFrameCount) : e = !1, e && (r.decodedFrames = n, r.droppedFrames = i)), r
|
||
}
|
||
}]);
|
||
n = _;
|
||
|
||
function _(e, t) {
|
||
if ((0, s.default)(this, _), this.TAG = "NativePlayer", this._type = "NativePlayer", this._emitter = new u.default, this._config = (0, l.createDefaultConfig)(), "object" === (void 0 === t ? "undefined" : (0, a.default)(t)) && (0, r.default)(this._config, t), "flv" === e.type.toLowerCase()) throw new h.InvalidArgumentException("NativePlayer does't support flv MediaDataSource input!");
|
||
if (e.hasOwnProperty("segments")) throw new h.InvalidArgumentException("NativePlayer(" + e.type + ") doesn't support multipart playback!");
|
||
this.e = {onvLoadedMetadata: this._onvLoadedMetadata.bind(this)}, this._pendingSeekTime = null, this._statisticsReporter = null, this._mediaDataSource = e, this._mediaElement = null
|
||
}
|
||
|
||
t.default = n
|
||
}, function (e, t, n) {
|
||
"use strict";
|
||
Object.defineProperty(t, "__esModule", {value: !0});
|
||
var i = r(n(1));
|
||
|
||
function r(e) {
|
||
return e && e.__esModule ? e : {default: e}
|
||
}
|
||
|
||
function a() {
|
||
(0, i.default)(this, a), this._ua = self.navigator.userAgent.toLowerCase(), this._system = void 0, this._systemVersion = void 0, this._systemByte = void 0, this._platform = void 0, this._engine = void 0, this._engineVersion = void 0, this._supporter = void 0, this._supporterVersion = void 0, this._shell = void 0, this._shellVersion = void 0, this._start()
|
||
}
|
||
|
||
(0, r(n(2)).default)(a, [{
|
||
key: "_start", value: function () {
|
||
this._checkSystem(), this._checkPlatform(), this._checkEngine(), this._checkSupporter(), this._checkShell()
|
||
}
|
||
}, {
|
||
key: "_checkUa", value: function (e) {
|
||
return e.test(this._ua)
|
||
}
|
||
}, {
|
||
key: "_getVersion", value: function (e) {
|
||
e = e.exec(this._ua);
|
||
return e ? e.shift().split(/\s|\/|:/gi).pop() : null
|
||
}
|
||
}, {
|
||
key: "_checkSystem", value: function () {
|
||
var e, t = this, n = this._checkUa.bind(this),
|
||
i = [{sys: "windows", re: /windows|win32|win64|wow32|wow64/gi}, {
|
||
sys: "osx",
|
||
re: /macintosh|macintel/gi
|
||
}, {sys: "linux", re: /x11/gi}, {sys: "android", re: /android|adr/gi}, {
|
||
sys: "ios",
|
||
re: /ios|iphone|ipad|iwatch/gi
|
||
}].find(function (e) {
|
||
return n(e.re)
|
||
}), i = (this._system = i ? i.sys : void 0, this._systemByte = n(/win32|wow32|x32/gi) ? 32 : 64, [{
|
||
sys: "osx",
|
||
re: /os x [\d(.|_)]+/gi
|
||
}, {sys: "android", re: /android [\d(.|_)]+/gi}, {
|
||
sys: "ios",
|
||
re: /os [\d(.|_)]+/gi
|
||
}].find(function (e) {
|
||
return e.sys === t._system
|
||
}));
|
||
"windows" === this._system ? (e = [{vs: "2000", re: /windows nt 5.0|windows 2000/gi}, {
|
||
vs: "xp",
|
||
re: /windows nt 5.1|windows 2000/gi
|
||
}, {vs: "2003", re: /windows nt 5.2|windows 2003/gi}, {
|
||
vs: "vista",
|
||
re: /windows nt 6.0|windows vista/gi
|
||
}, {vs: "7", re: /windows nt 6.1|windows 7/gi}, {vs: "8", re: /windows nt 6.2|windows 8/gi}, {
|
||
vs: "8.1",
|
||
re: /windows nt 6.3|windows 8.1/gi
|
||
}, {vs: "10", re: /windows nt 10.0|windows 10/gi}].find(function (e) {
|
||
return n(e.re)
|
||
}), this._systemVersion = e ? e.vs : void 0) : this._systemVersion = i ? this._getVersion(i.re) : void 0
|
||
}
|
||
}, {
|
||
key: "_checkPlatform", value: function () {
|
||
var t = this;
|
||
["windows", "osx"].find(function (e) {
|
||
return e === t._system
|
||
}) ? this._platform = "desktop" : ["ios", "android", "linux"].find(function (e) {
|
||
return e === t._system
|
||
}) && (this._platform = "mobile")
|
||
}
|
||
}, {
|
||
key: "_checkEngine", value: function () {
|
||
var t = this._checkUa.bind(this),
|
||
e = [{eng: "webkit", re: /applewebkit/gi, vre: /applewebkit\/[\d(.|_)]+/gi}, {
|
||
eng: "presto",
|
||
re: /presto/gi,
|
||
vre: /presto\/[\d(.|_)]+/gi
|
||
}, {
|
||
eng: "trident",
|
||
re: /trident|compatible|msie/gi,
|
||
vre: /(trident|compatible|msie)\/[\d(.|_)]+/gi
|
||
}, {eng: "gecko", re: /gecko|firefox/gi, vre: /(gecko|firefox)\/[\d(.|_)]+/gi}].find(function (e) {
|
||
return t(e.re)
|
||
});
|
||
e && (this._engine = e.eng, this._engineVersion = this._getVersion(e.vre))
|
||
}
|
||
}, {
|
||
key: "_checkSupporter", value: function () {
|
||
var t = this._checkUa.bind(this), e = this._system, n = this._engine;
|
||
"android" === e && "webkit" === n ? (e = this._ua.match(/chrome\/\d+[\.\d+]+/gi)) && (e = e.pop().split("/"), this._supporterVersion = e.pop(), this._supporter = e.pop()) : "webkit" === n ? (e = [{
|
||
sp: "edge",
|
||
re: /edge/gi,
|
||
vre: /edge\/[\d(.|_)]+/gi
|
||
}, {sp: "opera", re: /opr/gi, vre: /opr\/[\d(.|_)]+/gi}, {
|
||
sp: "chrome",
|
||
re: /chrome|crios/gi,
|
||
vre: /(chrome|crios)\/[\d(.|_)]+/gi
|
||
}, {sp: "safari", re: /safari/gi, vre: /version\/[\d(.|_)]+/gi}].find(function (e) {
|
||
return t(e.re)
|
||
})) && (this._supporter = e.sp, this._supporterVersion = this._getVersion(e.vre)) : "presto" === n ? (this.supporter = "opera", this._supporterVersion = this._getVersion(/opera\/[\d(.|_)]+/gi)) : "trident" === n ? (this._supporter = "ie", this._supporterVersion = this._getVersion(/rv:[\d(.|_)]+/gi)) : "gecko" === n && (this._supporter = "firefox", this._supporterVersion = this._getVersion(/(rv:|firefox\/)[\d(.|_)]+/gi))
|
||
}
|
||
}, {
|
||
key: "_checkShell", value: function () {
|
||
var t = this._checkUa.bind(this), e = this._system, n = this._engine;
|
||
"android" !== e && "linux" !== e || "webkit" !== n ? (e = [{
|
||
sl: "weChat",
|
||
re: /micromessenger/gi,
|
||
vre: /micromessenger\/[\d(.|_)]+/gi
|
||
}, {sl: "qq", re: /qqbrowser/gi, vre: /micromessenger\/[\d(.|_)]+/gi}, {
|
||
sl: "uc",
|
||
re: /ucbrowser/gi,
|
||
vre: /ucbrowser\/[\d(.|_)]+/gi
|
||
}, {
|
||
sl: "baidu",
|
||
re: /baidu(boxapp|browser)/gi,
|
||
vre: /baidu(boxapp|browser)\/[\d(.|_)]+/gi
|
||
}].find(function (e) {
|
||
return t(e.re)
|
||
})) && (this._shell = e.sl, this._shellVersion = this._getVersion(e.vre)) : (n = this._ua.match(/[\w|\/]+Browser\/\d+[\.\d+]+/gi)) && (e = n.pop().split("/"), this._shellVersion = e.pop(), this._shell = e.pop())
|
||
}
|
||
}, {
|
||
key: "system", get: function () {
|
||
return this._system
|
||
}
|
||
}, {
|
||
key: "systemVersion", get: function () {
|
||
return this._systemVersion
|
||
}
|
||
}, {
|
||
key: "systemByte", get: function () {
|
||
return this._systemByte
|
||
}
|
||
}, {
|
||
key: "platform", get: function () {
|
||
return this._platform
|
||
}
|
||
}, {
|
||
key: "engine", get: function () {
|
||
return this._engine
|
||
}
|
||
}, {
|
||
key: "engineVersion", get: function () {
|
||
return this._engineVersion
|
||
}
|
||
}, {
|
||
key: "supporter", get: function () {
|
||
return this._supporter
|
||
}
|
||
}, {
|
||
key: "supporterVersion", get: function () {
|
||
return this._supporterVersion
|
||
}
|
||
}, {
|
||
key: "shell", get: function () {
|
||
return this._shell
|
||
}
|
||
}, {
|
||
key: "shellVersion", get: function () {
|
||
return this._shellVersion
|
||
}
|
||
}]), t.default = a
|
||
}, function (e) {
|
||
e.exports = JSON.parse('{"name":"h5player","version":"2.1.2build20220713","description":"player for h5 page without plugin","main":"./dist/h5player.min.js","scripts":{"start":"webpack --config build/webpack.dev.js --watch","dev":"webpack-dev-server --config build/webpack.dev.js","dev:https":"webpack-dev-server --config build/webpack.dev.js --https --coop","build":"npm run prod && npm run backup","build:dev":"webpack --config build/webpack.dev.js","prod":"webpack --config build/webpack.prod.js","backup":"webpack --config build/webpack.backup.js","http":"node dev/http.js","https":"node dev/https.js","preinstall":"node ./bin/preinstall.js","postinstall":"node ./bin/postinstall.js","preuninstall":"node ./bin/preuninstall.js","prepublishOnly":"npm run prod"},"author":"hezhuen","license":"MIT","dependencies":{"chalk":"^4.1.2","inquirer":"^8.2.0","shelljs":"^0.8.4"},"devDependencies":{"@babel/polyfill":"^7.12.1","babel-core":"^6.26.3","babel-eslint":"^8.2.6","babel-loader":"^7.1.5","babel-plugin-syntax-dynamic-import":"^6.18.0","babel-plugin-transform-runtime":"^6.23.0","babel-preset-env":"^1.7.0","babel-preset-es2015":"^6.24.1","babel-runtime":"^6.26.0","copy-webpack-plugin":"^4.5.2","css-loader":"^1.0.0","es6-promise":"^4.2.8","eslint":"^5.1.0","eslint-loader":"^2.1.0","html-loader":"^0.5.5","jquery":"^3.6.0","json-loader":"^0.5.7","less":"^3.7.1","less-loader":"^4.1.0","mime":"^2.5.2","moment":"^2.0.0","style-loader":"^0.21.0","uglifyjs-webpack-plugin":"^2.2.0","url-loader":"^1.0.1","uuid":"^3.3.3","webpack":"^4.16.1","webpack-cli":"^3.1.0","webpack-dev-server":"^3.11.2","webpack-merge":"^5.7.3","webworkify":"^1.5.0","webworkify-webpack":"^2.1.5"},"publishConfig":{"registry":"https://af.hikvision.com.cn/artifactory/api/npm/npm-fsdmdept/","access":"public"},"files":["dist","bin"]}')
|
||
}], a = {}, r.m = n, r.c = a, r.d = function (e, t, n) {
|
||
r.o(e, t) || Object.defineProperty(e, t, {enumerable: !0, get: n})
|
||
}, r.r = function (e) {
|
||
"undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e, Symbol.toStringTag, {value: "Module"}), Object.defineProperty(e, "__esModule", {value: !0})
|
||
}, r.t = function (t, e) {
|
||
if (1 & e && (t = r(t)), 8 & e) return t;
|
||
if (4 & e && "object" == typeof t && t && t.__esModule) return t;
|
||
var n = Object.create(null);
|
||
if (r.r(n), Object.defineProperty(n, "default", {
|
||
enumerable: !0,
|
||
value: t
|
||
}), 2 & e && "string" != typeof t) for (var i in t) r.d(n, i, function (e) {
|
||
return t[e]
|
||
}.bind(null, i));
|
||
return n
|
||
}, r.n = function (e) {
|
||
var t = e && e.__esModule ? function () {
|
||
return e.default
|
||
} : function () {
|
||
return e
|
||
};
|
||
return r.d(t, "a", t), t
|
||
}, r.o = function (e, t) {
|
||
return Object.prototype.hasOwnProperty.call(e, t)
|
||
}, r.p = "", r(r.s = 235);
|
||
|
||
function r(e) {
|
||
if (a[e]) return a[e].exports;
|
||
var t = a[e] = {i: e, l: !1, exports: {}};
|
||
return n[e].call(t.exports, t, t.exports, r), t.l = !0, t.exports
|
||
}
|
||
|
||
var n, a
|
||
}); |