6736 lines
324 KiB
JavaScript
6736 lines
324 KiB
JavaScript
! function (e, t) {
|
|
"use strict";
|
|
"object" == typeof module && "object" == typeof module.exports ? module.exports = e.document ? t(e, !0) : function (e) {
|
|
if (!e.document) throw new Error("jQuery requires a window with a document");
|
|
return t(e)
|
|
} : t(e)
|
|
}("undefined" != typeof window ? window : this, function (x, e) {
|
|
"use strict";
|
|
var t = [],
|
|
C = x.document,
|
|
i = Object.getPrototypeOf,
|
|
a = t.slice,
|
|
m = t.concat,
|
|
l = t.push,
|
|
r = t.indexOf,
|
|
n = {},
|
|
o = n.toString,
|
|
g = n.hasOwnProperty,
|
|
s = g.toString,
|
|
c = s.call(Object),
|
|
v = {},
|
|
y = function (e) {
|
|
return "function" == typeof e && "number" != typeof e.nodeType
|
|
},
|
|
b = function (e) {
|
|
return null != e && e === e.window
|
|
},
|
|
u = {
|
|
type: !0,
|
|
src: !0,
|
|
noModule: !0
|
|
};
|
|
|
|
function _(e, t, n) {
|
|
var i, r = (t = t || C).createElement("script");
|
|
if (r.text = e, n)
|
|
for (i in u) n[i] && (r[i] = n[i]);
|
|
t.head.appendChild(r).parentNode.removeChild(r)
|
|
}
|
|
|
|
function E(e) {
|
|
return null == e ? e + "" : "object" == typeof e || "function" == typeof e ? n[o.call(e)] || "object" : typeof e
|
|
}
|
|
var T = function (e, t) {
|
|
return new T.fn.init(e, t)
|
|
},
|
|
f = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;
|
|
|
|
function h(e) {
|
|
var t = !!e && "length" in e && e.length,
|
|
n = E(e);
|
|
return !y(e) && !b(e) && ("array" === n || 0 === t || "number" == typeof t && 0 < t && t - 1 in e)
|
|
}
|
|
T.fn = T.prototype = {
|
|
jquery: "3.3.1",
|
|
constructor: T,
|
|
length: 0,
|
|
toArray: function () {
|
|
return a.call(this)
|
|
},
|
|
get: function (e) {
|
|
return null == e ? a.call(this) : e < 0 ? this[e + this.length] : this[e]
|
|
},
|
|
pushStack: function (e) {
|
|
var t = T.merge(this.constructor(), e);
|
|
return t.prevObject = this, t
|
|
},
|
|
each: function (e) {
|
|
return T.each(this, e)
|
|
},
|
|
map: function (n) {
|
|
return this.pushStack(T.map(this, function (e, t) {
|
|
return n.call(e, t, e)
|
|
}))
|
|
},
|
|
slice: function () {
|
|
return this.pushStack(a.apply(this, arguments))
|
|
},
|
|
first: function () {
|
|
return this.eq(0)
|
|
},
|
|
last: function () {
|
|
return this.eq(-1)
|
|
},
|
|
eq: function (e) {
|
|
var t = this.length,
|
|
n = +e + (e < 0 ? t : 0);
|
|
return this.pushStack(0 <= n && n < t ? [this[n]] : [])
|
|
},
|
|
end: function () {
|
|
return this.prevObject || this.constructor()
|
|
},
|
|
push: l,
|
|
sort: t.sort,
|
|
splice: t.splice
|
|
}, T.extend = T.fn.extend = function () {
|
|
var e, t, n, i, r, o, s = arguments[0] || {},
|
|
a = 1,
|
|
l = arguments.length,
|
|
c = !1;
|
|
for ("boolean" == typeof s && (c = s, s = arguments[a] || {}, a++), "object" == typeof s || y(s) || (s = {}), a === l && (s = this, a--); a < l; a++)
|
|
if (null != (e = arguments[a]))
|
|
for (t in e) n = s[t], s !== (i = e[t]) && (c && i && (T.isPlainObject(i) || (r = Array.isArray(i))) ? (o = r ? (r = !1, n && Array.isArray(n) ? n : []) : n && T.isPlainObject(n) ? n : {}, s[t] = T.extend(c, o, i)) : void 0 !== i && (s[t] = i));
|
|
return s
|
|
}, T.extend({
|
|
expando: "jQuery" + ("3.3.1" + Math.random()).replace(/\D/g, ""),
|
|
isReady: !0,
|
|
error: function (e) {
|
|
throw new Error(e)
|
|
},
|
|
noop: function () {},
|
|
isPlainObject: function (e) {
|
|
var t, n;
|
|
return !(!e || "[object Object]" !== o.call(e) || (t = i(e)) && ("function" != typeof (n = g.call(t, "constructor") && t.constructor) || s.call(n) !== c))
|
|
},
|
|
isEmptyObject: function (e) {
|
|
var t;
|
|
for (t in e) return !1;
|
|
return !0
|
|
},
|
|
globalEval: function (e) {
|
|
_(e)
|
|
},
|
|
each: function (e, t) {
|
|
var n, i = 0;
|
|
if (h(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
|
|
},
|
|
trim: function (e) {
|
|
return null == e ? "" : (e + "").replace(f, "")
|
|
},
|
|
makeArray: function (e, t) {
|
|
var n = t || [];
|
|
return null != e && (h(Object(e)) ? T.merge(n, "string" == typeof e ? [e] : e) : l.call(n, e)), n
|
|
},
|
|
inArray: function (e, t, n) {
|
|
return null == t ? -1 : r.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, o = e.length, s = !n; r < o; r++) !t(e[r], r) !== s && i.push(e[r]);
|
|
return i
|
|
},
|
|
map: function (e, t, n) {
|
|
var i, r, o = 0,
|
|
s = [];
|
|
if (h(e))
|
|
for (i = e.length; o < i; o++) null != (r = t(e[o], o, n)) && s.push(r);
|
|
else
|
|
for (o in e) null != (r = t(e[o], o, n)) && s.push(r);
|
|
return m.apply([], s)
|
|
},
|
|
guid: 1,
|
|
support: v
|
|
}), "function" == typeof Symbol && (T.fn[Symbol.iterator] = t[Symbol.iterator]), T.each("Boolean Number String Function Array Date RegExp Object Error Symbol".split(" "), function (e, t) {
|
|
n["[object " + t + "]"] = t.toLowerCase()
|
|
});
|
|
var d = function (n) {
|
|
var e, d, _, o, r, p, f, m, E, l, c, w, x, s, C, g, a, u, v, T = "sizzle" + 1 * new Date,
|
|
y = n.document,
|
|
S = 0,
|
|
i = 0,
|
|
h = se(),
|
|
b = se(),
|
|
A = se(),
|
|
D = function (e, t) {
|
|
return e === t && (c = !0), 0
|
|
},
|
|
O = {}.hasOwnProperty,
|
|
t = [],
|
|
k = t.pop,
|
|
N = t.push,
|
|
j = t.push,
|
|
I = t.slice,
|
|
L = function (e, t) {
|
|
for (var n = 0, i = e.length; n < i; n++)
|
|
if (e[n] === t) return n;
|
|
return -1
|
|
},
|
|
M = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",
|
|
P = "[\\x20\\t\\r\\n\\f]",
|
|
H = "(?:\\\\.|[\\w-]|[^\0-\\xa0])+",
|
|
q = "\\[" + P + "*(" + H + ")(?:" + P + "*([*^$|!~]?=)" + P + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + H + "))|)" + P + "*\\]",
|
|
R = ":(" + H + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + q + ")*)|.*)\\)|)",
|
|
F = new RegExp(P + "+", "g"),
|
|
W = new RegExp("^" + P + "+|((?:^|[^\\\\])(?:\\\\.)*)" + P + "+$", "g"),
|
|
B = new RegExp("^" + P + "*," + P + "*"),
|
|
U = new RegExp("^" + P + "*([>+~]|" + P + ")" + P + "*"),
|
|
Y = new RegExp("=" + P + "*([^\\]'\"]*?)" + P + "*\\]", "g"),
|
|
$ = new RegExp(R),
|
|
z = new RegExp("^" + H + "$"),
|
|
X = {
|
|
ID: new RegExp("^#(" + H + ")"),
|
|
CLASS: new RegExp("^\\.(" + H + ")"),
|
|
TAG: new RegExp("^(" + H + "|[*])"),
|
|
ATTR: new RegExp("^" + q),
|
|
PSEUDO: new RegExp("^" + R),
|
|
CHILD: new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + P + "*(even|odd|(([+-]|)(\\d*)n|)" + P + "*(?:([+-]|)" + P + "*(\\d+)|))" + P + "*\\)|)", "i"),
|
|
bool: new RegExp("^(?:" + M + ")$", "i"),
|
|
needsContext: new RegExp("^" + P + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + P + "*((?:-\\d)?\\d*)" + P + "*\\)|)(?=[^-]|$)", "i")
|
|
},
|
|
Q = /^(?:input|select|textarea|button)$/i,
|
|
K = /^h\d$/i,
|
|
V = /^[^{]+\{\s*\[native \w/,
|
|
G = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,
|
|
J = /[+~]/,
|
|
Z = new RegExp("\\\\([\\da-f]{1,6}" + P + "?|(" + P + ")|.)", "ig"),
|
|
ee = function (e, t, n) {
|
|
var i = "0x" + t - 65536;
|
|
return i != i || n ? t : i < 0 ? String.fromCharCode(i + 65536) : String.fromCharCode(i >> 10 | 55296, 1023 & i | 56320)
|
|
},
|
|
te = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,
|
|
ne = function (e, t) {
|
|
return t ? "\0" === e ? "�" : e.slice(0, -1) + "\\" + e.charCodeAt(e.length - 1).toString(16) + " " : "\\" + e
|
|
},
|
|
ie = function () {
|
|
w()
|
|
},
|
|
re = ye(function (e) {
|
|
return !0 === e.disabled && ("form" in e || "label" in e)
|
|
}, {
|
|
dir: "parentNode",
|
|
next: "legend"
|
|
});
|
|
try {
|
|
j.apply(t = I.call(y.childNodes), y.childNodes), t[y.childNodes.length].nodeType
|
|
} catch (n) {
|
|
j = {
|
|
apply: t.length ? function (e, t) {
|
|
N.apply(e, I.call(t))
|
|
} : function (e, t) {
|
|
for (var n = e.length, i = 0; e[n++] = t[i++];);
|
|
e.length = n - 1
|
|
}
|
|
}
|
|
}
|
|
|
|
function oe(e, t, n, i) {
|
|
var r, o, s, a, l, c, u, f = t && t.ownerDocument,
|
|
h = t ? t.nodeType : 9;
|
|
if (n = n || [], "string" != typeof e || !e || 1 !== h && 9 !== h && 11 !== h) return n;
|
|
if (!i && ((t ? t.ownerDocument || t : y) !== x && w(t), t = t || x, C)) {
|
|
if (11 !== h && (l = G.exec(e)))
|
|
if (r = l[1]) {
|
|
if (9 === h) {
|
|
if (!(s = t.getElementById(r))) return n;
|
|
if (s.id === r) return n.push(s), n
|
|
} else if (f && (s = f.getElementById(r)) && v(t, s) && s.id === r) return n.push(s), n
|
|
} else {
|
|
if (l[2]) return j.apply(n, t.getElementsByTagName(e)), n;
|
|
if ((r = l[3]) && d.getElementsByClassName && t.getElementsByClassName) return j.apply(n, t.getElementsByClassName(r)), n
|
|
} if (d.qsa && !A[e + " "] && (!g || !g.test(e))) {
|
|
if (1 !== h) f = t, u = e;
|
|
else if ("object" !== t.nodeName.toLowerCase()) {
|
|
for ((a = t.getAttribute("id")) ? a = a.replace(te, ne) : t.setAttribute("id", a = T), o = (c = p(e)).length; o--;) c[o] = "#" + a + " " + ve(c[o]);
|
|
u = c.join(","), f = J.test(e) && me(t.parentNode) || t
|
|
}
|
|
if (u) try {
|
|
return j.apply(n, f.querySelectorAll(u)), n
|
|
} catch (e) {} finally {
|
|
a === T && t.removeAttribute("id")
|
|
}
|
|
}
|
|
}
|
|
return m(e.replace(W, "$1"), t, n, i)
|
|
}
|
|
|
|
function se() {
|
|
var i = [];
|
|
return function e(t, n) {
|
|
return i.push(t + " ") > _.cacheLength && delete e[i.shift()], e[t + " "] = n
|
|
}
|
|
}
|
|
|
|
function ae(e) {
|
|
return e[T] = !0, e
|
|
}
|
|
|
|
function le(e) {
|
|
var t = x.createElement("fieldset");
|
|
try {
|
|
return !!e(t)
|
|
} catch (e) {
|
|
return !1
|
|
} finally {
|
|
t.parentNode && t.parentNode.removeChild(t), t = null
|
|
}
|
|
}
|
|
|
|
function ce(e, t) {
|
|
for (var n = e.split("|"), i = n.length; i--;) _.attrHandle[n[i]] = t
|
|
}
|
|
|
|
function ue(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 fe(t) {
|
|
return function (e) {
|
|
return "input" === e.nodeName.toLowerCase() && e.type === t
|
|
}
|
|
}
|
|
|
|
function he(n) {
|
|
return function (e) {
|
|
var t = e.nodeName.toLowerCase();
|
|
return ("input" === t || "button" === t) && e.type === n
|
|
}
|
|
}
|
|
|
|
function de(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 && re(e) === t : e.disabled === t : "label" in e && e.disabled === t
|
|
}
|
|
}
|
|
|
|
function pe(s) {
|
|
return ae(function (o) {
|
|
return o = +o, ae(function (e, t) {
|
|
for (var n, i = s([], e.length, o), r = i.length; r--;) e[n = i[r]] && (e[n] = !(t[n] = e[n]))
|
|
})
|
|
})
|
|
}
|
|
|
|
function me(e) {
|
|
return e && void 0 !== e.getElementsByTagName && e
|
|
}
|
|
for (e in d = oe.support = {}, r = oe.isXML = function (e) {
|
|
var t = e && (e.ownerDocument || e).documentElement;
|
|
return !!t && "HTML" !== t.nodeName
|
|
}, w = oe.setDocument = function (e) {
|
|
var t, n, i = e ? e.ownerDocument || e : y;
|
|
return i !== x && 9 === i.nodeType && i.documentElement && (s = (x = i).documentElement, C = !r(x), y !== x && (n = x.defaultView) && n.top !== n && (n.addEventListener ? n.addEventListener("unload", ie, !1) : n.attachEvent && n.attachEvent("onunload", ie)), d.attributes = le(function (e) {
|
|
return e.className = "i", !e.getAttribute("className")
|
|
}), d.getElementsByTagName = le(function (e) {
|
|
return e.appendChild(x.createComment("")), !e.getElementsByTagName("*").length
|
|
}), d.getElementsByClassName = V.test(x.getElementsByClassName), d.getById = le(function (e) {
|
|
return s.appendChild(e).id = T, !x.getElementsByName || !x.getElementsByName(T).length
|
|
}), d.getById ? (_.filter.ID = function (e) {
|
|
var t = e.replace(Z, ee);
|
|
return function (e) {
|
|
return e.getAttribute("id") === t
|
|
}
|
|
}, _.find.ID = function (e, t) {
|
|
if (void 0 !== t.getElementById && C) {
|
|
var n = t.getElementById(e);
|
|
return n ? [n] : []
|
|
}
|
|
}) : (_.filter.ID = function (e) {
|
|
var n = e.replace(Z, ee);
|
|
return function (e) {
|
|
var t = void 0 !== e.getAttributeNode && e.getAttributeNode("id");
|
|
return t && t.value === n
|
|
}
|
|
}, _.find.ID = function (e, t) {
|
|
if (void 0 !== t.getElementById && C) {
|
|
var n, i, r, o = t.getElementById(e);
|
|
if (o) {
|
|
if ((n = o.getAttributeNode("id")) && n.value === e) return [o];
|
|
for (r = t.getElementsByName(e), i = 0; o = r[i++];)
|
|
if ((n = o.getAttributeNode("id")) && n.value === e) return [o]
|
|
}
|
|
return []
|
|
}
|
|
}), _.find.TAG = d.getElementsByTagName ? function (e, t) {
|
|
return void 0 !== t.getElementsByTagName ? t.getElementsByTagName(e) : d.qsa ? t.querySelectorAll(e) : void 0
|
|
} : function (e, t) {
|
|
var n, i = [],
|
|
r = 0,
|
|
o = t.getElementsByTagName(e);
|
|
if ("*" !== e) return o;
|
|
for (; n = o[r++];) 1 === n.nodeType && i.push(n);
|
|
return i
|
|
}, _.find.CLASS = d.getElementsByClassName && function (e, t) {
|
|
if (void 0 !== t.getElementsByClassName && C) return t.getElementsByClassName(e)
|
|
}, a = [], g = [], (d.qsa = V.test(x.querySelectorAll)) && (le(function (e) {
|
|
s.appendChild(e).innerHTML = "<a id='" + T + "'></a><select id='" + T + "-\r\\' msallowcapture=''><option selected=''></option></select>", e.querySelectorAll("[msallowcapture^='']").length && g.push("[*^$]=" + P + "*(?:''|\"\")"), e.querySelectorAll("[selected]").length || g.push("\\[" + P + "*(?:value|" + M + ")"), e.querySelectorAll("[id~=" + T + "-]").length || g.push("~="), e.querySelectorAll(":checked").length || g.push(":checked"), e.querySelectorAll("a#" + T + "+*").length || g.push(".#.+[+~]")
|
|
}), le(function (e) {
|
|
e.innerHTML = "<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>";
|
|
var t = x.createElement("input");
|
|
t.setAttribute("type", "hidden"), e.appendChild(t).setAttribute("name", "D"), e.querySelectorAll("[name=d]").length && g.push("name" + P + "*[*^$|!~]?="), 2 !== e.querySelectorAll(":enabled").length && g.push(":enabled", ":disabled"), s.appendChild(e).disabled = !0, 2 !== e.querySelectorAll(":disabled").length && g.push(":enabled", ":disabled"), e.querySelectorAll("*,:x"), g.push(",.*:")
|
|
})), (d.matchesSelector = V.test(u = s.matches || s.webkitMatchesSelector || s.mozMatchesSelector || s.oMatchesSelector || s.msMatchesSelector)) && le(function (e) {
|
|
d.disconnectedMatch = u.call(e, "*"), u.call(e, "[s!='']:x"), a.push("!=", R)
|
|
}), g = g.length && new RegExp(g.join("|")), a = a.length && new RegExp(a.join("|")), t = V.test(s.compareDocumentPosition), v = t || V.test(s.contains) ? function (e, t) {
|
|
var n = 9 === e.nodeType ? e.documentElement : e,
|
|
i = t && t.parentNode;
|
|
return e === i || !(!i || 1 !== i.nodeType || !(n.contains ? n.contains(i) : e.compareDocumentPosition && 16 & e.compareDocumentPosition(i)))
|
|
} : function (e, t) {
|
|
if (t)
|
|
for (; t = t.parentNode;)
|
|
if (t === e) return !0;
|
|
return !1
|
|
}, D = t ? function (e, t) {
|
|
if (e === t) return c = !0, 0;
|
|
var n = !e.compareDocumentPosition - !t.compareDocumentPosition;
|
|
return n || (1 & (n = (e.ownerDocument || e) === (t.ownerDocument || t) ? e.compareDocumentPosition(t) : 1) || !d.sortDetached && t.compareDocumentPosition(e) === n ? e === x || e.ownerDocument === y && v(y, e) ? -1 : t === x || t.ownerDocument === y && v(y, t) ? 1 : l ? L(l, e) - L(l, t) : 0 : 4 & n ? -1 : 1)
|
|
} : function (e, t) {
|
|
if (e === t) return c = !0, 0;
|
|
var n, i = 0,
|
|
r = e.parentNode,
|
|
o = t.parentNode,
|
|
s = [e],
|
|
a = [t];
|
|
if (!r || !o) return e === x ? -1 : t === x ? 1 : r ? -1 : o ? 1 : l ? L(l, e) - L(l, t) : 0;
|
|
if (r === o) return ue(e, t);
|
|
for (n = e; n = n.parentNode;) s.unshift(n);
|
|
for (n = t; n = n.parentNode;) a.unshift(n);
|
|
for (; s[i] === a[i];) i++;
|
|
return i ? ue(s[i], a[i]) : s[i] === y ? -1 : a[i] === y ? 1 : 0
|
|
}), x
|
|
}, oe.matches = function (e, t) {
|
|
return oe(e, null, null, t)
|
|
}, oe.matchesSelector = function (e, t) {
|
|
if ((e.ownerDocument || e) !== x && w(e), t = t.replace(Y, "='$1']"), d.matchesSelector && C && !A[t + " "] && (!a || !a.test(t)) && (!g || !g.test(t))) try {
|
|
var n = u.call(e, t);
|
|
if (n || d.disconnectedMatch || e.document && 11 !== e.document.nodeType) return n
|
|
} catch (e) {}
|
|
return 0 < oe(t, x, null, [e]).length
|
|
}, oe.contains = function (e, t) {
|
|
return (e.ownerDocument || e) !== x && w(e), v(e, t)
|
|
}, oe.attr = function (e, t) {
|
|
(e.ownerDocument || e) !== x && w(e);
|
|
var n = _.attrHandle[t.toLowerCase()],
|
|
i = n && O.call(_.attrHandle, t.toLowerCase()) ? n(e, t, !C) : void 0;
|
|
return void 0 !== i ? i : d.attributes || !C ? e.getAttribute(t) : (i = e.getAttributeNode(t)) && i.specified ? i.value : null
|
|
}, oe.escape = function (e) {
|
|
return (e + "").replace(te, ne)
|
|
}, oe.error = function (e) {
|
|
throw new Error("Syntax error, unrecognized expression: " + e)
|
|
}, oe.uniqueSort = function (e) {
|
|
var t, n = [],
|
|
i = 0,
|
|
r = 0;
|
|
if (c = !d.detectDuplicates, l = !d.sortStable && e.slice(0), e.sort(D), c) {
|
|
for (; t = e[r++];) t === e[r] && (i = n.push(r));
|
|
for (; i--;) e.splice(n[i], 1)
|
|
}
|
|
return l = null, e
|
|
}, o = oe.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 += o(e)
|
|
} else if (3 === r || 4 === r) return e.nodeValue
|
|
} else
|
|
for (; t = e[i++];) n += o(t);
|
|
return n
|
|
}, (_ = oe.selectors = {
|
|
cacheLength: 50,
|
|
createPseudo: ae,
|
|
match: X,
|
|
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(Z, ee), e[3] = (e[3] || e[4] || e[5] || "").replace(Z, ee), "~=" === 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] || oe.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] && oe.error(e[0]), e
|
|
},
|
|
PSEUDO: function (e) {
|
|
var t, n = !e[6] && e[2];
|
|
return X.CHILD.test(e[0]) ? null : (e[3] ? e[2] = e[4] || e[5] || "" : n && $.test(n) && (t = p(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(Z, ee).toLowerCase();
|
|
return "*" === e ? function () {
|
|
return !0
|
|
} : function (e) {
|
|
return e.nodeName && e.nodeName.toLowerCase() === t
|
|
}
|
|
},
|
|
CLASS: function (e) {
|
|
var t = h[e + " "];
|
|
return t || (t = new RegExp("(^|" + P + ")" + e + "(" + P + "|$)")) && h(e, function (e) {
|
|
return t.test("string" == typeof e.className && e.className || void 0 !== e.getAttribute && e.getAttribute("class") || "")
|
|
})
|
|
},
|
|
ATTR: function (n, i, r) {
|
|
return function (e) {
|
|
var t = oe.attr(e, n);
|
|
return null == t ? "!=" === i : !i || (t += "", "=" === i ? t === r : "!=" === i ? t !== r : "^=" === i ? r && 0 === t.indexOf(r) : "*=" === i ? r && -1 < t.indexOf(r) : "$=" === i ? r && t.slice(-r.length) === r : "~=" === i ? -1 < (" " + t.replace(F, " ") + " ").indexOf(r) : "|=" === i && (t === r || t.slice(0, r.length + 1) === r + "-"))
|
|
}
|
|
},
|
|
CHILD: function (p, e, t, m, g) {
|
|
var v = "nth" !== p.slice(0, 3),
|
|
y = "last" !== p.slice(-4),
|
|
b = "of-type" === e;
|
|
return 1 === m && 0 === g ? function (e) {
|
|
return !!e.parentNode
|
|
} : function (e, t, n) {
|
|
var i, r, o, s, a, l, c = v !== y ? "nextSibling" : "previousSibling",
|
|
u = e.parentNode,
|
|
f = b && e.nodeName.toLowerCase(),
|
|
h = !n && !b,
|
|
d = !1;
|
|
if (u) {
|
|
if (v) {
|
|
for (; c;) {
|
|
for (s = e; s = s[c];)
|
|
if (b ? s.nodeName.toLowerCase() === f : 1 === s.nodeType) return !1;
|
|
l = c = "only" === p && !l && "nextSibling"
|
|
}
|
|
return !0
|
|
}
|
|
if (l = [y ? u.firstChild : u.lastChild], y && h) {
|
|
for (d = (a = (i = (r = (o = (s = u)[T] || (s[T] = {}))[s.uniqueID] || (o[s.uniqueID] = {}))[p] || [])[0] === S && i[1]) && i[2], s = a && u.childNodes[a]; s = ++a && s && s[c] || (d = a = 0) || l.pop();)
|
|
if (1 === s.nodeType && ++d && s === e) {
|
|
r[p] = [S, a, d];
|
|
break
|
|
}
|
|
} else if (h && (d = a = (i = (r = (o = (s = e)[T] || (s[T] = {}))[s.uniqueID] || (o[s.uniqueID] = {}))[p] || [])[0] === S && i[1]), !1 === d)
|
|
for (;
|
|
(s = ++a && s && s[c] || (d = a = 0) || l.pop()) && ((b ? s.nodeName.toLowerCase() !== f : 1 !== s.nodeType) || !++d || (h && ((r = (o = s[T] || (s[T] = {}))[s.uniqueID] || (o[s.uniqueID] = {}))[p] = [S, d]), s !== e)););
|
|
return (d -= g) === m || d % m == 0 && 0 <= d / m
|
|
}
|
|
}
|
|
},
|
|
PSEUDO: function (e, o) {
|
|
var t, s = _.pseudos[e] || _.setFilters[e.toLowerCase()] || oe.error("unsupported pseudo: " + e);
|
|
return s[T] ? s(o) : 1 < s.length ? (t = [e, e, "", o], _.setFilters.hasOwnProperty(e.toLowerCase()) ? ae(function (e, t) {
|
|
for (var n, i = s(e, o), r = i.length; r--;) e[n = L(e, i[r])] = !(t[n] = i[r])
|
|
}) : function (e) {
|
|
return s(e, 0, t)
|
|
}) : s
|
|
}
|
|
},
|
|
pseudos: {
|
|
not: ae(function (e) {
|
|
var i = [],
|
|
r = [],
|
|
a = f(e.replace(W, "$1"));
|
|
return a[T] ? ae(function (e, t, n, i) {
|
|
for (var r, o = a(e, null, i, []), s = e.length; s--;)(r = o[s]) && (e[s] = !(t[s] = r))
|
|
}) : function (e, t, n) {
|
|
return i[0] = e, a(i, null, n, r), i[0] = null, !r.pop()
|
|
}
|
|
}),
|
|
has: ae(function (t) {
|
|
return function (e) {
|
|
return 0 < oe(t, e).length
|
|
}
|
|
}),
|
|
contains: ae(function (t) {
|
|
return t = t.replace(Z, ee),
|
|
function (e) {
|
|
return -1 < (e.textContent || e.innerText || o(e)).indexOf(t)
|
|
}
|
|
}),
|
|
lang: ae(function (n) {
|
|
return z.test(n || "") || oe.error("unsupported lang: " + n), n = n.replace(Z, ee).toLowerCase(),
|
|
function (e) {
|
|
var t;
|
|
do {
|
|
if (t = C ? 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 = n.location && n.location.hash;
|
|
return t && t.slice(1) === e.id
|
|
},
|
|
root: function (e) {
|
|
return e === s
|
|
},
|
|
focus: function (e) {
|
|
return e === x.activeElement && (!x.hasFocus || x.hasFocus()) && !!(e.type || e.href || ~e.tabIndex)
|
|
},
|
|
enabled: de(!1),
|
|
disabled: de(!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 !_.pseudos.empty(e)
|
|
},
|
|
header: function (e) {
|
|
return K.test(e.nodeName)
|
|
},
|
|
input: function (e) {
|
|
return Q.test(e.nodeName)
|
|
},
|
|
button: function (e) {
|
|
var t = e.nodeName.toLowerCase();
|
|
return "input" === t && "button" === e.type || "button" === t
|
|
},
|
|
text: function (e) {
|
|
var t;
|
|
return "input" === e.nodeName.toLowerCase() && "text" === e.type && (null == (t = e.getAttribute("type")) || "text" === t.toLowerCase())
|
|
},
|
|
first: pe(function () {
|
|
return [0]
|
|
}),
|
|
last: pe(function (e, t) {
|
|
return [t - 1]
|
|
}),
|
|
eq: pe(function (e, t, n) {
|
|
return [n < 0 ? n + t : n]
|
|
}),
|
|
even: pe(function (e, t) {
|
|
for (var n = 0; n < t; n += 2) e.push(n);
|
|
return e
|
|
}),
|
|
odd: pe(function (e, t) {
|
|
for (var n = 1; n < t; n += 2) e.push(n);
|
|
return e
|
|
}),
|
|
lt: pe(function (e, t, n) {
|
|
for (var i = n < 0 ? n + t : n; 0 <= --i;) e.push(i);
|
|
return e
|
|
}),
|
|
gt: pe(function (e, t, n) {
|
|
for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i);
|
|
return e
|
|
})
|
|
}
|
|
}).pseudos.nth = _.pseudos.eq, {
|
|
radio: !0,
|
|
checkbox: !0,
|
|
file: !0,
|
|
password: !0,
|
|
image: !0
|
|
}) _.pseudos[e] = fe(e);
|
|
for (e in {
|
|
submit: !0,
|
|
reset: !0
|
|
}) _.pseudos[e] = he(e);
|
|
|
|
function ge() {}
|
|
|
|
function ve(e) {
|
|
for (var t = 0, n = e.length, i = ""; t < n; t++) i += e[t].value;
|
|
return i
|
|
}
|
|
|
|
function ye(a, e, t) {
|
|
var l = e.dir,
|
|
c = e.next,
|
|
u = c || l,
|
|
f = t && "parentNode" === u,
|
|
h = i++;
|
|
return e.first ? function (e, t, n) {
|
|
for (; e = e[l];)
|
|
if (1 === e.nodeType || f) return a(e, t, n);
|
|
return !1
|
|
} : function (e, t, n) {
|
|
var i, r, o, s = [S, h];
|
|
if (n) {
|
|
for (; e = e[l];)
|
|
if ((1 === e.nodeType || f) && a(e, t, n)) return !0
|
|
} else
|
|
for (; e = e[l];)
|
|
if (1 === e.nodeType || f)
|
|
if (r = (o = e[T] || (e[T] = {}))[e.uniqueID] || (o[e.uniqueID] = {}), c && c === e.nodeName.toLowerCase()) e = e[l] || e;
|
|
else {
|
|
if ((i = r[u]) && i[0] === S && i[1] === h) return s[2] = i[2];
|
|
if ((r[u] = s)[2] = a(e, t, n)) return !0
|
|
} return !1
|
|
}
|
|
}
|
|
|
|
function be(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 _e(e, t, n, i, r) {
|
|
for (var o, s = [], a = 0, l = e.length, c = null != t; a < l; a++)(o = e[a]) && (n && !n(o, i, r) || (s.push(o), c && t.push(a)));
|
|
return s
|
|
}
|
|
|
|
function Ee(d, p, m, g, v, e) {
|
|
return g && !g[T] && (g = Ee(g)), v && !v[T] && (v = Ee(v, e)), ae(function (e, t, n, i) {
|
|
var r, o, s, a = [],
|
|
l = [],
|
|
c = t.length,
|
|
u = e || function (e, t, n) {
|
|
for (var i = 0, r = t.length; i < r; i++) oe(e, t[i], n);
|
|
return n
|
|
}(p || "*", n.nodeType ? [n] : n, []),
|
|
f = !d || !e && p ? u : _e(u, a, d, n, i),
|
|
h = m ? v || (e ? d : c || g) ? [] : t : f;
|
|
if (m && m(f, h, n, i), g)
|
|
for (r = _e(h, l), g(r, [], n, i), o = r.length; o--;)(s = r[o]) && (h[l[o]] = !(f[l[o]] = s));
|
|
if (e) {
|
|
if (v || d) {
|
|
if (v) {
|
|
for (r = [], o = h.length; o--;)(s = h[o]) && r.push(f[o] = s);
|
|
v(null, h = [], r, i)
|
|
}
|
|
for (o = h.length; o--;)(s = h[o]) && -1 < (r = v ? L(e, s) : a[o]) && (e[r] = !(t[r] = s))
|
|
}
|
|
} else h = _e(h === t ? h.splice(c, h.length) : h), v ? v(null, t, h, i) : j.apply(t, h)
|
|
})
|
|
}
|
|
|
|
function we(e) {
|
|
for (var r, t, n, i = e.length, o = _.relative[e[0].type], s = o || _.relative[" "], a = o ? 1 : 0, l = ye(function (e) {
|
|
return e === r
|
|
}, s, !0), c = ye(function (e) {
|
|
return -1 < L(r, e)
|
|
}, s, !0), u = [function (e, t, n) {
|
|
var i = !o && (n || t !== E) || ((r = t).nodeType ? l(e, t, n) : c(e, t, n));
|
|
return r = null, i
|
|
}]; a < i; a++)
|
|
if (t = _.relative[e[a].type]) u = [ye(be(u), t)];
|
|
else {
|
|
if ((t = _.filter[e[a].type].apply(null, e[a].matches))[T]) {
|
|
for (n = ++a; n < i && !_.relative[e[n].type]; n++);
|
|
return Ee(1 < a && be(u), 1 < a && ve(e.slice(0, a - 1).concat({
|
|
value: " " === e[a - 2].type ? "*" : ""
|
|
})).replace(W, "$1"), t, a < n && we(e.slice(a, n)), n < i && we(e = e.slice(n)), n < i && ve(e))
|
|
}
|
|
u.push(t)
|
|
} return be(u)
|
|
}
|
|
return ge.prototype = _.filters = _.pseudos, _.setFilters = new ge, p = oe.tokenize = function (e, t) {
|
|
var n, i, r, o, s, a, l, c = b[e + " "];
|
|
if (c) return t ? 0 : c.slice(0);
|
|
for (s = e, a = [], l = _.preFilter; s;) {
|
|
for (o in n && !(i = B.exec(s)) || (i && (s = s.slice(i[0].length) || s), a.push(r = [])), n = !1, (i = U.exec(s)) && (n = i.shift(), r.push({
|
|
value: n,
|
|
type: i[0].replace(W, " ")
|
|
}), s = s.slice(n.length)), _.filter) !(i = X[o].exec(s)) || l[o] && !(i = l[o](i)) || (n = i.shift(), r.push({
|
|
value: n,
|
|
type: o,
|
|
matches: i
|
|
}), s = s.slice(n.length));
|
|
if (!n) break
|
|
}
|
|
return t ? s.length : s ? oe.error(e) : b(e, a).slice(0)
|
|
}, f = oe.compile = function (e, t) {
|
|
var n, g, v, y, b, i, r = [],
|
|
o = [],
|
|
s = A[e + " "];
|
|
if (!s) {
|
|
for (t || (t = p(e)), n = t.length; n--;)(s = we(t[n]))[T] ? r.push(s) : o.push(s);
|
|
(s = A(e, (g = o, v = r, y = 0 < v.length, b = 0 < g.length, i = function (e, t, n, i, r) {
|
|
var o, s, a, l = 0,
|
|
c = "0",
|
|
u = e && [],
|
|
f = [],
|
|
h = E,
|
|
d = e || b && _.find.TAG("*", r),
|
|
p = S += null == h ? 1 : Math.random() || .1,
|
|
m = d.length;
|
|
for (r && (E = t === x || t || r); c !== m && null != (o = d[c]); c++) {
|
|
if (b && o) {
|
|
for (s = 0, t || o.ownerDocument === x || (w(o), n = !C); a = g[s++];)
|
|
if (a(o, t || x, n)) {
|
|
i.push(o);
|
|
break
|
|
} r && (S = p)
|
|
}
|
|
y && ((o = !a && o) && l--, e && u.push(o))
|
|
}
|
|
if (l += c, y && c !== l) {
|
|
for (s = 0; a = v[s++];) a(u, f, t, n);
|
|
if (e) {
|
|
if (0 < l)
|
|
for (; c--;) u[c] || f[c] || (f[c] = k.call(i));
|
|
f = _e(f)
|
|
}
|
|
j.apply(i, f), r && !e && 0 < f.length && 1 < l + v.length && oe.uniqueSort(i)
|
|
}
|
|
return r && (S = p, E = h), u
|
|
}, y ? ae(i) : i))).selector = e
|
|
}
|
|
return s
|
|
}, m = oe.select = function (e, t, n, i) {
|
|
var r, o, s, a, l, c = "function" == typeof e && e,
|
|
u = !i && p(e = c.selector || e);
|
|
if (n = n || [], 1 === u.length) {
|
|
if (2 < (o = u[0] = u[0].slice(0)).length && "ID" === (s = o[0]).type && 9 === t.nodeType && C && _.relative[o[1].type]) {
|
|
if (!(t = (_.find.ID(s.matches[0].replace(Z, ee), t) || [])[0])) return n;
|
|
c && (t = t.parentNode), e = e.slice(o.shift().value.length)
|
|
}
|
|
for (r = X.needsContext.test(e) ? 0 : o.length; r-- && (s = o[r], !_.relative[a = s.type]);)
|
|
if ((l = _.find[a]) && (i = l(s.matches[0].replace(Z, ee), J.test(o[0].type) && me(t.parentNode) || t))) {
|
|
if (o.splice(r, 1), !(e = i.length && ve(o))) return j.apply(n, i), n;
|
|
break
|
|
}
|
|
}
|
|
return (c || f(e, u))(i, t, !C, n, !t || J.test(e) && me(t.parentNode) || t), n
|
|
}, d.sortStable = T.split("").sort(D).join("") === T, d.detectDuplicates = !!c, w(), d.sortDetached = le(function (e) {
|
|
return 1 & e.compareDocumentPosition(x.createElement("fieldset"))
|
|
}), le(function (e) {
|
|
return e.innerHTML = "<a href='#'></a>", "#" === e.firstChild.getAttribute("href")
|
|
}) || ce("type|href|height|width", function (e, t, n) {
|
|
if (!n) return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2)
|
|
}), d.attributes && le(function (e) {
|
|
return e.innerHTML = "<input/>", e.firstChild.setAttribute("value", ""), "" === e.firstChild.getAttribute("value")
|
|
}) || ce("value", function (e, t, n) {
|
|
if (!n && "input" === e.nodeName.toLowerCase()) return e.defaultValue
|
|
}), le(function (e) {
|
|
return null == e.getAttribute("disabled")
|
|
}) || ce(M, function (e, t, n) {
|
|
var i;
|
|
if (!n) return !0 === e[t] ? t.toLowerCase() : (i = e.getAttributeNode(t)) && i.specified ? i.value : null
|
|
}), oe
|
|
}(x);
|
|
T.find = d, T.expr = d.selectors, T.expr[":"] = T.expr.pseudos, T.uniqueSort = T.unique = d.uniqueSort, T.text = d.getText, T.isXMLDoc = d.isXML, T.contains = d.contains, T.escapeSelector = d.escape;
|
|
var p = function (e, t, n) {
|
|
for (var i = [], r = void 0 !== n;
|
|
(e = e[t]) && 9 !== e.nodeType;)
|
|
if (1 === e.nodeType) {
|
|
if (r && T(e).is(n)) break;
|
|
i.push(e)
|
|
} return i
|
|
},
|
|
w = function (e, t) {
|
|
for (var n = []; e; e = e.nextSibling) 1 === e.nodeType && e !== t && n.push(e);
|
|
return n
|
|
},
|
|
S = T.expr.match.needsContext;
|
|
|
|
function A(e, t) {
|
|
return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase()
|
|
}
|
|
var D = /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;
|
|
|
|
function O(e, n, i) {
|
|
return y(n) ? T.grep(e, function (e, t) {
|
|
return !!n.call(e, t, e) !== i
|
|
}) : n.nodeType ? T.grep(e, function (e) {
|
|
return e === n !== i
|
|
}) : "string" != typeof n ? T.grep(e, function (e) {
|
|
return -1 < r.call(n, e) !== i
|
|
}) : T.filter(n, e, i)
|
|
}
|
|
T.filter = function (e, t, n) {
|
|
var i = t[0];
|
|
return n && (e = ":not(" + e + ")"), 1 === t.length && 1 === i.nodeType ? T.find.matchesSelector(i, e) ? [i] : [] : T.find.matches(e, T.grep(t, function (e) {
|
|
return 1 === e.nodeType
|
|
}))
|
|
}, T.fn.extend({
|
|
find: function (e) {
|
|
var t, n, i = this.length,
|
|
r = this;
|
|
if ("string" != typeof e) return this.pushStack(T(e).filter(function () {
|
|
for (t = 0; t < i; t++)
|
|
if (T.contains(r[t], this)) return !0
|
|
}));
|
|
for (n = this.pushStack([]), t = 0; t < i; t++) T.find(e, r[t], n);
|
|
return 1 < i ? T.uniqueSort(n) : n
|
|
},
|
|
filter: function (e) {
|
|
return this.pushStack(O(this, e || [], !1))
|
|
},
|
|
not: function (e) {
|
|
return this.pushStack(O(this, e || [], !0))
|
|
},
|
|
is: function (e) {
|
|
return !!O(this, "string" == typeof e && S.test(e) ? T(e) : e || [], !1).length
|
|
}
|
|
});
|
|
var k, N = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;
|
|
(T.fn.init = function (e, t, n) {
|
|
var i, r;
|
|
if (!e) return this;
|
|
if (n = n || k, "string" != typeof e) return e.nodeType ? (this[0] = e, this.length = 1, this) : y(e) ? void 0 !== n.ready ? n.ready(e) : e(T) : T.makeArray(e, this);
|
|
if (!(i = "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length ? [null, e, null] : N.exec(e)) || !i[1] && t) return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e);
|
|
if (i[1]) {
|
|
if (t = t instanceof T ? t[0] : t, T.merge(this, T.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : C, !0)), D.test(i[1]) && T.isPlainObject(t))
|
|
for (i in t) y(this[i]) ? this[i](t[i]) : this.attr(i, t[i]);
|
|
return this
|
|
}
|
|
return (r = C.getElementById(i[2])) && (this[0] = r, this.length = 1), this
|
|
}).prototype = T.fn, k = T(C);
|
|
var j = /^(?:parents|prev(?:Until|All))/,
|
|
I = {
|
|
children: !0,
|
|
contents: !0,
|
|
next: !0,
|
|
prev: !0
|
|
};
|
|
|
|
function L(e, t) {
|
|
for (;
|
|
(e = e[t]) && 1 !== e.nodeType;);
|
|
return e
|
|
}
|
|
T.fn.extend({
|
|
has: function (e) {
|
|
var t = T(e, this),
|
|
n = t.length;
|
|
return this.filter(function () {
|
|
for (var e = 0; e < n; e++)
|
|
if (T.contains(this, t[e])) return !0
|
|
})
|
|
},
|
|
closest: function (e, t) {
|
|
var n, i = 0,
|
|
r = this.length,
|
|
o = [],
|
|
s = "string" != typeof e && T(e);
|
|
if (!S.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 && T.find.matchesSelector(n, e))) {
|
|
o.push(n);
|
|
break
|
|
} return this.pushStack(1 < o.length ? T.uniqueSort(o) : o)
|
|
},
|
|
index: function (e) {
|
|
return e ? "string" == typeof e ? r.call(T(e), this[0]) : r.call(this, e.jquery ? e[0] : e) : this[0] && this[0].parentNode ? this.first().prevAll().length : -1
|
|
},
|
|
add: function (e, t) {
|
|
return this.pushStack(T.uniqueSort(T.merge(this.get(), T(e, t))))
|
|
},
|
|
addBack: function (e) {
|
|
return this.add(null == e ? this.prevObject : this.prevObject.filter(e))
|
|
}
|
|
}), T.each({
|
|
parent: function (e) {
|
|
var t = e.parentNode;
|
|
return t && 11 !== t.nodeType ? t : null
|
|
},
|
|
parents: function (e) {
|
|
return p(e, "parentNode")
|
|
},
|
|
parentsUntil: function (e, t, n) {
|
|
return p(e, "parentNode", n)
|
|
},
|
|
next: function (e) {
|
|
return L(e, "nextSibling")
|
|
},
|
|
prev: function (e) {
|
|
return L(e, "previousSibling")
|
|
},
|
|
nextAll: function (e) {
|
|
return p(e, "nextSibling")
|
|
},
|
|
prevAll: function (e) {
|
|
return p(e, "previousSibling")
|
|
},
|
|
nextUntil: function (e, t, n) {
|
|
return p(e, "nextSibling", n)
|
|
},
|
|
prevUntil: function (e, t, n) {
|
|
return p(e, "previousSibling", n)
|
|
},
|
|
siblings: function (e) {
|
|
return w((e.parentNode || {}).firstChild, e)
|
|
},
|
|
children: function (e) {
|
|
return w(e.firstChild)
|
|
},
|
|
contents: function (e) {
|
|
return A(e, "iframe") ? e.contentDocument : (A(e, "template") && (e = e.content || e), T.merge([], e.childNodes))
|
|
}
|
|
}, function (i, r) {
|
|
T.fn[i] = function (e, t) {
|
|
var n = T.map(this, r, e);
|
|
return "Until" !== i.slice(-5) && (t = e), t && "string" == typeof t && (n = T.filter(t, n)), 1 < this.length && (I[i] || T.uniqueSort(n), j.test(i) && n.reverse()), this.pushStack(n)
|
|
}
|
|
});
|
|
var M = /[^\x20\t\r\n\f]+/g;
|
|
|
|
function P(e) {
|
|
return e
|
|
}
|
|
|
|
function H(e) {
|
|
throw e
|
|
}
|
|
|
|
function q(e, t, n, i) {
|
|
var r;
|
|
try {
|
|
e && y(r = e.promise) ? r.call(e).done(t).fail(n) : e && y(r = e.then) ? r.call(e, t, n) : t.apply(void 0, [e].slice(i))
|
|
} catch (e) {
|
|
n.apply(void 0, [e])
|
|
}
|
|
}
|
|
T.Callbacks = function (i) {
|
|
var e, n;
|
|
i = "string" == typeof i ? (e = i, n = {}, T.each(e.match(M) || [], function (e, t) {
|
|
n[t] = !0
|
|
}), n) : T.extend({}, i);
|
|
var r, t, o, s, a = [],
|
|
l = [],
|
|
c = -1,
|
|
u = function () {
|
|
for (s = s || i.once, o = r = !0; l.length; c = -1)
|
|
for (t = l.shift(); ++c < a.length;) !1 === a[c].apply(t[0], t[1]) && i.stopOnFalse && (c = a.length, t = !1);
|
|
i.memory || (t = !1), r = !1, s && (a = t ? [] : "")
|
|
},
|
|
f = {
|
|
add: function () {
|
|
return a && (t && !r && (c = a.length - 1, l.push(t)), function n(e) {
|
|
T.each(e, function (e, t) {
|
|
y(t) ? i.unique && f.has(t) || a.push(t) : t && t.length && "string" !== E(t) && n(t)
|
|
})
|
|
}(arguments), t && !r && u()), this
|
|
},
|
|
remove: function () {
|
|
return T.each(arguments, function (e, t) {
|
|
for (var n; - 1 < (n = T.inArray(t, a, n));) a.splice(n, 1), n <= c && c--
|
|
}), this
|
|
},
|
|
has: function (e) {
|
|
return e ? -1 < T.inArray(e, a) : 0 < a.length
|
|
},
|
|
empty: function () {
|
|
return a && (a = []), this
|
|
},
|
|
disable: function () {
|
|
return s = l = [], a = t = "", this
|
|
},
|
|
disabled: function () {
|
|
return !a
|
|
},
|
|
lock: function () {
|
|
return s = l = [], t || r || (a = t = ""), this
|
|
},
|
|
locked: function () {
|
|
return !!s
|
|
},
|
|
fireWith: function (e, t) {
|
|
return s || (t = [e, (t = t || []).slice ? t.slice() : t], l.push(t), r || u()), this
|
|
},
|
|
fire: function () {
|
|
return f.fireWith(this, arguments), this
|
|
},
|
|
fired: function () {
|
|
return !!o
|
|
}
|
|
};
|
|
return f
|
|
}, T.extend({
|
|
Deferred: function (e) {
|
|
var o = [
|
|
["notify", "progress", T.Callbacks("memory"), T.Callbacks("memory"), 2],
|
|
["resolve", "done", T.Callbacks("once memory"), T.Callbacks("once memory"), 0, "resolved"],
|
|
["reject", "fail", T.Callbacks("once memory"), T.Callbacks("once memory"), 1, "rejected"]
|
|
],
|
|
r = "pending",
|
|
s = {
|
|
state: function () {
|
|
return r
|
|
},
|
|
always: function () {
|
|
return a.done(arguments).fail(arguments), this
|
|
},
|
|
catch: function (e) {
|
|
return s.then(null, e)
|
|
},
|
|
pipe: function () {
|
|
var r = arguments;
|
|
return T.Deferred(function (i) {
|
|
T.each(o, function (e, t) {
|
|
var n = y(r[t[4]]) && r[t[4]];
|
|
a[t[1]](function () {
|
|
var e = n && n.apply(this, arguments);
|
|
e && y(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 l = 0;
|
|
|
|
function c(r, o, s, a) {
|
|
return function () {
|
|
var n = this,
|
|
i = arguments,
|
|
e = function () {
|
|
var e, t;
|
|
if (!(r < l)) {
|
|
if ((e = s.apply(n, i)) === o.promise()) throw new TypeError("Thenable self-resolution");
|
|
t = e && ("object" == typeof e || "function" == typeof e) && e.then, y(t) ? a ? t.call(e, c(l, o, P, a), c(l, o, H, a)) : (l++, t.call(e, c(l, o, P, a), c(l, o, H, a), c(l, o, P, o.notifyWith))) : (s !== P && (n = void 0, i = [e]), (a || o.resolveWith)(n, i))
|
|
}
|
|
},
|
|
t = a ? e : function () {
|
|
try {
|
|
e()
|
|
} catch (e) {
|
|
T.Deferred.exceptionHook && T.Deferred.exceptionHook(e, t.stackTrace), l <= r + 1 && (s !== H && (n = void 0, i = [e]), o.rejectWith(n, i))
|
|
}
|
|
};
|
|
r ? t() : (T.Deferred.getStackHook && (t.stackTrace = T.Deferred.getStackHook()), x.setTimeout(t))
|
|
}
|
|
}
|
|
return T.Deferred(function (e) {
|
|
o[0][3].add(c(0, e, y(i) ? i : P, e.notifyWith)), o[1][3].add(c(0, e, y(t) ? t : P)), o[2][3].add(c(0, e, y(n) ? n : H))
|
|
}).promise()
|
|
},
|
|
promise: function (e) {
|
|
return null != e ? T.extend(e, s) : s
|
|
}
|
|
},
|
|
a = {};
|
|
return T.each(o, function (e, t) {
|
|
var n = t[2],
|
|
i = t[5];
|
|
s[t[1]] = n.add, i && n.add(function () {
|
|
r = i
|
|
}, o[3 - e][2].disable, o[3 - e][3].disable, o[0][2].lock, o[0][3].lock), n.add(t[3].fire), a[t[0]] = function () {
|
|
return a[t[0] + "With"](this === a ? void 0 : this, arguments), this
|
|
}, a[t[0] + "With"] = n.fireWith
|
|
}), s.promise(a), e && e.call(a, a), a
|
|
},
|
|
when: function (e) {
|
|
var n = arguments.length,
|
|
t = n,
|
|
i = Array(t),
|
|
r = a.call(arguments),
|
|
o = T.Deferred(),
|
|
s = function (t) {
|
|
return function (e) {
|
|
i[t] = this, r[t] = 1 < arguments.length ? a.call(arguments) : e, --n || o.resolveWith(i, r)
|
|
}
|
|
};
|
|
if (n <= 1 && (q(e, o.done(s(t)).resolve, o.reject, !n), "pending" === o.state() || y(r[t] && r[t].then))) return o.then();
|
|
for (; t--;) q(r[t], s(t), o.reject);
|
|
return o.promise()
|
|
}
|
|
});
|
|
var R = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;
|
|
T.Deferred.exceptionHook = function (e, t) {
|
|
x.console && x.console.warn && e && R.test(e.name) && x.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t)
|
|
}, T.readyException = function (e) {
|
|
x.setTimeout(function () {
|
|
throw e
|
|
})
|
|
};
|
|
var F = T.Deferred();
|
|
|
|
function W() {
|
|
C.removeEventListener("DOMContentLoaded", W), x.removeEventListener("load", W), T.ready()
|
|
}
|
|
T.fn.ready = function (e) {
|
|
return F.then(e).catch(function (e) {
|
|
T.readyException(e)
|
|
}), this
|
|
}, T.extend({
|
|
isReady: !1,
|
|
readyWait: 1,
|
|
ready: function (e) {
|
|
(!0 === e ? --T.readyWait : T.isReady) || ((T.isReady = !0) !== e && 0 < --T.readyWait || F.resolveWith(C, [T]))
|
|
}
|
|
}), T.ready.then = F.then, "complete" === C.readyState || "loading" !== C.readyState && !C.documentElement.doScroll ? x.setTimeout(T.ready) : (C.addEventListener("DOMContentLoaded", W), x.addEventListener("load", W));
|
|
var B = function (e, t, n, i, r, o, s) {
|
|
var a = 0,
|
|
l = e.length,
|
|
c = null == n;
|
|
if ("object" === E(n))
|
|
for (a in r = !0, n) B(e, t, a, n[a], !0, o, s);
|
|
else if (void 0 !== i && (r = !0, y(i) || (s = !0), c && (t = s ? (t.call(e, i), null) : (c = t, function (e, t, n) {
|
|
return c.call(T(e), n)
|
|
})), t))
|
|
for (; a < l; a++) t(e[a], n, s ? i : i.call(e[a], a, t(e[a], n)));
|
|
return r ? e : c ? t.call(e) : l ? t(e[0], n) : o
|
|
},
|
|
U = /^-ms-/,
|
|
Y = /-([a-z])/g;
|
|
|
|
function $(e, t) {
|
|
return t.toUpperCase()
|
|
}
|
|
|
|
function z(e) {
|
|
return e.replace(U, "ms-").replace(Y, $)
|
|
}
|
|
var X = function (e) {
|
|
return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType
|
|
};
|
|
|
|
function Q() {
|
|
this.expando = T.expando + Q.uid++
|
|
}
|
|
Q.uid = 1, Q.prototype = {
|
|
cache: function (e) {
|
|
var t = e[this.expando];
|
|
return t || (t = {}, X(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[z(t)] = n;
|
|
else
|
|
for (i in t) r[z(i)] = t[i];
|
|
return r
|
|
},
|
|
get: function (e, t) {
|
|
return void 0 === t ? this.cache(e) : e[this.expando] && e[this.expando][z(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(z) : (t = z(t)) in i ? [t] : t.match(M) || []).length;
|
|
for (; n--;) delete i[t[n]]
|
|
}(void 0 === t || T.isEmptyObject(i)) && (e.nodeType ? e[this.expando] = void 0 : delete e[this.expando])
|
|
}
|
|
},
|
|
hasData: function (e) {
|
|
var t = e[this.expando];
|
|
return void 0 !== t && !T.isEmptyObject(t)
|
|
}
|
|
};
|
|
var K = new Q,
|
|
V = new Q,
|
|
G = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
|
|
J = /[A-Z]/g;
|
|
|
|
function Z(e, t, n) {
|
|
var i, r;
|
|
if (void 0 === n && 1 === e.nodeType)
|
|
if (i = "data-" + t.replace(J, "-$&").toLowerCase(), "string" == typeof (n = e.getAttribute(i))) {
|
|
try {
|
|
n = "true" === (r = n) || "false" !== r && ("null" === r ? null : r === +r + "" ? +r : G.test(r) ? JSON.parse(r) : r)
|
|
} catch (e) {}
|
|
V.set(e, t, n)
|
|
} else n = void 0;
|
|
return n
|
|
}
|
|
T.extend({
|
|
hasData: function (e) {
|
|
return V.hasData(e) || K.hasData(e)
|
|
},
|
|
data: function (e, t, n) {
|
|
return V.access(e, t, n)
|
|
},
|
|
removeData: function (e, t) {
|
|
V.remove(e, t)
|
|
},
|
|
_data: function (e, t, n) {
|
|
return K.access(e, t, n)
|
|
},
|
|
_removeData: function (e, t) {
|
|
K.remove(e, t)
|
|
}
|
|
}), T.fn.extend({
|
|
data: function (n, e) {
|
|
var t, i, r, o = this[0],
|
|
s = o && o.attributes;
|
|
if (void 0 !== n) return "object" == typeof n ? this.each(function () {
|
|
V.set(this, n)
|
|
}) : B(this, function (e) {
|
|
var t;
|
|
if (o && void 0 === e) {
|
|
if (void 0 !== (t = V.get(o, n))) return t;
|
|
if (void 0 !== (t = Z(o, n))) return t
|
|
} else this.each(function () {
|
|
V.set(this, n, e)
|
|
})
|
|
}, null, e, 1 < arguments.length, null, !0);
|
|
if (this.length && (r = V.get(o), 1 === o.nodeType && !K.get(o, "hasDataAttrs"))) {
|
|
for (t = s.length; t--;) s[t] && 0 === (i = s[t].name).indexOf("data-") && (i = z(i.slice(5)), Z(o, i, r[i]));
|
|
K.set(o, "hasDataAttrs", !0)
|
|
}
|
|
return r
|
|
},
|
|
removeData: function (e) {
|
|
return this.each(function () {
|
|
V.remove(this, e)
|
|
})
|
|
}
|
|
}), T.extend({
|
|
queue: function (e, t, n) {
|
|
var i;
|
|
if (e) return t = (t || "fx") + "queue", i = K.get(e, t), n && (!i || Array.isArray(n) ? i = K.access(e, t, T.makeArray(n)) : i.push(n)), i || []
|
|
},
|
|
dequeue: function (e, t) {
|
|
t = t || "fx";
|
|
var n = T.queue(e, t),
|
|
i = n.length,
|
|
r = n.shift(),
|
|
o = T._queueHooks(e, t);
|
|
"inprogress" === r && (r = n.shift(), i--), r && ("fx" === t && n.unshift("inprogress"), delete o.stop, r.call(e, function () {
|
|
T.dequeue(e, t)
|
|
}, o)), !i && o && o.empty.fire()
|
|
},
|
|
_queueHooks: function (e, t) {
|
|
var n = t + "queueHooks";
|
|
return K.get(e, n) || K.access(e, n, {
|
|
empty: T.Callbacks("once memory").add(function () {
|
|
K.remove(e, [t + "queue", n])
|
|
})
|
|
})
|
|
}
|
|
}), T.fn.extend({
|
|
queue: function (t, n) {
|
|
var e = 2;
|
|
return "string" != typeof t && (n = t, t = "fx", e--), arguments.length < e ? T.queue(this[0], t) : void 0 === n ? this : this.each(function () {
|
|
var e = T.queue(this, t, n);
|
|
T._queueHooks(this, t), "fx" === t && "inprogress" !== e[0] && T.dequeue(this, t)
|
|
})
|
|
},
|
|
dequeue: function (e) {
|
|
return this.each(function () {
|
|
T.dequeue(this, e)
|
|
})
|
|
},
|
|
clearQueue: function (e) {
|
|
return this.queue(e || "fx", [])
|
|
},
|
|
promise: function (e, t) {
|
|
var n, i = 1,
|
|
r = T.Deferred(),
|
|
o = this,
|
|
s = this.length,
|
|
a = function () {
|
|
--i || r.resolveWith(o, [o])
|
|
};
|
|
for ("string" != typeof e && (t = e, e = void 0), e = e || "fx"; s--;)(n = K.get(o[s], e + "queueHooks")) && n.empty && (i++, n.empty.add(a));
|
|
return a(), r.promise(t)
|
|
}
|
|
});
|
|
var ee = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,
|
|
te = new RegExp("^(?:([+-])=|)(" + ee + ")([a-z%]*)$", "i"),
|
|
ne = ["Top", "Right", "Bottom", "Left"],
|
|
ie = function (e, t) {
|
|
return "none" === (e = t || e).style.display || "" === e.style.display && T.contains(e.ownerDocument, e) && "none" === T.css(e, "display")
|
|
},
|
|
re = function (e, t, n, i) {
|
|
var r, o, s = {};
|
|
for (o in t) s[o] = e.style[o], e.style[o] = t[o];
|
|
for (o in r = n.apply(e, i || []), t) e.style[o] = s[o];
|
|
return r
|
|
};
|
|
|
|
function oe(e, t, n, i) {
|
|
var r, o, s = 20,
|
|
a = i ? function () {
|
|
return i.cur()
|
|
} : function () {
|
|
return T.css(e, t, "")
|
|
},
|
|
l = a(),
|
|
c = n && n[3] || (T.cssNumber[t] ? "" : "px"),
|
|
u = (T.cssNumber[t] || "px" !== c && +l) && te.exec(T.css(e, t));
|
|
if (u && u[3] !== c) {
|
|
for (l /= 2, c = c || u[3], u = +l || 1; s--;) T.style(e, t, u + c), (1 - o) * (1 - (o = a() / l || .5)) <= 0 && (s = 0), u /= o;
|
|
u *= 2, T.style(e, t, u + c), n = n || []
|
|
}
|
|
return n && (u = +u || +l || 0, r = n[1] ? u + (n[1] + 1) * n[2] : +n[2], i && (i.unit = c, i.start = u, i.end = r)), r
|
|
}
|
|
var se = {};
|
|
|
|
function ae(e, t) {
|
|
for (var n, i, r = [], o = 0, s = e.length; o < s; o++)(i = e[o]).style && (n = i.style.display, t ? ("none" === n && (r[o] = K.get(i, "display") || null, r[o] || (i.style.display = "")), "" === i.style.display && ie(i) && (r[o] = (f = c = l = void 0, c = (a = i).ownerDocument, u = a.nodeName, (f = se[u]) || (l = c.body.appendChild(c.createElement(u)), f = T.css(l, "display"), l.parentNode.removeChild(l), "none" === f && (f = "block"), se[u] = f)))) : "none" !== n && (r[o] = "none", K.set(i, "display", n)));
|
|
var a, l, c, u, f;
|
|
for (o = 0; o < s; o++) null != r[o] && (e[o].style.display = r[o]);
|
|
return e
|
|
}
|
|
T.fn.extend({
|
|
show: function () {
|
|
return ae(this, !0)
|
|
},
|
|
hide: function () {
|
|
return ae(this)
|
|
},
|
|
toggle: function (e) {
|
|
return "boolean" == typeof e ? e ? this.show() : this.hide() : this.each(function () {
|
|
ie(this) ? T(this).show() : T(this).hide()
|
|
})
|
|
}
|
|
});
|
|
var le = /^(?:checkbox|radio)$/i,
|
|
ce = /<([a-z][^\/\0>\x20\t\r\n\f]+)/i,
|
|
ue = /^$|^module$|\/(?:java|ecma)script/i,
|
|
fe = {
|
|
option: [1, "<select multiple='multiple'>", "</select>"],
|
|
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 he(e, t) {
|
|
var n;
|
|
return n = void 0 !== e.getElementsByTagName ? e.getElementsByTagName(t || "*") : void 0 !== e.querySelectorAll ? e.querySelectorAll(t || "*") : [], void 0 === t || t && A(e, t) ? T.merge([e], n) : n
|
|
}
|
|
|
|
function de(e, t) {
|
|
for (var n = 0, i = e.length; n < i; n++) K.set(e[n], "globalEval", !t || K.get(t[n], "globalEval"))
|
|
}
|
|
fe.optgroup = fe.option, fe.tbody = fe.tfoot = fe.colgroup = fe.caption = fe.thead, fe.th = fe.td;
|
|
var pe, me, ge = /<|&#?\w+;/;
|
|
|
|
function ve(e, t, n, i, r) {
|
|
for (var o, s, a, l, c, u, f = t.createDocumentFragment(), h = [], d = 0, p = e.length; d < p; d++)
|
|
if ((o = e[d]) || 0 === o)
|
|
if ("object" === E(o)) T.merge(h, o.nodeType ? [o] : o);
|
|
else if (ge.test(o)) {
|
|
for (s = s || f.appendChild(t.createElement("div")), a = (ce.exec(o) || ["", ""])[1].toLowerCase(), l = fe[a] || fe._default, s.innerHTML = l[1] + T.htmlPrefilter(o) + l[2], u = l[0]; u--;) s = s.lastChild;
|
|
T.merge(h, s.childNodes), (s = f.firstChild).textContent = ""
|
|
} else h.push(t.createTextNode(o));
|
|
for (f.textContent = "", d = 0; o = h[d++];)
|
|
if (i && -1 < T.inArray(o, i)) r && r.push(o);
|
|
else if (c = T.contains(o.ownerDocument, o), s = he(f.appendChild(o), "script"), c && de(s), n)
|
|
for (u = 0; o = s[u++];) ue.test(o.type || "") && n.push(o);
|
|
return f
|
|
}
|
|
pe = C.createDocumentFragment().appendChild(C.createElement("div")), (me = C.createElement("input")).setAttribute("type", "radio"), me.setAttribute("checked", "checked"), me.setAttribute("name", "t"), pe.appendChild(me), v.checkClone = pe.cloneNode(!0).cloneNode(!0).lastChild.checked, pe.innerHTML = "<textarea>x</textarea>", v.noCloneChecked = !!pe.cloneNode(!0).lastChild.defaultValue;
|
|
var ye = C.documentElement,
|
|
be = /^key/,
|
|
_e = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
|
|
Ee = /^([^.]*)(?:\.(.+)|)/;
|
|
|
|
function we() {
|
|
return !0
|
|
}
|
|
|
|
function xe() {
|
|
return !1
|
|
}
|
|
|
|
function Ce() {
|
|
try {
|
|
return C.activeElement
|
|
} catch (e) {}
|
|
}
|
|
|
|
function Te(e, t, n, i, r, o) {
|
|
var s, a;
|
|
if ("object" == typeof t) {
|
|
for (a in "string" != typeof n && (i = i || n, n = void 0), t) Te(e, a, n, i, t[a], o);
|
|
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 = xe;
|
|
else if (!r) return e;
|
|
return 1 === o && (s = r, (r = function (e) {
|
|
return T().off(e), s.apply(this, arguments)
|
|
}).guid = s.guid || (s.guid = T.guid++)), e.each(function () {
|
|
T.event.add(this, t, r, i, n)
|
|
})
|
|
}
|
|
T.event = {
|
|
global: {},
|
|
add: function (t, e, n, i, r) {
|
|
var o, s, a, l, c, u, f, h, d, p, m, g = K.get(t);
|
|
if (g)
|
|
for (n.handler && (n = (o = n).handler, r = o.selector), r && T.find.matchesSelector(ye, r), n.guid || (n.guid = T.guid++), (l = g.events) || (l = g.events = {}), (s = g.handle) || (s = g.handle = function (e) {
|
|
return void 0 !== T && T.event.triggered !== e.type ? T.event.dispatch.apply(t, arguments) : void 0
|
|
}), c = (e = (e || "").match(M) || [""]).length; c--;) d = m = (a = Ee.exec(e[c]) || [])[1], p = (a[2] || "").split(".").sort(), d && (f = T.event.special[d] || {}, d = (r ? f.delegateType : f.bindType) || d, f = T.event.special[d] || {}, u = T.extend({
|
|
type: d,
|
|
origType: m,
|
|
data: i,
|
|
handler: n,
|
|
guid: n.guid,
|
|
selector: r,
|
|
needsContext: r && T.expr.match.needsContext.test(r),
|
|
namespace: p.join(".")
|
|
}, o), (h = l[d]) || ((h = l[d] = []).delegateCount = 0, f.setup && !1 !== f.setup.call(t, i, p, s) || t.addEventListener && t.addEventListener(d, s)), f.add && (f.add.call(t, u), u.handler.guid || (u.handler.guid = n.guid)), r ? h.splice(h.delegateCount++, 0, u) : h.push(u), T.event.global[d] = !0)
|
|
},
|
|
remove: function (e, t, n, i, r) {
|
|
var o, s, a, l, c, u, f, h, d, p, m, g = K.hasData(e) && K.get(e);
|
|
if (g && (l = g.events)) {
|
|
for (c = (t = (t || "").match(M) || [""]).length; c--;)
|
|
if (d = m = (a = Ee.exec(t[c]) || [])[1], p = (a[2] || "").split(".").sort(), d) {
|
|
for (f = T.event.special[d] || {}, h = l[d = (i ? f.delegateType : f.bindType) || d] || [], a = a[2] && new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), s = o = h.length; o--;) u = h[o], !r && m !== u.origType || n && n.guid !== u.guid || a && !a.test(u.namespace) || i && i !== u.selector && ("**" !== i || !u.selector) || (h.splice(o, 1), u.selector && h.delegateCount--, f.remove && f.remove.call(e, u));
|
|
s && !h.length && (f.teardown && !1 !== f.teardown.call(e, p, g.handle) || T.removeEvent(e, d, g.handle), delete l[d])
|
|
} else
|
|
for (d in l) T.event.remove(e, d + t[c], n, i, !0);
|
|
T.isEmptyObject(l) && K.remove(e, "handle events")
|
|
}
|
|
},
|
|
dispatch: function (e) {
|
|
var t, n, i, r, o, s, a = T.event.fix(e),
|
|
l = new Array(arguments.length),
|
|
c = (K.get(this, "events") || {})[a.type] || [],
|
|
u = T.event.special[a.type] || {};
|
|
for (l[0] = a, t = 1; t < arguments.length; t++) l[t] = arguments[t];
|
|
if (a.delegateTarget = this, !u.preDispatch || !1 !== u.preDispatch.call(this, a)) {
|
|
for (s = T.event.handlers.call(this, a, c), t = 0;
|
|
(r = s[t++]) && !a.isPropagationStopped();)
|
|
for (a.currentTarget = r.elem, n = 0;
|
|
(o = r.handlers[n++]) && !a.isImmediatePropagationStopped();) a.rnamespace && !a.rnamespace.test(o.namespace) || (a.handleObj = o, a.data = o.data, void 0 !== (i = ((T.event.special[o.origType] || {}).handle || o.handler).apply(r.elem, l)) && !1 === (a.result = i) && (a.preventDefault(), a.stopPropagation()));
|
|
return u.postDispatch && u.postDispatch.call(this, a), a.result
|
|
}
|
|
},
|
|
handlers: function (e, t) {
|
|
var n, i, r, o, s, a = [],
|
|
l = t.delegateCount,
|
|
c = e.target;
|
|
if (l && c.nodeType && !("click" === e.type && 1 <= e.button))
|
|
for (; c !== this; c = c.parentNode || this)
|
|
if (1 === c.nodeType && ("click" !== e.type || !0 !== c.disabled)) {
|
|
for (o = [], s = {}, n = 0; n < l; n++) void 0 === s[r = (i = t[n]).selector + " "] && (s[r] = i.needsContext ? -1 < T(r, this).index(c) : T.find(r, this, null, [c]).length), s[r] && o.push(i);
|
|
o.length && a.push({
|
|
elem: c,
|
|
handlers: o
|
|
})
|
|
} return c = this, l < t.length && a.push({
|
|
elem: c,
|
|
handlers: t.slice(l)
|
|
}), a
|
|
},
|
|
addProp: function (t, e) {
|
|
Object.defineProperty(T.Event.prototype, t, {
|
|
enumerable: !0,
|
|
configurable: !0,
|
|
get: y(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[T.expando] ? e : new T.Event(e)
|
|
},
|
|
special: {
|
|
load: {
|
|
noBubble: !0
|
|
},
|
|
focus: {
|
|
trigger: function () {
|
|
if (this !== Ce() && this.focus) return this.focus(), !1
|
|
},
|
|
delegateType: "focusin"
|
|
},
|
|
blur: {
|
|
trigger: function () {
|
|
if (this === Ce() && this.blur) return this.blur(), !1
|
|
},
|
|
delegateType: "focusout"
|
|
},
|
|
click: {
|
|
trigger: function () {
|
|
if ("checkbox" === this.type && this.click && A(this, "input")) return this.click(), !1
|
|
},
|
|
_default: function (e) {
|
|
return A(e.target, "a")
|
|
}
|
|
},
|
|
beforeunload: {
|
|
postDispatch: function (e) {
|
|
void 0 !== e.result && e.originalEvent && (e.originalEvent.returnValue = e.result)
|
|
}
|
|
}
|
|
}
|
|
}, T.removeEvent = function (e, t, n) {
|
|
e.removeEventListener && e.removeEventListener(t, n)
|
|
}, T.Event = function (e, t) {
|
|
if (!(this instanceof T.Event)) return new T.Event(e, t);
|
|
e && e.type ? (this.originalEvent = e, this.type = e.type, this.isDefaultPrevented = e.defaultPrevented || void 0 === e.defaultPrevented && !1 === e.returnValue ? we : xe, 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 && T.extend(this, t), this.timeStamp = e && e.timeStamp || Date.now(), this[T.expando] = !0
|
|
}, T.Event.prototype = {
|
|
constructor: T.Event,
|
|
isDefaultPrevented: xe,
|
|
isPropagationStopped: xe,
|
|
isImmediatePropagationStopped: xe,
|
|
isSimulated: !1,
|
|
preventDefault: function () {
|
|
var e = this.originalEvent;
|
|
this.isDefaultPrevented = we, e && !this.isSimulated && e.preventDefault()
|
|
},
|
|
stopPropagation: function () {
|
|
var e = this.originalEvent;
|
|
this.isPropagationStopped = we, e && !this.isSimulated && e.stopPropagation()
|
|
},
|
|
stopImmediatePropagation: function () {
|
|
var e = this.originalEvent;
|
|
this.isImmediatePropagationStopped = we, e && !this.isSimulated && e.stopImmediatePropagation(), this.stopPropagation()
|
|
}
|
|
}, T.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,
|
|
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: function (e) {
|
|
var t = e.button;
|
|
return null == e.which && be.test(e.type) ? null != e.charCode ? e.charCode : e.keyCode : !e.which && void 0 !== t && _e.test(e.type) ? 1 & t ? 1 : 2 & t ? 3 : 4 & t ? 2 : 0 : e.which
|
|
}
|
|
}, T.event.addProp), T.each({
|
|
mouseenter: "mouseover",
|
|
mouseleave: "mouseout",
|
|
pointerenter: "pointerover",
|
|
pointerleave: "pointerout"
|
|
}, function (e, r) {
|
|
T.event.special[e] = {
|
|
delegateType: r,
|
|
bindType: r,
|
|
handle: function (e) {
|
|
var t, n = e.relatedTarget,
|
|
i = e.handleObj;
|
|
return n && (n === this || T.contains(this, n)) || (e.type = i.origType, t = i.handler.apply(this, arguments), e.type = r), t
|
|
}
|
|
}
|
|
}), T.fn.extend({
|
|
on: function (e, t, n, i) {
|
|
return Te(this, e, t, n, i)
|
|
},
|
|
one: function (e, t, n, i) {
|
|
return Te(this, e, t, n, i, 1)
|
|
},
|
|
off: function (e, t, n) {
|
|
var i, r;
|
|
if (e && e.preventDefault && e.handleObj) return i = e.handleObj, T(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 = xe), this.each(function () {
|
|
T.event.remove(this, e, n, t)
|
|
});
|
|
for (r in e) this.off(r, t, e[r]);
|
|
return this
|
|
}
|
|
});
|
|
var Se = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\/\0>\x20\t\r\n\f]*)[^>]*)\/>/gi,
|
|
Ae = /<script|<style|<link/i,
|
|
De = /checked\s*(?:[^=]|=\s*.checked.)/i,
|
|
Oe = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g;
|
|
|
|
function ke(e, t) {
|
|
return A(e, "table") && A(11 !== t.nodeType ? t : t.firstChild, "tr") && T(e).children("tbody")[0] || e
|
|
}
|
|
|
|
function Ne(e) {
|
|
return e.type = (null !== e.getAttribute("type")) + "/" + e.type, e
|
|
}
|
|
|
|
function je(e) {
|
|
return "true/" === (e.type || "").slice(0, 5) ? e.type = e.type.slice(5) : e.removeAttribute("type"), e
|
|
}
|
|
|
|
function Ie(e, t) {
|
|
var n, i, r, o, s, a, l, c;
|
|
if (1 === t.nodeType) {
|
|
if (K.hasData(e) && (o = K.access(e), s = K.set(t, o), c = o.events))
|
|
for (r in delete s.handle, s.events = {}, c)
|
|
for (n = 0, i = c[r].length; n < i; n++) T.event.add(t, r, c[r][n]);
|
|
V.hasData(e) && (a = V.access(e), l = T.extend({}, a), V.set(t, l))
|
|
}
|
|
}
|
|
|
|
function Le(n, i, r, o) {
|
|
i = m.apply([], i);
|
|
var e, t, s, a, l, c, u = 0,
|
|
f = n.length,
|
|
h = f - 1,
|
|
d = i[0],
|
|
p = y(d);
|
|
if (p || 1 < f && "string" == typeof d && !v.checkClone && De.test(d)) return n.each(function (e) {
|
|
var t = n.eq(e);
|
|
p && (i[0] = d.call(this, e, t.html())), Le(t, i, r, o)
|
|
});
|
|
if (f && (t = (e = ve(i, n[0].ownerDocument, !1, n, o)).firstChild, 1 === e.childNodes.length && (e = t), t || o)) {
|
|
for (a = (s = T.map(he(e, "script"), Ne)).length; u < f; u++) l = e, u !== h && (l = T.clone(l, !0, !0), a && T.merge(s, he(l, "script"))), r.call(n[u], l, u);
|
|
if (a)
|
|
for (c = s[s.length - 1].ownerDocument, T.map(s, je), u = 0; u < a; u++) l = s[u], ue.test(l.type || "") && !K.access(l, "globalEval") && T.contains(c, l) && (l.src && "module" !== (l.type || "").toLowerCase() ? T._evalUrl && T._evalUrl(l.src) : _(l.textContent.replace(Oe, ""), c, l))
|
|
}
|
|
return n
|
|
}
|
|
|
|
function Me(e, t, n) {
|
|
for (var i, r = t ? T.filter(t, e) : e, o = 0; null != (i = r[o]); o++) n || 1 !== i.nodeType || T.cleanData(he(i)), i.parentNode && (n && T.contains(i.ownerDocument, i) && de(he(i, "script")), i.parentNode.removeChild(i));
|
|
return e
|
|
}
|
|
T.extend({
|
|
htmlPrefilter: function (e) {
|
|
return e.replace(Se, "<$1></$2>")
|
|
},
|
|
clone: function (e, t, n) {
|
|
var i, r, o, s, a, l, c, u = e.cloneNode(!0),
|
|
f = T.contains(e.ownerDocument, e);
|
|
if (!(v.noCloneChecked || 1 !== e.nodeType && 11 !== e.nodeType || T.isXMLDoc(e)))
|
|
for (s = he(u), i = 0, r = (o = he(e)).length; i < r; i++) a = o[i], l = s[i], void 0, "input" === (c = l.nodeName.toLowerCase()) && le.test(a.type) ? l.checked = a.checked : "input" !== c && "textarea" !== c || (l.defaultValue = a.defaultValue);
|
|
if (t)
|
|
if (n)
|
|
for (o = o || he(e), s = s || he(u), i = 0, r = o.length; i < r; i++) Ie(o[i], s[i]);
|
|
else Ie(e, u);
|
|
return 0 < (s = he(u, "script")).length && de(s, !f && he(e, "script")), u
|
|
},
|
|
cleanData: function (e) {
|
|
for (var t, n, i, r = T.event.special, o = 0; void 0 !== (n = e[o]); o++)
|
|
if (X(n)) {
|
|
if (t = n[K.expando]) {
|
|
if (t.events)
|
|
for (i in t.events) r[i] ? T.event.remove(n, i) : T.removeEvent(n, i, t.handle);
|
|
n[K.expando] = void 0
|
|
}
|
|
n[V.expando] && (n[V.expando] = void 0)
|
|
}
|
|
}
|
|
}), T.fn.extend({
|
|
detach: function (e) {
|
|
return Me(this, e, !0)
|
|
},
|
|
remove: function (e) {
|
|
return Me(this, e)
|
|
},
|
|
text: function (e) {
|
|
return B(this, function (e) {
|
|
return void 0 === e ? T.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 Le(this, arguments, function (e) {
|
|
1 !== this.nodeType && 11 !== this.nodeType && 9 !== this.nodeType || ke(this, e).appendChild(e)
|
|
})
|
|
},
|
|
prepend: function () {
|
|
return Le(this, arguments, function (e) {
|
|
if (1 === this.nodeType || 11 === this.nodeType || 9 === this.nodeType) {
|
|
var t = ke(this, e);
|
|
t.insertBefore(e, t.firstChild)
|
|
}
|
|
})
|
|
},
|
|
before: function () {
|
|
return Le(this, arguments, function (e) {
|
|
this.parentNode && this.parentNode.insertBefore(e, this)
|
|
})
|
|
},
|
|
after: function () {
|
|
return Le(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 && (T.cleanData(he(e, !1)), e.textContent = "");
|
|
return this
|
|
},
|
|
clone: function (e, t) {
|
|
return e = null != e && e, t = null == t ? e : t, this.map(function () {
|
|
return T.clone(this, e, t)
|
|
})
|
|
},
|
|
html: function (e) {
|
|
return B(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 && !Ae.test(e) && !fe[(ce.exec(e) || ["", ""])[1].toLowerCase()]) {
|
|
e = T.htmlPrefilter(e);
|
|
try {
|
|
for (; n < i; n++) 1 === (t = this[n] || {}).nodeType && (T.cleanData(he(t, !1)), t.innerHTML = e);
|
|
t = 0
|
|
} catch (e) {}
|
|
}
|
|
t && this.empty().append(e)
|
|
}, null, e, arguments.length)
|
|
},
|
|
replaceWith: function () {
|
|
var n = [];
|
|
return Le(this, arguments, function (e) {
|
|
var t = this.parentNode;
|
|
T.inArray(this, n) < 0 && (T.cleanData(he(this)), t && t.replaceChild(e, this))
|
|
}, n)
|
|
}
|
|
}), T.each({
|
|
appendTo: "append",
|
|
prependTo: "prepend",
|
|
insertBefore: "before",
|
|
insertAfter: "after",
|
|
replaceAll: "replaceWith"
|
|
}, function (e, s) {
|
|
T.fn[e] = function (e) {
|
|
for (var t, n = [], i = T(e), r = i.length - 1, o = 0; o <= r; o++) t = o === r ? this : this.clone(!0), T(i[o])[s](t), l.apply(n, t.get());
|
|
return this.pushStack(n)
|
|
}
|
|
});
|
|
var Pe = new RegExp("^(" + ee + ")(?!px)[a-z%]+$", "i"),
|
|
He = function (e) {
|
|
var t = e.ownerDocument.defaultView;
|
|
return t && t.opener || (t = x), t.getComputedStyle(e)
|
|
},
|
|
qe = new RegExp(ne.join("|"), "i");
|
|
|
|
function Re(e, t, n) {
|
|
var i, r, o, s, a = e.style;
|
|
return (n = n || He(e)) && ("" !== (s = n.getPropertyValue(t) || n[t]) || T.contains(e.ownerDocument, e) || (s = T.style(e, t)), !v.pixelBoxStyles() && Pe.test(s) && qe.test(t) && (i = a.width, r = a.minWidth, o = a.maxWidth, a.minWidth = a.maxWidth = a.width = s, s = n.width, a.width = i, a.minWidth = r, a.maxWidth = o)), void 0 !== s ? s + "" : s
|
|
}
|
|
|
|
function Fe(e, t) {
|
|
return {
|
|
get: function () {
|
|
if (!e()) return (this.get = t).apply(this, arguments);
|
|
delete this.get
|
|
}
|
|
}
|
|
}! function () {
|
|
function e() {
|
|
if (l) {
|
|
a.style.cssText = "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0", l.style.cssText = "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%", ye.appendChild(a).appendChild(l);
|
|
var e = x.getComputedStyle(l);
|
|
n = "1%" !== e.top, s = 12 === t(e.marginLeft), l.style.right = "60%", o = 36 === t(e.right), i = 36 === t(e.width), l.style.position = "absolute", r = 36 === l.offsetWidth || "absolute", ye.removeChild(a), l = null
|
|
}
|
|
}
|
|
|
|
function t(e) {
|
|
return Math.round(parseFloat(e))
|
|
}
|
|
var n, i, r, o, s, a = C.createElement("div"),
|
|
l = C.createElement("div");
|
|
l.style && (l.style.backgroundClip = "content-box", l.cloneNode(!0).style.backgroundClip = "", v.clearCloneStyle = "content-box" === l.style.backgroundClip, T.extend(v, {
|
|
boxSizingReliable: function () {
|
|
return e(), i
|
|
},
|
|
pixelBoxStyles: function () {
|
|
return e(), o
|
|
},
|
|
pixelPosition: function () {
|
|
return e(), n
|
|
},
|
|
reliableMarginLeft: function () {
|
|
return e(), s
|
|
},
|
|
scrollboxSize: function () {
|
|
return e(), r
|
|
}
|
|
}))
|
|
}();
|
|
var We = /^(none|table(?!-c[ea]).+)/,
|
|
Be = /^--/,
|
|
Ue = {
|
|
position: "absolute",
|
|
visibility: "hidden",
|
|
display: "block"
|
|
},
|
|
Ye = {
|
|
letterSpacing: "0",
|
|
fontWeight: "400"
|
|
},
|
|
$e = ["Webkit", "Moz", "ms"],
|
|
ze = C.createElement("div").style;
|
|
|
|
function Xe(e) {
|
|
var t = T.cssProps[e];
|
|
return t || (t = T.cssProps[e] = function (e) {
|
|
if (e in ze) return e;
|
|
for (var t = e[0].toUpperCase() + e.slice(1), n = $e.length; n--;)
|
|
if ((e = $e[n] + t) in ze) return e
|
|
}(e) || e), t
|
|
}
|
|
|
|
function Qe(e, t, n) {
|
|
var i = te.exec(t);
|
|
return i ? Math.max(0, i[2] - (n || 0)) + (i[3] || "px") : t
|
|
}
|
|
|
|
function Ke(e, t, n, i, r, o) {
|
|
var s = "width" === t ? 1 : 0,
|
|
a = 0,
|
|
l = 0;
|
|
if (n === (i ? "border" : "content")) return 0;
|
|
for (; s < 4; s += 2) "margin" === n && (l += T.css(e, n + ne[s], !0, r)), i ? ("content" === n && (l -= T.css(e, "padding" + ne[s], !0, r)), "margin" !== n && (l -= T.css(e, "border" + ne[s] + "Width", !0, r))) : (l += T.css(e, "padding" + ne[s], !0, r), "padding" !== n ? l += T.css(e, "border" + ne[s] + "Width", !0, r) : a += T.css(e, "border" + ne[s] + "Width", !0, r));
|
|
return !i && 0 <= o && (l += Math.max(0, Math.ceil(e["offset" + t[0].toUpperCase() + t.slice(1)] - o - l - a - .5))), l
|
|
}
|
|
|
|
function Ve(e, t, n) {
|
|
var i = He(e),
|
|
r = Re(e, t, i),
|
|
o = "border-box" === T.css(e, "boxSizing", !1, i),
|
|
s = o;
|
|
if (Pe.test(r)) {
|
|
if (!n) return r;
|
|
r = "auto"
|
|
}
|
|
return s = s && (v.boxSizingReliable() || r === e.style[t]), ("auto" === r || !parseFloat(r) && "inline" === T.css(e, "display", !1, i)) && (r = e["offset" + t[0].toUpperCase() + t.slice(1)], s = !0), (r = parseFloat(r) || 0) + Ke(e, t, n || (o ? "border" : "content"), s, i, r) + "px"
|
|
}
|
|
|
|
function Ge(e, t, n, i, r) {
|
|
return new Ge.prototype.init(e, t, n, i, r)
|
|
}
|
|
T.extend({
|
|
cssHooks: {
|
|
opacity: {
|
|
get: function (e, t) {
|
|
if (t) {
|
|
var n = Re(e, "opacity");
|
|
return "" === n ? "1" : n
|
|
}
|
|
}
|
|
}
|
|
},
|
|
cssNumber: {
|
|
animationIterationCount: !0,
|
|
columnCount: !0,
|
|
fillOpacity: !0,
|
|
flexGrow: !0,
|
|
flexShrink: !0,
|
|
fontWeight: !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, o, s, a = z(t),
|
|
l = Be.test(t),
|
|
c = e.style;
|
|
if (l || (t = Xe(a)), s = T.cssHooks[t] || T.cssHooks[a], void 0 === n) return s && "get" in s && void 0 !== (r = s.get(e, !1, i)) ? r : c[t];
|
|
"string" == (o = typeof n) && (r = te.exec(n)) && r[1] && (n = oe(e, t, r), o = "number"), null != n && n == n && ("number" === o && (n += r && r[3] || (T.cssNumber[a] ? "" : "px")), v.clearCloneStyle || "" !== n || 0 !== t.indexOf("background") || (c[t] = "inherit"), s && "set" in s && void 0 === (n = s.set(e, n, i)) || (l ? c.setProperty(t, n) : c[t] = n))
|
|
}
|
|
},
|
|
css: function (e, t, n, i) {
|
|
var r, o, s, a = z(t);
|
|
return Be.test(t) || (t = Xe(a)), (s = T.cssHooks[t] || T.cssHooks[a]) && "get" in s && (r = s.get(e, !0, n)), void 0 === r && (r = Re(e, t, i)), "normal" === r && t in Ye && (r = Ye[t]), "" === n || n ? (o = parseFloat(r), !0 === n || isFinite(o) ? o || 0 : r) : r
|
|
}
|
|
}), T.each(["height", "width"], function (e, a) {
|
|
T.cssHooks[a] = {
|
|
get: function (e, t, n) {
|
|
if (t) return !We.test(T.css(e, "display")) || e.getClientRects().length && e.getBoundingClientRect().width ? Ve(e, a, n) : re(e, Ue, function () {
|
|
return Ve(e, a, n)
|
|
})
|
|
},
|
|
set: function (e, t, n) {
|
|
var i, r = He(e),
|
|
o = "border-box" === T.css(e, "boxSizing", !1, r),
|
|
s = n && Ke(e, a, n, o, r);
|
|
return o && v.scrollboxSize() === r.position && (s -= Math.ceil(e["offset" + a[0].toUpperCase() + a.slice(1)] - parseFloat(r[a]) - Ke(e, a, "border", !1, r) - .5)), s && (i = te.exec(t)) && "px" !== (i[3] || "px") && (e.style[a] = t, t = T.css(e, a)), Qe(0, t, s)
|
|
}
|
|
}
|
|
}), T.cssHooks.marginLeft = Fe(v.reliableMarginLeft, function (e, t) {
|
|
if (t) return (parseFloat(Re(e, "marginLeft")) || e.getBoundingClientRect().left - re(e, {
|
|
marginLeft: 0
|
|
}, function () {
|
|
return e.getBoundingClientRect().left
|
|
})) + "px"
|
|
}), T.each({
|
|
margin: "",
|
|
padding: "",
|
|
border: "Width"
|
|
}, function (r, o) {
|
|
T.cssHooks[r + o] = {
|
|
expand: function (e) {
|
|
for (var t = 0, n = {}, i = "string" == typeof e ? e.split(" ") : [e]; t < 4; t++) n[r + ne[t] + o] = i[t] || i[t - 2] || i[0];
|
|
return n
|
|
}
|
|
}, "margin" !== r && (T.cssHooks[r + o].set = Qe)
|
|
}), T.fn.extend({
|
|
css: function (e, t) {
|
|
return B(this, function (e, t, n) {
|
|
var i, r, o = {},
|
|
s = 0;
|
|
if (Array.isArray(t)) {
|
|
for (i = He(e), r = t.length; s < r; s++) o[t[s]] = T.css(e, t[s], !1, i);
|
|
return o
|
|
}
|
|
return void 0 !== n ? T.style(e, t, n) : T.css(e, t)
|
|
}, e, t, 1 < arguments.length)
|
|
}
|
|
}), ((T.Tween = Ge).prototype = {
|
|
constructor: Ge,
|
|
init: function (e, t, n, i, r, o) {
|
|
this.elem = e, this.prop = n, this.easing = r || T.easing._default, this.options = t, this.start = this.now = this.cur(), this.end = i, this.unit = o || (T.cssNumber[n] ? "" : "px")
|
|
},
|
|
cur: function () {
|
|
var e = Ge.propHooks[this.prop];
|
|
return e && e.get ? e.get(this) : Ge.propHooks._default.get(this)
|
|
},
|
|
run: function (e) {
|
|
var t, n = Ge.propHooks[this.prop];
|
|
return this.options.duration ? this.pos = t = T.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.set(this) : Ge.propHooks._default.set(this), this
|
|
}
|
|
}).init.prototype = Ge.prototype, (Ge.propHooks = {
|
|
_default: {
|
|
get: function (e) {
|
|
var t;
|
|
return 1 !== e.elem.nodeType || null != e.elem[e.prop] && null == e.elem.style[e.prop] ? e.elem[e.prop] : (t = T.css(e.elem, e.prop, "")) && "auto" !== t ? t : 0
|
|
},
|
|
set: function (e) {
|
|
T.fx.step[e.prop] ? T.fx.step[e.prop](e) : 1 !== e.elem.nodeType || null == e.elem.style[T.cssProps[e.prop]] && !T.cssHooks[e.prop] ? e.elem[e.prop] = e.now : T.style(e.elem, e.prop, e.now + e.unit)
|
|
}
|
|
}
|
|
}).scrollTop = Ge.propHooks.scrollLeft = {
|
|
set: function (e) {
|
|
e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now)
|
|
}
|
|
}, T.easing = {
|
|
linear: function (e) {
|
|
return e
|
|
},
|
|
swing: function (e) {
|
|
return .5 - Math.cos(e * Math.PI) / 2
|
|
},
|
|
_default: "swing"
|
|
}, T.fx = Ge.prototype.init, T.fx.step = {};
|
|
var Je, Ze, et, tt, nt = /^(?:toggle|show|hide)$/,
|
|
it = /queueHooks$/;
|
|
|
|
function rt() {
|
|
Ze && (!1 === C.hidden && x.requestAnimationFrame ? x.requestAnimationFrame(rt) : x.setTimeout(rt, T.fx.interval), T.fx.tick())
|
|
}
|
|
|
|
function ot() {
|
|
return x.setTimeout(function () {
|
|
Je = void 0
|
|
}), Je = Date.now()
|
|
}
|
|
|
|
function st(e, t) {
|
|
var n, i = 0,
|
|
r = {
|
|
height: e
|
|
};
|
|
for (t = t ? 1 : 0; i < 4; i += 2 - t) r["margin" + (n = ne[i])] = r["padding" + n] = e;
|
|
return t && (r.opacity = r.width = e), r
|
|
}
|
|
|
|
function at(e, t, n) {
|
|
for (var i, r = (lt.tweeners[t] || []).concat(lt.tweeners["*"]), o = 0, s = r.length; o < s; o++)
|
|
if (i = r[o].call(n, t, e)) return i
|
|
}
|
|
|
|
function lt(o, e, t) {
|
|
var n, s, i = 0,
|
|
r = lt.prefilters.length,
|
|
a = T.Deferred().always(function () {
|
|
delete l.elem
|
|
}),
|
|
l = function () {
|
|
if (s) return !1;
|
|
for (var e = Je || ot(), t = Math.max(0, c.startTime + c.duration - e), n = 1 - (t / c.duration || 0), i = 0, r = c.tweens.length; i < r; i++) c.tweens[i].run(n);
|
|
return a.notifyWith(o, [c, n, t]), n < 1 && r ? t : (r || a.notifyWith(o, [c, 1, 0]), a.resolveWith(o, [c]), !1)
|
|
},
|
|
c = a.promise({
|
|
elem: o,
|
|
props: T.extend({}, e),
|
|
opts: T.extend(!0, {
|
|
specialEasing: {},
|
|
easing: T.easing._default
|
|
}, t),
|
|
originalProperties: e,
|
|
originalOptions: t,
|
|
startTime: Je || ot(),
|
|
duration: t.duration,
|
|
tweens: [],
|
|
createTween: function (e, t) {
|
|
var n = T.Tween(o, c.opts, e, t, c.opts.specialEasing[e] || c.opts.easing);
|
|
return c.tweens.push(n), n
|
|
},
|
|
stop: function (e) {
|
|
var t = 0,
|
|
n = e ? c.tweens.length : 0;
|
|
if (s) return this;
|
|
for (s = !0; t < n; t++) c.tweens[t].run(1);
|
|
return e ? (a.notifyWith(o, [c, 1, 0]), a.resolveWith(o, [c, e])) : a.rejectWith(o, [c, e]), this
|
|
}
|
|
}),
|
|
u = c.props;
|
|
for (function (e, t) {
|
|
var n, i, r, o, s;
|
|
for (n in e)
|
|
if (r = t[i = z(n)], o = e[n], Array.isArray(o) && (r = o[1], o = e[n] = o[0]), n !== i && (e[i] = o, delete e[n]), (s = T.cssHooks[i]) && "expand" in s)
|
|
for (n in o = s.expand(o), delete e[i], o) n in e || (e[n] = o[n], t[n] = r);
|
|
else t[i] = r
|
|
}(u, c.opts.specialEasing); i < r; i++)
|
|
if (n = lt.prefilters[i].call(c, o, u, c.opts)) return y(n.stop) && (T._queueHooks(c.elem, c.opts.queue).stop = n.stop.bind(n)), n;
|
|
return T.map(u, at, c), y(c.opts.start) && c.opts.start.call(o, c), c.progress(c.opts.progress).done(c.opts.done, c.opts.complete).fail(c.opts.fail).always(c.opts.always), T.fx.timer(T.extend(l, {
|
|
elem: o,
|
|
anim: c,
|
|
queue: c.opts.queue
|
|
})), c
|
|
}
|
|
T.Animation = T.extend(lt, {
|
|
tweeners: {
|
|
"*": [function (e, t) {
|
|
var n = this.createTween(e, t);
|
|
return oe(n.elem, e, te.exec(t), n), n
|
|
}]
|
|
},
|
|
tweener: function (e, t) {
|
|
for (var n, i = 0, r = (e = y(e) ? (t = e, ["*"]) : e.match(M)).length; i < r; i++) n = e[i], lt.tweeners[n] = lt.tweeners[n] || [], lt.tweeners[n].unshift(t)
|
|
},
|
|
prefilters: [function (e, t, n) {
|
|
var i, r, o, s, a, l, c, u, f = "width" in t || "height" in t,
|
|
h = this,
|
|
d = {},
|
|
p = e.style,
|
|
m = e.nodeType && ie(e),
|
|
g = K.get(e, "fxshow");
|
|
for (i in n.queue || (null == (s = T._queueHooks(e, "fx")).unqueued && (s.unqueued = 0, a = s.empty.fire, s.empty.fire = function () {
|
|
s.unqueued || a()
|
|
}), s.unqueued++, h.always(function () {
|
|
h.always(function () {
|
|
s.unqueued--, T.queue(e, "fx").length || s.empty.fire()
|
|
})
|
|
})), t)
|
|
if (r = t[i], nt.test(r)) {
|
|
if (delete t[i], o = o || "toggle" === r, r === (m ? "hide" : "show")) {
|
|
if ("show" !== r || !g || void 0 === g[i]) continue;
|
|
m = !0
|
|
}
|
|
d[i] = g && g[i] || T.style(e, i)
|
|
} if ((l = !T.isEmptyObject(t)) || !T.isEmptyObject(d))
|
|
for (i in f && 1 === e.nodeType && (n.overflow = [p.overflow, p.overflowX, p.overflowY], null == (c = g && g.display) && (c = K.get(e, "display")), "none" === (u = T.css(e, "display")) && (c ? u = c : (ae([e], !0), c = e.style.display || c, u = T.css(e, "display"), ae([e]))), ("inline" === u || "inline-block" === u && null != c) && "none" === T.css(e, "float") && (l || (h.done(function () {
|
|
p.display = c
|
|
}), null == c && (u = p.display, c = "none" === u ? "" : u)), p.display = "inline-block")), n.overflow && (p.overflow = "hidden", h.always(function () {
|
|
p.overflow = n.overflow[0], p.overflowX = n.overflow[1], p.overflowY = n.overflow[2]
|
|
})), l = !1, d) l || (g ? "hidden" in g && (m = g.hidden) : g = K.access(e, "fxshow", {
|
|
display: c
|
|
}), o && (g.hidden = !m), m && ae([e], !0), h.done(function () {
|
|
for (i in m || ae([e]), K.remove(e, "fxshow"), d) T.style(e, i, d[i])
|
|
})), l = at(m ? g[i] : 0, i, h), i in g || (g[i] = l.start, m && (l.end = l.start, l.start = 0))
|
|
}],
|
|
prefilter: function (e, t) {
|
|
t ? lt.prefilters.unshift(e) : lt.prefilters.push(e)
|
|
}
|
|
}), T.speed = function (e, t, n) {
|
|
var i = e && "object" == typeof e ? T.extend({}, e) : {
|
|
complete: n || !n && t || y(e) && e,
|
|
duration: e,
|
|
easing: n && t || t && !y(t) && t
|
|
};
|
|
return T.fx.off ? i.duration = 0 : "number" != typeof i.duration && (i.duration in T.fx.speeds ? i.duration = T.fx.speeds[i.duration] : i.duration = T.fx.speeds._default), null != i.queue && !0 !== i.queue || (i.queue = "fx"), i.old = i.complete, i.complete = function () {
|
|
y(i.old) && i.old.call(this), i.queue && T.dequeue(this, i.queue)
|
|
}, i
|
|
}, T.fn.extend({
|
|
fadeTo: function (e, t, n, i) {
|
|
return this.filter(ie).css("opacity", 0).show().end().animate({
|
|
opacity: t
|
|
}, e, n, i)
|
|
},
|
|
animate: function (t, e, n, i) {
|
|
var r = T.isEmptyObject(t),
|
|
o = T.speed(e, n, i),
|
|
s = function () {
|
|
var e = lt(this, T.extend({}, t), o);
|
|
(r || K.get(this, "finish")) && e.stop(!0)
|
|
};
|
|
return s.finish = s, r || !1 === o.queue ? this.each(s) : this.queue(o.queue, s)
|
|
},
|
|
stop: function (r, e, o) {
|
|
var s = function (e) {
|
|
var t = e.stop;
|
|
delete e.stop, t(o)
|
|
};
|
|
return "string" != typeof r && (o = e, e = r, r = void 0), e && !1 !== r && this.queue(r || "fx", []), this.each(function () {
|
|
var e = !0,
|
|
t = null != r && r + "queueHooks",
|
|
n = T.timers,
|
|
i = K.get(this);
|
|
if (t) i[t] && i[t].stop && s(i[t]);
|
|
else
|
|
for (t in i) i[t] && i[t].stop && it.test(t) && s(i[t]);
|
|
for (t = n.length; t--;) n[t].elem !== this || null != r && n[t].queue !== r || (n[t].anim.stop(o), e = !1, n.splice(t, 1));
|
|
!e && o || T.dequeue(this, r)
|
|
})
|
|
},
|
|
finish: function (s) {
|
|
return !1 !== s && (s = s || "fx"), this.each(function () {
|
|
var e, t = K.get(this),
|
|
n = t[s + "queue"],
|
|
i = t[s + "queueHooks"],
|
|
r = T.timers,
|
|
o = n ? n.length : 0;
|
|
for (t.finish = !0, T.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 < o; e++) n[e] && n[e].finish && n[e].finish.call(this);
|
|
delete t.finish
|
|
})
|
|
}
|
|
}), T.each(["toggle", "show", "hide"], function (e, i) {
|
|
var r = T.fn[i];
|
|
T.fn[i] = function (e, t, n) {
|
|
return null == e || "boolean" == typeof e ? r.apply(this, arguments) : this.animate(st(i, !0), e, t, n)
|
|
}
|
|
}), T.each({
|
|
slideDown: st("show"),
|
|
slideUp: st("hide"),
|
|
slideToggle: st("toggle"),
|
|
fadeIn: {
|
|
opacity: "show"
|
|
},
|
|
fadeOut: {
|
|
opacity: "hide"
|
|
},
|
|
fadeToggle: {
|
|
opacity: "toggle"
|
|
}
|
|
}, function (e, i) {
|
|
T.fn[e] = function (e, t, n) {
|
|
return this.animate(i, e, t, n)
|
|
}
|
|
}), T.timers = [], T.fx.tick = function () {
|
|
var e, t = 0,
|
|
n = T.timers;
|
|
for (Je = Date.now(); t < n.length; t++)(e = n[t])() || n[t] !== e || n.splice(t--, 1);
|
|
n.length || T.fx.stop(), Je = void 0
|
|
}, T.fx.timer = function (e) {
|
|
T.timers.push(e), T.fx.start()
|
|
}, T.fx.interval = 13, T.fx.start = function () {
|
|
Ze || (Ze = !0, rt())
|
|
}, T.fx.stop = function () {
|
|
Ze = null
|
|
}, T.fx.speeds = {
|
|
slow: 600,
|
|
fast: 200,
|
|
_default: 400
|
|
}, T.fn.delay = function (i, e) {
|
|
return i = T.fx && T.fx.speeds[i] || i, e = e || "fx", this.queue(e, function (e, t) {
|
|
var n = x.setTimeout(e, i);
|
|
t.stop = function () {
|
|
x.clearTimeout(n)
|
|
}
|
|
})
|
|
}, et = C.createElement("input"), tt = C.createElement("select").appendChild(C.createElement("option")), et.type = "checkbox", v.checkOn = "" !== et.value, v.optSelected = tt.selected, (et = C.createElement("input")).value = "t", et.type = "radio", v.radioValue = "t" === et.value;
|
|
var ct, ut = T.expr.attrHandle;
|
|
T.fn.extend({
|
|
attr: function (e, t) {
|
|
return B(this, T.attr, e, t, 1 < arguments.length)
|
|
},
|
|
removeAttr: function (e) {
|
|
return this.each(function () {
|
|
T.removeAttr(this, e)
|
|
})
|
|
}
|
|
}), T.extend({
|
|
attr: function (e, t, n) {
|
|
var i, r, o = e.nodeType;
|
|
if (3 !== o && 8 !== o && 2 !== o) return void 0 === e.getAttribute ? T.prop(e, t, n) : (1 === o && T.isXMLDoc(e) || (r = T.attrHooks[t.toLowerCase()] || (T.expr.match.bool.test(t) ? ct : void 0)), void 0 !== n ? null === n ? void T.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)) ? i : null == (i = T.find.attr(e, t)) ? void 0 : i)
|
|
},
|
|
attrHooks: {
|
|
type: {
|
|
set: function (e, t) {
|
|
if (!v.radioValue && "radio" === t && A(e, "input")) {
|
|
var n = e.value;
|
|
return e.setAttribute("type", t), n && (e.value = n), t
|
|
}
|
|
}
|
|
}
|
|
},
|
|
removeAttr: function (e, t) {
|
|
var n, i = 0,
|
|
r = t && t.match(M);
|
|
if (r && 1 === e.nodeType)
|
|
for (; n = r[i++];) e.removeAttribute(n)
|
|
}
|
|
}), ct = {
|
|
set: function (e, t, n) {
|
|
return !1 === t ? T.removeAttr(e, n) : e.setAttribute(n, n), n
|
|
}
|
|
}, T.each(T.expr.match.bool.source.match(/\w+/g), function (e, t) {
|
|
var s = ut[t] || T.find.attr;
|
|
ut[t] = function (e, t, n) {
|
|
var i, r, o = t.toLowerCase();
|
|
return n || (r = ut[o], ut[o] = i, i = null != s(e, t, n) ? o : null, ut[o] = r), i
|
|
}
|
|
});
|
|
var ft = /^(?:input|select|textarea|button)$/i,
|
|
ht = /^(?:a|area)$/i;
|
|
|
|
function dt(e) {
|
|
return (e.match(M) || []).join(" ")
|
|
}
|
|
|
|
function pt(e) {
|
|
return e.getAttribute && e.getAttribute("class") || ""
|
|
}
|
|
|
|
function mt(e) {
|
|
return Array.isArray(e) ? e : "string" == typeof e && e.match(M) || []
|
|
}
|
|
T.fn.extend({
|
|
prop: function (e, t) {
|
|
return B(this, T.prop, e, t, 1 < arguments.length)
|
|
},
|
|
removeProp: function (e) {
|
|
return this.each(function () {
|
|
delete this[T.propFix[e] || e]
|
|
})
|
|
}
|
|
}), T.extend({
|
|
prop: function (e, t, n) {
|
|
var i, r, o = e.nodeType;
|
|
if (3 !== o && 8 !== o && 2 !== o) return 1 === o && T.isXMLDoc(e) || (t = T.propFix[t] || t, r = T.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 = T.find.attr(e, "tabindex");
|
|
return t ? parseInt(t, 10) : ft.test(e.nodeName) || ht.test(e.nodeName) && e.href ? 0 : -1
|
|
}
|
|
}
|
|
},
|
|
propFix: {
|
|
for: "htmlFor",
|
|
class: "className"
|
|
}
|
|
}), v.optSelected || (T.propHooks.selected = {
|
|
get: function (e) {
|
|
var t = e.parentNode;
|
|
return t && t.parentNode && t.parentNode.selectedIndex, null
|
|
},
|
|
set: function (e) {
|
|
var t = e.parentNode;
|
|
t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex)
|
|
}
|
|
}), T.each(["tabIndex", "readOnly", "maxLength", "cellSpacing", "cellPadding", "rowSpan", "colSpan", "useMap", "frameBorder", "contentEditable"], function () {
|
|
T.propFix[this.toLowerCase()] = this
|
|
}), T.fn.extend({
|
|
addClass: function (t) {
|
|
var e, n, i, r, o, s, a, l = 0;
|
|
if (y(t)) return this.each(function (e) {
|
|
T(this).addClass(t.call(this, e, pt(this)))
|
|
});
|
|
if ((e = mt(t)).length)
|
|
for (; n = this[l++];)
|
|
if (r = pt(n), i = 1 === n.nodeType && " " + dt(r) + " ") {
|
|
for (s = 0; o = e[s++];) i.indexOf(" " + o + " ") < 0 && (i += o + " ");
|
|
r !== (a = dt(i)) && n.setAttribute("class", a)
|
|
} return this
|
|
},
|
|
removeClass: function (t) {
|
|
var e, n, i, r, o, s, a, l = 0;
|
|
if (y(t)) return this.each(function (e) {
|
|
T(this).removeClass(t.call(this, e, pt(this)))
|
|
});
|
|
if (!arguments.length) return this.attr("class", "");
|
|
if ((e = mt(t)).length)
|
|
for (; n = this[l++];)
|
|
if (r = pt(n), i = 1 === n.nodeType && " " + dt(r) + " ") {
|
|
for (s = 0; o = e[s++];)
|
|
for (; - 1 < i.indexOf(" " + o + " ");) i = i.replace(" " + o + " ", " ");
|
|
r !== (a = dt(i)) && n.setAttribute("class", a)
|
|
} return this
|
|
},
|
|
toggleClass: function (r, t) {
|
|
var o = typeof r,
|
|
s = "string" === o || Array.isArray(r);
|
|
return "boolean" == typeof t && s ? t ? this.addClass(r) : this.removeClass(r) : y(r) ? this.each(function (e) {
|
|
T(this).toggleClass(r.call(this, e, pt(this), t), t)
|
|
}) : this.each(function () {
|
|
var e, t, n, i;
|
|
if (s)
|
|
for (t = 0, n = T(this), i = mt(r); e = i[t++];) n.hasClass(e) ? n.removeClass(e) : n.addClass(e);
|
|
else void 0 !== r && "boolean" !== o || ((e = pt(this)) && K.set(this, "__className__", e), this.setAttribute && this.setAttribute("class", e || !1 === r ? "" : K.get(this, "__className__") || ""))
|
|
})
|
|
},
|
|
hasClass: function (e) {
|
|
var t, n, i = 0;
|
|
for (t = " " + e + " "; n = this[i++];)
|
|
if (1 === n.nodeType && -1 < (" " + dt(pt(n)) + " ").indexOf(t)) return !0;
|
|
return !1
|
|
}
|
|
});
|
|
var gt = /\r/g;
|
|
T.fn.extend({
|
|
val: function (n) {
|
|
var i, e, r, t = this[0];
|
|
return arguments.length ? (r = y(n), this.each(function (e) {
|
|
var t;
|
|
1 === this.nodeType && (null == (t = r ? n.call(this, e, T(this).val()) : n) ? t = "" : "number" == typeof t ? t += "" : Array.isArray(t) && (t = T.map(t, function (e) {
|
|
return null == e ? "" : e + ""
|
|
})), (i = T.valHooks[this.type] || T.valHooks[this.nodeName.toLowerCase()]) && "set" in i && void 0 !== i.set(this, t, "value") || (this.value = t))
|
|
})) : t ? (i = T.valHooks[t.type] || T.valHooks[t.nodeName.toLowerCase()]) && "get" in i && void 0 !== (e = i.get(t, "value")) ? e : "string" == typeof (e = t.value) ? e.replace(gt, "") : null == e ? "" : e : void 0
|
|
}
|
|
}), T.extend({
|
|
valHooks: {
|
|
option: {
|
|
get: function (e) {
|
|
var t = T.find.attr(e, "value");
|
|
return null != t ? t : dt(T.text(e))
|
|
}
|
|
},
|
|
select: {
|
|
get: function (e) {
|
|
var t, n, i, r = e.options,
|
|
o = e.selectedIndex,
|
|
s = "select-one" === e.type,
|
|
a = s ? null : [],
|
|
l = s ? o + 1 : r.length;
|
|
for (i = o < 0 ? l : s ? o : 0; i < l; i++)
|
|
if (((n = r[i]).selected || i === o) && !n.disabled && (!n.parentNode.disabled || !A(n.parentNode, "optgroup"))) {
|
|
if (t = T(n).val(), s) return t;
|
|
a.push(t)
|
|
} return a
|
|
},
|
|
set: function (e, t) {
|
|
for (var n, i, r = e.options, o = T.makeArray(t), s = r.length; s--;)((i = r[s]).selected = -1 < T.inArray(T.valHooks.option.get(i), o)) && (n = !0);
|
|
return n || (e.selectedIndex = -1), o
|
|
}
|
|
}
|
|
}
|
|
}), T.each(["radio", "checkbox"], function () {
|
|
T.valHooks[this] = {
|
|
set: function (e, t) {
|
|
if (Array.isArray(t)) return e.checked = -1 < T.inArray(T(e).val(), t)
|
|
}
|
|
}, v.checkOn || (T.valHooks[this].get = function (e) {
|
|
return null === e.getAttribute("value") ? "on" : e.value
|
|
})
|
|
}), v.focusin = "onfocusin" in x;
|
|
var vt = /^(?:focusinfocus|focusoutblur)$/,
|
|
yt = function (e) {
|
|
e.stopPropagation()
|
|
};
|
|
T.extend(T.event, {
|
|
trigger: function (e, t, n, i) {
|
|
var r, o, s, a, l, c, u, f, h = [n || C],
|
|
d = g.call(e, "type") ? e.type : e,
|
|
p = g.call(e, "namespace") ? e.namespace.split(".") : [];
|
|
if (o = f = s = n = n || C, 3 !== n.nodeType && 8 !== n.nodeType && !vt.test(d + T.event.triggered) && (-1 < d.indexOf(".") && (d = (p = d.split(".")).shift(), p.sort()), l = d.indexOf(":") < 0 && "on" + d, (e = e[T.expando] ? e : new T.Event(d, "object" == typeof e && e)).isTrigger = i ? 2 : 3, e.namespace = p.join("."), e.rnamespace = e.namespace ? new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)") : null, e.result = void 0, e.target || (e.target = n), t = null == t ? [e] : T.makeArray(t, [e]), u = T.event.special[d] || {}, i || !u.trigger || !1 !== u.trigger.apply(n, t))) {
|
|
if (!i && !u.noBubble && !b(n)) {
|
|
for (a = u.delegateType || d, vt.test(a + d) || (o = o.parentNode); o; o = o.parentNode) h.push(o), s = o;
|
|
s === (n.ownerDocument || C) && h.push(s.defaultView || s.parentWindow || x)
|
|
}
|
|
for (r = 0;
|
|
(o = h[r++]) && !e.isPropagationStopped();) f = o, e.type = 1 < r ? a : u.bindType || d, (c = (K.get(o, "events") || {})[e.type] && K.get(o, "handle")) && c.apply(o, t), (c = l && o[l]) && c.apply && X(o) && (e.result = c.apply(o, t), !1 === e.result && e.preventDefault());
|
|
return e.type = d, i || e.isDefaultPrevented() || u._default && !1 !== u._default.apply(h.pop(), t) || !X(n) || l && y(n[d]) && !b(n) && ((s = n[l]) && (n[l] = null), T.event.triggered = d, e.isPropagationStopped() && f.addEventListener(d, yt), n[d](), e.isPropagationStopped() && f.removeEventListener(d, yt), T.event.triggered = void 0, s && (n[l] = s)), e.result
|
|
}
|
|
},
|
|
simulate: function (e, t, n) {
|
|
var i = T.extend(new T.Event, n, {
|
|
type: e,
|
|
isSimulated: !0
|
|
});
|
|
T.event.trigger(i, null, t)
|
|
}
|
|
}), T.fn.extend({
|
|
trigger: function (e, t) {
|
|
return this.each(function () {
|
|
T.event.trigger(e, t, this)
|
|
})
|
|
},
|
|
triggerHandler: function (e, t) {
|
|
var n = this[0];
|
|
if (n) return T.event.trigger(e, t, n, !0)
|
|
}
|
|
}), v.focusin || T.each({
|
|
focus: "focusin",
|
|
blur: "focusout"
|
|
}, function (n, i) {
|
|
var r = function (e) {
|
|
T.event.simulate(i, e.target, T.event.fix(e))
|
|
};
|
|
T.event.special[i] = {
|
|
setup: function () {
|
|
var e = this.ownerDocument || this,
|
|
t = K.access(e, i);
|
|
t || e.addEventListener(n, r, !0), K.access(e, i, (t || 0) + 1)
|
|
},
|
|
teardown: function () {
|
|
var e = this.ownerDocument || this,
|
|
t = K.access(e, i) - 1;
|
|
t ? K.access(e, i, t) : (e.removeEventListener(n, r, !0), K.remove(e, i))
|
|
}
|
|
}
|
|
});
|
|
var bt = x.location,
|
|
_t = Date.now(),
|
|
Et = /\?/;
|
|
T.parseXML = function (e) {
|
|
var t;
|
|
if (!e || "string" != typeof e) return null;
|
|
try {
|
|
t = (new x.DOMParser).parseFromString(e, "text/xml")
|
|
} catch (e) {
|
|
t = void 0
|
|
}
|
|
return t && !t.getElementsByTagName("parsererror").length || T.error("Invalid XML: " + e), t
|
|
};
|
|
var wt = /\[\]$/,
|
|
xt = /\r?\n/g,
|
|
Ct = /^(?:submit|button|image|reset|file)$/i,
|
|
Tt = /^(?:input|select|textarea|keygen)/i;
|
|
|
|
function St(n, e, i, r) {
|
|
var t;
|
|
if (Array.isArray(e)) T.each(e, function (e, t) {
|
|
i || wt.test(n) ? r(n, t) : St(n + "[" + ("object" == typeof t && null != t ? e : "") + "]", t, i, r)
|
|
});
|
|
else if (i || "object" !== E(e)) r(n, e);
|
|
else
|
|
for (t in e) St(n + "[" + t + "]", e[t], i, r)
|
|
}
|
|
T.param = function (e, t) {
|
|
var n, i = [],
|
|
r = function (e, t) {
|
|
var n = y(t) ? t() : t;
|
|
i[i.length] = encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n)
|
|
};
|
|
if (Array.isArray(e) || e.jquery && !T.isPlainObject(e)) T.each(e, function () {
|
|
r(this.name, this.value)
|
|
});
|
|
else
|
|
for (n in e) St(n, e[n], t, r);
|
|
return i.join("&")
|
|
}, T.fn.extend({
|
|
serialize: function () {
|
|
return T.param(this.serializeArray())
|
|
},
|
|
serializeArray: function () {
|
|
return this.map(function () {
|
|
var e = T.prop(this, "elements");
|
|
return e ? T.makeArray(e) : this
|
|
}).filter(function () {
|
|
var e = this.type;
|
|
return this.name && !T(this).is(":disabled") && Tt.test(this.nodeName) && !Ct.test(e) && (this.checked || !le.test(e))
|
|
}).map(function (e, t) {
|
|
var n = T(this).val();
|
|
return null == n ? null : Array.isArray(n) ? T.map(n, function (e) {
|
|
return {
|
|
name: t.name,
|
|
value: e.replace(xt, "\r\n")
|
|
}
|
|
}) : {
|
|
name: t.name,
|
|
value: n.replace(xt, "\r\n")
|
|
}
|
|
}).get()
|
|
}
|
|
});
|
|
var At = /%20/g,
|
|
Dt = /#.*$/,
|
|
Ot = /([?&])_=[^&]*/,
|
|
kt = /^(.*?):[ \t]*([^\r\n]*)$/gm,
|
|
Nt = /^(?:GET|HEAD)$/,
|
|
jt = /^\/\//,
|
|
It = {},
|
|
Lt = {},
|
|
Mt = "*/".concat("*"),
|
|
Pt = C.createElement("a");
|
|
|
|
function Ht(o) {
|
|
return function (e, t) {
|
|
"string" != typeof e && (t = e, e = "*");
|
|
var n, i = 0,
|
|
r = e.toLowerCase().match(M) || [];
|
|
if (y(t))
|
|
for (; n = r[i++];) "+" === n[0] ? (n = n.slice(1) || "*", (o[n] = o[n] || []).unshift(t)) : (o[n] = o[n] || []).push(t)
|
|
}
|
|
}
|
|
|
|
function qt(t, r, o, s) {
|
|
var a = {},
|
|
l = t === Lt;
|
|
|
|
function c(e) {
|
|
var i;
|
|
return a[e] = !0, T.each(t[e] || [], function (e, t) {
|
|
var n = t(r, o, s);
|
|
return "string" != typeof n || l || a[n] ? l ? !(i = n) : void 0 : (r.dataTypes.unshift(n), c(n), !1)
|
|
}), i
|
|
}
|
|
return c(r.dataTypes[0]) || !a["*"] && c("*")
|
|
}
|
|
|
|
function Rt(e, t) {
|
|
var n, i, r = T.ajaxSettings.flatOptions || {};
|
|
for (n in t) void 0 !== t[n] && ((r[n] ? e : i || (i = {}))[n] = t[n]);
|
|
return i && T.extend(!0, e, i), e
|
|
}
|
|
Pt.href = bt.href, T.extend({
|
|
active: 0,
|
|
lastModified: {},
|
|
etag: {},
|
|
ajaxSettings: {
|
|
url: bt.href,
|
|
type: "GET",
|
|
isLocal: /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(bt.protocol),
|
|
global: !0,
|
|
processData: !0,
|
|
async: !0,
|
|
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
|
|
accepts: {
|
|
"*": Mt,
|
|
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": T.parseXML
|
|
},
|
|
flatOptions: {
|
|
url: !0,
|
|
context: !0
|
|
}
|
|
},
|
|
ajaxSetup: function (e, t) {
|
|
return t ? Rt(Rt(e, T.ajaxSettings), t) : Rt(T.ajaxSettings, e)
|
|
},
|
|
ajaxPrefilter: Ht(It),
|
|
ajaxTransport: Ht(Lt),
|
|
ajax: function (e, t) {
|
|
"object" == typeof e && (t = e, e = void 0), t = t || {};
|
|
var u, f, h, n, d, i, p, m, r, o, g = T.ajaxSetup({}, t),
|
|
v = g.context || g,
|
|
y = g.context && (v.nodeType || v.jquery) ? T(v) : T.event,
|
|
b = T.Deferred(),
|
|
_ = T.Callbacks("once memory"),
|
|
E = g.statusCode || {},
|
|
s = {},
|
|
a = {},
|
|
l = "canceled",
|
|
w = {
|
|
readyState: 0,
|
|
getResponseHeader: function (e) {
|
|
var t;
|
|
if (p) {
|
|
if (!n)
|
|
for (n = {}; t = kt.exec(h);) n[t[1].toLowerCase()] = t[2];
|
|
t = n[e.toLowerCase()]
|
|
}
|
|
return null == t ? null : t
|
|
},
|
|
getAllResponseHeaders: function () {
|
|
return p ? h : null
|
|
},
|
|
setRequestHeader: function (e, t) {
|
|
return null == p && (e = a[e.toLowerCase()] = a[e.toLowerCase()] || e, s[e] = t), this
|
|
},
|
|
overrideMimeType: function (e) {
|
|
return null == p && (g.mimeType = e), this
|
|
},
|
|
statusCode: function (e) {
|
|
var t;
|
|
if (e)
|
|
if (p) w.always(e[w.status]);
|
|
else
|
|
for (t in e) E[t] = [E[t], e[t]];
|
|
return this
|
|
},
|
|
abort: function (e) {
|
|
var t = e || l;
|
|
return u && u.abort(t), c(0, t), this
|
|
}
|
|
};
|
|
if (b.promise(w), g.url = ((e || g.url || bt.href) + "").replace(jt, bt.protocol + "//"), g.type = t.method || t.type || g.method || g.type, g.dataTypes = (g.dataType || "*").toLowerCase().match(M) || [""], null == g.crossDomain) {
|
|
i = C.createElement("a");
|
|
try {
|
|
i.href = g.url, i.href = i.href, g.crossDomain = Pt.protocol + "//" + Pt.host != i.protocol + "//" + i.host
|
|
} catch (e) {
|
|
g.crossDomain = !0
|
|
}
|
|
}
|
|
if (g.data && g.processData && "string" != typeof g.data && (g.data = T.param(g.data, g.traditional)), qt(It, g, t, w), p) return w;
|
|
for (r in (m = T.event && g.global) && 0 == T.active++ && T.event.trigger("ajaxStart"), g.type = g.type.toUpperCase(), g.hasContent = !Nt.test(g.type), f = g.url.replace(Dt, ""), g.hasContent ? g.data && g.processData && 0 === (g.contentType || "").indexOf("application/x-www-form-urlencoded") && (g.data = g.data.replace(At, "+")) : (o = g.url.slice(f.length), g.data && (g.processData || "string" == typeof g.data) && (f += (Et.test(f) ? "&" : "?") + g.data, delete g.data), !1 === g.cache && (f = f.replace(Ot, "$1"), o = (Et.test(f) ? "&" : "?") + "_=" + _t++ + o), g.url = f + o), g.ifModified && (T.lastModified[f] && w.setRequestHeader("If-Modified-Since", T.lastModified[f]), T.etag[f] && w.setRequestHeader("If-None-Match", T.etag[f])), (g.data && g.hasContent && !1 !== g.contentType || t.contentType) && w.setRequestHeader("Content-Type", g.contentType), w.setRequestHeader("Accept", g.dataTypes[0] && g.accepts[g.dataTypes[0]] ? g.accepts[g.dataTypes[0]] + ("*" !== g.dataTypes[0] ? ", " + Mt + "; q=0.01" : "") : g.accepts["*"]), g.headers) w.setRequestHeader(r, g.headers[r]);
|
|
if (g.beforeSend && (!1 === g.beforeSend.call(v, w, g) || p)) return w.abort();
|
|
if (l = "abort", _.add(g.complete), w.done(g.success), w.fail(g.error), u = qt(Lt, g, t, w)) {
|
|
if (w.readyState = 1, m && y.trigger("ajaxSend", [w, g]), p) return w;
|
|
g.async && 0 < g.timeout && (d = x.setTimeout(function () {
|
|
w.abort("timeout")
|
|
}, g.timeout));
|
|
try {
|
|
p = !1, u.send(s, c)
|
|
} catch (e) {
|
|
if (p) throw e;
|
|
c(-1, e)
|
|
}
|
|
} else c(-1, "No Transport");
|
|
|
|
function c(e, t, n, i) {
|
|
var r, o, s, a, l, c = t;
|
|
p || (p = !0, d && x.clearTimeout(d), u = void 0, h = i || "", w.readyState = 0 < e ? 4 : 0, r = 200 <= e && e < 300 || 304 === e, n && (a = function (e, t, n) {
|
|
for (var i, r, o, s, a = e.contents, l = e.dataTypes;
|
|
"*" === l[0];) l.shift(), void 0 === i && (i = e.mimeType || t.getResponseHeader("Content-Type"));
|
|
if (i)
|
|
for (r in a)
|
|
if (a[r] && a[r].test(i)) {
|
|
l.unshift(r);
|
|
break
|
|
} if (l[0] in n) o = l[0];
|
|
else {
|
|
for (r in n) {
|
|
if (!l[0] || e.converters[r + " " + l[0]]) {
|
|
o = r;
|
|
break
|
|
}
|
|
s || (s = r)
|
|
}
|
|
o = o || s
|
|
}
|
|
if (o) return o !== l[0] && l.unshift(o), n[o]
|
|
}(g, w, n)), a = function (e, t, n, i) {
|
|
var r, o, s, a, l, c = {},
|
|
u = e.dataTypes.slice();
|
|
if (u[1])
|
|
for (s in e.converters) c[s.toLowerCase()] = e.converters[s];
|
|
for (o = u.shift(); o;)
|
|
if (e.responseFields[o] && (n[e.responseFields[o]] = t), !l && i && e.dataFilter && (t = e.dataFilter(t, e.dataType)), l = o, o = u.shift())
|
|
if ("*" === o) o = l;
|
|
else if ("*" !== l && l !== o) {
|
|
if (!(s = c[l + " " + o] || c["* " + o]))
|
|
for (r in c)
|
|
if ((a = r.split(" "))[1] === o && (s = c[l + " " + a[0]] || c["* " + a[0]])) {
|
|
!0 === s ? s = c[r] : !0 !== c[r] && (o = a[0], u.unshift(a[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 " + l + " to " + o
|
|
}
|
|
}
|
|
}
|
|
return {
|
|
state: "success",
|
|
data: t
|
|
}
|
|
}(g, a, w, r), r ? (g.ifModified && ((l = w.getResponseHeader("Last-Modified")) && (T.lastModified[f] = l), (l = w.getResponseHeader("etag")) && (T.etag[f] = l)), 204 === e || "HEAD" === g.type ? c = "nocontent" : 304 === e ? c = "notmodified" : (c = a.state, o = a.data, r = !(s = a.error))) : (s = c, !e && c || (c = "error", e < 0 && (e = 0))), w.status = e, w.statusText = (t || c) + "", r ? b.resolveWith(v, [o, c, w]) : b.rejectWith(v, [w, c, s]), w.statusCode(E), E = void 0, m && y.trigger(r ? "ajaxSuccess" : "ajaxError", [w, g, r ? o : s]), _.fireWith(v, [w, c]), m && (y.trigger("ajaxComplete", [w, g]), --T.active || T.event.trigger("ajaxStop")))
|
|
}
|
|
return w
|
|
},
|
|
getJSON: function (e, t, n) {
|
|
return T.get(e, t, n, "json")
|
|
},
|
|
getScript: function (e, t) {
|
|
return T.get(e, void 0, t, "script")
|
|
}
|
|
}), T.each(["get", "post"], function (e, r) {
|
|
T[r] = function (e, t, n, i) {
|
|
return y(t) && (i = i || n, n = t, t = void 0), T.ajax(T.extend({
|
|
url: e,
|
|
type: r,
|
|
dataType: i,
|
|
data: t,
|
|
success: n
|
|
}, T.isPlainObject(e) && e))
|
|
}
|
|
}), T._evalUrl = function (e) {
|
|
return T.ajax({
|
|
url: e,
|
|
type: "GET",
|
|
dataType: "script",
|
|
cache: !0,
|
|
async: !1,
|
|
global: !1,
|
|
throws: !0
|
|
})
|
|
}, T.fn.extend({
|
|
wrapAll: function (e) {
|
|
var t;
|
|
return this[0] && (y(e) && (e = e.call(this[0])), t = T(e, this[0].ownerDocument).eq(0).clone(!0), this[0].parentNode && t.insertBefore(this[0]), t.map(function () {
|
|
for (var e = this; e.firstElementChild;) e = e.firstElementChild;
|
|
return e
|
|
}).append(this)), this
|
|
},
|
|
wrapInner: function (n) {
|
|
return y(n) ? this.each(function (e) {
|
|
T(this).wrapInner(n.call(this, e))
|
|
}) : this.each(function () {
|
|
var e = T(this),
|
|
t = e.contents();
|
|
t.length ? t.wrapAll(n) : e.append(n)
|
|
})
|
|
},
|
|
wrap: function (t) {
|
|
var n = y(t);
|
|
return this.each(function (e) {
|
|
T(this).wrapAll(n ? t.call(this, e) : t)
|
|
})
|
|
},
|
|
unwrap: function (e) {
|
|
return this.parent(e).not("body").each(function () {
|
|
T(this).replaceWith(this.childNodes)
|
|
}), this
|
|
}
|
|
}), T.expr.pseudos.hidden = function (e) {
|
|
return !T.expr.pseudos.visible(e)
|
|
}, T.expr.pseudos.visible = function (e) {
|
|
return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length)
|
|
}, T.ajaxSettings.xhr = function () {
|
|
try {
|
|
return new x.XMLHttpRequest
|
|
} catch (e) {}
|
|
};
|
|
var Ft = {
|
|
0: 200,
|
|
1223: 204
|
|
},
|
|
Wt = T.ajaxSettings.xhr();
|
|
v.cors = !!Wt && "withCredentials" in Wt, v.ajax = Wt = !!Wt, T.ajaxTransport(function (r) {
|
|
var o, s;
|
|
if (v.cors || Wt && !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]);
|
|
o = function (e) {
|
|
return function () {
|
|
o && (o = 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(Ft[i.status] || i.status, i.statusText, "text" !== (i.responseType || "text") || "string" != typeof i.responseText ? {
|
|
binary: i.response
|
|
} : {
|
|
text: i.responseText
|
|
}, i.getAllResponseHeaders()))
|
|
}
|
|
}, i.onload = o(), s = i.onerror = i.ontimeout = o("error"), void 0 !== i.onabort ? i.onabort = s : i.onreadystatechange = function () {
|
|
4 === i.readyState && x.setTimeout(function () {
|
|
o && s()
|
|
})
|
|
}, o = o("abort");
|
|
try {
|
|
i.send(r.hasContent && r.data || null)
|
|
} catch (e) {
|
|
if (o) throw e
|
|
}
|
|
},
|
|
abort: function () {
|
|
o && o()
|
|
}
|
|
}
|
|
}), T.ajaxPrefilter(function (e) {
|
|
e.crossDomain && (e.contents.script = !1)
|
|
}), T.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 T.globalEval(e), e
|
|
}
|
|
}
|
|
}), T.ajaxPrefilter("script", function (e) {
|
|
void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET")
|
|
}), T.ajaxTransport("script", function (n) {
|
|
var i, r;
|
|
if (n.crossDomain) return {
|
|
send: function (e, t) {
|
|
i = T("<script>").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)
|
|
}), C.head.appendChild(i[0])
|
|
},
|
|
abort: function () {
|
|
r && r()
|
|
}
|
|
}
|
|
});
|
|
var Bt, Ut = [],
|
|
Yt = /(=)\?(?=&|$)|\?\?/;
|
|
T.ajaxSetup({
|
|
jsonp: "callback",
|
|
jsonpCallback: function () {
|
|
var e = Ut.pop() || T.expando + "_" + _t++;
|
|
return this[e] = !0, e
|
|
}
|
|
}), T.ajaxPrefilter("json jsonp", function (e, t, n) {
|
|
var i, r, o, s = !1 !== e.jsonp && (Yt.test(e.url) ? "url" : "string" == typeof e.data && 0 === (e.contentType || "").indexOf("application/x-www-form-urlencoded") && Yt.test(e.data) && "data");
|
|
if (s || "jsonp" === e.dataTypes[0]) return i = e.jsonpCallback = y(e.jsonpCallback) ? e.jsonpCallback() : e.jsonpCallback, s ? e[s] = e[s].replace(Yt, "$1" + i) : !1 !== e.jsonp && (e.url += (Et.test(e.url) ? "&" : "?") + e.jsonp + "=" + i), e.converters["script json"] = function () {
|
|
return o || T.error(i + " was not called"), o[0]
|
|
}, e.dataTypes[0] = "json", r = x[i], x[i] = function () {
|
|
o = arguments
|
|
}, n.always(function () {
|
|
void 0 === r ? T(x).removeProp(i) : x[i] = r, e[i] && (e.jsonpCallback = t.jsonpCallback, Ut.push(i)), o && y(r) && r(o[0]), o = r = void 0
|
|
}), "script"
|
|
}), v.createHTMLDocument = ((Bt = C.implementation.createHTMLDocument("").body).innerHTML = "<form></form><form></form>", 2 === Bt.childNodes.length), T.parseHTML = function (e, t, n) {
|
|
return "string" != typeof e ? [] : ("boolean" == typeof t && (n = t, t = !1), t || (v.createHTMLDocument ? ((i = (t = C.implementation.createHTMLDocument("")).createElement("base")).href = C.location.href, t.head.appendChild(i)) : t = C), o = !n && [], (r = D.exec(e)) ? [t.createElement(r[1])] : (r = ve([e], t, o), o && o.length && T(o).remove(), T.merge([], r.childNodes)));
|
|
var i, r, o
|
|
}, T.fn.load = function (e, t, n) {
|
|
var i, r, o, s = this,
|
|
a = e.indexOf(" ");
|
|
return -1 < a && (i = dt(e.slice(a)), e = e.slice(0, a)), y(t) ? (n = t, t = void 0) : t && "object" == typeof t && (r = "POST"), 0 < s.length && T.ajax({
|
|
url: e,
|
|
type: r || "GET",
|
|
dataType: "html",
|
|
data: t
|
|
}).done(function (e) {
|
|
o = arguments, s.html(i ? T("<div>").append(T.parseHTML(e)).find(i) : e)
|
|
}).always(n && function (e, t) {
|
|
s.each(function () {
|
|
n.apply(this, o || [e.responseText, t, e])
|
|
})
|
|
}), this
|
|
}, T.each(["ajaxStart", "ajaxStop", "ajaxComplete", "ajaxError", "ajaxSuccess", "ajaxSend"], function (e, t) {
|
|
T.fn[t] = function (e) {
|
|
return this.on(t, e)
|
|
}
|
|
}), T.expr.pseudos.animated = function (t) {
|
|
return T.grep(T.timers, function (e) {
|
|
return t === e.elem
|
|
}).length
|
|
}, T.offset = {
|
|
setOffset: function (e, t, n) {
|
|
var i, r, o, s, a, l, c = T.css(e, "position"),
|
|
u = T(e),
|
|
f = {};
|
|
"static" === c && (e.style.position = "relative"), a = u.offset(), o = T.css(e, "top"), l = T.css(e, "left"), r = ("absolute" === c || "fixed" === c) && -1 < (o + l).indexOf("auto") ? (s = (i = u.position()).top, i.left) : (s = parseFloat(o) || 0, parseFloat(l) || 0), y(t) && (t = t.call(e, n, T.extend({}, a))), null != t.top && (f.top = t.top - a.top + s), null != t.left && (f.left = t.left - a.left + r), "using" in t ? t.using.call(e, f) : u.css(f)
|
|
}
|
|
}, T.fn.extend({
|
|
offset: function (t) {
|
|
if (arguments.length) return void 0 === t ? this : this.each(function (e) {
|
|
T.offset.setOffset(this, t, e)
|
|
});
|
|
var e, n, i = this[0];
|
|
return i ? i.getClientRects().length ? (e = i.getBoundingClientRect(), n = i.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" === T.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" === T.css(e, "position");) e = e.parentNode;
|
|
e && e !== i && 1 === e.nodeType && ((r = T(e).offset()).top += T.css(e, "borderTopWidth", !0), r.left += T.css(e, "borderLeftWidth", !0))
|
|
}
|
|
return {
|
|
top: t.top - r.top - T.css(i, "marginTop", !0),
|
|
left: t.left - r.left - T.css(i, "marginLeft", !0)
|
|
}
|
|
}
|
|
},
|
|
offsetParent: function () {
|
|
return this.map(function () {
|
|
for (var e = this.offsetParent; e && "static" === T.css(e, "position");) e = e.offsetParent;
|
|
return e || ye
|
|
})
|
|
}
|
|
}), T.each({
|
|
scrollLeft: "pageXOffset",
|
|
scrollTop: "pageYOffset"
|
|
}, function (t, r) {
|
|
var o = "pageYOffset" === r;
|
|
T.fn[t] = function (e) {
|
|
return B(this, function (e, t, n) {
|
|
var i;
|
|
if (b(e) ? i = e : 9 === e.nodeType && (i = e.defaultView), void 0 === n) return i ? i[r] : e[t];
|
|
i ? i.scrollTo(o ? i.pageXOffset : n, o ? n : i.pageYOffset) : e[t] = n
|
|
}, t, e, arguments.length)
|
|
}
|
|
}), T.each(["top", "left"], function (e, n) {
|
|
T.cssHooks[n] = Fe(v.pixelPosition, function (e, t) {
|
|
if (t) return t = Re(e, n), Pe.test(t) ? T(e).position()[n] + "px" : t
|
|
})
|
|
}), T.each({
|
|
Height: "height",
|
|
Width: "width"
|
|
}, function (s, a) {
|
|
T.each({
|
|
padding: "inner" + s,
|
|
content: a,
|
|
"": "outer" + s
|
|
}, function (i, o) {
|
|
T.fn[o] = function (e, t) {
|
|
var n = arguments.length && (i || "boolean" != typeof e),
|
|
r = i || (!0 === e || !0 === t ? "margin" : "border");
|
|
return B(this, function (e, t, n) {
|
|
var i;
|
|
return b(e) ? 0 === o.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 ? T.css(e, t, r) : T.style(e, t, n, r)
|
|
}, a, n ? e : void 0, n)
|
|
}
|
|
})
|
|
}), T.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) {
|
|
T.fn[n] = function (e, t) {
|
|
return 0 < arguments.length ? this.on(n, null, e, t) : this.trigger(n)
|
|
}
|
|
}), T.fn.extend({
|
|
hover: function (e, t) {
|
|
return this.mouseenter(e).mouseleave(t || e)
|
|
}
|
|
}), T.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)
|
|
}
|
|
}), T.proxy = function (e, t) {
|
|
var n, i, r;
|
|
if ("string" == typeof t && (n = e[t], t = e, e = n), y(e)) return i = a.call(arguments, 2), (r = function () {
|
|
return e.apply(t || this, i.concat(a.call(arguments)))
|
|
}).guid = e.guid = e.guid || T.guid++, r
|
|
}, T.holdReady = function (e) {
|
|
e ? T.readyWait++ : T.ready(!0)
|
|
}, T.isArray = Array.isArray, T.parseJSON = JSON.parse, T.nodeName = A, T.isFunction = y, T.isWindow = b, T.camelCase = z, T.type = E, T.now = Date.now, T.isNumeric = function (e) {
|
|
var t = T.type(e);
|
|
return ("number" === t || "string" === t) && !isNaN(e - parseFloat(e))
|
|
}, "function" == typeof define && define.amd && define("jquery", [], function () {
|
|
return T
|
|
});
|
|
var $t = x.jQuery,
|
|
zt = x.$;
|
|
return T.noConflict = function (e) {
|
|
return x.$ === T && (x.$ = zt), e && x.jQuery === T && (x.jQuery = $t), T
|
|
}, e || (x.jQuery = x.$ = T), T
|
|
}),
|
|
function (e, t) {
|
|
"object" == typeof exports && "undefined" != typeof module ? t(exports, require("jquery")) : "function" == typeof define && define.amd ? define(["exports", "jquery"], t) : t(e.bootstrap = {}, e.jQuery)
|
|
}(this, function (e, t) {
|
|
"use strict";
|
|
|
|
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)
|
|
}
|
|
}
|
|
|
|
function s(e, t, n) {
|
|
return t && i(e.prototype, t), n && i(e, n), e
|
|
}
|
|
|
|
function l(r) {
|
|
for (var e = 1; e < arguments.length; e++) {
|
|
var o = null != arguments[e] ? arguments[e] : {},
|
|
t = Object.keys(o);
|
|
"function" == typeof Object.getOwnPropertySymbols && (t = t.concat(Object.getOwnPropertySymbols(o).filter(function (e) {
|
|
return Object.getOwnPropertyDescriptor(o, e).enumerable
|
|
}))), t.forEach(function (e) {
|
|
var t, n, i;
|
|
t = r, i = o[n = e], n in t ? Object.defineProperty(t, n, {
|
|
value: i,
|
|
enumerable: !0,
|
|
configurable: !0,
|
|
writable: !0
|
|
}) : t[n] = i
|
|
})
|
|
}
|
|
return r
|
|
}
|
|
for (var r, n, o, a, c, u, f, h, d, p, m, g, v, y, b, _, E, w, x, C, T, S, A, D, O, k, N, j, I, L, M, P, H, q, R, F, W, B, U, Y, $, z, X, Q, K, V = function (i) {
|
|
var t = "transitionend";
|
|
var l = {
|
|
TRANSITION_END: "bsTransitionEnd",
|
|
getUID: function (e) {
|
|
for (; e += ~~(1e6 * Math.random()), document.getElementById(e););
|
|
return e
|
|
},
|
|
getSelectorFromElement: function (e) {
|
|
var t = e.getAttribute("data-target");
|
|
t && "#" !== t || (t = e.getAttribute("href") || "");
|
|
try {
|
|
return document.querySelector(t) ? t : null
|
|
} catch (e) {
|
|
return null
|
|
}
|
|
},
|
|
getTransitionDurationFromElement: function (e) {
|
|
if (!e) return 0;
|
|
var t = i(e).css("transition-duration");
|
|
return parseFloat(t) ? (t = t.split(",")[0], 1e3 * parseFloat(t)) : 0
|
|
},
|
|
reflow: function (e) {
|
|
return e.offsetHeight
|
|
},
|
|
triggerTransitionEnd: function (e) {
|
|
i(e).trigger(t)
|
|
},
|
|
supportsTransitionEnd: function () {
|
|
return Boolean(t)
|
|
},
|
|
isElement: function (e) {
|
|
return (e[0] || e).nodeType
|
|
},
|
|
typeCheckConfig: function (e, t, n) {
|
|
for (var i in n)
|
|
if (Object.prototype.hasOwnProperty.call(n, i)) {
|
|
var r = n[i],
|
|
o = t[i],
|
|
s = o && l.isElement(o) ? "element" : (a = o, {}.toString.call(a).match(/\s([a-z]+)/i)[1].toLowerCase());
|
|
if (!new RegExp(r).test(s)) throw new Error(e.toUpperCase() + ': Option "' + i + '" provided type "' + s + '" but expected type "' + r + '".')
|
|
} var a
|
|
}
|
|
};
|
|
return i.fn.emulateTransitionEnd = function (e) {
|
|
var t = this,
|
|
n = !1;
|
|
return i(this).one(l.TRANSITION_END, function () {
|
|
n = !0
|
|
}), setTimeout(function () {
|
|
n || l.triggerTransitionEnd(t)
|
|
}, e), this
|
|
}, i.event.special[l.TRANSITION_END] = {
|
|
bindType: t,
|
|
delegateType: t,
|
|
handle: function (e) {
|
|
if (i(e.target).is(this)) return e.handleObj.handler.apply(this, arguments)
|
|
}
|
|
}, l
|
|
}(t = t && t.hasOwnProperty("default") ? t.default : t), G = (n = "alert", a = "." + (o = "bs.alert"), c = (r = t).fn[n], u = {
|
|
CLOSE: "close" + a,
|
|
CLOSED: "closed" + a,
|
|
CLICK_DATA_API: "click" + a + ".data-api"
|
|
}, "alert", "fade", "show", f = function () {
|
|
function i(e) {
|
|
this._element = e
|
|
}
|
|
var e = i.prototype;
|
|
return e.close = function (e) {
|
|
var t = this._element;
|
|
e && (t = this._getRootElement(e)), this._triggerCloseEvent(t).isDefaultPrevented() || this._removeElement(t)
|
|
}, e.dispose = function () {
|
|
r.removeData(this._element, o), this._element = null
|
|
}, e._getRootElement = function (e) {
|
|
var t = V.getSelectorFromElement(e),
|
|
n = !1;
|
|
return t && (n = document.querySelector(t)), n || (n = r(e).closest(".alert")[0]), n
|
|
}, e._triggerCloseEvent = function (e) {
|
|
var t = r.Event(u.CLOSE);
|
|
return r(e).trigger(t), t
|
|
}, e._removeElement = function (t) {
|
|
var n = this;
|
|
if (r(t).removeClass("show"), r(t).hasClass("fade")) {
|
|
var e = V.getTransitionDurationFromElement(t);
|
|
r(t).one(V.TRANSITION_END, function (e) {
|
|
return n._destroyElement(t, e)
|
|
}).emulateTransitionEnd(e)
|
|
} else this._destroyElement(t)
|
|
}, e._destroyElement = function (e) {
|
|
r(e).detach().trigger(u.CLOSED).remove()
|
|
}, i._jQueryInterface = function (n) {
|
|
return this.each(function () {
|
|
var e = r(this),
|
|
t = e.data(o);
|
|
t || (t = new i(this), e.data(o, t)), "close" === n && t[n](this)
|
|
})
|
|
}, i._handleDismiss = function (t) {
|
|
return function (e) {
|
|
e && e.preventDefault(), t.close(this)
|
|
}
|
|
}, s(i, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}]), i
|
|
}(), r(document).on(u.CLICK_DATA_API, '[data-dismiss="alert"]', f._handleDismiss(new f)), r.fn[n] = f._jQueryInterface, r.fn[n].Constructor = f, r.fn[n].noConflict = function () {
|
|
return r.fn[n] = c, f._jQueryInterface
|
|
}, f), J = (d = "button", m = "." + (p = "bs.button"), g = ".data-api", v = (h = t).fn[d], y = "active", "btn", b = '[data-toggle^="button"]', '[data-toggle="buttons"]', "input", ".active", ".btn", _ = {
|
|
CLICK_DATA_API: "click" + m + g,
|
|
FOCUS_BLUR_DATA_API: "focus" + m + g + " blur" + m + g
|
|
}, E = function () {
|
|
function n(e) {
|
|
this._element = e
|
|
}
|
|
var e = n.prototype;
|
|
return e.toggle = function () {
|
|
var e = !0,
|
|
t = !0,
|
|
n = h(this._element).closest('[data-toggle="buttons"]')[0];
|
|
if (n) {
|
|
var i = this._element.querySelector("input");
|
|
if (i) {
|
|
if ("radio" === i.type)
|
|
if (i.checked && this._element.classList.contains(y)) e = !1;
|
|
else {
|
|
var r = n.querySelector(".active");
|
|
r && h(r).removeClass(y)
|
|
} if (e) {
|
|
if (i.hasAttribute("disabled") || n.hasAttribute("disabled") || i.classList.contains("disabled") || n.classList.contains("disabled")) return;
|
|
i.checked = !this._element.classList.contains(y), h(i).trigger("change")
|
|
}
|
|
i.focus(), t = !1
|
|
}
|
|
}
|
|
t && this._element.setAttribute("aria-pressed", !this._element.classList.contains(y)), e && h(this._element).toggleClass(y)
|
|
}, e.dispose = function () {
|
|
h.removeData(this._element, p), this._element = null
|
|
}, n._jQueryInterface = function (t) {
|
|
return this.each(function () {
|
|
var e = h(this).data(p);
|
|
e || (e = new n(this), h(this).data(p, e)), "toggle" === t && e[t]()
|
|
})
|
|
}, s(n, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}]), n
|
|
}(), h(document).on(_.CLICK_DATA_API, b, function (e) {
|
|
e.preventDefault();
|
|
var t = e.target;
|
|
h(t).hasClass("btn") || (t = h(t).closest(".btn")), E._jQueryInterface.call(h(t), "toggle")
|
|
}).on(_.FOCUS_BLUR_DATA_API, b, function (e) {
|
|
var t = h(e.target).closest(".btn")[0];
|
|
h(t).toggleClass("focus", /^focus(in)?$/.test(e.type))
|
|
}), h.fn[d] = E._jQueryInterface, h.fn[d].Constructor = E, h.fn[d].noConflict = function () {
|
|
return h.fn[d] = v, E._jQueryInterface
|
|
}, E), Z = (x = "carousel", T = "." + (C = "bs.carousel"), S = ".data-api", A = (w = t).fn[x], D = {
|
|
interval: 5e3,
|
|
keyboard: !0,
|
|
slide: !1,
|
|
pause: "hover",
|
|
wrap: !0
|
|
}, O = {
|
|
interval: "(number|boolean)",
|
|
keyboard: "boolean",
|
|
slide: "(boolean|string)",
|
|
pause: "(string|boolean)",
|
|
wrap: "boolean"
|
|
}, k = "next", N = "prev", "left", "right", j = {
|
|
SLIDE: "slide" + T,
|
|
SLID: "slid" + T,
|
|
KEYDOWN: "keydown" + T,
|
|
MOUSEENTER: "mouseenter" + T,
|
|
MOUSELEAVE: "mouseleave" + T,
|
|
TOUCHEND: "touchend" + T,
|
|
LOAD_DATA_API: "load" + T + S,
|
|
CLICK_DATA_API: "click" + T + S
|
|
}, "carousel", I = "active", "slide", "carousel-item-right", "carousel-item-left", "carousel-item-next", "carousel-item-prev", ".active", L = ".active.carousel-item", ".carousel-item", ".carousel-item-next, .carousel-item-prev", ".carousel-indicators", "[data-slide], [data-slide-to]", '[data-ride="carousel"]', M = function () {
|
|
function o(e, t) {
|
|
this._items = null, this._interval = null, this._activeElement = null, this._isPaused = !1, this._isSliding = !1, this.touchTimeout = null, this._config = this._getConfig(t), this._element = w(e)[0], this._indicatorsElement = this._element.querySelector(".carousel-indicators"), this._addEventListeners()
|
|
}
|
|
var e = o.prototype;
|
|
return e.next = function () {
|
|
this._isSliding || this._slide(k)
|
|
}, e.nextWhenVisible = function () {
|
|
!document.hidden && w(this._element).is(":visible") && "hidden" !== w(this._element).css("visibility") && this.next()
|
|
}, e.prev = function () {
|
|
this._isSliding || this._slide(N)
|
|
}, e.pause = function (e) {
|
|
e || (this._isPaused = !0), this._element.querySelector(".carousel-item-next, .carousel-item-prev") && (V.triggerTransitionEnd(this._element), this.cycle(!0)), clearInterval(this._interval), this._interval = null
|
|
}, e.cycle = function (e) {
|
|
e || (this._isPaused = !1), this._interval && (clearInterval(this._interval), this._interval = null), this._config.interval && !this._isPaused && (this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval))
|
|
}, e.to = function (e) {
|
|
var t = this;
|
|
this._activeElement = this._element.querySelector(L);
|
|
var n = this._getItemIndex(this._activeElement);
|
|
if (!(e > this._items.length - 1 || e < 0))
|
|
if (this._isSliding) w(this._element).one(j.SLID, function () {
|
|
return t.to(e)
|
|
});
|
|
else {
|
|
if (n === e) return this.pause(), void this.cycle();
|
|
var i = n < e ? k : N;
|
|
this._slide(i, this._items[e])
|
|
}
|
|
}, e.dispose = function () {
|
|
w(this._element).off(T), w.removeData(this._element, C), this._items = null, this._config = null, this._element = null, this._interval = null, this._isPaused = null, this._isSliding = null, this._activeElement = null, this._indicatorsElement = null
|
|
}, e._getConfig = function (e) {
|
|
return e = l({}, D, e), V.typeCheckConfig(x, e, O), e
|
|
}, e._addEventListeners = function () {
|
|
var t = this;
|
|
this._config.keyboard && w(this._element).on(j.KEYDOWN, function (e) {
|
|
return t._keydown(e)
|
|
}), "hover" === this._config.pause && (w(this._element).on(j.MOUSEENTER, function (e) {
|
|
return t.pause(e)
|
|
}).on(j.MOUSELEAVE, function (e) {
|
|
return t.cycle(e)
|
|
}), "ontouchstart" in document.documentElement && w(this._element).on(j.TOUCHEND, function () {
|
|
t.pause(), t.touchTimeout && clearTimeout(t.touchTimeout), t.touchTimeout = setTimeout(function (e) {
|
|
return t.cycle(e)
|
|
}, 500 + t._config.interval)
|
|
}))
|
|
}, e._keydown = function (e) {
|
|
if (!/input|textarea/i.test(e.target.tagName)) switch (e.which) {
|
|
case 37:
|
|
e.preventDefault(), this.prev();
|
|
break;
|
|
case 39:
|
|
e.preventDefault(), this.next()
|
|
}
|
|
}, e._getItemIndex = function (e) {
|
|
return this._items = e && e.parentNode ? [].slice.call(e.parentNode.querySelectorAll(".carousel-item")) : [], this._items.indexOf(e)
|
|
}, e._getItemByDirection = function (e, t) {
|
|
var n = e === k,
|
|
i = e === N,
|
|
r = this._getItemIndex(t),
|
|
o = this._items.length - 1;
|
|
if ((i && 0 === r || n && r === o) && !this._config.wrap) return t;
|
|
var s = (r + (e === N ? -1 : 1)) % this._items.length;
|
|
return -1 === s ? this._items[this._items.length - 1] : this._items[s]
|
|
}, e._triggerSlideEvent = function (e, t) {
|
|
var n = this._getItemIndex(e),
|
|
i = this._getItemIndex(this._element.querySelector(L)),
|
|
r = w.Event(j.SLIDE, {
|
|
relatedTarget: e,
|
|
direction: t,
|
|
from: i,
|
|
to: n
|
|
});
|
|
return w(this._element).trigger(r), r
|
|
}, e._setActiveIndicatorElement = function (e) {
|
|
if (this._indicatorsElement) {
|
|
var t = [].slice.call(this._indicatorsElement.querySelectorAll(".active"));
|
|
w(t).removeClass(I);
|
|
var n = this._indicatorsElement.children[this._getItemIndex(e)];
|
|
n && w(n).addClass(I)
|
|
}
|
|
}, e._slide = function (e, t) {
|
|
var n, i, r, o = this,
|
|
s = this._element.querySelector(L),
|
|
a = this._getItemIndex(s),
|
|
l = t || s && this._getItemByDirection(e, s),
|
|
c = this._getItemIndex(l),
|
|
u = Boolean(this._interval);
|
|
if (r = e === k ? (n = "carousel-item-left", i = "carousel-item-next", "left") : (n = "carousel-item-right", i = "carousel-item-prev", "right"), l && w(l).hasClass(I)) this._isSliding = !1;
|
|
else if (!this._triggerSlideEvent(l, r).isDefaultPrevented() && s && l) {
|
|
this._isSliding = !0, u && this.pause(), this._setActiveIndicatorElement(l);
|
|
var f = w.Event(j.SLID, {
|
|
relatedTarget: l,
|
|
direction: r,
|
|
from: a,
|
|
to: c
|
|
});
|
|
if (w(this._element).hasClass("slide")) {
|
|
w(l).addClass(i), V.reflow(l), w(s).addClass(n), w(l).addClass(n);
|
|
var h = V.getTransitionDurationFromElement(s);
|
|
w(s).one(V.TRANSITION_END, function () {
|
|
w(l).removeClass(n + " " + i).addClass(I), w(s).removeClass(I + " " + i + " " + n), o._isSliding = !1, setTimeout(function () {
|
|
return w(o._element).trigger(f)
|
|
}, 0)
|
|
}).emulateTransitionEnd(h)
|
|
} else w(s).removeClass(I), w(l).addClass(I), this._isSliding = !1, w(this._element).trigger(f);
|
|
u && this.cycle()
|
|
}
|
|
}, o._jQueryInterface = function (i) {
|
|
return this.each(function () {
|
|
var e = w(this).data(C),
|
|
t = l({}, D, w(this).data());
|
|
"object" == typeof i && (t = l({}, t, i));
|
|
var n = "string" == typeof i ? i : t.slide;
|
|
if (e || (e = new o(this, t), w(this).data(C, e)), "number" == typeof i) e.to(i);
|
|
else if ("string" == typeof n) {
|
|
if (void 0 === e[n]) throw new TypeError('No method named "' + n + '"');
|
|
e[n]()
|
|
} else t.interval && (e.pause(), e.cycle())
|
|
})
|
|
}, o._dataApiClickHandler = function (e) {
|
|
var t = V.getSelectorFromElement(this);
|
|
if (t) {
|
|
var n = w(t)[0];
|
|
if (n && w(n).hasClass("carousel")) {
|
|
var i = l({}, w(n).data(), w(this).data()),
|
|
r = this.getAttribute("data-slide-to");
|
|
r && (i.interval = !1), o._jQueryInterface.call(w(n), i), r && w(n).data(C).to(r), e.preventDefault()
|
|
}
|
|
}
|
|
}, s(o, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return D
|
|
}
|
|
}]), o
|
|
}(), w(document).on(j.CLICK_DATA_API, "[data-slide], [data-slide-to]", M._dataApiClickHandler), w(window).on(j.LOAD_DATA_API, function () {
|
|
for (var e = [].slice.call(document.querySelectorAll('[data-ride="carousel"]')), t = 0, n = e.length; t < n; t++) {
|
|
var i = w(e[t]);
|
|
M._jQueryInterface.call(i, i.data())
|
|
}
|
|
}), w.fn[x] = M._jQueryInterface, w.fn[x].Constructor = M, w.fn[x].noConflict = function () {
|
|
return w.fn[x] = A, M._jQueryInterface
|
|
}, M), ee = (H = "collapse", R = "." + (q = "bs.collapse"), F = (P = t).fn[H], W = {
|
|
toggle: !0,
|
|
parent: ""
|
|
}, B = {
|
|
toggle: "boolean",
|
|
parent: "(string|element)"
|
|
}, U = {
|
|
SHOW: "show" + R,
|
|
SHOWN: "shown" + R,
|
|
HIDE: "hide" + R,
|
|
HIDDEN: "hidden" + R,
|
|
CLICK_DATA_API: "click" + R + ".data-api"
|
|
}, Y = "show", $ = "collapse", z = "collapsing", X = "collapsed", "width", "height", ".show, .collapsing", Q = '[data-toggle="collapse"]', K = function () {
|
|
function a(t, e) {
|
|
this._isTransitioning = !1, this._element = t, this._config = this._getConfig(e), this._triggerArray = P.makeArray(document.querySelectorAll('[data-toggle="collapse"][href="#' + t.id + '"],[data-toggle="collapse"][data-target="#' + t.id + '"]'));
|
|
for (var n = [].slice.call(document.querySelectorAll(Q)), i = 0, r = n.length; i < r; i++) {
|
|
var o = n[i],
|
|
s = V.getSelectorFromElement(o),
|
|
a = [].slice.call(document.querySelectorAll(s)).filter(function (e) {
|
|
return e === t
|
|
});
|
|
null !== s && 0 < a.length && (this._selector = s, this._triggerArray.push(o))
|
|
}
|
|
this._parent = this._config.parent ? this._getParent() : null, this._config.parent || this._addAriaAndCollapsedClass(this._element, this._triggerArray), this._config.toggle && this.toggle()
|
|
}
|
|
var e = a.prototype;
|
|
return e.toggle = function () {
|
|
P(this._element).hasClass(Y) ? this.hide() : this.show()
|
|
}, e.show = function () {
|
|
var e, t, n = this;
|
|
if (!(this._isTransitioning || P(this._element).hasClass(Y) || (this._parent && 0 === (e = [].slice.call(this._parent.querySelectorAll(".show, .collapsing")).filter(function (e) {
|
|
return e.getAttribute("data-parent") === n._config.parent
|
|
})).length && (e = null), e && (t = P(e).not(this._selector).data(q)) && t._isTransitioning))) {
|
|
var i = P.Event(U.SHOW);
|
|
if (P(this._element).trigger(i), !i.isDefaultPrevented()) {
|
|
e && (a._jQueryInterface.call(P(e).not(this._selector), "hide"), t || P(e).data(q, null));
|
|
var r = this._getDimension();
|
|
P(this._element).removeClass($).addClass(z), this._element.style[r] = 0, this._triggerArray.length && P(this._triggerArray).removeClass(X).attr("aria-expanded", !0), this.setTransitioning(!0);
|
|
var o = "scroll" + (r[0].toUpperCase() + r.slice(1)),
|
|
s = V.getTransitionDurationFromElement(this._element);
|
|
P(this._element).one(V.TRANSITION_END, function () {
|
|
P(n._element).removeClass(z).addClass($).addClass(Y), n._element.style[r] = "", n.setTransitioning(!1), P(n._element).trigger(U.SHOWN)
|
|
}).emulateTransitionEnd(s), this._element.style[r] = this._element[o] + "px"
|
|
}
|
|
}
|
|
}, e.hide = function () {
|
|
var e = this;
|
|
if (!this._isTransitioning && P(this._element).hasClass(Y)) {
|
|
var t = P.Event(U.HIDE);
|
|
if (P(this._element).trigger(t), !t.isDefaultPrevented()) {
|
|
var n = this._getDimension();
|
|
this._element.style[n] = this._element.getBoundingClientRect()[n] + "px", V.reflow(this._element), P(this._element).addClass(z).removeClass($).removeClass(Y);
|
|
var i = this._triggerArray.length;
|
|
if (0 < i)
|
|
for (var r = 0; r < i; r++) {
|
|
var o = this._triggerArray[r],
|
|
s = V.getSelectorFromElement(o);
|
|
null !== s && (P([].slice.call(document.querySelectorAll(s))).hasClass(Y) || P(o).addClass(X).attr("aria-expanded", !1))
|
|
}
|
|
this.setTransitioning(!0), this._element.style[n] = "";
|
|
var a = V.getTransitionDurationFromElement(this._element);
|
|
P(this._element).one(V.TRANSITION_END, function () {
|
|
e.setTransitioning(!1), P(e._element).removeClass(z).addClass($).trigger(U.HIDDEN)
|
|
}).emulateTransitionEnd(a)
|
|
}
|
|
}
|
|
}, e.setTransitioning = function (e) {
|
|
this._isTransitioning = e
|
|
}, e.dispose = function () {
|
|
P.removeData(this._element, q), this._config = null, this._parent = null, this._element = null, this._triggerArray = null, this._isTransitioning = null
|
|
}, e._getConfig = function (e) {
|
|
return (e = l({}, W, e)).toggle = Boolean(e.toggle), V.typeCheckConfig(H, e, B), e
|
|
}, e._getDimension = function () {
|
|
return P(this._element).hasClass("width") ? "width" : "height"
|
|
}, e._getParent = function () {
|
|
var n = this,
|
|
e = null;
|
|
V.isElement(this._config.parent) ? (e = this._config.parent, void 0 !== this._config.parent.jquery && (e = this._config.parent[0])) : e = document.querySelector(this._config.parent);
|
|
var t = '[data-toggle="collapse"][data-parent="' + this._config.parent + '"]',
|
|
i = [].slice.call(e.querySelectorAll(t));
|
|
return P(i).each(function (e, t) {
|
|
n._addAriaAndCollapsedClass(a._getTargetFromElement(t), [t])
|
|
}), e
|
|
}, e._addAriaAndCollapsedClass = function (e, t) {
|
|
if (e) {
|
|
var n = P(e).hasClass(Y);
|
|
t.length && P(t).toggleClass(X, !n).attr("aria-expanded", n)
|
|
}
|
|
}, a._getTargetFromElement = function (e) {
|
|
var t = V.getSelectorFromElement(e);
|
|
return t ? document.querySelector(t) : null
|
|
}, a._jQueryInterface = function (i) {
|
|
return this.each(function () {
|
|
var e = P(this),
|
|
t = e.data(q),
|
|
n = l({}, W, e.data(), "object" == typeof i && i ? i : {});
|
|
if (!t && n.toggle && /show|hide/.test(i) && (n.toggle = !1), t || (t = new a(this, n), e.data(q, t)), "string" == typeof i) {
|
|
if (void 0 === t[i]) throw new TypeError('No method named "' + i + '"');
|
|
t[i]()
|
|
}
|
|
})
|
|
}, s(a, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return W
|
|
}
|
|
}]), a
|
|
}(), P(document).on(U.CLICK_DATA_API, Q, function (e) {
|
|
"A" === e.currentTarget.tagName && e.preventDefault();
|
|
var n = P(this),
|
|
t = V.getSelectorFromElement(this),
|
|
i = [].slice.call(document.querySelectorAll(t));
|
|
P(i).each(function () {
|
|
var e = P(this),
|
|
t = e.data(q) ? "toggle" : n.data();
|
|
K._jQueryInterface.call(e, t)
|
|
})
|
|
}), P.fn[H] = K._jQueryInterface, P.fn[H].Constructor = K, P.fn[H].noConflict = function () {
|
|
return P.fn[H] = F, K._jQueryInterface
|
|
}, K), te = "undefined" != typeof window && "undefined" != typeof document, ne = ["Edge", "Trident", "Firefox"], ie = 0, re = 0; re < ne.length; re += 1)
|
|
if (te && 0 <= navigator.userAgent.indexOf(ne[re])) {
|
|
ie = 1;
|
|
break
|
|
} var oe = te && window.Promise ? function (e) {
|
|
var t = !1;
|
|
return function () {
|
|
t || (t = !0, window.Promise.resolve().then(function () {
|
|
t = !1, e()
|
|
}))
|
|
}
|
|
} : function (e) {
|
|
var t = !1;
|
|
return function () {
|
|
t || (t = !0, setTimeout(function () {
|
|
t = !1, e()
|
|
}, ie))
|
|
}
|
|
};
|
|
|
|
function se(e) {
|
|
return e && "[object Function]" === {}.toString.call(e)
|
|
}
|
|
|
|
function ae(e, t) {
|
|
if (1 !== e.nodeType) return [];
|
|
var n = getComputedStyle(e, null);
|
|
return t ? n[t] : n
|
|
}
|
|
|
|
function le(e) {
|
|
return "HTML" === e.nodeName ? e : e.parentNode || e.host
|
|
}
|
|
|
|
function ce(e) {
|
|
if (!e) return document.body;
|
|
switch (e.nodeName) {
|
|
case "HTML":
|
|
case "BODY":
|
|
return e.ownerDocument.body;
|
|
case "#document":
|
|
return e.body
|
|
}
|
|
var t = ae(e),
|
|
n = t.overflow,
|
|
i = t.overflowX,
|
|
r = t.overflowY;
|
|
return /(auto|scroll|overlay)/.test(n + r + i) ? e : ce(le(e))
|
|
}
|
|
var ue = te && !(!window.MSInputMethodContext || !document.documentMode),
|
|
fe = te && /MSIE 10/.test(navigator.userAgent);
|
|
|
|
function he(e) {
|
|
return 11 === e ? ue : 10 === e ? fe : ue || fe
|
|
}
|
|
|
|
function de(e) {
|
|
if (!e) return document.documentElement;
|
|
for (var t = he(10) ? document.body : null, n = e.offsetParent; n === t && e.nextElementSibling;) n = (e = e.nextElementSibling).offsetParent;
|
|
var i = n && n.nodeName;
|
|
return i && "BODY" !== i && "HTML" !== i ? -1 !== ["TD", "TABLE"].indexOf(n.nodeName) && "static" === ae(n, "position") ? de(n) : n : e ? e.ownerDocument.documentElement : document.documentElement
|
|
}
|
|
|
|
function pe(e) {
|
|
return null !== e.parentNode ? pe(e.parentNode) : e
|
|
}
|
|
|
|
function me(e, t) {
|
|
if (!(e && e.nodeType && t && t.nodeType)) return document.documentElement;
|
|
var n = e.compareDocumentPosition(t) & Node.DOCUMENT_POSITION_FOLLOWING,
|
|
i = n ? e : t,
|
|
r = n ? t : e,
|
|
o = document.createRange();
|
|
o.setStart(i, 0), o.setEnd(r, 0);
|
|
var s, a, l = o.commonAncestorContainer;
|
|
if (e !== l && t !== l || i.contains(r)) return "BODY" === (a = (s = l).nodeName) || "HTML" !== a && de(s.firstElementChild) !== s ? de(l) : l;
|
|
var c = pe(e);
|
|
return c.host ? me(c.host, t) : me(e, pe(t).host)
|
|
}
|
|
|
|
function ge(e) {
|
|
var t = "top" === (1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : "top") ? "scrollTop" : "scrollLeft",
|
|
n = e.nodeName;
|
|
if ("BODY" !== n && "HTML" !== n) return e[t];
|
|
var i = e.ownerDocument.documentElement;
|
|
return (e.ownerDocument.scrollingElement || i)[t]
|
|
}
|
|
|
|
function ve(e, t) {
|
|
var n = "x" === t ? "Left" : "Top",
|
|
i = "Left" === n ? "Right" : "Bottom";
|
|
return parseFloat(e["border" + n + "Width"], 10) + parseFloat(e["border" + i + "Width"], 10)
|
|
}
|
|
|
|
function ye(e, t, n, i) {
|
|
return Math.max(t["offset" + e], t["scroll" + e], n["client" + e], n["offset" + e], n["scroll" + e], he(10) ? n["offset" + e] + i["margin" + ("Height" === e ? "Top" : "Left")] + i["margin" + ("Height" === e ? "Bottom" : "Right")] : 0)
|
|
}
|
|
|
|
function be() {
|
|
var e = document.body,
|
|
t = document.documentElement,
|
|
n = he(10) && getComputedStyle(t);
|
|
return {
|
|
height: ye("Height", e, t, n),
|
|
width: ye("Width", e, t, n)
|
|
}
|
|
}
|
|
var _e = function () {
|
|
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)
|
|
}
|
|
}
|
|
return function (e, t, n) {
|
|
return t && i(e.prototype, t), n && i(e, n), e
|
|
}
|
|
}(),
|
|
Ee = function (e, t, n) {
|
|
return t in e ? Object.defineProperty(e, t, {
|
|
value: n,
|
|
enumerable: !0,
|
|
configurable: !0,
|
|
writable: !0
|
|
}) : e[t] = n, e
|
|
},
|
|
we = Object.assign || function (e) {
|
|
for (var t = 1; t < arguments.length; t++) {
|
|
var n = arguments[t];
|
|
for (var i in n) Object.prototype.hasOwnProperty.call(n, i) && (e[i] = n[i])
|
|
}
|
|
return e
|
|
};
|
|
|
|
function xe(e) {
|
|
return we({}, e, {
|
|
right: e.left + e.width,
|
|
bottom: e.top + e.height
|
|
})
|
|
}
|
|
|
|
function Ce(e) {
|
|
var t = {};
|
|
try {
|
|
if (he(10)) {
|
|
t = e.getBoundingClientRect();
|
|
var n = ge(e, "top"),
|
|
i = ge(e, "left");
|
|
t.top += n, t.left += i, t.bottom += n, t.right += i
|
|
} else t = e.getBoundingClientRect()
|
|
} catch (e) {}
|
|
var r = {
|
|
left: t.left,
|
|
top: t.top,
|
|
width: t.right - t.left,
|
|
height: t.bottom - t.top
|
|
},
|
|
o = "HTML" === e.nodeName ? be() : {},
|
|
s = o.width || e.clientWidth || r.right - r.left,
|
|
a = o.height || e.clientHeight || r.bottom - r.top,
|
|
l = e.offsetWidth - s,
|
|
c = e.offsetHeight - a;
|
|
if (l || c) {
|
|
var u = ae(e);
|
|
l -= ve(u, "x"), c -= ve(u, "y"), r.width -= l, r.height -= c
|
|
}
|
|
return xe(r)
|
|
}
|
|
|
|
function Te(e, t) {
|
|
var n = 2 < arguments.length && void 0 !== arguments[2] && arguments[2],
|
|
i = he(10),
|
|
r = "HTML" === t.nodeName,
|
|
o = Ce(e),
|
|
s = Ce(t),
|
|
a = ce(e),
|
|
l = ae(t),
|
|
c = parseFloat(l.borderTopWidth, 10),
|
|
u = parseFloat(l.borderLeftWidth, 10);
|
|
n && "HTML" === t.nodeName && (s.top = Math.max(s.top, 0), s.left = Math.max(s.left, 0));
|
|
var f = xe({
|
|
top: o.top - s.top - c,
|
|
left: o.left - s.left - u,
|
|
width: o.width,
|
|
height: o.height
|
|
});
|
|
if (f.marginTop = 0, f.marginLeft = 0, !i && r) {
|
|
var h = parseFloat(l.marginTop, 10),
|
|
d = parseFloat(l.marginLeft, 10);
|
|
f.top -= c - h, f.bottom -= c - h, f.left -= u - d, f.right -= u - d, f.marginTop = h, f.marginLeft = d
|
|
}
|
|
return (i && !n ? t.contains(a) : t === a && "BODY" !== a.nodeName) && (f = function (e, t) {
|
|
var n = 2 < arguments.length && void 0 !== arguments[2] && arguments[2],
|
|
i = ge(t, "top"),
|
|
r = ge(t, "left"),
|
|
o = n ? -1 : 1;
|
|
return e.top += i * o, e.bottom += i * o, e.left += r * o, e.right += r * o, e
|
|
}(f, t)), f
|
|
}
|
|
|
|
function Se(e) {
|
|
if (!e || !e.parentElement || he()) return document.documentElement;
|
|
for (var t = e.parentElement; t && "none" === ae(t, "transform");) t = t.parentElement;
|
|
return t || document.documentElement
|
|
}
|
|
|
|
function Ae(e, t, n, i) {
|
|
var r = 4 < arguments.length && void 0 !== arguments[4] && arguments[4],
|
|
o = {
|
|
top: 0,
|
|
left: 0
|
|
},
|
|
s = r ? Se(e) : me(e, t);
|
|
if ("viewport" === i) o = function (e) {
|
|
var t = 1 < arguments.length && void 0 !== arguments[1] && arguments[1],
|
|
n = e.ownerDocument.documentElement,
|
|
i = Te(e, n),
|
|
r = Math.max(n.clientWidth, window.innerWidth || 0),
|
|
o = Math.max(n.clientHeight, window.innerHeight || 0),
|
|
s = t ? 0 : ge(n),
|
|
a = t ? 0 : ge(n, "left");
|
|
return xe({
|
|
top: s - i.top + i.marginTop,
|
|
left: a - i.left + i.marginLeft,
|
|
width: r,
|
|
height: o
|
|
})
|
|
}(s, r);
|
|
else {
|
|
var a = void 0;
|
|
"scrollParent" === i ? "BODY" === (a = ce(le(t))).nodeName && (a = e.ownerDocument.documentElement) : a = "window" === i ? e.ownerDocument.documentElement : i;
|
|
var l = Te(a, s, r);
|
|
if ("HTML" !== a.nodeName || function e(t) {
|
|
var n = t.nodeName;
|
|
return "BODY" !== n && "HTML" !== n && ("fixed" === ae(t, "position") || e(le(t)))
|
|
}(s)) o = l;
|
|
else {
|
|
var c = be(),
|
|
u = c.height,
|
|
f = c.width;
|
|
o.top += l.top - l.marginTop, o.bottom = u + l.top, o.left += l.left - l.marginLeft, o.right = f + l.left
|
|
}
|
|
}
|
|
return o.left += n, o.top += n, o.right -= n, o.bottom -= n, o
|
|
}
|
|
|
|
function De(e, t, i, n, r) {
|
|
var o = 5 < arguments.length && void 0 !== arguments[5] ? arguments[5] : 0;
|
|
if (-1 === e.indexOf("auto")) return e;
|
|
var s = Ae(i, n, o, r),
|
|
a = {
|
|
top: {
|
|
width: s.width,
|
|
height: t.top - s.top
|
|
},
|
|
right: {
|
|
width: s.right - t.right,
|
|
height: s.height
|
|
},
|
|
bottom: {
|
|
width: s.width,
|
|
height: s.bottom - t.bottom
|
|
},
|
|
left: {
|
|
width: t.left - s.left,
|
|
height: s.height
|
|
}
|
|
},
|
|
l = Object.keys(a).map(function (e) {
|
|
return we({
|
|
key: e
|
|
}, a[e], {
|
|
area: (t = a[e], t.width * t.height)
|
|
});
|
|
var t
|
|
}).sort(function (e, t) {
|
|
return t.area - e.area
|
|
}),
|
|
c = l.filter(function (e) {
|
|
var t = e.width,
|
|
n = e.height;
|
|
return t >= i.clientWidth && n >= i.clientHeight
|
|
}),
|
|
u = 0 < c.length ? c[0].key : l[0].key,
|
|
f = e.split("-")[1];
|
|
return u + (f ? "-" + f : "")
|
|
}
|
|
|
|
function Oe(e, t, n) {
|
|
var i = 3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
|
|
return Te(n, i ? Se(t) : me(t, n), i)
|
|
}
|
|
|
|
function ke(e) {
|
|
var t = getComputedStyle(e),
|
|
n = parseFloat(t.marginTop) + parseFloat(t.marginBottom),
|
|
i = parseFloat(t.marginLeft) + parseFloat(t.marginRight);
|
|
return {
|
|
width: e.offsetWidth + i,
|
|
height: e.offsetHeight + n
|
|
}
|
|
}
|
|
|
|
function Ne(e) {
|
|
var t = {
|
|
left: "right",
|
|
right: "left",
|
|
bottom: "top",
|
|
top: "bottom"
|
|
};
|
|
return e.replace(/left|right|bottom|top/g, function (e) {
|
|
return t[e]
|
|
})
|
|
}
|
|
|
|
function je(e, t, n) {
|
|
n = n.split("-")[0];
|
|
var i = ke(e),
|
|
r = {
|
|
width: i.width,
|
|
height: i.height
|
|
},
|
|
o = -1 !== ["right", "left"].indexOf(n),
|
|
s = o ? "top" : "left",
|
|
a = o ? "left" : "top",
|
|
l = o ? "height" : "width",
|
|
c = o ? "width" : "height";
|
|
return r[s] = t[s] + t[l] / 2 - i[l] / 2, r[a] = n === a ? t[a] - i[c] : t[Ne(a)], r
|
|
}
|
|
|
|
function Ie(e, t) {
|
|
return Array.prototype.find ? e.find(t) : e.filter(t)[0]
|
|
}
|
|
|
|
function Le(e, n, t) {
|
|
return (void 0 === t ? e : e.slice(0, function (e, t, n) {
|
|
if (Array.prototype.findIndex) return e.findIndex(function (e) {
|
|
return e.name === n
|
|
});
|
|
var i = Ie(e, function (e) {
|
|
return e.name === n
|
|
});
|
|
return e.indexOf(i)
|
|
}(e, 0, t))).forEach(function (e) {
|
|
e.function && console.warn("`modifier.function` is deprecated, use `modifier.fn`!");
|
|
var t = e.function || e.fn;
|
|
e.enabled && se(t) && (n.offsets.popper = xe(n.offsets.popper), n.offsets.reference = xe(n.offsets.reference), n = t(n, e))
|
|
}), n
|
|
}
|
|
|
|
function Me(e, n) {
|
|
return e.some(function (e) {
|
|
var t = e.name;
|
|
return e.enabled && t === n
|
|
})
|
|
}
|
|
|
|
function Pe(e) {
|
|
for (var t = [!1, "ms", "Webkit", "Moz", "O"], n = e.charAt(0).toUpperCase() + e.slice(1), i = 0; i < t.length; i++) {
|
|
var r = t[i],
|
|
o = r ? "" + r + n : e;
|
|
if (void 0 !== document.body.style[o]) return o
|
|
}
|
|
return null
|
|
}
|
|
|
|
function He(e) {
|
|
var t = e.ownerDocument;
|
|
return t ? t.defaultView : window
|
|
}
|
|
|
|
function qe(e) {
|
|
return "" !== e && !isNaN(parseFloat(e)) && isFinite(e)
|
|
}
|
|
|
|
function Re(n, i) {
|
|
Object.keys(i).forEach(function (e) {
|
|
var t = ""; - 1 !== ["width", "height", "top", "right", "bottom", "left"].indexOf(e) && qe(i[e]) && (t = "px"), n.style[e] = i[e] + t
|
|
})
|
|
}
|
|
|
|
function Fe(e, t, n) {
|
|
var i = Ie(e, function (e) {
|
|
return e.name === t
|
|
}),
|
|
r = !!i && e.some(function (e) {
|
|
return e.name === n && e.enabled && e.order < i.order
|
|
});
|
|
if (!r) {
|
|
var o = "`" + t + "`",
|
|
s = "`" + n + "`";
|
|
console.warn(s + " modifier is required by " + o + " modifier in order to work, be sure to include it before " + o + "!")
|
|
}
|
|
return r
|
|
}
|
|
var We = ["auto-start", "auto", "auto-end", "top-start", "top", "top-end", "right-start", "right", "right-end", "bottom-end", "bottom", "bottom-start", "left-end", "left", "left-start"],
|
|
Be = We.slice(3);
|
|
|
|
function Ue(e) {
|
|
var t = 1 < arguments.length && void 0 !== arguments[1] && arguments[1],
|
|
n = Be.indexOf(e),
|
|
i = Be.slice(n + 1).concat(Be.slice(0, n));
|
|
return t ? i.reverse() : i
|
|
}
|
|
var Ye = {
|
|
placement: "bottom",
|
|
positionFixed: !1,
|
|
eventsEnabled: !0,
|
|
removeOnDestroy: !1,
|
|
onCreate: function () {},
|
|
onUpdate: function () {},
|
|
modifiers: {
|
|
shift: {
|
|
order: 100,
|
|
enabled: !0,
|
|
fn: function (e) {
|
|
var t = e.placement,
|
|
n = t.split("-")[0],
|
|
i = t.split("-")[1];
|
|
if (i) {
|
|
var r = e.offsets,
|
|
o = r.reference,
|
|
s = r.popper,
|
|
a = -1 !== ["bottom", "top"].indexOf(n),
|
|
l = a ? "left" : "top",
|
|
c = a ? "width" : "height",
|
|
u = {
|
|
start: Ee({}, l, o[l]),
|
|
end: Ee({}, l, o[l] + o[c] - s[c])
|
|
};
|
|
e.offsets.popper = we({}, s, u[i])
|
|
}
|
|
return e
|
|
}
|
|
},
|
|
offset: {
|
|
order: 200,
|
|
enabled: !0,
|
|
fn: function (e, t) {
|
|
var n, i = t.offset,
|
|
r = e.placement,
|
|
o = e.offsets,
|
|
s = o.popper,
|
|
a = o.reference,
|
|
l = r.split("-")[0];
|
|
return n = qe(+i) ? [+i, 0] : function (e, r, o, t) {
|
|
var s = [0, 0],
|
|
a = -1 !== ["right", "left"].indexOf(t),
|
|
n = e.split(/(\+|\-)/).map(function (e) {
|
|
return e.trim()
|
|
}),
|
|
i = n.indexOf(Ie(n, function (e) {
|
|
return -1 !== e.search(/,|\s/)
|
|
}));
|
|
n[i] && -1 === n[i].indexOf(",") && console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");
|
|
var l = /\s*,\s*|\s+/,
|
|
c = -1 !== i ? [n.slice(0, i).concat([n[i].split(l)[0]]), [n[i].split(l)[1]].concat(n.slice(i + 1))] : [n];
|
|
return (c = c.map(function (e, t) {
|
|
var n = (1 === t ? !a : a) ? "height" : "width",
|
|
i = !1;
|
|
return e.reduce(function (e, t) {
|
|
return "" === e[e.length - 1] && -1 !== ["+", "-"].indexOf(t) ? (e[e.length - 1] = t, i = !0, e) : i ? (e[e.length - 1] += t, i = !1, e) : e.concat(t)
|
|
}, []).map(function (e) {
|
|
return function (e, t, n, i) {
|
|
var r = e.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),
|
|
o = +r[1],
|
|
s = r[2];
|
|
if (!o) return e;
|
|
if (0 !== s.indexOf("%")) return "vh" === s || "vw" === s ? ("vh" === s ? Math.max(document.documentElement.clientHeight, window.innerHeight || 0) : Math.max(document.documentElement.clientWidth, window.innerWidth || 0)) / 100 * o : o;
|
|
var a = void 0;
|
|
switch (s) {
|
|
case "%p":
|
|
a = n;
|
|
break;
|
|
case "%":
|
|
case "%r":
|
|
default:
|
|
a = i
|
|
}
|
|
return xe(a)[t] / 100 * o
|
|
}(e, n, r, o)
|
|
})
|
|
})).forEach(function (n, i) {
|
|
n.forEach(function (e, t) {
|
|
qe(e) && (s[i] += e * ("-" === n[t - 1] ? -1 : 1))
|
|
})
|
|
}), s
|
|
}(i, s, a, l), "left" === l ? (s.top += n[0], s.left -= n[1]) : "right" === l ? (s.top += n[0], s.left += n[1]) : "top" === l ? (s.left += n[0], s.top -= n[1]) : "bottom" === l && (s.left += n[0], s.top += n[1]), e.popper = s, e
|
|
},
|
|
offset: 0
|
|
},
|
|
preventOverflow: {
|
|
order: 300,
|
|
enabled: !0,
|
|
fn: function (e, i) {
|
|
var t = i.boundariesElement || de(e.instance.popper);
|
|
e.instance.reference === t && (t = de(t));
|
|
var n = Pe("transform"),
|
|
r = e.instance.popper.style,
|
|
o = r.top,
|
|
s = r.left,
|
|
a = r[n];
|
|
r.top = "", r.left = "", r[n] = "";
|
|
var l = Ae(e.instance.popper, e.instance.reference, i.padding, t, e.positionFixed);
|
|
r.top = o, r.left = s, r[n] = a, i.boundaries = l;
|
|
var c = i.priority,
|
|
u = e.offsets.popper,
|
|
f = {
|
|
primary: function (e) {
|
|
var t = u[e];
|
|
return u[e] < l[e] && !i.escapeWithReference && (t = Math.max(u[e], l[e])), Ee({}, e, t)
|
|
},
|
|
secondary: function (e) {
|
|
var t = "right" === e ? "left" : "top",
|
|
n = u[t];
|
|
return u[e] > l[e] && !i.escapeWithReference && (n = Math.min(u[t], l[e] - ("right" === e ? u.width : u.height))), Ee({}, t, n)
|
|
}
|
|
};
|
|
return c.forEach(function (e) {
|
|
var t = -1 !== ["left", "top"].indexOf(e) ? "primary" : "secondary";
|
|
u = we({}, u, f[t](e))
|
|
}), e.offsets.popper = u, e
|
|
},
|
|
priority: ["left", "right", "top", "bottom"],
|
|
padding: 5,
|
|
boundariesElement: "scrollParent"
|
|
},
|
|
keepTogether: {
|
|
order: 400,
|
|
enabled: !0,
|
|
fn: function (e) {
|
|
var t = e.offsets,
|
|
n = t.popper,
|
|
i = t.reference,
|
|
r = e.placement.split("-")[0],
|
|
o = Math.floor,
|
|
s = -1 !== ["top", "bottom"].indexOf(r),
|
|
a = s ? "right" : "bottom",
|
|
l = s ? "left" : "top",
|
|
c = s ? "width" : "height";
|
|
return n[a] < o(i[l]) && (e.offsets.popper[l] = o(i[l]) - n[c]), n[l] > o(i[a]) && (e.offsets.popper[l] = o(i[a])), e
|
|
}
|
|
},
|
|
arrow: {
|
|
order: 500,
|
|
enabled: !0,
|
|
fn: function (e, t) {
|
|
var n;
|
|
if (!Fe(e.instance.modifiers, "arrow", "keepTogether")) return e;
|
|
var i = t.element;
|
|
if ("string" == typeof i) {
|
|
if (!(i = e.instance.popper.querySelector(i))) return e
|
|
} else if (!e.instance.popper.contains(i)) return console.warn("WARNING: `arrow.element` must be child of its popper element!"), e;
|
|
var r = e.placement.split("-")[0],
|
|
o = e.offsets,
|
|
s = o.popper,
|
|
a = o.reference,
|
|
l = -1 !== ["left", "right"].indexOf(r),
|
|
c = l ? "height" : "width",
|
|
u = l ? "Top" : "Left",
|
|
f = u.toLowerCase(),
|
|
h = l ? "left" : "top",
|
|
d = l ? "bottom" : "right",
|
|
p = ke(i)[c];
|
|
a[d] - p < s[f] && (e.offsets.popper[f] -= s[f] - (a[d] - p)), a[f] + p > s[d] && (e.offsets.popper[f] += a[f] + p - s[d]), e.offsets.popper = xe(e.offsets.popper);
|
|
var m = a[f] + a[c] / 2 - p / 2,
|
|
g = ae(e.instance.popper),
|
|
v = parseFloat(g["margin" + u], 10),
|
|
y = parseFloat(g["border" + u + "Width"], 10),
|
|
b = m - e.offsets.popper[f] - v - y;
|
|
return b = Math.max(Math.min(s[c] - p, b), 0), e.arrowElement = i, e.offsets.arrow = (Ee(n = {}, f, Math.round(b)), Ee(n, h, ""), n), e
|
|
},
|
|
element: "[x-arrow]"
|
|
},
|
|
flip: {
|
|
order: 600,
|
|
enabled: !0,
|
|
fn: function (p, m) {
|
|
if (Me(p.instance.modifiers, "inner")) return p;
|
|
if (p.flipped && p.placement === p.originalPlacement) return p;
|
|
var g = Ae(p.instance.popper, p.instance.reference, m.padding, m.boundariesElement, p.positionFixed),
|
|
v = p.placement.split("-")[0],
|
|
y = Ne(v),
|
|
b = p.placement.split("-")[1] || "",
|
|
_ = [];
|
|
switch (m.behavior) {
|
|
case "flip":
|
|
_ = [v, y];
|
|
break;
|
|
case "clockwise":
|
|
_ = Ue(v);
|
|
break;
|
|
case "counterclockwise":
|
|
_ = Ue(v, !0);
|
|
break;
|
|
default:
|
|
_ = m.behavior
|
|
}
|
|
return _.forEach(function (e, t) {
|
|
if (v !== e || _.length === t + 1) return p;
|
|
v = p.placement.split("-")[0], y = Ne(v);
|
|
var n, i = p.offsets.popper,
|
|
r = p.offsets.reference,
|
|
o = Math.floor,
|
|
s = "left" === v && o(i.right) > o(r.left) || "right" === v && o(i.left) < o(r.right) || "top" === v && o(i.bottom) > o(r.top) || "bottom" === v && o(i.top) < o(r.bottom),
|
|
a = o(i.left) < o(g.left),
|
|
l = o(i.right) > o(g.right),
|
|
c = o(i.top) < o(g.top),
|
|
u = o(i.bottom) > o(g.bottom),
|
|
f = "left" === v && a || "right" === v && l || "top" === v && c || "bottom" === v && u,
|
|
h = -1 !== ["top", "bottom"].indexOf(v),
|
|
d = !!m.flipVariations && (h && "start" === b && a || h && "end" === b && l || !h && "start" === b && c || !h && "end" === b && u);
|
|
(s || f || d) && (p.flipped = !0, (s || f) && (v = _[t + 1]), d && (b = "end" === (n = b) ? "start" : "start" === n ? "end" : n), p.placement = v + (b ? "-" + b : ""), p.offsets.popper = we({}, p.offsets.popper, je(p.instance.popper, p.offsets.reference, p.placement)), p = Le(p.instance.modifiers, p, "flip"))
|
|
}), p
|
|
},
|
|
behavior: "flip",
|
|
padding: 5,
|
|
boundariesElement: "viewport"
|
|
},
|
|
inner: {
|
|
order: 700,
|
|
enabled: !1,
|
|
fn: function (e) {
|
|
var t = e.placement,
|
|
n = t.split("-")[0],
|
|
i = e.offsets,
|
|
r = i.popper,
|
|
o = i.reference,
|
|
s = -1 !== ["left", "right"].indexOf(n),
|
|
a = -1 === ["top", "left"].indexOf(n);
|
|
return r[s ? "left" : "top"] = o[n] - (a ? r[s ? "width" : "height"] : 0), e.placement = Ne(t), e.offsets.popper = xe(r), e
|
|
}
|
|
},
|
|
hide: {
|
|
order: 800,
|
|
enabled: !0,
|
|
fn: function (e) {
|
|
if (!Fe(e.instance.modifiers, "hide", "preventOverflow")) return e;
|
|
var t = e.offsets.reference,
|
|
n = Ie(e.instance.modifiers, function (e) {
|
|
return "preventOverflow" === e.name
|
|
}).boundaries;
|
|
if (t.bottom < n.top || t.left > n.right || t.top > n.bottom || t.right < n.left) {
|
|
if (!0 === e.hide) return e;
|
|
e.hide = !0, e.attributes["x-out-of-boundaries"] = ""
|
|
} else {
|
|
if (!1 === e.hide) return e;
|
|
e.hide = !1, e.attributes["x-out-of-boundaries"] = !1
|
|
}
|
|
return e
|
|
}
|
|
},
|
|
computeStyle: {
|
|
order: 850,
|
|
enabled: !0,
|
|
fn: function (e, t) {
|
|
var n = t.x,
|
|
i = t.y,
|
|
r = e.offsets.popper,
|
|
o = Ie(e.instance.modifiers, function (e) {
|
|
return "applyStyle" === e.name
|
|
}).gpuAcceleration;
|
|
void 0 !== o && console.warn("WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!");
|
|
var s, a, l = void 0 !== o ? o : t.gpuAcceleration,
|
|
c = Ce(de(e.instance.popper)),
|
|
u = {
|
|
position: r.position
|
|
},
|
|
f = {
|
|
left: Math.floor(r.left),
|
|
top: Math.round(r.top),
|
|
bottom: Math.round(r.bottom),
|
|
right: Math.floor(r.right)
|
|
},
|
|
h = "bottom" === n ? "top" : "bottom",
|
|
d = "right" === i ? "left" : "right",
|
|
p = Pe("transform");
|
|
if (a = "bottom" === h ? -c.height + f.bottom : f.top, s = "right" === d ? -c.width + f.right : f.left, l && p) u[p] = "translate3d(" + s + "px, " + a + "px, 0)", u[h] = 0, u[d] = 0, u.willChange = "transform";
|
|
else {
|
|
var m = "bottom" === h ? -1 : 1,
|
|
g = "right" === d ? -1 : 1;
|
|
u[h] = a * m, u[d] = s * g, u.willChange = h + ", " + d
|
|
}
|
|
var v = {
|
|
"x-placement": e.placement
|
|
};
|
|
return e.attributes = we({}, v, e.attributes), e.styles = we({}, u, e.styles), e.arrowStyles = we({}, e.offsets.arrow, e.arrowStyles), e
|
|
},
|
|
gpuAcceleration: !0,
|
|
x: "bottom",
|
|
y: "right"
|
|
},
|
|
applyStyle: {
|
|
order: 900,
|
|
enabled: !0,
|
|
fn: function (e) {
|
|
var t, n;
|
|
return Re(e.instance.popper, e.styles), t = e.instance.popper, n = e.attributes, Object.keys(n).forEach(function (e) {
|
|
!1 !== n[e] ? t.setAttribute(e, n[e]) : t.removeAttribute(e)
|
|
}), e.arrowElement && Object.keys(e.arrowStyles).length && Re(e.arrowElement, e.arrowStyles), e
|
|
},
|
|
onLoad: function (e, t, n, i, r) {
|
|
var o = Oe(r, t, e, n.positionFixed),
|
|
s = De(n.placement, o, t, e, n.modifiers.flip.boundariesElement, n.modifiers.flip.padding);
|
|
return t.setAttribute("x-placement", s), Re(t, {
|
|
position: n.positionFixed ? "fixed" : "absolute"
|
|
}), n
|
|
},
|
|
gpuAcceleration: void 0
|
|
}
|
|
}
|
|
},
|
|
$e = function () {
|
|
function o(e, t) {
|
|
var n = this,
|
|
i = 2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : {};
|
|
! function (e, t) {
|
|
if (!(e instanceof o)) throw new TypeError("Cannot call a class as a function")
|
|
}(this), this.scheduleUpdate = function () {
|
|
return requestAnimationFrame(n.update)
|
|
}, this.update = oe(this.update.bind(this)), this.options = we({}, o.Defaults, i), this.state = {
|
|
isDestroyed: !1,
|
|
isCreated: !1,
|
|
scrollParents: []
|
|
}, this.reference = e && e.jquery ? e[0] : e, this.popper = t && t.jquery ? t[0] : t, this.options.modifiers = {}, Object.keys(we({}, o.Defaults.modifiers, i.modifiers)).forEach(function (e) {
|
|
n.options.modifiers[e] = we({}, o.Defaults.modifiers[e] || {}, i.modifiers ? i.modifiers[e] : {})
|
|
}), this.modifiers = Object.keys(this.options.modifiers).map(function (e) {
|
|
return we({
|
|
name: e
|
|
}, n.options.modifiers[e])
|
|
}).sort(function (e, t) {
|
|
return e.order - t.order
|
|
}), this.modifiers.forEach(function (e) {
|
|
e.enabled && se(e.onLoad) && e.onLoad(n.reference, n.popper, n.options, e, n.state)
|
|
}), this.update();
|
|
var r = this.options.eventsEnabled;
|
|
r && this.enableEventListeners(), this.state.eventsEnabled = r
|
|
}
|
|
return _e(o, [{
|
|
key: "update",
|
|
value: function () {
|
|
return function () {
|
|
if (!this.state.isDestroyed) {
|
|
var e = {
|
|
instance: this,
|
|
styles: {},
|
|
arrowStyles: {},
|
|
attributes: {},
|
|
flipped: !1,
|
|
offsets: {}
|
|
};
|
|
e.offsets.reference = Oe(this.state, this.popper, this.reference, this.options.positionFixed), e.placement = De(this.options.placement, e.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding), e.originalPlacement = e.placement, e.positionFixed = this.options.positionFixed, e.offsets.popper = je(this.popper, e.offsets.reference, e.placement), e.offsets.popper.position = this.options.positionFixed ? "fixed" : "absolute", e = Le(this.modifiers, e), this.state.isCreated ? this.options.onUpdate(e) : (this.state.isCreated = !0, this.options.onCreate(e))
|
|
}
|
|
}.call(this)
|
|
}
|
|
}, {
|
|
key: "destroy",
|
|
value: function () {
|
|
return function () {
|
|
return this.state.isDestroyed = !0, Me(this.modifiers, "applyStyle") && (this.popper.removeAttribute("x-placement"), this.popper.style.position = "", this.popper.style.top = "", this.popper.style.left = "", this.popper.style.right = "", this.popper.style.bottom = "", this.popper.style.willChange = "", this.popper.style[Pe("transform")] = ""), this.disableEventListeners(), this.options.removeOnDestroy && this.popper.parentNode.removeChild(this.popper), this
|
|
}.call(this)
|
|
}
|
|
}, {
|
|
key: "enableEventListeners",
|
|
value: function () {
|
|
return function () {
|
|
this.state.eventsEnabled || (this.state = function (e, t, n, i) {
|
|
n.updateBound = i, He(e).addEventListener("resize", n.updateBound, {
|
|
passive: !0
|
|
});
|
|
var r = ce(e);
|
|
return function e(t, n, i, r) {
|
|
var o = "BODY" === t.nodeName,
|
|
s = o ? t.ownerDocument.defaultView : t;
|
|
s.addEventListener(n, i, {
|
|
passive: !0
|
|
}), o || e(ce(s.parentNode), n, i, r), r.push(s)
|
|
}(r, "scroll", n.updateBound, n.scrollParents), n.scrollElement = r, n.eventsEnabled = !0, n
|
|
}(this.reference, this.options, this.state, this.scheduleUpdate))
|
|
}.call(this)
|
|
}
|
|
}, {
|
|
key: "disableEventListeners",
|
|
value: function () {
|
|
return function () {
|
|
var e, t;
|
|
this.state.eventsEnabled && (cancelAnimationFrame(this.scheduleUpdate), this.state = (e = this.reference, t = this.state, He(e).removeEventListener("resize", t.updateBound), t.scrollParents.forEach(function (e) {
|
|
e.removeEventListener("scroll", t.updateBound)
|
|
}), t.updateBound = null, t.scrollParents = [], t.scrollElement = null, t.eventsEnabled = !1, t))
|
|
}.call(this)
|
|
}
|
|
}]), o
|
|
}();
|
|
$e.Utils = ("undefined" != typeof window ? window : global).PopperUtils, $e.placements = We, $e.Defaults = Ye;
|
|
var ze, Xe, Qe, Ke, Ve, Ge, Je, Ze, et, tt, nt, it, rt, ot, st, at, lt, ct, ut, ft, ht, dt, pt, mt, gt, vt, yt, bt, _t, Et, wt, xt, Ct, Tt, St, At, Dt, Ot, kt, Nt, jt, It, Lt, Mt, Pt, Ht, qt, Rt, Ft, Wt, Bt, Ut, Yt, $t, zt, Xt, Qt, Kt, Vt, Gt, Jt, Zt, en, tn, nn, rn, on, sn, an, ln, cn, un, fn, hn, dn, pn, mn, gn, vn, yn, bn, _n = (Xe = "dropdown", Ke = "." + (Qe = "bs.dropdown"), Ve = ".data-api", Ge = (ze = t).fn[Xe], Je = new RegExp("38|40|27"), Ze = {
|
|
HIDE: "hide" + Ke,
|
|
HIDDEN: "hidden" + Ke,
|
|
SHOW: "show" + Ke,
|
|
SHOWN: "shown" + Ke,
|
|
CLICK: "click" + Ke,
|
|
CLICK_DATA_API: "click" + Ke + Ve,
|
|
KEYDOWN_DATA_API: "keydown" + Ke + Ve,
|
|
KEYUP_DATA_API: "keyup" + Ke + Ve
|
|
}, et = "disabled", tt = "show", "dropup", "dropright", "dropleft", nt = "dropdown-menu-right", "position-static", it = '[data-toggle="dropdown"]', ".dropdown form", rt = ".dropdown-menu", ".navbar-nav", ".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)", "top-start", "top-end", "bottom-start", "bottom-end", "right-start", "left-start", ot = {
|
|
offset: 0,
|
|
flip: !0,
|
|
boundary: "scrollParent",
|
|
reference: "toggle",
|
|
display: "dynamic"
|
|
}, st = {
|
|
offset: "(number|string|function)",
|
|
flip: "boolean",
|
|
boundary: "(string|element)",
|
|
reference: "(string|element)",
|
|
display: "string"
|
|
}, at = function () {
|
|
function c(e, t) {
|
|
this._element = e, this._popper = null, this._config = this._getConfig(t), this._menu = this._getMenuElement(), this._inNavbar = this._detectNavbar(), this._addEventListeners()
|
|
}
|
|
var e = c.prototype;
|
|
return e.toggle = function () {
|
|
if (!this._element.disabled && !ze(this._element).hasClass(et)) {
|
|
var e = c._getParentFromElement(this._element),
|
|
t = ze(this._menu).hasClass(tt);
|
|
if (c._clearMenus(), !t) {
|
|
var n = {
|
|
relatedTarget: this._element
|
|
},
|
|
i = ze.Event(Ze.SHOW, n);
|
|
if (ze(e).trigger(i), !i.isDefaultPrevented()) {
|
|
if (!this._inNavbar) {
|
|
if (void 0 === $e) throw new TypeError("Bootstrap dropdown require Popper.js (https://popper.js.org)");
|
|
var r = this._element;
|
|
"parent" === this._config.reference ? r = e : V.isElement(this._config.reference) && (r = this._config.reference, void 0 !== this._config.reference.jquery && (r = this._config.reference[0])), "scrollParent" !== this._config.boundary && ze(e).addClass("position-static"), this._popper = new $e(r, this._menu, this._getPopperConfig())
|
|
}
|
|
"ontouchstart" in document.documentElement && 0 === ze(e).closest(".navbar-nav").length && ze(document.body).children().on("mouseover", null, ze.noop), this._element.focus(), this._element.setAttribute("aria-expanded", !0), ze(this._menu).toggleClass(tt), ze(e).toggleClass(tt).trigger(ze.Event(Ze.SHOWN, n))
|
|
}
|
|
}
|
|
}
|
|
}, e.dispose = function () {
|
|
ze.removeData(this._element, Qe), ze(this._element).off(Ke), this._element = null, (this._menu = null) !== this._popper && (this._popper.destroy(), this._popper = null)
|
|
}, e.update = function () {
|
|
this._inNavbar = this._detectNavbar(), null !== this._popper && this._popper.scheduleUpdate()
|
|
}, e._addEventListeners = function () {
|
|
var t = this;
|
|
ze(this._element).on(Ze.CLICK, function (e) {
|
|
e.preventDefault(), e.stopPropagation(), t.toggle()
|
|
})
|
|
}, e._getConfig = function (e) {
|
|
return e = l({}, this.constructor.Default, ze(this._element).data(), e), V.typeCheckConfig(Xe, e, this.constructor.DefaultType), e
|
|
}, e._getMenuElement = function () {
|
|
if (!this._menu) {
|
|
var e = c._getParentFromElement(this._element);
|
|
e && (this._menu = e.querySelector(rt))
|
|
}
|
|
return this._menu
|
|
}, e._getPlacement = function () {
|
|
var e = ze(this._element.parentNode),
|
|
t = "bottom-start";
|
|
return e.hasClass("dropup") ? (t = "top-start", ze(this._menu).hasClass(nt) && (t = "top-end")) : e.hasClass("dropright") ? t = "right-start" : e.hasClass("dropleft") ? t = "left-start" : ze(this._menu).hasClass(nt) && (t = "bottom-end"), t
|
|
}, e._detectNavbar = function () {
|
|
return 0 < ze(this._element).closest(".navbar").length
|
|
}, e._getPopperConfig = function () {
|
|
var t = this,
|
|
e = {};
|
|
"function" == typeof this._config.offset ? e.fn = function (e) {
|
|
return e.offsets = l({}, e.offsets, t._config.offset(e.offsets) || {}), e
|
|
} : e.offset = this._config.offset;
|
|
var n = {
|
|
placement: this._getPlacement(),
|
|
modifiers: {
|
|
offset: e,
|
|
flip: {
|
|
enabled: this._config.flip
|
|
},
|
|
preventOverflow: {
|
|
boundariesElement: this._config.boundary
|
|
}
|
|
}
|
|
};
|
|
return "static" === this._config.display && (n.modifiers.applyStyle = {
|
|
enabled: !1
|
|
}), n
|
|
}, c._jQueryInterface = function (t) {
|
|
return this.each(function () {
|
|
var e = ze(this).data(Qe);
|
|
if (e || (e = new c(this, "object" == typeof t ? t : null), ze(this).data(Qe, e)), "string" == typeof t) {
|
|
if (void 0 === e[t]) throw new TypeError('No method named "' + t + '"');
|
|
e[t]()
|
|
}
|
|
})
|
|
}, c._clearMenus = function (e) {
|
|
if (!e || 3 !== e.which && ("keyup" !== e.type || 9 === e.which))
|
|
for (var t = [].slice.call(document.querySelectorAll(it)), n = 0, i = t.length; n < i; n++) {
|
|
var r = c._getParentFromElement(t[n]),
|
|
o = ze(t[n]).data(Qe),
|
|
s = {
|
|
relatedTarget: t[n]
|
|
};
|
|
if (e && "click" === e.type && (s.clickEvent = e), o) {
|
|
var a = o._menu;
|
|
if (ze(r).hasClass(tt) && !(e && ("click" === e.type && /input|textarea/i.test(e.target.tagName) || "keyup" === e.type && 9 === e.which) && ze.contains(r, e.target))) {
|
|
var l = ze.Event(Ze.HIDE, s);
|
|
ze(r).trigger(l), l.isDefaultPrevented() || ("ontouchstart" in document.documentElement && ze(document.body).children().off("mouseover", null, ze.noop), t[n].setAttribute("aria-expanded", "false"), ze(a).removeClass(tt), ze(r).removeClass(tt).trigger(ze.Event(Ze.HIDDEN, s)))
|
|
}
|
|
}
|
|
}
|
|
}, c._getParentFromElement = function (e) {
|
|
var t, n = V.getSelectorFromElement(e);
|
|
return n && (t = document.querySelector(n)), t || e.parentNode
|
|
}, c._dataApiKeydownHandler = function (e) {
|
|
if ((/input|textarea/i.test(e.target.tagName) ? !(32 === e.which || 27 !== e.which && (40 !== e.which && 38 !== e.which || ze(e.target).closest(rt).length)) : Je.test(e.which)) && (e.preventDefault(), e.stopPropagation(), !this.disabled && !ze(this).hasClass(et))) {
|
|
var t = c._getParentFromElement(this),
|
|
n = ze(t).hasClass(tt);
|
|
if ((n || 27 === e.which && 32 === e.which) && (!n || 27 !== e.which && 32 !== e.which)) {
|
|
var i = [].slice.call(t.querySelectorAll(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)"));
|
|
if (0 !== i.length) {
|
|
var r = i.indexOf(e.target);
|
|
38 === e.which && 0 < r && r--, 40 === e.which && r < i.length - 1 && r++, r < 0 && (r = 0), i[r].focus()
|
|
}
|
|
} else {
|
|
if (27 === e.which) {
|
|
var o = t.querySelector(it);
|
|
ze(o).trigger("focus")
|
|
}
|
|
ze(this).trigger("click")
|
|
}
|
|
}
|
|
}, s(c, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return ot
|
|
}
|
|
}, {
|
|
key: "DefaultType",
|
|
get: function () {
|
|
return st
|
|
}
|
|
}]), c
|
|
}(), ze(document).on(Ze.KEYDOWN_DATA_API, it, at._dataApiKeydownHandler).on(Ze.KEYDOWN_DATA_API, rt, at._dataApiKeydownHandler).on(Ze.CLICK_DATA_API + " " + Ze.KEYUP_DATA_API, at._clearMenus).on(Ze.CLICK_DATA_API, it, function (e) {
|
|
e.preventDefault(), e.stopPropagation(), at._jQueryInterface.call(ze(this), "toggle")
|
|
}).on(Ze.CLICK_DATA_API, ".dropdown form", function (e) {
|
|
e.stopPropagation()
|
|
}), ze.fn[Xe] = at._jQueryInterface, ze.fn[Xe].Constructor = at, ze.fn[Xe].noConflict = function () {
|
|
return ze.fn[Xe] = Ge, at._jQueryInterface
|
|
}, at),
|
|
En = (ct = "modal", ft = "." + (ut = "bs.modal"), ht = (lt = t).fn[ct], dt = {
|
|
backdrop: !0,
|
|
keyboard: !0,
|
|
focus: !0,
|
|
show: !0
|
|
}, pt = {
|
|
backdrop: "(boolean|string)",
|
|
keyboard: "boolean",
|
|
focus: "boolean",
|
|
show: "boolean"
|
|
}, mt = {
|
|
HIDE: "hide" + ft,
|
|
HIDDEN: "hidden" + ft,
|
|
SHOW: "show" + ft,
|
|
SHOWN: "shown" + ft,
|
|
FOCUSIN: "focusin" + ft,
|
|
RESIZE: "resize" + ft,
|
|
CLICK_DISMISS: "click.dismiss" + ft,
|
|
KEYDOWN_DISMISS: "keydown.dismiss" + ft,
|
|
MOUSEUP_DISMISS: "mouseup.dismiss" + ft,
|
|
MOUSEDOWN_DISMISS: "mousedown.dismiss" + ft,
|
|
CLICK_DATA_API: "click" + ft + ".data-api"
|
|
}, "modal-scrollbar-measure", "modal-backdrop", gt = "modal-open", vt = "fade", yt = "show", ".modal-dialog", '[data-toggle="modal"]', '[data-dismiss="modal"]', bt = ".fixed-top, .fixed-bottom, .is-fixed, .sticky-top", _t = ".sticky-top", Et = function () {
|
|
function r(e, t) {
|
|
this._config = this._getConfig(t), this._element = e, this._dialog = e.querySelector(".modal-dialog"), this._backdrop = null, this._isShown = !1, this._isBodyOverflowing = !1, this._ignoreBackdropClick = !1, this._scrollbarWidth = 0
|
|
}
|
|
var e = r.prototype;
|
|
return e.toggle = function (e) {
|
|
return this._isShown ? this.hide() : this.show(e)
|
|
}, e.show = function (e) {
|
|
var t = this;
|
|
if (!this._isTransitioning && !this._isShown) {
|
|
lt(this._element).hasClass(vt) && (this._isTransitioning = !0);
|
|
var n = lt.Event(mt.SHOW, {
|
|
relatedTarget: e
|
|
});
|
|
lt(this._element).trigger(n), this._isShown || n.isDefaultPrevented() || (this._isShown = !0, this._checkScrollbar(), this._setScrollbar(), this._adjustDialog(), lt(document.body).addClass(gt), this._setEscapeEvent(), this._setResizeEvent(), lt(this._element).on(mt.CLICK_DISMISS, '[data-dismiss="modal"]', function (e) {
|
|
return t.hide(e)
|
|
}), lt(this._dialog).on(mt.MOUSEDOWN_DISMISS, function () {
|
|
lt(t._element).one(mt.MOUSEUP_DISMISS, function (e) {
|
|
lt(e.target).is(t._element) && (t._ignoreBackdropClick = !0)
|
|
})
|
|
}), this._showBackdrop(function () {
|
|
return t._showElement(e)
|
|
}))
|
|
}
|
|
}, e.hide = function (e) {
|
|
var t = this;
|
|
if (e && e.preventDefault(), !this._isTransitioning && this._isShown) {
|
|
var n = lt.Event(mt.HIDE);
|
|
if (lt(this._element).trigger(n), this._isShown && !n.isDefaultPrevented()) {
|
|
this._isShown = !1;
|
|
var i = lt(this._element).hasClass(vt);
|
|
if (i && (this._isTransitioning = !0), this._setEscapeEvent(), this._setResizeEvent(), lt(document).off(mt.FOCUSIN), lt(this._element).removeClass(yt), lt(this._element).off(mt.CLICK_DISMISS), lt(this._dialog).off(mt.MOUSEDOWN_DISMISS), i) {
|
|
var r = V.getTransitionDurationFromElement(this._element);
|
|
lt(this._element).one(V.TRANSITION_END, function (e) {
|
|
return t._hideModal(e)
|
|
}).emulateTransitionEnd(r)
|
|
} else this._hideModal()
|
|
}
|
|
}
|
|
}, e.dispose = function () {
|
|
lt.removeData(this._element, ut), lt(window, document, this._element, this._backdrop).off(ft), this._config = null, this._element = null, this._dialog = null, this._backdrop = null, this._isShown = null, this._isBodyOverflowing = null, this._ignoreBackdropClick = null, this._scrollbarWidth = null
|
|
}, e.handleUpdate = function () {
|
|
this._adjustDialog()
|
|
}, e._getConfig = function (e) {
|
|
return e = l({}, dt, e), V.typeCheckConfig(ct, e, pt), e
|
|
}, e._showElement = function (e) {
|
|
var t = this,
|
|
n = lt(this._element).hasClass(vt);
|
|
this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE || document.body.appendChild(this._element), this._element.style.display = "block", this._element.removeAttribute("aria-hidden"), this._element.scrollTop = 0, n && V.reflow(this._element), lt(this._element).addClass(yt), this._config.focus && this._enforceFocus();
|
|
var i = lt.Event(mt.SHOWN, {
|
|
relatedTarget: e
|
|
}),
|
|
r = function () {
|
|
t._config.focus && t._element.focus(), t._isTransitioning = !1, lt(t._element).trigger(i)
|
|
};
|
|
if (n) {
|
|
var o = V.getTransitionDurationFromElement(this._element);
|
|
lt(this._dialog).one(V.TRANSITION_END, r).emulateTransitionEnd(o)
|
|
} else r()
|
|
}, e._enforceFocus = function () {
|
|
var t = this;
|
|
lt(document).off(mt.FOCUSIN).on(mt.FOCUSIN, function (e) {
|
|
document !== e.target && t._element !== e.target && 0 === lt(t._element).has(e.target).length && t._element.focus()
|
|
})
|
|
}, e._setEscapeEvent = function () {
|
|
var t = this;
|
|
this._isShown && this._config.keyboard ? lt(this._element).on(mt.KEYDOWN_DISMISS, function (e) {
|
|
27 === e.which && (e.preventDefault(), t.hide())
|
|
}) : this._isShown || lt(this._element).off(mt.KEYDOWN_DISMISS)
|
|
}, e._setResizeEvent = function () {
|
|
var t = this;
|
|
this._isShown ? lt(window).on(mt.RESIZE, function (e) {
|
|
return t.handleUpdate(e)
|
|
}) : lt(window).off(mt.RESIZE)
|
|
}, e._hideModal = function () {
|
|
var e = this;
|
|
this._element.style.display = "none", this._element.setAttribute("aria-hidden", !0), this._isTransitioning = !1, this._showBackdrop(function () {
|
|
lt(document.body).removeClass(gt), e._resetAdjustments(), e._resetScrollbar(), lt(e._element).trigger(mt.HIDDEN)
|
|
})
|
|
}, e._removeBackdrop = function () {
|
|
this._backdrop && (lt(this._backdrop).remove(), this._backdrop = null)
|
|
}, e._showBackdrop = function (e) {
|
|
var t = this,
|
|
n = lt(this._element).hasClass(vt) ? vt : "";
|
|
if (this._isShown && this._config.backdrop) {
|
|
if (this._backdrop = document.createElement("div"), this._backdrop.className = "modal-backdrop", n && this._backdrop.classList.add(n), lt(this._backdrop).appendTo(document.body), lt(this._element).on(mt.CLICK_DISMISS, function (e) {
|
|
t._ignoreBackdropClick ? t._ignoreBackdropClick = !1 : e.target === e.currentTarget && ("static" === t._config.backdrop ? t._element.focus() : t.hide())
|
|
}), n && V.reflow(this._backdrop), lt(this._backdrop).addClass(yt), !e) return;
|
|
if (!n) return void e();
|
|
var i = V.getTransitionDurationFromElement(this._backdrop);
|
|
lt(this._backdrop).one(V.TRANSITION_END, e).emulateTransitionEnd(i)
|
|
} else if (!this._isShown && this._backdrop) {
|
|
lt(this._backdrop).removeClass(yt);
|
|
var r = function () {
|
|
t._removeBackdrop(), e && e()
|
|
};
|
|
if (lt(this._element).hasClass(vt)) {
|
|
var o = V.getTransitionDurationFromElement(this._backdrop);
|
|
lt(this._backdrop).one(V.TRANSITION_END, r).emulateTransitionEnd(o)
|
|
} else r()
|
|
} else e && e()
|
|
}, e._adjustDialog = function () {
|
|
var e = this._element.scrollHeight > document.documentElement.clientHeight;
|
|
!this._isBodyOverflowing && e && (this._element.style.paddingLeft = this._scrollbarWidth + "px"), this._isBodyOverflowing && !e && (this._element.style.paddingRight = this._scrollbarWidth + "px")
|
|
}, e._resetAdjustments = function () {
|
|
this._element.style.paddingLeft = "", this._element.style.paddingRight = ""
|
|
}, e._checkScrollbar = function () {
|
|
var e = document.body.getBoundingClientRect();
|
|
this._isBodyOverflowing = e.left + e.right < window.innerWidth, this._scrollbarWidth = this._getScrollbarWidth()
|
|
}, e._setScrollbar = function () {
|
|
var r = this;
|
|
if (this._isBodyOverflowing) {
|
|
var e = [].slice.call(document.querySelectorAll(bt)),
|
|
t = [].slice.call(document.querySelectorAll(_t));
|
|
lt(e).each(function (e, t) {
|
|
var n = t.style.paddingRight,
|
|
i = lt(t).css("padding-right");
|
|
lt(t).data("padding-right", n).css("padding-right", parseFloat(i) + r._scrollbarWidth + "px")
|
|
}), lt(t).each(function (e, t) {
|
|
var n = t.style.marginRight,
|
|
i = lt(t).css("margin-right");
|
|
lt(t).data("margin-right", n).css("margin-right", parseFloat(i) - r._scrollbarWidth + "px")
|
|
});
|
|
var n = document.body.style.paddingRight,
|
|
i = lt(document.body).css("padding-right");
|
|
lt(document.body).data("padding-right", n).css("padding-right", parseFloat(i) + this._scrollbarWidth + "px")
|
|
}
|
|
}, e._resetScrollbar = function () {
|
|
var e = [].slice.call(document.querySelectorAll(bt));
|
|
lt(e).each(function (e, t) {
|
|
var n = lt(t).data("padding-right");
|
|
lt(t).removeData("padding-right"), t.style.paddingRight = n || ""
|
|
});
|
|
var t = [].slice.call(document.querySelectorAll("" + _t));
|
|
lt(t).each(function (e, t) {
|
|
var n = lt(t).data("margin-right");
|
|
void 0 !== n && lt(t).css("margin-right", n).removeData("margin-right")
|
|
});
|
|
var n = lt(document.body).data("padding-right");
|
|
lt(document.body).removeData("padding-right"), document.body.style.paddingRight = n || ""
|
|
}, e._getScrollbarWidth = function () {
|
|
var e = document.createElement("div");
|
|
e.className = "modal-scrollbar-measure", document.body.appendChild(e);
|
|
var t = e.getBoundingClientRect().width - e.clientWidth;
|
|
return document.body.removeChild(e), t
|
|
}, r._jQueryInterface = function (n, i) {
|
|
return this.each(function () {
|
|
var e = lt(this).data(ut),
|
|
t = l({}, dt, lt(this).data(), "object" == typeof n && n ? n : {});
|
|
if (e || (e = new r(this, t), lt(this).data(ut, e)), "string" == typeof n) {
|
|
if (void 0 === e[n]) throw new TypeError('No method named "' + n + '"');
|
|
e[n](i)
|
|
} else t.show && e.show(i)
|
|
})
|
|
}, s(r, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return dt
|
|
}
|
|
}]), r
|
|
}(), lt(document).on(mt.CLICK_DATA_API, '[data-toggle="modal"]', function (e) {
|
|
var t, n = this,
|
|
i = V.getSelectorFromElement(this);
|
|
i && (t = document.querySelector(i));
|
|
var r = lt(t).data(ut) ? "toggle" : l({}, lt(t).data(), lt(this).data());
|
|
"A" !== this.tagName && "AREA" !== this.tagName || e.preventDefault();
|
|
var o = lt(t).one(mt.SHOW, function (e) {
|
|
e.isDefaultPrevented() || o.one(mt.HIDDEN, function () {
|
|
lt(n).is(":visible") && n.focus()
|
|
})
|
|
});
|
|
Et._jQueryInterface.call(lt(t), r, this)
|
|
}), lt.fn[ct] = Et._jQueryInterface, lt.fn[ct].Constructor = Et, lt.fn[ct].noConflict = function () {
|
|
return lt.fn[ct] = ht, Et._jQueryInterface
|
|
}, Et),
|
|
wn = (xt = "tooltip", Tt = "." + (Ct = "bs.tooltip"), St = (wt = t).fn[xt], At = "bs-tooltip", Dt = new RegExp("(^|\\s)" + At + "\\S+", "g"), Nt = {
|
|
animation: !0,
|
|
template: '<div class="tooltip" role="tooltip"><div class="arrow"></div><div class="tooltip-inner"></div></div>',
|
|
trigger: "hover focus",
|
|
title: "",
|
|
delay: 0,
|
|
html: (kt = {
|
|
AUTO: "auto",
|
|
TOP: "top",
|
|
RIGHT: "right",
|
|
BOTTOM: "bottom",
|
|
LEFT: "left"
|
|
}, !1),
|
|
selector: (Ot = {
|
|
animation: "boolean",
|
|
template: "string",
|
|
title: "(string|element|function)",
|
|
trigger: "string",
|
|
delay: "(number|object)",
|
|
html: "boolean",
|
|
selector: "(string|boolean)",
|
|
placement: "(string|function)",
|
|
offset: "(number|string)",
|
|
container: "(string|element|boolean)",
|
|
fallbackPlacement: "(string|array)",
|
|
boundary: "(string|element)"
|
|
}, !1),
|
|
placement: "top",
|
|
offset: 0,
|
|
container: !1,
|
|
fallbackPlacement: "flip",
|
|
boundary: "scrollParent"
|
|
}, "out", It = {
|
|
HIDE: "hide" + Tt,
|
|
HIDDEN: "hidden" + Tt,
|
|
SHOW: (jt = "show") + Tt,
|
|
SHOWN: "shown" + Tt,
|
|
INSERTED: "inserted" + Tt,
|
|
CLICK: "click" + Tt,
|
|
FOCUSIN: "focusin" + Tt,
|
|
FOCUSOUT: "focusout" + Tt,
|
|
MOUSEENTER: "mouseenter" + Tt,
|
|
MOUSELEAVE: "mouseleave" + Tt
|
|
}, Lt = "fade", Mt = "show", ".tooltip-inner", ".arrow", Pt = "hover", Ht = "focus", "click", "manual", qt = function () {
|
|
function i(e, t) {
|
|
if (void 0 === $e) throw new TypeError("Bootstrap tooltips require Popper.js (https://popper.js.org)");
|
|
this._isEnabled = !0, this._timeout = 0, this._hoverState = "", this._activeTrigger = {}, this._popper = null, this.element = e, this.config = this._getConfig(t), this.tip = null, this._setListeners()
|
|
}
|
|
var e = i.prototype;
|
|
return e.enable = function () {
|
|
this._isEnabled = !0
|
|
}, e.disable = function () {
|
|
this._isEnabled = !1
|
|
}, e.toggleEnabled = function () {
|
|
this._isEnabled = !this._isEnabled
|
|
}, e.toggle = function (e) {
|
|
if (this._isEnabled)
|
|
if (e) {
|
|
var t = this.constructor.DATA_KEY,
|
|
n = wt(e.currentTarget).data(t);
|
|
n || (n = new this.constructor(e.currentTarget, this._getDelegateConfig()), wt(e.currentTarget).data(t, n)), n._activeTrigger.click = !n._activeTrigger.click, n._isWithActiveTrigger() ? n._enter(null, n) : n._leave(null, n)
|
|
} else {
|
|
if (wt(this.getTipElement()).hasClass(Mt)) return void this._leave(null, this);
|
|
this._enter(null, this)
|
|
}
|
|
}, e.dispose = function () {
|
|
clearTimeout(this._timeout), wt.removeData(this.element, this.constructor.DATA_KEY), wt(this.element).off(this.constructor.EVENT_KEY), wt(this.element).closest(".modal").off("hide.bs.modal"), this.tip && wt(this.tip).remove(), this._isEnabled = null, this._timeout = null, this._hoverState = null, (this._activeTrigger = null) !== this._popper && this._popper.destroy(), this._popper = null, this.element = null, this.config = null, this.tip = null
|
|
}, e.show = function () {
|
|
var t = this;
|
|
if ("none" === wt(this.element).css("display")) throw new Error("Please use show on visible elements");
|
|
var e = wt.Event(this.constructor.Event.SHOW);
|
|
if (this.isWithContent() && this._isEnabled) {
|
|
wt(this.element).trigger(e);
|
|
var n = wt.contains(this.element.ownerDocument.documentElement, this.element);
|
|
if (e.isDefaultPrevented() || !n) return;
|
|
var i = this.getTipElement(),
|
|
r = V.getUID(this.constructor.NAME);
|
|
i.setAttribute("id", r), this.element.setAttribute("aria-describedby", r), this.setContent(), this.config.animation && wt(i).addClass(Lt);
|
|
var o = "function" == typeof this.config.placement ? this.config.placement.call(this, i, this.element) : this.config.placement,
|
|
s = this._getAttachment(o);
|
|
this.addAttachmentClass(s);
|
|
var a = !1 === this.config.container ? document.body : wt(document).find(this.config.container);
|
|
wt(i).data(this.constructor.DATA_KEY, this), wt.contains(this.element.ownerDocument.documentElement, this.tip) || wt(i).appendTo(a), wt(this.element).trigger(this.constructor.Event.INSERTED), this._popper = new $e(this.element, i, {
|
|
placement: s,
|
|
modifiers: {
|
|
offset: {
|
|
offset: this.config.offset
|
|
},
|
|
flip: {
|
|
behavior: this.config.fallbackPlacement
|
|
},
|
|
arrow: {
|
|
element: ".arrow"
|
|
},
|
|
preventOverflow: {
|
|
boundariesElement: this.config.boundary
|
|
}
|
|
},
|
|
onCreate: function (e) {
|
|
e.originalPlacement !== e.placement && t._handlePopperPlacementChange(e)
|
|
},
|
|
onUpdate: function (e) {
|
|
t._handlePopperPlacementChange(e)
|
|
}
|
|
}), wt(i).addClass(Mt), "ontouchstart" in document.documentElement && wt(document.body).children().on("mouseover", null, wt.noop);
|
|
var l = function () {
|
|
t.config.animation && t._fixTransition();
|
|
var e = t._hoverState;
|
|
t._hoverState = null, wt(t.element).trigger(t.constructor.Event.SHOWN), "out" === e && t._leave(null, t)
|
|
};
|
|
if (wt(this.tip).hasClass(Lt)) {
|
|
var c = V.getTransitionDurationFromElement(this.tip);
|
|
wt(this.tip).one(V.TRANSITION_END, l).emulateTransitionEnd(c)
|
|
} else l()
|
|
}
|
|
}, e.hide = function (e) {
|
|
var t = this,
|
|
n = this.getTipElement(),
|
|
i = wt.Event(this.constructor.Event.HIDE),
|
|
r = function () {
|
|
t._hoverState !== jt && n.parentNode && n.parentNode.removeChild(n), t._cleanTipClass(), t.element.removeAttribute("aria-describedby"), wt(t.element).trigger(t.constructor.Event.HIDDEN), null !== t._popper && t._popper.destroy(), e && e()
|
|
};
|
|
if (wt(this.element).trigger(i), !i.isDefaultPrevented()) {
|
|
if (wt(n).removeClass(Mt), "ontouchstart" in document.documentElement && wt(document.body).children().off("mouseover", null, wt.noop), this._activeTrigger.click = !1, this._activeTrigger[Ht] = !1, this._activeTrigger[Pt] = !1, wt(this.tip).hasClass(Lt)) {
|
|
var o = V.getTransitionDurationFromElement(n);
|
|
wt(n).one(V.TRANSITION_END, r).emulateTransitionEnd(o)
|
|
} else r();
|
|
this._hoverState = ""
|
|
}
|
|
}, e.update = function () {
|
|
null !== this._popper && this._popper.scheduleUpdate()
|
|
}, e.isWithContent = function () {
|
|
return Boolean(this.getTitle())
|
|
}, e.addAttachmentClass = function (e) {
|
|
wt(this.getTipElement()).addClass(At + "-" + e)
|
|
}, e.getTipElement = function () {
|
|
return this.tip = this.tip || wt(this.config.template)[0], this.tip
|
|
}, e.setContent = function () {
|
|
var e = this.getTipElement();
|
|
this.setElementContent(wt(e.querySelectorAll(".tooltip-inner")), this.getTitle()), wt(e).removeClass(Lt + " " + Mt)
|
|
}, e.setElementContent = function (e, t) {
|
|
var n = this.config.html;
|
|
"object" == typeof t && (t.nodeType || t.jquery) ? n ? wt(t).parent().is(e) || e.empty().append(t) : e.text(wt(t).text()) : e[n ? "html" : "text"](t)
|
|
}, e.getTitle = function () {
|
|
var e = this.element.getAttribute("data-original-title");
|
|
return e || (e = "function" == typeof this.config.title ? this.config.title.call(this.element) : this.config.title), e
|
|
}, e._getAttachment = function (e) {
|
|
return kt[e.toUpperCase()]
|
|
}, e._setListeners = function () {
|
|
var i = this;
|
|
this.config.trigger.split(" ").forEach(function (e) {
|
|
if ("click" === e) wt(i.element).on(i.constructor.Event.CLICK, i.config.selector, function (e) {
|
|
return i.toggle(e)
|
|
});
|
|
else if ("manual" !== e) {
|
|
var t = e === Pt ? i.constructor.Event.MOUSEENTER : i.constructor.Event.FOCUSIN,
|
|
n = e === Pt ? i.constructor.Event.MOUSELEAVE : i.constructor.Event.FOCUSOUT;
|
|
wt(i.element).on(t, i.config.selector, function (e) {
|
|
return i._enter(e)
|
|
}).on(n, i.config.selector, function (e) {
|
|
return i._leave(e)
|
|
})
|
|
}
|
|
wt(i.element).closest(".modal").on("hide.bs.modal", function () {
|
|
return i.hide()
|
|
})
|
|
}), this.config.selector ? this.config = l({}, this.config, {
|
|
trigger: "manual",
|
|
selector: ""
|
|
}) : this._fixTitle()
|
|
}, e._fixTitle = function () {
|
|
var e = typeof this.element.getAttribute("data-original-title");
|
|
(this.element.getAttribute("title") || "string" !== e) && (this.element.setAttribute("data-original-title", this.element.getAttribute("title") || ""), this.element.setAttribute("title", ""))
|
|
}, e._enter = function (e, t) {
|
|
var n = this.constructor.DATA_KEY;
|
|
(t = t || wt(e.currentTarget).data(n)) || (t = new this.constructor(e.currentTarget, this._getDelegateConfig()), wt(e.currentTarget).data(n, t)), e && (t._activeTrigger["focusin" === e.type ? Ht : Pt] = !0), wt(t.getTipElement()).hasClass(Mt) || t._hoverState === jt ? t._hoverState = jt : (clearTimeout(t._timeout), t._hoverState = jt, t.config.delay && t.config.delay.show ? t._timeout = setTimeout(function () {
|
|
t._hoverState === jt && t.show()
|
|
}, t.config.delay.show) : t.show())
|
|
}, e._leave = function (e, t) {
|
|
var n = this.constructor.DATA_KEY;
|
|
(t = t || wt(e.currentTarget).data(n)) || (t = new this.constructor(e.currentTarget, this._getDelegateConfig()), wt(e.currentTarget).data(n, t)), e && (t._activeTrigger["focusout" === e.type ? Ht : Pt] = !1), t._isWithActiveTrigger() || (clearTimeout(t._timeout), t._hoverState = "out", t.config.delay && t.config.delay.hide ? t._timeout = setTimeout(function () {
|
|
"out" === t._hoverState && t.hide()
|
|
}, t.config.delay.hide) : t.hide())
|
|
}, e._isWithActiveTrigger = function () {
|
|
for (var e in this._activeTrigger)
|
|
if (this._activeTrigger[e]) return !0;
|
|
return !1
|
|
}, e._getConfig = function (e) {
|
|
return "number" == typeof (e = l({}, this.constructor.Default, wt(this.element).data(), "object" == typeof e && e ? e : {})).delay && (e.delay = {
|
|
show: e.delay,
|
|
hide: e.delay
|
|
}), "number" == typeof e.title && (e.title = e.title.toString()), "number" == typeof e.content && (e.content = e.content.toString()), V.typeCheckConfig(xt, e, this.constructor.DefaultType), e
|
|
}, e._getDelegateConfig = function () {
|
|
var e = {};
|
|
if (this.config)
|
|
for (var t in this.config) this.constructor.Default[t] !== this.config[t] && (e[t] = this.config[t]);
|
|
return e
|
|
}, e._cleanTipClass = function () {
|
|
var e = wt(this.getTipElement()),
|
|
t = e.attr("class").match(Dt);
|
|
null !== t && t.length && e.removeClass(t.join(""))
|
|
}, e._handlePopperPlacementChange = function (e) {
|
|
var t = e.instance;
|
|
this.tip = t.popper, this._cleanTipClass(), this.addAttachmentClass(this._getAttachment(e.placement))
|
|
}, e._fixTransition = function () {
|
|
var e = this.getTipElement(),
|
|
t = this.config.animation;
|
|
null === e.getAttribute("x-placement") && (wt(e).removeClass(Lt), this.config.animation = !1, this.hide(), this.show(), this.config.animation = t)
|
|
}, i._jQueryInterface = function (n) {
|
|
return this.each(function () {
|
|
var e = wt(this).data(Ct),
|
|
t = "object" == typeof n && n;
|
|
if ((e || !/dispose|hide/.test(n)) && (e || (e = new i(this, t), wt(this).data(Ct, e)), "string" == typeof n)) {
|
|
if (void 0 === e[n]) throw new TypeError('No method named "' + n + '"');
|
|
e[n]()
|
|
}
|
|
})
|
|
}, s(i, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return Nt
|
|
}
|
|
}, {
|
|
key: "NAME",
|
|
get: function () {
|
|
return xt
|
|
}
|
|
}, {
|
|
key: "DATA_KEY",
|
|
get: function () {
|
|
return Ct
|
|
}
|
|
}, {
|
|
key: "Event",
|
|
get: function () {
|
|
return It
|
|
}
|
|
}, {
|
|
key: "EVENT_KEY",
|
|
get: function () {
|
|
return Tt
|
|
}
|
|
}, {
|
|
key: "DefaultType",
|
|
get: function () {
|
|
return Ot
|
|
}
|
|
}]), i
|
|
}(), wt.fn[xt] = qt._jQueryInterface, wt.fn[xt].Constructor = qt, wt.fn[xt].noConflict = function () {
|
|
return wt.fn[xt] = St, qt._jQueryInterface
|
|
}, qt),
|
|
xn = (Ft = "popover", Bt = "." + (Wt = "bs.popover"), Ut = (Rt = t).fn[Ft], Yt = "bs-popover", $t = new RegExp("(^|\\s)" + Yt + "\\S+", "g"), zt = l({}, wn.Default, {
|
|
placement: "right",
|
|
trigger: "click",
|
|
content: "",
|
|
template: '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-header"></h3><div class="popover-body"></div></div>'
|
|
}), Xt = l({}, wn.DefaultType, {
|
|
content: "(string|element|function)"
|
|
}), "fade", ".popover-header", ".popover-body", Qt = {
|
|
HIDE: "hide" + Bt,
|
|
HIDDEN: "hidden" + Bt,
|
|
SHOW: "show" + Bt,
|
|
SHOWN: "shown" + Bt,
|
|
INSERTED: "inserted" + Bt,
|
|
CLICK: "click" + Bt,
|
|
FOCUSIN: "focusin" + Bt,
|
|
FOCUSOUT: "focusout" + Bt,
|
|
MOUSEENTER: "mouseenter" + Bt,
|
|
MOUSELEAVE: "mouseleave" + Bt
|
|
}, Kt = function (e) {
|
|
var t, n;
|
|
|
|
function i() {
|
|
return e.apply(this, arguments) || this
|
|
}
|
|
n = e, (t = i).prototype = Object.create(n.prototype), (t.prototype.constructor = t).__proto__ = n;
|
|
var r = i.prototype;
|
|
return r.isWithContent = function () {
|
|
return this.getTitle() || this._getContent()
|
|
}, r.addAttachmentClass = function (e) {
|
|
Rt(this.getTipElement()).addClass(Yt + "-" + e)
|
|
}, r.getTipElement = function () {
|
|
return this.tip = this.tip || Rt(this.config.template)[0], this.tip
|
|
}, r.setContent = function () {
|
|
var e = Rt(this.getTipElement());
|
|
this.setElementContent(e.find(".popover-header"), this.getTitle());
|
|
var t = this._getContent();
|
|
"function" == typeof t && (t = t.call(this.element)), this.setElementContent(e.find(".popover-body"), t), e.removeClass("fade show")
|
|
}, r._getContent = function () {
|
|
return this.element.getAttribute("data-content") || this.config.content
|
|
}, r._cleanTipClass = function () {
|
|
var e = Rt(this.getTipElement()),
|
|
t = e.attr("class").match($t);
|
|
null !== t && 0 < t.length && e.removeClass(t.join(""))
|
|
}, i._jQueryInterface = function (n) {
|
|
return this.each(function () {
|
|
var e = Rt(this).data(Wt),
|
|
t = "object" == typeof n ? n : null;
|
|
if ((e || !/destroy|hide/.test(n)) && (e || (e = new i(this, t), Rt(this).data(Wt, e)), "string" == typeof n)) {
|
|
if (void 0 === e[n]) throw new TypeError('No method named "' + n + '"');
|
|
e[n]()
|
|
}
|
|
})
|
|
}, s(i, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return zt
|
|
}
|
|
}, {
|
|
key: "NAME",
|
|
get: function () {
|
|
return Ft
|
|
}
|
|
}, {
|
|
key: "DATA_KEY",
|
|
get: function () {
|
|
return Wt
|
|
}
|
|
}, {
|
|
key: "Event",
|
|
get: function () {
|
|
return Qt
|
|
}
|
|
}, {
|
|
key: "EVENT_KEY",
|
|
get: function () {
|
|
return Bt
|
|
}
|
|
}, {
|
|
key: "DefaultType",
|
|
get: function () {
|
|
return Xt
|
|
}
|
|
}]), i
|
|
}(wn), Rt.fn[Ft] = Kt._jQueryInterface, Rt.fn[Ft].Constructor = Kt, Rt.fn[Ft].noConflict = function () {
|
|
return Rt.fn[Ft] = Ut, Kt._jQueryInterface
|
|
}, Kt),
|
|
Cn = (Gt = "scrollspy", Zt = "." + (Jt = "bs.scrollspy"), en = (Vt = t).fn[Gt], tn = {
|
|
offset: 10,
|
|
method: "auto",
|
|
target: ""
|
|
}, nn = {
|
|
offset: "number",
|
|
method: "string",
|
|
target: "(string|element)"
|
|
}, rn = {
|
|
ACTIVATE: "activate" + Zt,
|
|
SCROLL: "scroll" + Zt,
|
|
LOAD_DATA_API: "load" + Zt + ".data-api"
|
|
}, "dropdown-item", on = "active", '[data-spy="scroll"]', ".active", sn = ".nav, .list-group", an = ".nav-link", ".nav-item", ln = ".list-group-item", ".dropdown", ".dropdown-item", ".dropdown-toggle", "offset", cn = "position", un = function () {
|
|
function n(e, t) {
|
|
var n = this;
|
|
this._element = e, this._scrollElement = "BODY" === e.tagName ? window : e, this._config = this._getConfig(t), this._selector = this._config.target + " " + an + "," + this._config.target + " " + ln + "," + this._config.target + " .dropdown-item", this._offsets = [], this._targets = [], this._activeTarget = null, this._scrollHeight = 0, Vt(this._scrollElement).on(rn.SCROLL, function (e) {
|
|
return n._process(e)
|
|
}), this.refresh(), this._process()
|
|
}
|
|
var e = n.prototype;
|
|
return e.refresh = function () {
|
|
var t = this,
|
|
e = this._scrollElement === this._scrollElement.window ? "offset" : cn,
|
|
r = "auto" === this._config.method ? e : this._config.method,
|
|
o = r === cn ? this._getScrollTop() : 0;
|
|
this._offsets = [], this._targets = [], this._scrollHeight = this._getScrollHeight(), [].slice.call(document.querySelectorAll(this._selector)).map(function (e) {
|
|
var t, n = V.getSelectorFromElement(e);
|
|
if (n && (t = document.querySelector(n)), t) {
|
|
var i = t.getBoundingClientRect();
|
|
if (i.width || i.height) return [Vt(t)[r]().top + o, n]
|
|
}
|
|
return null
|
|
}).filter(function (e) {
|
|
return e
|
|
}).sort(function (e, t) {
|
|
return e[0] - t[0]
|
|
}).forEach(function (e) {
|
|
t._offsets.push(e[0]), t._targets.push(e[1])
|
|
})
|
|
}, e.dispose = function () {
|
|
Vt.removeData(this._element, Jt), Vt(this._scrollElement).off(Zt), this._element = null, this._scrollElement = null, this._config = null, this._selector = null, this._offsets = null, this._targets = null, this._activeTarget = null, this._scrollHeight = null
|
|
}, e._getConfig = function (e) {
|
|
if ("string" != typeof (e = l({}, tn, "object" == typeof e && e ? e : {})).target) {
|
|
var t = Vt(e.target).attr("id");
|
|
t || (t = V.getUID(Gt), Vt(e.target).attr("id", t)), e.target = "#" + t
|
|
}
|
|
return V.typeCheckConfig(Gt, e, nn), e
|
|
}, e._getScrollTop = function () {
|
|
return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop
|
|
}, e._getScrollHeight = function () {
|
|
return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)
|
|
}, e._getOffsetHeight = function () {
|
|
return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height
|
|
}, e._process = function () {
|
|
var e = this._getScrollTop() + this._config.offset,
|
|
t = this._getScrollHeight(),
|
|
n = this._config.offset + t - this._getOffsetHeight();
|
|
if (this._scrollHeight !== t && this.refresh(), n <= e) {
|
|
var i = this._targets[this._targets.length - 1];
|
|
this._activeTarget !== i && this._activate(i)
|
|
} else {
|
|
if (this._activeTarget && e < this._offsets[0] && 0 < this._offsets[0]) return this._activeTarget = null, void this._clear();
|
|
for (var r = this._offsets.length; r--;) this._activeTarget !== this._targets[r] && e >= this._offsets[r] && (void 0 === this._offsets[r + 1] || e < this._offsets[r + 1]) && this._activate(this._targets[r])
|
|
}
|
|
}, e._activate = function (t) {
|
|
this._activeTarget = t, this._clear();
|
|
var e = this._selector.split(",");
|
|
e = e.map(function (e) {
|
|
return e + '[data-target="' + t + '"],' + e + '[href="' + t + '"]'
|
|
});
|
|
var n = Vt([].slice.call(document.querySelectorAll(e.join(","))));
|
|
n.hasClass("dropdown-item") ? (n.closest(".dropdown").find(".dropdown-toggle").addClass(on), n.addClass(on)) : (n.addClass(on), n.parents(sn).prev(an + ", " + ln).addClass(on), n.parents(sn).prev(".nav-item").children(an).addClass(on)), Vt(this._scrollElement).trigger(rn.ACTIVATE, {
|
|
relatedTarget: t
|
|
})
|
|
}, e._clear = function () {
|
|
var e = [].slice.call(document.querySelectorAll(this._selector));
|
|
Vt(e).filter(".active").removeClass(on)
|
|
}, n._jQueryInterface = function (t) {
|
|
return this.each(function () {
|
|
var e = Vt(this).data(Jt);
|
|
if (e || (e = new n(this, "object" == typeof t && t), Vt(this).data(Jt, e)), "string" == typeof t) {
|
|
if (void 0 === e[t]) throw new TypeError('No method named "' + t + '"');
|
|
e[t]()
|
|
}
|
|
})
|
|
}, s(n, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}, {
|
|
key: "Default",
|
|
get: function () {
|
|
return tn
|
|
}
|
|
}]), n
|
|
}(), Vt(window).on(rn.LOAD_DATA_API, function () {
|
|
for (var e = [].slice.call(document.querySelectorAll('[data-spy="scroll"]')), t = e.length; t--;) {
|
|
var n = Vt(e[t]);
|
|
un._jQueryInterface.call(n, n.data())
|
|
}
|
|
}), Vt.fn[Gt] = un._jQueryInterface, Vt.fn[Gt].Constructor = un, Vt.fn[Gt].noConflict = function () {
|
|
return Vt.fn[Gt] = en, un._jQueryInterface
|
|
}, un),
|
|
Tn = (dn = "." + (hn = "bs.tab"), pn = (fn = t).fn.tab, mn = {
|
|
HIDE: "hide" + dn,
|
|
HIDDEN: "hidden" + dn,
|
|
SHOW: "show" + dn,
|
|
SHOWN: "shown" + dn,
|
|
CLICK_DATA_API: "click" + dn + ".data-api"
|
|
}, "dropdown-menu", gn = "active", "disabled", "fade", "show", ".dropdown", ".nav, .list-group", vn = ".active", yn = "> li > .active", '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', ".dropdown-toggle", "> .dropdown-menu .active", bn = function () {
|
|
function i(e) {
|
|
this._element = e
|
|
}
|
|
var e = i.prototype;
|
|
return e.show = function () {
|
|
var n = this;
|
|
if (!(this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && fn(this._element).hasClass(gn) || fn(this._element).hasClass("disabled"))) {
|
|
var e, i, t = fn(this._element).closest(".nav, .list-group")[0],
|
|
r = V.getSelectorFromElement(this._element);
|
|
if (t) {
|
|
var o = "UL" === t.nodeName ? yn : vn;
|
|
i = (i = fn.makeArray(fn(t).find(o)))[i.length - 1]
|
|
}
|
|
var s = fn.Event(mn.HIDE, {
|
|
relatedTarget: this._element
|
|
}),
|
|
a = fn.Event(mn.SHOW, {
|
|
relatedTarget: i
|
|
});
|
|
if (i && fn(i).trigger(s), fn(this._element).trigger(a), !a.isDefaultPrevented() && !s.isDefaultPrevented()) {
|
|
r && (e = document.querySelector(r)), this._activate(this._element, t);
|
|
var l = function () {
|
|
var e = fn.Event(mn.HIDDEN, {
|
|
relatedTarget: n._element
|
|
}),
|
|
t = fn.Event(mn.SHOWN, {
|
|
relatedTarget: i
|
|
});
|
|
fn(i).trigger(e), fn(n._element).trigger(t)
|
|
};
|
|
e ? this._activate(e, e.parentNode, l) : l()
|
|
}
|
|
}
|
|
}, e.dispose = function () {
|
|
fn.removeData(this._element, hn), this._element = null
|
|
}, e._activate = function (e, t, n) {
|
|
var i = this,
|
|
r = ("UL" === t.nodeName ? fn(t).find(yn) : fn(t).children(vn))[0],
|
|
o = n && r && fn(r).hasClass("fade"),
|
|
s = function () {
|
|
return i._transitionComplete(e, r, n)
|
|
};
|
|
if (r && o) {
|
|
var a = V.getTransitionDurationFromElement(r);
|
|
fn(r).one(V.TRANSITION_END, s).emulateTransitionEnd(a)
|
|
} else s()
|
|
}, e._transitionComplete = function (e, t, n) {
|
|
if (t) {
|
|
fn(t).removeClass("show " + gn);
|
|
var i = fn(t.parentNode).find("> .dropdown-menu .active")[0];
|
|
i && fn(i).removeClass(gn), "tab" === t.getAttribute("role") && t.setAttribute("aria-selected", !1)
|
|
}
|
|
if (fn(e).addClass(gn), "tab" === e.getAttribute("role") && e.setAttribute("aria-selected", !0), V.reflow(e), fn(e).addClass("show"), e.parentNode && fn(e.parentNode).hasClass("dropdown-menu")) {
|
|
var r = fn(e).closest(".dropdown")[0];
|
|
if (r) {
|
|
var o = [].slice.call(r.querySelectorAll(".dropdown-toggle"));
|
|
fn(o).addClass(gn)
|
|
}
|
|
e.setAttribute("aria-expanded", !0)
|
|
}
|
|
n && n()
|
|
}, i._jQueryInterface = function (n) {
|
|
return this.each(function () {
|
|
var e = fn(this),
|
|
t = e.data(hn);
|
|
if (t || (t = new i(this), e.data(hn, t)), "string" == typeof n) {
|
|
if (void 0 === t[n]) throw new TypeError('No method named "' + n + '"');
|
|
t[n]()
|
|
}
|
|
})
|
|
}, s(i, null, [{
|
|
key: "VERSION",
|
|
get: function () {
|
|
return "4.1.3"
|
|
}
|
|
}]), i
|
|
}(), fn(document).on(mn.CLICK_DATA_API, '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]', function (e) {
|
|
e.preventDefault(), bn._jQueryInterface.call(fn(this), "show")
|
|
}), fn.fn.tab = bn._jQueryInterface, fn.fn.tab.Constructor = bn, fn.fn.tab.noConflict = function () {
|
|
return fn.fn.tab = pn, bn._jQueryInterface
|
|
}, bn);
|
|
! function (e) {
|
|
if (void 0 === e) throw new TypeError("Bootstrap's JavaScript requires jQuery. jQuery must be included before Bootstrap's JavaScript.");
|
|
var t = e.fn.jquery.split(" ")[0].split(".");
|
|
if (t[0] < 2 && t[1] < 9 || 1 === t[0] && 9 === t[1] && t[2] < 1 || 4 <= t[0]) throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")
|
|
}(t), e.Util = V, e.Alert = G, e.Button = J, e.Carousel = Z, e.Collapse = ee, e.Dropdown = _n, e.Modal = En, e.Popover = xn, e.Scrollspy = Cn, e.Tab = Tn, e.Tooltip = wn, Object.defineProperty(e, "__esModule", {
|
|
value: !0
|
|
})
|
|
}),
|
|
function (e, t) {
|
|
"object" == typeof exports && "object" == typeof module ? module.exports = t() : "function" == typeof define && define.amd ? define([], t) : "object" == typeof exports ? exports.SimpleBar = t() : e.SimpleBar = t()
|
|
}(this, function () {
|
|
return function (n) {
|
|
function i(e) {
|
|
if (r[e]) return r[e].exports;
|
|
var t = r[e] = {
|
|
i: e,
|
|
l: !1,
|
|
exports: {}
|
|
};
|
|
return n[e].call(t.exports, t, t.exports, i), t.l = !0, t.exports
|
|
}
|
|
var r = {};
|
|
return i.m = n, i.c = r, i.d = function (e, t, n) {
|
|
i.o(e, t) || Object.defineProperty(e, t, {
|
|
configurable: !1,
|
|
enumerable: !0,
|
|
get: n
|
|
})
|
|
}, i.n = function (e) {
|
|
var t = e && e.__esModule ? function () {
|
|
return e.default
|
|
} : function () {
|
|
return e
|
|
};
|
|
return i.d(t, "a", t), t
|
|
}, i.o = function (e, t) {
|
|
return Object.prototype.hasOwnProperty.call(e, t)
|
|
}, i.p = "", i(i.s = 27)
|
|
}([function (e, t, n) {
|
|
var i = n(23)("wks"),
|
|
r = n(12),
|
|
o = n(1).Symbol,
|
|
s = "function" == typeof o;
|
|
(e.exports = function (e) {
|
|
return i[e] || (i[e] = s && o[e] || (s ? o : r)("Symbol." + e))
|
|
}).store = i
|
|
}, function (e, t) {
|
|
var n = e.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
|
|
"number" == typeof __g && (__g = n)
|
|
}, function (e, t) {
|
|
var n = {}.hasOwnProperty;
|
|
e.exports = function (e, t) {
|
|
return n.call(e, t)
|
|
}
|
|
}, function (e, t) {
|
|
var n = e.exports = {
|
|
version: "2.5.1"
|
|
};
|
|
"number" == typeof __e && (__e = n)
|
|
}, function (e, t, n) {
|
|
var i = n(5),
|
|
r = n(11);
|
|
e.exports = n(7) ? function (e, t, n) {
|
|
return i.f(e, t, r(1, n))
|
|
} : function (e, t, n) {
|
|
return e[t] = n, e
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(6),
|
|
r = n(33),
|
|
o = n(34),
|
|
s = Object.defineProperty;
|
|
t.f = n(7) ? Object.defineProperty : function (e, t, n) {
|
|
if (i(e), t = o(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(10);
|
|
e.exports = function (e) {
|
|
if (!i(e)) throw TypeError(e + " is not an object!");
|
|
return e
|
|
}
|
|
}, function (e, t, n) {
|
|
e.exports = !n(16)(function () {
|
|
return 7 != Object.defineProperty({}, "a", {
|
|
get: function () {
|
|
return 7
|
|
}
|
|
}).a
|
|
})
|
|
}, 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) {
|
|
e.exports = function (e) {
|
|
return "object" == typeof e ? null !== e : "function" == typeof e
|
|
}
|
|
}, function (e, t) {
|
|
e.exports = function (e, t) {
|
|
return {
|
|
enumerable: !(1 & e),
|
|
configurable: !(2 & e),
|
|
writable: !(4 & e),
|
|
value: t
|
|
}
|
|
}
|
|
}, 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) {
|
|
e.exports = {}
|
|
}, function (e, t, n) {
|
|
var i = n(23)("keys"),
|
|
r = n(12);
|
|
e.exports = function (e) {
|
|
return i[e] || (i[e] = r(e))
|
|
}
|
|
}, function (e, t, n) {
|
|
var m = n(1),
|
|
g = n(3),
|
|
v = n(4),
|
|
y = n(18),
|
|
b = n(19),
|
|
_ = function (e, t, n) {
|
|
var i, r, o, s, a = e & _.F,
|
|
l = e & _.G,
|
|
c = e & _.S,
|
|
u = e & _.P,
|
|
f = e & _.B,
|
|
h = l ? m : c ? m[t] || (m[t] = {}) : (m[t] || {}).prototype,
|
|
d = l ? g : g[t] || (g[t] = {}),
|
|
p = d.prototype || (d.prototype = {});
|
|
for (i in l && (n = t), n) o = ((r = !a && h && void 0 !== h[i]) ? h : n)[i], s = f && r ? b(o, m) : u && "function" == typeof o ? b(Function.call, o) : o, h && y(h, i, o, e & _.U), d[i] != o && v(d, i, s), u && p[i] != o && (p[i] = o)
|
|
};
|
|
m.core = g, _.F = 1, _.G = 2, _.S = 4, _.P = 8, _.B = 16, _.W = 32, _.U = 64, _.R = 128, e.exports = _
|
|
}, function (e, t) {
|
|
e.exports = function (e) {
|
|
try {
|
|
return !!e()
|
|
} catch (e) {
|
|
return !0
|
|
}
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(10),
|
|
r = n(1).document,
|
|
o = i(r) && i(r.createElement);
|
|
e.exports = function (e) {
|
|
return o ? r.createElement(e) : {}
|
|
}
|
|
}, function (e, t, n) {
|
|
var o = n(1),
|
|
s = n(4),
|
|
a = n(2),
|
|
l = n(12)("src"),
|
|
i = Function.toString,
|
|
c = ("" + i).split("toString");
|
|
n(3).inspectSource = function (e) {
|
|
return i.call(e)
|
|
}, (e.exports = function (e, t, n, i) {
|
|
var r = "function" == typeof n;
|
|
r && (a(n, "name") || s(n, "name", t)), e[t] !== n && (r && (a(n, l) || s(n, l, e[t] ? "" + e[t] : c.join(String(t)))), e === o ? e[t] = n : i ? e[t] ? e[t] = n : s(e, t, n) : (delete e[t], s(e, t, n)))
|
|
})(Function.prototype, "toString", function () {
|
|
return "function" == typeof this && this[l] || i.call(this)
|
|
})
|
|
}, function (e, t, n) {
|
|
var o = n(35);
|
|
e.exports = function (i, r, e) {
|
|
if (o(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, n) {
|
|
var i = n(41),
|
|
r = n(9);
|
|
e.exports = function (e) {
|
|
return i(r(e))
|
|
}
|
|
}, function (e, t) {
|
|
var n = {}.toString;
|
|
e.exports = function (e) {
|
|
return n.call(e).slice(8, -1)
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(8),
|
|
r = Math.min;
|
|
e.exports = function (e) {
|
|
return 0 < e ? r(i(e), 9007199254740991) : 0
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(1),
|
|
r = i["__core-js_shared__"] || (i["__core-js_shared__"] = {});
|
|
e.exports = function (e) {
|
|
return r[e] || (r[e] = {})
|
|
}
|
|
}, function (e, t) {
|
|
e.exports = "constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")
|
|
}, function (e, t, n) {
|
|
var i = n(5).f,
|
|
r = n(2),
|
|
o = n(0)("toStringTag");
|
|
e.exports = function (e, t, n) {
|
|
e && !r(e = n ? e : e.prototype, o) && i(e, o, {
|
|
configurable: !0,
|
|
value: t
|
|
})
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(9);
|
|
e.exports = function (e) {
|
|
return Object(i(e))
|
|
}
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
|
|
function i(e) {
|
|
return e && e.__esModule ? e : {
|
|
default: e
|
|
}
|
|
}
|
|
|
|
function o(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)
|
|
}
|
|
}
|
|
Object.defineProperty(t, "__esModule", {
|
|
value: !0
|
|
}), t.default = void 0, n(28);
|
|
var s = i(n(53)),
|
|
a = i(n(54)),
|
|
l = i(n(56));
|
|
n(57), Object.assign = n(58);
|
|
var r = function () {
|
|
function r(e, t) {
|
|
(function (e, t) {
|
|
if (!(e instanceof r)) throw new TypeError("Cannot call a class as a function")
|
|
})(this), this.el = e, this.flashTimeout, this.contentEl, this.scrollContentEl, this.dragOffset = {
|
|
x: 0,
|
|
y: 0
|
|
}, this.isVisible = {
|
|
x: !0,
|
|
y: !0
|
|
}, this.scrollOffsetAttr = {
|
|
x: "scrollLeft",
|
|
y: "scrollTop"
|
|
}, this.sizeAttr = {
|
|
x: "offsetWidth",
|
|
y: "offsetHeight"
|
|
}, this.scrollSizeAttr = {
|
|
x: "scrollWidth",
|
|
y: "scrollHeight"
|
|
}, this.offsetAttr = {
|
|
x: "left",
|
|
y: "top"
|
|
}, this.globalObserver, this.mutationObserver, this.resizeObserver, this.currentAxis, this.isRtl, this.options = Object.assign({}, r.defaultOptions, t), this.classNames = this.options.classNames, this.scrollbarWidth = (0, s.default)(), this.offsetSize = 20, this.flashScrollbar = this.flashScrollbar.bind(this), this.onDragY = this.onDragY.bind(this), this.onDragX = this.onDragX.bind(this), this.onScrollY = this.onScrollY.bind(this), this.onScrollX = this.onScrollX.bind(this), this.drag = this.drag.bind(this), this.onEndDrag = this.onEndDrag.bind(this), this.onMouseEnter = this.onMouseEnter.bind(this), this.recalculate = (0, a.default)(this.recalculate, 100, {
|
|
leading: !0
|
|
}), this.init()
|
|
}
|
|
return t = [{
|
|
key: "initHtmlApi",
|
|
value: function () {
|
|
this.initDOMLoadedElements = this.initDOMLoadedElements.bind(this), "undefined" != typeof MutationObserver && (this.globalObserver = new MutationObserver(function (e) {
|
|
e.forEach(function (e) {
|
|
Array.from(e.addedNodes).forEach(function (e) {
|
|
1 === e.nodeType && (e.hasAttribute("data-simplebar") ? !e.SimpleBar && new r(e, r.getElOptions(e)) : Array.from(e.querySelectorAll("[data-simplebar]")).forEach(function (e) {
|
|
!e.SimpleBar && new r(e, r.getElOptions(e))
|
|
}))
|
|
}), Array.from(e.removedNodes).forEach(function (e) {
|
|
1 === e.nodeType && (e.hasAttribute("data-simplebar") ? e.SimpleBar && e.SimpleBar.unMount() : Array.from(e.querySelectorAll("[data-simplebar]")).forEach(function (e) {
|
|
e.SimpleBar && e.SimpleBar.unMount()
|
|
}))
|
|
})
|
|
})
|
|
}), this.globalObserver.observe(document, {
|
|
childList: !0,
|
|
subtree: !0
|
|
})), "complete" === document.readyState || "loading" !== document.readyState && !document.documentElement.doScroll ? window.setTimeout(this.initDOMLoadedElements.bind(this)) : (document.addEventListener("DOMContentLoaded", this.initDOMLoadedElements), window.addEventListener("load", this.initDOMLoadedElements))
|
|
}
|
|
}, {
|
|
key: "getElOptions",
|
|
value: function (i) {
|
|
return Object.keys(r.htmlAttributes).reduce(function (e, t) {
|
|
var n = r.htmlAttributes[t];
|
|
return i.hasAttribute(n) && (e[t] = JSON.parse(i.getAttribute(n) || !0)), e
|
|
}, {})
|
|
}
|
|
}, {
|
|
key: "removeObserver",
|
|
value: function () {
|
|
this.globalObserver.disconnect()
|
|
}
|
|
}, {
|
|
key: "initDOMLoadedElements",
|
|
value: function () {
|
|
document.removeEventListener("DOMContentLoaded", this.initDOMLoadedElements), window.removeEventListener("load", this.initDOMLoadedElements), Array.from(document.querySelectorAll("[data-simplebar]")).forEach(function (e) {
|
|
e.SimpleBar || new r(e, r.getElOptions(e))
|
|
})
|
|
}
|
|
}, {
|
|
key: "defaultOptions",
|
|
get: function () {
|
|
return {
|
|
autoHide: !0,
|
|
forceVisible: !1,
|
|
classNames: {
|
|
content: "simplebar-content",
|
|
scrollContent: "simplebar-scroll-content",
|
|
scrollbar: "simplebar-scrollbar",
|
|
track: "simplebar-track"
|
|
},
|
|
scrollbarMinSize: 25
|
|
}
|
|
}
|
|
}, {
|
|
key: "htmlAttributes",
|
|
get: function () {
|
|
return {
|
|
autoHide: "data-simplebar-auto-hide",
|
|
forceVisible: "data-simplebar-force-visible",
|
|
scrollbarMinSize: "data-simplebar-scrollbar-min-size"
|
|
}
|
|
}
|
|
}], o((e = r).prototype, [{
|
|
key: "init",
|
|
value: function () {
|
|
(this.el.SimpleBar = this).initDOM(), this.scrollbarX = this.trackX.querySelector(".".concat(this.classNames.scrollbar)), this.scrollbarY = this.trackY.querySelector(".".concat(this.classNames.scrollbar)), this.isRtl = "rtl" === getComputedStyle(this.contentEl).direction, this.scrollContentEl.style[this.isRtl ? "paddingLeft" : "paddingRight"] = "".concat(this.scrollbarWidth || this.offsetSize, "px"), this.scrollContentEl.style.marginBottom = "-".concat(2 * this.scrollbarWidth || this.offsetSize, "px"), this.contentEl.style.paddingBottom = "".concat(this.scrollbarWidth || this.offsetSize, "px"), 0 !== this.scrollbarWidth && (this.contentEl.style[this.isRtl ? "marginLeft" : "marginRight"] = "-".concat(this.scrollbarWidth, "px")), this.recalculate(), this.initListeners()
|
|
}
|
|
}, {
|
|
key: "initDOM",
|
|
value: function () {
|
|
var t = this;
|
|
if (Array.from(this.el.children).filter(function (e) {
|
|
return e.classList.contains(t.classNames.scrollContent)
|
|
}).length) this.trackX = this.el.querySelector(".".concat(this.classNames.track, ".horizontal")), this.trackY = this.el.querySelector(".".concat(this.classNames.track, ".vertical")), this.scrollContentEl = this.el.querySelector(".".concat(this.classNames.scrollContent)), this.contentEl = this.el.querySelector(".".concat(this.classNames.content));
|
|
else {
|
|
for (this.scrollContentEl = document.createElement("div"), this.contentEl = document.createElement("div"), this.scrollContentEl.classList.add(this.classNames.scrollContent), this.contentEl.classList.add(this.classNames.content); this.el.firstChild;) this.contentEl.appendChild(this.el.firstChild);
|
|
this.scrollContentEl.appendChild(this.contentEl), this.el.appendChild(this.scrollContentEl)
|
|
}
|
|
if (!this.trackX || !this.trackY) {
|
|
var e = document.createElement("div"),
|
|
n = document.createElement("div");
|
|
e.classList.add(this.classNames.track), n.classList.add(this.classNames.scrollbar), e.appendChild(n), this.trackX = e.cloneNode(!0), this.trackX.classList.add("horizontal"), this.trackY = e.cloneNode(!0), this.trackY.classList.add("vertical"), this.el.insertBefore(this.trackX, this.el.firstChild), this.el.insertBefore(this.trackY, this.el.firstChild)
|
|
}
|
|
this.el.setAttribute("data-simplebar", "init")
|
|
}
|
|
}, {
|
|
key: "initListeners",
|
|
value: function () {
|
|
var t = this;
|
|
this.options.autoHide && this.el.addEventListener("mouseenter", this.onMouseEnter), this.scrollbarY.addEventListener("mousedown", this.onDragY), this.scrollbarX.addEventListener("mousedown", this.onDragX), this.scrollContentEl.addEventListener("scroll", this.onScrollY), this.contentEl.addEventListener("scroll", this.onScrollX), "undefined" != typeof MutationObserver && (this.mutationObserver = new MutationObserver(function (e) {
|
|
e.forEach(function (e) {
|
|
(t.isChildNode(e.target) || e.addedNodes.length) && t.recalculate()
|
|
})
|
|
}), this.mutationObserver.observe(this.el, {
|
|
attributes: !0,
|
|
childList: !0,
|
|
characterData: !0,
|
|
subtree: !0
|
|
})), this.resizeObserver = new l.default(this.recalculate.bind(this)), this.resizeObserver.observe(this.el)
|
|
}
|
|
}, {
|
|
key: "removeListeners",
|
|
value: function () {
|
|
this.options.autoHide && this.el.removeEventListener("mouseenter", this.onMouseEnter), this.scrollbarX.removeEventListener("mousedown", this.onDragX), this.scrollbarY.removeEventListener("mousedown", this.onDragY), this.scrollContentEl.removeEventListener("scroll", this.onScrollY), this.contentEl.removeEventListener("scroll", this.onScrollX), this.mutationObserver.disconnect(), this.resizeObserver.disconnect()
|
|
}
|
|
}, {
|
|
key: "onDragX",
|
|
value: function (e) {
|
|
this.onDrag(e, "x")
|
|
}
|
|
}, {
|
|
key: "onDragY",
|
|
value: function (e) {
|
|
this.onDrag(e, "y")
|
|
}
|
|
}, {
|
|
key: "onDrag",
|
|
value: function (e) {
|
|
var t = 1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : "y";
|
|
e.preventDefault();
|
|
var n = "y" === t ? this.scrollbarY : this.scrollbarX,
|
|
i = "y" === t ? e.pageY : e.pageX;
|
|
this.dragOffset[t] = i - n.getBoundingClientRect()[this.offsetAttr[t]], this.currentAxis = t, document.addEventListener("mousemove", this.drag), document.addEventListener("mouseup", this.onEndDrag)
|
|
}
|
|
}, {
|
|
key: "drag",
|
|
value: function (e) {
|
|
var t, n, i;
|
|
e.preventDefault(), i = "y" === this.currentAxis ? (t = e.pageY, n = this.trackY, this.scrollContentEl) : (t = e.pageX, n = this.trackX, this.contentEl);
|
|
var r = (t - n.getBoundingClientRect()[this.offsetAttr[this.currentAxis]] - this.dragOffset[this.currentAxis]) / n[this.sizeAttr[this.currentAxis]] * this.contentEl[this.scrollSizeAttr[this.currentAxis]];
|
|
i[this.scrollOffsetAttr[this.currentAxis]] = r
|
|
}
|
|
}, {
|
|
key: "onEndDrag",
|
|
value: function () {
|
|
document.removeEventListener("mousemove", this.drag), document.removeEventListener("mouseup", this.onEndDrag)
|
|
}
|
|
}, {
|
|
key: "resizeScrollbar",
|
|
value: function () {
|
|
var e, t, n, i, r, o = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : "y",
|
|
s = (r = "x" === o ? (e = this.trackX, t = this.scrollbarX, n = this.contentEl[this.scrollOffsetAttr[o]], i = this.contentSizeX, this.scrollbarXSize) : (e = this.trackY, t = this.scrollbarY, n = this.scrollContentEl[this.scrollOffsetAttr[o]], i = this.contentSizeY, this.scrollbarYSize)) / i,
|
|
a = n / (i - r),
|
|
l = Math.max(~~(s * r), this.options.scrollbarMinSize),
|
|
c = ~~((r - l) * a);
|
|
this.isVisible[o] = r < i, this.isVisible[o] || this.options.forceVisible ? (e.style.visibility = "visible", this.options.forceVisible ? t.style.visibility = "hidden" : t.style.visibility = "visible", "x" === o ? (t.style.left = "".concat(c, "px"), t.style.width = "".concat(l, "px")) : (t.style.top = "".concat(c, "px"), t.style.height = "".concat(l, "px"))) : e.style.visibility = "hidden"
|
|
}
|
|
}, {
|
|
key: "onScrollX",
|
|
value: function () {
|
|
this.flashScrollbar("x")
|
|
}
|
|
}, {
|
|
key: "onScrollY",
|
|
value: function () {
|
|
this.flashScrollbar("y")
|
|
}
|
|
}, {
|
|
key: "onMouseEnter",
|
|
value: function () {
|
|
this.flashScrollbar("x"), this.flashScrollbar("y")
|
|
}
|
|
}, {
|
|
key: "flashScrollbar",
|
|
value: function () {
|
|
var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : "y";
|
|
this.resizeScrollbar(e), this.showScrollbar(e)
|
|
}
|
|
}, {
|
|
key: "showScrollbar",
|
|
value: function () {
|
|
var e = 0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : "y";
|
|
this.isVisible[e] && ("x" === e ? this.scrollbarX.classList.add("visible") : this.scrollbarY.classList.add("visible"), this.options.autoHide && ("number" == typeof this.flashTimeout && window.clearTimeout(this.flashTimeout), this.flashTimeout = window.setTimeout(this.hideScrollbar.bind(this), 1e3)))
|
|
}
|
|
}, {
|
|
key: "hideScrollbar",
|
|
value: function () {
|
|
this.scrollbarX.classList.remove("visible"), this.scrollbarY.classList.remove("visible"), "number" == typeof this.flashTimeout && window.clearTimeout(this.flashTimeout)
|
|
}
|
|
}, {
|
|
key: "recalculate",
|
|
value: function () {
|
|
this.contentSizeX = this.contentEl[this.scrollSizeAttr.x], this.contentSizeY = this.contentEl[this.scrollSizeAttr.y] - (this.scrollbarWidth || this.offsetSize), this.scrollbarXSize = this.trackX[this.sizeAttr.x], this.scrollbarYSize = this.trackY[this.sizeAttr.y], this.resizeScrollbar("x"), this.resizeScrollbar("y"), this.options.autoHide || (this.showScrollbar("x"), this.showScrollbar("y"))
|
|
}
|
|
}, {
|
|
key: "getScrollElement",
|
|
value: function () {
|
|
return "y" === (0 < arguments.length && void 0 !== arguments[0] ? arguments[0] : "y") ? this.scrollContentEl : this.contentEl
|
|
}
|
|
}, {
|
|
key: "getContentElement",
|
|
value: function () {
|
|
return this.contentEl
|
|
}
|
|
}, {
|
|
key: "unMount",
|
|
value: function () {
|
|
this.removeListeners(), this.el.SimpleBar = null
|
|
}
|
|
}, {
|
|
key: "isChildNode",
|
|
value: function (e) {
|
|
return null !== e && (e === this.el || this.isChildNode(e.parentNode))
|
|
}
|
|
}]), o(e, t), r;
|
|
var e, t
|
|
}();
|
|
(t.default = r).initHtmlApi()
|
|
}, function (e, t, n) {
|
|
n(29), n(46), e.exports = n(3).Array.from
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
var i = n(30)(!0);
|
|
n(31)(String, "String", function (e) {
|
|
this._t = String(e), this._i = 0
|
|
}, function () {
|
|
var e, t = this._t,
|
|
n = this._i;
|
|
return n >= t.length ? {
|
|
value: void 0,
|
|
done: !0
|
|
} : (e = i(t, n), this._i += e.length, {
|
|
value: e,
|
|
done: !1
|
|
})
|
|
})
|
|
}, function (e, t, n) {
|
|
var l = n(8),
|
|
c = n(9);
|
|
e.exports = function (a) {
|
|
return function (e, t) {
|
|
var n, i, r = String(c(e)),
|
|
o = l(t),
|
|
s = r.length;
|
|
return o < 0 || s <= o ? a ? "" : void 0 : (n = r.charCodeAt(o)) < 55296 || 56319 < n || o + 1 === s || (i = r.charCodeAt(o + 1)) < 56320 || 57343 < i ? a ? r.charAt(o) : n : a ? r.slice(o, o + 2) : i - 56320 + (n - 55296 << 10) + 65536
|
|
}
|
|
}
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
var b = n(32),
|
|
_ = n(15),
|
|
E = n(18),
|
|
w = n(4),
|
|
x = n(2),
|
|
C = n(13),
|
|
T = n(36),
|
|
S = n(25),
|
|
A = n(45),
|
|
D = n(0)("iterator"),
|
|
O = !([].keys && "next" in [].keys()),
|
|
k = function () {
|
|
return this
|
|
};
|
|
e.exports = function (e, t, n, i, r, o, s) {
|
|
T(n, t, i);
|
|
var a, l, c, u = function (e) {
|
|
if (!O && e in p) return p[e];
|
|
switch (e) {
|
|
case "keys":
|
|
case "values":
|
|
return function () {
|
|
return new n(this, e)
|
|
}
|
|
}
|
|
return function () {
|
|
return new n(this, e)
|
|
}
|
|
},
|
|
f = t + " Iterator",
|
|
h = "values" == r,
|
|
d = !1,
|
|
p = e.prototype,
|
|
m = p[D] || p["@@iterator"] || r && p[r],
|
|
g = m || u(r),
|
|
v = r ? h ? u("entries") : g : void 0,
|
|
y = "Array" == t && p.entries || m;
|
|
if (y && (c = A(y.call(new e))) !== Object.prototype && c.next && (S(c, f, !0), b || x(c, D) || w(c, D, k)), h && m && "values" !== m.name && (d = !0, g = function () {
|
|
return m.call(this)
|
|
}), b && !s || !O && !d && p[D] || w(p, D, g), C[t] = g, C[f] = k, r)
|
|
if (a = {
|
|
values: h ? g : u("values"),
|
|
keys: o ? g : u("keys"),
|
|
entries: v
|
|
}, s)
|
|
for (l in a) l in p || E(p, l, a[l]);
|
|
else _(_.P + _.F * (O || d), t, a);
|
|
return a
|
|
}
|
|
}, function (e, t) {
|
|
e.exports = !1
|
|
}, function (e, t, n) {
|
|
e.exports = !n(7) && !n(16)(function () {
|
|
return 7 != Object.defineProperty(n(17)("div"), "a", {
|
|
get: function () {
|
|
return 7
|
|
}
|
|
}).a
|
|
})
|
|
}, function (e, t, n) {
|
|
var r = n(10);
|
|
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))) return i;
|
|
if ("function" == typeof (n = e.valueOf) && !r(i = n.call(e))) return i;
|
|
if (!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) {
|
|
e.exports = function (e) {
|
|
if ("function" != typeof e) throw TypeError(e + " is not a function!");
|
|
return e
|
|
}
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
var i = n(37),
|
|
r = n(11),
|
|
o = n(25),
|
|
s = {};
|
|
n(4)(s, n(0)("iterator"), function () {
|
|
return this
|
|
}), e.exports = function (e, t, n) {
|
|
e.prototype = i(s, {
|
|
next: r(1, n)
|
|
}), o(e, t + " Iterator")
|
|
}
|
|
}, function (e, t, i) {
|
|
var r = i(6),
|
|
o = i(38),
|
|
s = i(24),
|
|
a = i(14)("IE_PROTO"),
|
|
l = function () {},
|
|
c = function () {
|
|
var e, t = i(17)("iframe"),
|
|
n = s.length;
|
|
for (t.style.display = "none", i(44).appendChild(t), t.src = "javascript:", (e = t.contentWindow.document).open(), e.write("<script>document.F=Object<\/script>"), e.close(), c = e.F; n--;) delete c.prototype[s[n]];
|
|
return c()
|
|
};
|
|
e.exports = Object.create || function (e, t) {
|
|
var n;
|
|
return null !== e ? (l.prototype = r(e), n = new l, l.prototype = null, n[a] = e) : n = c(), void 0 === t ? n : o(n, t)
|
|
}
|
|
}, function (e, t, n) {
|
|
var s = n(5),
|
|
a = n(6),
|
|
l = n(39);
|
|
e.exports = n(7) ? Object.defineProperties : function (e, t) {
|
|
a(e);
|
|
for (var n, i = l(t), r = i.length, o = 0; o < r;) s.f(e, n = i[o++], t[n]);
|
|
return e
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(40),
|
|
r = n(24);
|
|
e.exports = Object.keys || function (e) {
|
|
return i(e, r)
|
|
}
|
|
}, function (e, t, n) {
|
|
var s = n(2),
|
|
a = n(20),
|
|
l = n(42)(!1),
|
|
c = n(14)("IE_PROTO");
|
|
e.exports = function (e, t) {
|
|
var n, i = a(e),
|
|
r = 0,
|
|
o = [];
|
|
for (n in i) n != c && s(i, n) && o.push(n);
|
|
for (; t.length > r;) s(i, n = t[r++]) && (~l(o, n) || o.push(n));
|
|
return o
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(21);
|
|
e.exports = Object("z").propertyIsEnumerable(0) ? Object : function (e) {
|
|
return "String" == i(e) ? e.split("") : Object(e)
|
|
}
|
|
}, function (e, t, n) {
|
|
var l = n(20),
|
|
c = n(22),
|
|
u = n(43);
|
|
e.exports = function (a) {
|
|
return function (e, t, n) {
|
|
var i, r = l(e),
|
|
o = c(r.length),
|
|
s = u(n, o);
|
|
if (a && t != t) {
|
|
for (; s < o;)
|
|
if ((i = r[s++]) != i) return !0
|
|
} else
|
|
for (; s < o; s++)
|
|
if ((a || s in r) && r[s] === t) return a || s || 0;
|
|
return !a && -1
|
|
}
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(8),
|
|
r = Math.max,
|
|
o = Math.min;
|
|
e.exports = function (e, t) {
|
|
return (e = i(e)) < 0 ? r(e + t, 0) : o(e, t)
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(1).document;
|
|
e.exports = i && i.documentElement
|
|
}, function (e, t, n) {
|
|
var i = n(2),
|
|
r = n(26),
|
|
o = n(14)("IE_PROTO"),
|
|
s = Object.prototype;
|
|
e.exports = Object.getPrototypeOf || function (e) {
|
|
return e = r(e), i(e, o) ? e[o] : "function" == typeof e.constructor && e instanceof e.constructor ? e.constructor.prototype : e instanceof Object ? s : null
|
|
}
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
var h = n(19),
|
|
i = n(15),
|
|
d = n(26),
|
|
p = n(47),
|
|
m = n(48),
|
|
g = n(22),
|
|
v = n(49),
|
|
y = n(50);
|
|
i(i.S + i.F * !n(52)(function (e) {
|
|
Array.from(e)
|
|
}), "Array", {
|
|
from: function (e) {
|
|
var t, n, i, r, o = d(e),
|
|
s = "function" == typeof this ? this : Array,
|
|
a = arguments.length,
|
|
l = 1 < a ? arguments[1] : void 0,
|
|
c = void 0 !== l,
|
|
u = 0,
|
|
f = y(o);
|
|
if (c && (l = h(l, 2 < a ? arguments[2] : void 0, 2)), null == f || s == Array && m(f))
|
|
for (n = new s(t = g(o.length)); u < t; u++) v(n, u, c ? l(o[u], u) : o[u]);
|
|
else
|
|
for (r = f.call(o), n = new s; !(i = r.next()).done; u++) v(n, u, c ? p(r, l, [i.value, u], !0) : i.value);
|
|
return n.length = u, n
|
|
}
|
|
})
|
|
}, function (e, t, n) {
|
|
var o = n(6);
|
|
e.exports = function (e, t, n, i) {
|
|
try {
|
|
return i ? t(o(n)[0], n[1]) : t(n)
|
|
} catch (t) {
|
|
var r = e.return;
|
|
throw void 0 !== r && o(r.call(e)), t
|
|
}
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(13),
|
|
r = n(0)("iterator"),
|
|
o = Array.prototype;
|
|
e.exports = function (e) {
|
|
return void 0 !== e && (i.Array === e || o[r] === e)
|
|
}
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
var i = n(5),
|
|
r = n(11);
|
|
e.exports = function (e, t, n) {
|
|
t in e ? i.f(e, t, r(0, n)) : e[t] = n
|
|
}
|
|
}, function (e, t, n) {
|
|
var i = n(51),
|
|
r = n(0)("iterator"),
|
|
o = n(13);
|
|
e.exports = n(3).getIteratorMethod = function (e) {
|
|
if (null != e) return e[r] || e["@@iterator"] || o[i(e)]
|
|
}
|
|
}, function (e, t, n) {
|
|
var r = n(21),
|
|
o = n(0)("toStringTag"),
|
|
s = "Arguments" == r(function () {
|
|
return arguments
|
|
}());
|
|
e.exports = function (e) {
|
|
var t, n, i;
|
|
return void 0 === e ? "Undefined" : null === e ? "Null" : "string" == typeof (n = function (e, t) {
|
|
try {
|
|
return e[t]
|
|
} catch (e) {}
|
|
}(t = Object(e), o)) ? n : s ? r(t) : "Object" == (i = r(t)) && "function" == typeof t.callee ? "Arguments" : i
|
|
}
|
|
}, function (e, t, n) {
|
|
var o = n(0)("iterator"),
|
|
s = !1;
|
|
try {
|
|
var i = [7][o]();
|
|
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[o]();
|
|
r.next = function () {
|
|
return {
|
|
done: n = !0
|
|
}
|
|
}, i[o] = function () {
|
|
return r
|
|
}, e(i)
|
|
} catch (e) {}
|
|
return n
|
|
}
|
|
}, function (e, t, n) {
|
|
var i, r;
|
|
void 0 !== (r = "function" == typeof (i = function () {
|
|
"use strict";
|
|
return function () {
|
|
if ("undefined" == typeof document) return 0;
|
|
var e, t = document.body,
|
|
n = document.createElement("div"),
|
|
i = n.style;
|
|
return i.position = "absolute", i.top = i.left = "-9999px", i.width = i.height = "100px", i.overflow = "scroll", t.appendChild(n), e = n.offsetWidth - n.clientWidth, t.removeChild(n), e
|
|
}
|
|
}) ? i.apply(t, []) : i) && (e.exports = r)
|
|
}, function (r, e, t) {
|
|
(function (e) {
|
|
function y(e) {
|
|
var t = typeof e;
|
|
return !!e && ("object" == t || "function" == t)
|
|
}
|
|
|
|
function b(e) {
|
|
if ("number" == typeof e) return e;
|
|
if ("symbol" == typeof (t = e) || (n = t) && "object" == typeof n && "[object Symbol]" == f.call(t)) return o;
|
|
var t, n;
|
|
if (y(e)) {
|
|
var i = "function" == typeof e.valueOf ? e.valueOf() : e;
|
|
e = y(i) ? i + "" : i
|
|
}
|
|
if ("string" != typeof e) return 0 === e ? e : +e;
|
|
e = e.replace(s, "");
|
|
var r = l.test(e);
|
|
return r || c.test(e) ? u(e.slice(2), r ? 2 : 8) : a.test(e) ? o : +e
|
|
}
|
|
var o = NaN,
|
|
s = /^\s+|\s+$/g,
|
|
a = /^[-+]0x[0-9a-f]+$/i,
|
|
l = /^0b[01]+$/i,
|
|
c = /^0o[0-7]+$/i,
|
|
u = parseInt,
|
|
t = "object" == typeof e && e && e.Object === Object && e,
|
|
n = "object" == typeof self && self && self.Object === Object && self,
|
|
i = t || n || Function("return this")(),
|
|
f = Object.prototype.toString,
|
|
_ = Math.max,
|
|
E = Math.min,
|
|
w = function () {
|
|
return i.Date.now()
|
|
};
|
|
r.exports = function (i, r, e) {
|
|
function o(e) {
|
|
var t = c,
|
|
n = u;
|
|
return c = u = void 0, m = e, h = i.apply(n, t)
|
|
}
|
|
|
|
function s(e) {
|
|
var t = e - p;
|
|
return void 0 === p || r <= t || t < 0 || v && f <= e - m
|
|
}
|
|
|
|
function a() {
|
|
var e, t, n = w();
|
|
if (s(n)) return l(n);
|
|
d = setTimeout(a, (t = r - ((e = n) - p), v ? E(t, f - (e - m)) : t))
|
|
}
|
|
|
|
function l(e) {
|
|
return d = void 0, n && c ? o(e) : (c = u = void 0, h)
|
|
}
|
|
|
|
function t() {
|
|
var e, t = w(),
|
|
n = s(t);
|
|
if (c = arguments, u = this, p = t, n) {
|
|
if (void 0 === d) return m = e = p, d = setTimeout(a, r), g ? o(e) : h;
|
|
if (v) return d = setTimeout(a, r), o(p)
|
|
}
|
|
return void 0 === d && (d = setTimeout(a, r)), h
|
|
}
|
|
var c, u, f, h, d, p, m = 0,
|
|
g = !1,
|
|
v = !1,
|
|
n = !0;
|
|
if ("function" != typeof i) throw new TypeError("Expected a function");
|
|
return r = b(r) || 0, y(e) && (g = !!e.leading, f = (v = "maxWait" in e) ? _(b(e.maxWait) || 0, r) : f, n = "trailing" in e ? !!e.trailing : n), t.cancel = function () {
|
|
void 0 !== d && clearTimeout(d), c = p = u = d = void(m = 0)
|
|
}, t.flush = function () {
|
|
return void 0 === d ? h : l(w())
|
|
}, t
|
|
}
|
|
}).call(e, t(55))
|
|
}, function (Yj, Zj) {
|
|
var $j;
|
|
$j = function () {
|
|
return this
|
|
}();
|
|
try {
|
|
$j = $j || Function("return this")() || eval("this")
|
|
} catch (Yj) {
|
|
"object" == typeof window && ($j = window)
|
|
}
|
|
Yj.exports = $j
|
|
}, function (e, t, n) {
|
|
"use strict";
|
|
|
|
function f(e) {
|
|
return parseFloat(e) || 0
|
|
}
|
|
|
|
function h(n) {
|
|
return Array.prototype.slice.call(arguments, 1).reduce(function (e, t) {
|
|
return e + f(n["border-" + t + "-width"])
|
|
}, 0)
|
|
}
|
|
|
|
function i(e) {
|
|
return o ? g(e) ? d(0, 0, (t = e.getBBox()).width, t.height) : function (e) {
|
|
var t = e.clientWidth,
|
|
n = e.clientHeight;
|
|
if (!t && !n) return m;
|
|
var i = getComputedStyle(e),
|
|
r = function (e) {
|
|
for (var t = {}, n = 0, i = ["top", "right", "bottom", "left"]; n < i.length; n += 1) {
|
|
var r = i[n],
|
|
o = e["padding-" + r];
|
|
t[r] = f(o)
|
|
}
|
|
return t
|
|
}(i),
|
|
o = r.left + r.right,
|
|
s = r.top + r.bottom,
|
|
a = f(i.width),
|
|
l = f(i.height);
|
|
if ("border-box" === i.boxSizing && (Math.round(a + o) !== t && (a -= h(i, "left", "right") + o), Math.round(l + s) !== n && (l -= h(i, "top", "bottom") + s)), e !== document.documentElement) {
|
|
var c = Math.round(a + o) - t,
|
|
u = Math.round(l + s) - n;
|
|
1 !== Math.abs(c) && (a -= c), 1 !== Math.abs(u) && (l -= u)
|
|
}
|
|
return d(r.left, r.top, a, l)
|
|
}(e) : m;
|
|
var t
|
|
}
|
|
|
|
function d(e, t, n, i) {
|
|
return {
|
|
x: e,
|
|
y: t,
|
|
width: n,
|
|
height: i
|
|
}
|
|
}
|
|
Object.defineProperty(t, "__esModule", {
|
|
value: !0
|
|
});
|
|
var r = function () {
|
|
function i(e, n) {
|
|
var i = -1;
|
|
return e.some(function (e, t) {
|
|
return e[0] === n && (i = t, !0)
|
|
}), i
|
|
}
|
|
return "undefined" != typeof Map ? Map : function () {
|
|
function e() {
|
|
this.__entries__ = []
|
|
}
|
|
var t = {
|
|
size: {}
|
|
};
|
|
return t.size.get = function () {
|
|
return this.__entries__.length
|
|
}, e.prototype.get = function (e) {
|
|
var t = i(this.__entries__, e),
|
|
n = this.__entries__[t];
|
|
return n && n[1]
|
|
}, e.prototype.set = function (e, t) {
|
|
var n = i(this.__entries__, e);
|
|
~n ? this.__entries__[n][1] = t : this.__entries__.push([e, t])
|
|
}, e.prototype.delete = function (e) {
|
|
var t = this.__entries__,
|
|
n = i(t, e);
|
|
~n && t.splice(n, 1)
|
|
}, e.prototype.has = function (e) {
|
|
return !!~i(this.__entries__, e)
|
|
}, e.prototype.clear = function () {
|
|
this.__entries__.splice(0)
|
|
}, e.prototype.forEach = function (e, t) {
|
|
void 0 === t && (t = null);
|
|
for (var n = 0, i = this.__entries__; n < i.length; n += 1) {
|
|
var r = i[n];
|
|
e.call(t, r[1], r[0])
|
|
}
|
|
}, Object.defineProperties(e.prototype, t), e
|
|
}()
|
|
}(),
|
|
o = "undefined" != typeof window && "undefined" != typeof document && window.document === document,
|
|
l = "function" == typeof requestAnimationFrame ? requestAnimationFrame : function (e) {
|
|
return setTimeout(function () {
|
|
return e(Date.now())
|
|
}, 1e3 / 60)
|
|
},
|
|
s = ["top", "right", "bottom", "left", "width", "height", "size", "weight"],
|
|
a = "undefined" != typeof navigator && /Trident\/.*rv:11/.test(navigator.userAgent),
|
|
c = "undefined" != typeof MutationObserver && !a,
|
|
u = function () {
|
|
this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = function (e, t) {
|
|
function n() {
|
|
o && (o = !1, e()), s && r()
|
|
}
|
|
|
|
function i() {
|
|
l(n)
|
|
}
|
|
|
|
function r() {
|
|
var e = Date.now();
|
|
if (o) {
|
|
if (e - a < 2) return;
|
|
s = !0
|
|
} else s = !(o = !0), setTimeout(i, t);
|
|
a = e
|
|
}
|
|
var o = !1,
|
|
s = !1,
|
|
a = 0;
|
|
return r
|
|
}(this.refresh.bind(this), 20)
|
|
};
|
|
u.prototype.addObserver = function (e) {
|
|
~this.observers_.indexOf(e) || this.observers_.push(e), this.connected_ || this.connect_()
|
|
}, u.prototype.removeObserver = function (e) {
|
|
var t = this.observers_,
|
|
n = t.indexOf(e);
|
|
~n && t.splice(n, 1), !t.length && this.connected_ && this.disconnect_()
|
|
}, u.prototype.refresh = function () {
|
|
this.updateObservers_() && this.refresh()
|
|
}, u.prototype.updateObservers_ = function () {
|
|
var e = this.observers_.filter(function (e) {
|
|
return e.gatherActive(), e.hasActive()
|
|
});
|
|
return e.forEach(function (e) {
|
|
return e.broadcastActive()
|
|
}), 0 < e.length
|
|
}, u.prototype.connect_ = function () {
|
|
o && !this.connected_ && (document.addEventListener("transitionend", this.onTransitionEnd_), window.addEventListener("resize", this.refresh), c ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {
|
|
attributes: !0,
|
|
childList: !0,
|
|
characterData: !0,
|
|
subtree: !0
|
|
})) : (document.addEventListener("DOMSubtreeModified", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0)
|
|
}, u.prototype.disconnect_ = function () {
|
|
o && this.connected_ && (document.removeEventListener("transitionend", this.onTransitionEnd_), window.removeEventListener("resize", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener("DOMSubtreeModified", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1)
|
|
}, u.prototype.onTransitionEnd_ = function (e) {
|
|
var t = e.propertyName;
|
|
s.some(function (e) {
|
|
return !!~t.indexOf(e)
|
|
}) && this.refresh()
|
|
}, u.getInstance = function () {
|
|
return this.instance_ || (this.instance_ = new u), this.instance_
|
|
}, u.instance_ = null;
|
|
var p = function (e, t) {
|
|
for (var n = 0, i = Object.keys(t); n < i.length; n += 1) {
|
|
var r = i[n];
|
|
Object.defineProperty(e, r, {
|
|
value: t[r],
|
|
enumerable: !1,
|
|
writable: !1,
|
|
configurable: !0
|
|
})
|
|
}
|
|
return e
|
|
},
|
|
m = d(0, 0, 0, 0),
|
|
g = "undefined" != typeof SVGGraphicsElement ? function (e) {
|
|
return e instanceof SVGGraphicsElement
|
|
} : function (e) {
|
|
return e instanceof SVGElement && "function" == typeof e.getBBox
|
|
},
|
|
v = function (e) {
|
|
this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = d(0, 0, 0, 0), this.target = e
|
|
};
|
|
v.prototype.isActive = function () {
|
|
var e = i(this.target);
|
|
return (this.contentRect_ = e).width !== this.broadcastWidth || e.height !== this.broadcastHeight
|
|
}, v.prototype.broadcastRect = function () {
|
|
var e = this.contentRect_;
|
|
return this.broadcastWidth = e.width, this.broadcastHeight = e.height, e
|
|
};
|
|
var y = function (e, t) {
|
|
var n, i, r, o, s, a, l, c = (i = (n = t).x, r = n.y, o = n.width, s = n.height, a = "undefined" != typeof DOMRectReadOnly ? DOMRectReadOnly : Object, l = Object.create(a.prototype), p(l, {
|
|
x: i,
|
|
y: r,
|
|
width: o,
|
|
height: s,
|
|
top: r,
|
|
right: i + o,
|
|
bottom: s + r,
|
|
left: i
|
|
}), l);
|
|
p(this, {
|
|
target: e,
|
|
contentRect: c
|
|
})
|
|
},
|
|
b = function (e, t, n) {
|
|
if ("function" != typeof e) throw new TypeError("The callback provided as parameter 1 is not a function.");
|
|
this.activeObservations_ = [], this.observations_ = new r, this.callback_ = e, this.controller_ = t, this.callbackCtx_ = n
|
|
};
|
|
b.prototype.observe = function (e) {
|
|
if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");
|
|
if ("undefined" != typeof Element && Element instanceof Object) {
|
|
if (!(e instanceof Element)) throw new TypeError('parameter 1 is not of type "Element".');
|
|
var t = this.observations_;
|
|
t.has(e) || (t.set(e, new v(e)), this.controller_.addObserver(this), this.controller_.refresh())
|
|
}
|
|
}, b.prototype.unobserve = function (e) {
|
|
if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");
|
|
if ("undefined" != typeof Element && Element instanceof Object) {
|
|
if (!(e instanceof Element)) throw new TypeError('parameter 1 is not of type "Element".');
|
|
var t = this.observations_;
|
|
t.has(e) && (t.delete(e), t.size || this.controller_.removeObserver(this))
|
|
}
|
|
}, b.prototype.disconnect = function () {
|
|
this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this)
|
|
}, b.prototype.gatherActive = function () {
|
|
var t = this;
|
|
this.clearActive(), this.observations_.forEach(function (e) {
|
|
e.isActive() && t.activeObservations_.push(e)
|
|
})
|
|
}, b.prototype.broadcastActive = function () {
|
|
if (this.hasActive()) {
|
|
var e = this.callbackCtx_,
|
|
t = this.activeObservations_.map(function (e) {
|
|
return new y(e.target, e.broadcastRect())
|
|
});
|
|
this.callback_.call(e, t, e), this.clearActive()
|
|
}
|
|
}, b.prototype.clearActive = function () {
|
|
this.activeObservations_.splice(0)
|
|
}, b.prototype.hasActive = function () {
|
|
return 0 < this.activeObservations_.length
|
|
};
|
|
var _ = "undefined" != typeof WeakMap ? new WeakMap : new r,
|
|
E = function (e) {
|
|
if (!(this instanceof E)) throw new TypeError("Cannot call a class as a function");
|
|
if (!arguments.length) throw new TypeError("1 argument required, but only 0 present.");
|
|
var t = u.getInstance(),
|
|
n = new b(e, t, this);
|
|
_.set(this, n)
|
|
};
|
|
["observe", "unobserve", "disconnect"].forEach(function (t) {
|
|
E.prototype[t] = function () {
|
|
return (e = _.get(this))[t].apply(e, arguments);
|
|
var e
|
|
}
|
|
});
|
|
var w = "undefined" != typeof ResizeObserver ? ResizeObserver : E;
|
|
t.default = w
|
|
}, function (e, t) {}, function (e, t, n) {
|
|
"use strict";
|
|
var l = Object.getOwnPropertySymbols,
|
|
c = Object.prototype.hasOwnProperty,
|
|
u = Object.prototype.propertyIsEnumerable;
|
|
e.exports = function () {
|
|
try {
|
|
if (!Object.assign) return !1;
|
|
var e = new String("abc");
|
|
if (e[5] = "de", "5" === Object.getOwnPropertyNames(e)[0]) return !1;
|
|
for (var t = {}, n = 0; n < 10; n++) t["_" + String.fromCharCode(n)] = n;
|
|
if ("0123456789" !== Object.getOwnPropertyNames(t).map(function (e) {
|
|
return t[e]
|
|
}).join("")) return !1;
|
|
var i = {};
|
|
return "abcdefghijklmnopqrst".split("").forEach(function (e) {
|
|
i[e] = e
|
|
}), "abcdefghijklmnopqrst" === Object.keys(Object.assign({}, i)).join("")
|
|
} catch (e) {
|
|
return !1
|
|
}
|
|
}() ? Object.assign : function (e, t) {
|
|
for (var n, i, r = function (e) {
|
|
if (null == e) throw new TypeError("Object.assign cannot be called with null or undefined");
|
|
return Object(e)
|
|
}(e), o = 1; o < arguments.length; o++) {
|
|
for (var s in n = Object(arguments[o])) c.call(n, s) && (r[s] = n[s]);
|
|
if (l) {
|
|
i = l(n);
|
|
for (var a = 0; a < i.length; a++) u.call(n, i[a]) && (r[i[a]] = n[i[a]])
|
|
}
|
|
}
|
|
return r
|
|
}
|
|
}]).default
|
|
}),
|
|
function (e) {
|
|
"function" == typeof define && define.amd ? define(["jquery"], e) : e(jQuery)
|
|
}(function (c) {
|
|
"use strict";
|
|
var e, s = 32,
|
|
a = 33,
|
|
l = 34,
|
|
u = 35,
|
|
f = 36,
|
|
h = 38,
|
|
d = 40,
|
|
r = function (e, t) {
|
|
var n, i, r = t.scrollTop(),
|
|
o = t.prop("scrollHeight"),
|
|
s = t.prop("clientHeight"),
|
|
a = e.originalEvent.wheelDelta || -1 * e.originalEvent.detail || -1 * e.originalEvent.deltaY,
|
|
l = 0;
|
|
return "wheel" === e.type ? (n = t.height() / c(window).height(), l = e.originalEvent.deltaY * n) : this.options.touch && "touchmove" === e.type && (a = e.originalEvent.changedTouches[0].clientY - this.startClientY), {
|
|
prevent: (i = 0 < a && r + l <= 0) || a < 0 && o - s <= r + l,
|
|
top: i,
|
|
scrollTop: r,
|
|
deltaY: l
|
|
}
|
|
},
|
|
o = function (e, t) {
|
|
var n, i, r = t.scrollTop(),
|
|
o = {
|
|
top: !1,
|
|
bottom: !1
|
|
};
|
|
return o.top = 0 === r && (e.keyCode === a || e.keyCode === f || e.keyCode === h), o.top || (n = t.prop("scrollHeight"), i = t.prop("clientHeight"), o.bottom = n === r + i && (e.keyCode === s || e.keyCode === l || e.keyCode === u || e.keyCode === d)), o
|
|
},
|
|
p = function (e, t) {
|
|
this.$element = e, this.options = c.extend({}, p.DEFAULTS, this.$element.data(), t), this.enabled = !0, this.startClientY = 0, this.options.unblock && this.$element.on(p.CORE.wheelEventName + p.NAMESPACE, this.options.unblock, c.proxy(p.CORE.unblockHandler, this)), this.$element.on(p.CORE.wheelEventName + p.NAMESPACE, this.options.selector, c.proxy(p.CORE.handler, this)), this.options.touch && (this.$element.on("touchstart" + p.NAMESPACE, this.options.selector, c.proxy(p.CORE.touchHandler, this)), this.$element.on("touchmove" + p.NAMESPACE, this.options.selector, c.proxy(p.CORE.handler, this)), this.options.unblock && this.$element.on("touchmove" + p.NAMESPACE, this.options.unblock, c.proxy(p.CORE.unblockHandler, this))), this.options.keyboard && (this.$element.attr("tabindex", this.options.keyboard.tabindex || 0), this.$element.on("keydown" + p.NAMESPACE, this.options.selector, c.proxy(p.CORE.keyboardHandler, this)), this.options.unblock && this.$element.on("keydown" + p.NAMESPACE, this.options.unblock, c.proxy(p.CORE.unblockHandler, this)))
|
|
};
|
|
p.NAME = "ScrollLock", p.VERSION = "3.1.2", p.NAMESPACE = ".scrollLock", p.ANIMATION_NAMESPACE = p.NAMESPACE + ".effect", p.DEFAULTS = {
|
|
strict: !1,
|
|
strictFn: function (e) {
|
|
return e.prop("scrollHeight") > e.prop("clientHeight")
|
|
},
|
|
selector: !1,
|
|
animation: !1,
|
|
touch: "ontouchstart" in window,
|
|
keyboard: !1,
|
|
unblock: !1
|
|
}, p.CORE = {
|
|
wheelEventName: "onwheel" in document.createElement("div") ? "wheel" : void 0 !== document.onmousewheel ? "mousewheel" : "DOMMouseScroll",
|
|
animationEventName: ["webkitAnimationEnd", "mozAnimationEnd", "MSAnimationEnd", "oanimationend", "animationend"].join(p.ANIMATION_NAMESPACE + " ") + p.ANIMATION_NAMESPACE,
|
|
unblockHandler: function (e) {
|
|
e.__currentTarget = e.currentTarget
|
|
},
|
|
handler: function (e) {
|
|
var t, n, i;
|
|
this.enabled && !e.ctrlKey && (t = c(e.currentTarget), (!0 !== this.options.strict || this.options.strictFn(t)) && (e.stopPropagation(), n = c.proxy(r, this)(e, t), e.__currentTarget && (n.prevent &= c.proxy(r, this)(e, c(e.__currentTarget)).prevent), n.prevent && (e.preventDefault(), n.deltaY && t.scrollTop(n.scrollTop + n.deltaY), i = n.top ? "top" : "bottom", this.options.animation && setTimeout(p.CORE.animationHandler.bind(this, t, i), 0), t.trigger(c.Event(i + p.NAMESPACE)))))
|
|
},
|
|
touchHandler: function (e) {
|
|
this.startClientY = e.originalEvent.touches[0].clientY
|
|
},
|
|
animationHandler: function (e, t) {
|
|
var n = this.options.animation[t],
|
|
i = this.options.animation.top + " " + this.options.animation.bottom;
|
|
e.off(p.ANIMATION_NAMESPACE).removeClass(i).addClass(n).one(p.CORE.animationEventName, function () {
|
|
e.removeClass(n)
|
|
})
|
|
},
|
|
keyboardHandler: function (e) {
|
|
var t, n = c(e.currentTarget),
|
|
i = (n.scrollTop(), o(e, n));
|
|
return e.__currentTarget && (t = o(e, c(e.__currentTarget)), i.top &= t.top, i.bottom &= t.bottom), i.top ? (n.trigger(c.Event("top" + p.NAMESPACE)), this.options.animation && setTimeout(p.CORE.animationHandler.bind(this, n, "top"), 0), !1) : i.bottom ? (n.trigger(c.Event("bottom" + p.NAMESPACE)), this.options.animation && setTimeout(p.CORE.animationHandler.bind(this, n, "bottom"), 0), !1) : void 0
|
|
}
|
|
}, p.prototype.toggleStrict = function () {
|
|
this.options.strict = !this.options.strict
|
|
}, p.prototype.enable = function () {
|
|
this.enabled = !0
|
|
}, p.prototype.disable = function () {
|
|
this.enabled = !1
|
|
}, p.prototype.destroy = function () {
|
|
this.disable(), this.$element.off(p.NAMESPACE), this.$element = null, this.options = null
|
|
}, e = c.fn.scrollLock, c.fn.scrollLock = function (i) {
|
|
return this.each(function () {
|
|
var e = c(this),
|
|
t = "object" == typeof i && i,
|
|
n = e.data(p.NAME);
|
|
(n || "destroy" !== i) && (n || e.data(p.NAME, n = new p(e, t)), "string" == typeof i && n[i]())
|
|
})
|
|
}, c.fn.scrollLock.defaults = p.DEFAULTS, c.fn.scrollLock.noConflict = function () {
|
|
return c.fn.scrollLock = e, this
|
|
}
|
|
}),
|
|
function (e, t) {
|
|
"function" == typeof define && define.amd ? define(["jquery"], t) : "object" == typeof module && module.exports ? t(require("jquery")) : t(e.jQuery)
|
|
}(this, function (i) {
|
|
i.fn.appear = function (n, e) {
|
|
var d = i.extend({
|
|
data: void 0,
|
|
one: !0,
|
|
accX: 0,
|
|
accY: 0
|
|
}, e);
|
|
return this.each(function () {
|
|
var f = i(this);
|
|
if (f.appeared = !1, n) {
|
|
var h = i(window),
|
|
t = function () {
|
|
if (f.is(":visible")) {
|
|
var e = h.scrollLeft(),
|
|
t = h.scrollTop(),
|
|
n = f.offset(),
|
|
i = n.left,
|
|
r = n.top,
|
|
o = d.accX,
|
|
s = d.accY,
|
|
a = f.height(),
|
|
l = h.height(),
|
|
c = f.width(),
|
|
u = h.width();
|
|
t <= r + a + s && r <= t + l + s && e <= i + c + o && i <= e + u + o ? f.appeared || f.trigger("appear", d.data) : f.appeared = !1
|
|
} else f.appeared = !1
|
|
},
|
|
e = function () {
|
|
if (f.appeared = !0, d.one) {
|
|
h.unbind("scroll", t);
|
|
var e = i.inArray(t, i.fn.appear.checks);
|
|
0 <= e && i.fn.appear.checks.splice(e, 1)
|
|
}
|
|
n.apply(this, arguments)
|
|
};
|
|
d.one ? f.one("appear", d.data, e) : f.bind("appear", d.data, e), h.scroll(t), i.fn.appear.checks.push(t), t()
|
|
} else f.trigger("appear", d.data)
|
|
})
|
|
}, i.extend(i.fn.appear, {
|
|
checks: [],
|
|
timeout: null,
|
|
checkAll: function () {
|
|
var e = i.fn.appear.checks.length;
|
|
if (0 < e)
|
|
for (; e--;) i.fn.appear.checks[e]()
|
|
},
|
|
run: function () {
|
|
i.fn.appear.timeout && clearTimeout(i.fn.appear.timeout), i.fn.appear.timeout = setTimeout(i.fn.appear.checkAll, 20)
|
|
}
|
|
}), i.each(["append", "prepend", "after", "before", "attr", "removeAttr", "addClass", "removeClass", "toggleClass", "remove", "css", "show", "hide"], function (e, t) {
|
|
var n = i.fn[t];
|
|
n && (i.fn[t] = function () {
|
|
var e = n.apply(this, arguments);
|
|
return i.fn.appear.run(), e
|
|
})
|
|
})
|
|
}),
|
|
function (e) {
|
|
"function" == typeof define && define.amd ? define(["jquery"], e) : "object" == typeof exports ? e(require("jquery")) : e(jQuery)
|
|
}(function (o) {
|
|
var s = function (e, t) {
|
|
this.$element = o(e), this.options = o.extend({}, s.DEFAULTS, this.dataOptions(), t), this.init()
|
|
};
|
|
s.DEFAULTS = {
|
|
from: 0,
|
|
to: 0,
|
|
speed: 1e3,
|
|
refreshInterval: 100,
|
|
decimals: 0,
|
|
formatter: function (e, t) {
|
|
return e.toFixed(t.decimals)
|
|
},
|
|
onUpdate: null,
|
|
onComplete: null
|
|
}, s.prototype.init = function () {
|
|
this.value = this.options.from, this.loops = Math.ceil(this.options.speed / this.options.refreshInterval), this.loopCount = 0, this.increment = (this.options.to - this.options.from) / this.loops
|
|
}, s.prototype.dataOptions = function () {
|
|
var e = {
|
|
from: this.$element.data("from"),
|
|
to: this.$element.data("to"),
|
|
speed: this.$element.data("speed"),
|
|
refreshInterval: this.$element.data("refresh-interval"),
|
|
decimals: this.$element.data("decimals")
|
|
},
|
|
t = Object.keys(e);
|
|
for (var n in t) {
|
|
var i = t[n];
|
|
void 0 === e[i] && delete e[i]
|
|
}
|
|
return e
|
|
}, s.prototype.update = function () {
|
|
this.value += this.increment, this.loopCount++, this.render(), "function" == typeof this.options.onUpdate && this.options.onUpdate.call(this.$element, this.value), this.loopCount >= this.loops && (clearInterval(this.interval), this.value = this.options.to, "function" == typeof this.options.onComplete && this.options.onComplete.call(this.$element, this.value))
|
|
}, s.prototype.render = function () {
|
|
var e = this.options.formatter.call(this.$element, this.value, this.options);
|
|
this.$element.text(e)
|
|
}, s.prototype.restart = function () {
|
|
this.stop(), this.init(), this.start()
|
|
}, s.prototype.start = function () {
|
|
this.stop(), this.render(), this.interval = setInterval(this.update.bind(this), this.options.refreshInterval)
|
|
}, s.prototype.stop = function () {
|
|
this.interval && clearInterval(this.interval)
|
|
}, s.prototype.toggle = function () {
|
|
this.interval ? this.stop() : this.start()
|
|
}, o.fn.countTo = function (r) {
|
|
return this.each(function () {
|
|
var e = o(this),
|
|
t = e.data("countTo"),
|
|
n = "object" == typeof r ? r : {},
|
|
i = "string" == typeof r ? r : "start";
|
|
(!t || "object" == typeof r) && (t && t.stop(), e.data("countTo", t = new s(this, n))), t[i].call(t)
|
|
})
|
|
}
|
|
}),
|
|
function (e) {
|
|
var t = !1;
|
|
if ("function" == typeof define && define.amd && (define(e), t = !0), "object" == typeof exports && (module.exports = e(), t = !0), !t) {
|
|
var n = window.Cookies,
|
|
i = window.Cookies = e();
|
|
i.noConflict = function () {
|
|
return window.Cookies = n, i
|
|
}
|
|
}
|
|
}(function () {
|
|
function m() {
|
|
for (var e = 0, t = {}; e < arguments.length; e++) {
|
|
var n = arguments[e];
|
|
for (var i in n) t[i] = n[i]
|
|
}
|
|
return t
|
|
}
|
|
return function e(d) {
|
|
function p(e, t, n) {
|
|
var i;
|
|
if ("undefined" != typeof document) {
|
|
if (1 < arguments.length) {
|
|
if ("number" == typeof (n = m({
|
|
path: "/"
|
|
}, p.defaults, n)).expires) {
|
|
var r = new Date;
|
|
r.setMilliseconds(r.getMilliseconds() + 864e5 * n.expires), n.expires = r
|
|
}
|
|
n.expires = n.expires ? n.expires.toUTCString() : "";
|
|
try {
|
|
i = JSON.stringify(t), /^[\{\[]/.test(i) && (t = i)
|
|
} catch (e) {}
|
|
t = d.write ? d.write(t, e) : encodeURIComponent(String(t)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g, decodeURIComponent), e = (e = (e = encodeURIComponent(String(e))).replace(/%(23|24|26|2B|5E|60|7C)/g, decodeURIComponent)).replace(/[\(\)]/g, escape);
|
|
var o = "";
|
|
for (var s in n) n[s] && (o += "; " + s, !0 !== n[s] && (o += "=" + n[s]));
|
|
return document.cookie = e + "=" + t + o
|
|
}
|
|
e || (i = {});
|
|
for (var a = document.cookie ? document.cookie.split("; ") : [], l = /(%[0-9A-Z]{2})+/g, c = 0; c < a.length; c++) {
|
|
var u = a[c].split("="),
|
|
f = u.slice(1).join("=");
|
|
this.json || '"' !== f.charAt(0) || (f = f.slice(1, -1));
|
|
try {
|
|
var h = u[0].replace(l, decodeURIComponent);
|
|
if (f = d.read ? d.read(f, h) : d(f, h) || f.replace(l, decodeURIComponent), this.json) try {
|
|
f = JSON.parse(f)
|
|
} catch (e) {}
|
|
if (e === h) {
|
|
i = f;
|
|
break
|
|
}
|
|
e || (i[h] = f)
|
|
} catch (e) {}
|
|
}
|
|
return i
|
|
}
|
|
}
|
|
return (p.set = p).get = function (e) {
|
|
return p.call(p, e)
|
|
}, p.getJSON = function () {
|
|
return p.apply({
|
|
json: !0
|
|
}, [].slice.call(arguments))
|
|
}, p.defaults = {}, p.remove = function (e, t) {
|
|
p(e, "", m(t, {
|
|
expires: -1
|
|
}))
|
|
}, p.withConverter = e, p
|
|
}(function () {})
|
|
}); |