js-confuser 1.7.2 → 2.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/ISSUE_TEMPLATE/bug_report.md +6 -4
- package/.github/workflows/node.js.yml +1 -1
- package/CHANGELOG.md +105 -0
- package/Migration.md +57 -0
- package/README.md +23 -913
- package/dist/constants.js +69 -13
- package/dist/index.js +108 -152
- package/dist/obfuscator.js +316 -118
- package/dist/options.js +1 -109
- package/dist/order.js +30 -30
- package/dist/presets.js +47 -45
- package/dist/probability.js +25 -32
- package/dist/templates/bufferToStringTemplate.js +9 -0
- package/dist/templates/deadCodeTemplates.js +9 -0
- package/dist/templates/getGlobalTemplate.js +19 -0
- package/dist/templates/integrityTemplate.js +30 -0
- package/dist/templates/setFunctionLengthTemplate.js +9 -0
- package/dist/templates/stringCompressionTemplate.js +10 -0
- package/dist/templates/tamperProtectionTemplates.js +21 -0
- package/dist/templates/template.js +213 -93
- package/dist/transforms/astScrambler.js +100 -0
- package/dist/transforms/calculator.js +70 -127
- package/dist/transforms/controlFlowFlattening.js +1182 -0
- package/dist/transforms/deadCode.js +62 -577
- package/dist/transforms/dispatcher.js +300 -309
- package/dist/transforms/extraction/duplicateLiteralsRemoval.js +88 -189
- package/dist/transforms/extraction/objectExtraction.js +131 -215
- package/dist/transforms/finalizer.js +56 -59
- package/dist/transforms/flatten.js +275 -276
- package/dist/transforms/functionOutlining.js +230 -0
- package/dist/transforms/identifier/globalConcealing.js +217 -103
- package/dist/transforms/identifier/movedDeclarations.js +167 -91
- package/dist/transforms/identifier/renameVariables.js +240 -187
- package/dist/transforms/lock/integrity.js +61 -184
- package/dist/transforms/lock/lock.js +263 -303
- package/dist/transforms/minify.js +431 -436
- package/dist/transforms/opaquePredicates.js +65 -118
- package/dist/transforms/pack.js +160 -0
- package/dist/transforms/plugin.js +179 -0
- package/dist/transforms/preparation.js +263 -163
- package/dist/transforms/renameLabels.js +132 -56
- package/dist/transforms/rgf.js +142 -240
- package/dist/transforms/shuffle.js +52 -145
- package/dist/transforms/string/encoding.js +45 -173
- package/dist/transforms/string/stringCompression.js +81 -126
- package/dist/transforms/string/stringConcealing.js +189 -224
- package/dist/transforms/string/stringEncoding.js +32 -40
- package/dist/transforms/string/stringSplitting.js +54 -55
- package/dist/transforms/variableMasking.js +232 -0
- package/dist/utils/ControlObject.js +125 -0
- package/dist/utils/IntGen.js +46 -0
- package/dist/utils/NameGen.js +106 -0
- package/dist/utils/ast-utils.js +560 -0
- package/dist/utils/function-utils.js +56 -0
- package/dist/utils/gen-utils.js +48 -0
- package/dist/utils/node.js +77 -0
- package/dist/utils/object-utils.js +21 -0
- package/dist/utils/random-utils.js +91 -0
- package/dist/utils/static-utils.js +64 -0
- package/dist/validateOptions.js +122 -0
- package/index.d.ts +1 -17
- package/package.json +27 -22
- package/src/constants.ts +139 -77
- package/src/index.ts +70 -163
- package/src/obfuscationResult.ts +43 -0
- package/src/obfuscator.ts +328 -135
- package/src/options.ts +154 -623
- package/src/order.ts +14 -14
- package/src/presets.ts +39 -34
- package/src/probability.ts +21 -36
- package/src/templates/{bufferToString.ts → bufferToStringTemplate.ts} +5 -54
- package/src/templates/deadCodeTemplates.ts +1185 -0
- package/src/templates/getGlobalTemplate.ts +72 -0
- package/src/templates/integrityTemplate.ts +69 -0
- package/src/templates/setFunctionLengthTemplate.ts +11 -0
- package/src/templates/stringCompressionTemplate.ts +42 -0
- package/src/templates/tamperProtectionTemplates.ts +116 -0
- package/src/templates/template.ts +183 -92
- package/src/transforms/astScrambler.ts +99 -0
- package/src/transforms/calculator.ts +96 -224
- package/src/transforms/controlFlowFlattening.ts +1594 -0
- package/src/transforms/deadCode.ts +85 -628
- package/src/transforms/dispatcher.ts +431 -636
- package/src/transforms/extraction/duplicateLiteralsRemoval.ts +147 -299
- package/src/transforms/extraction/objectExtraction.ts +160 -333
- package/src/transforms/finalizer.ts +63 -64
- package/src/transforms/flatten.ts +439 -557
- package/src/transforms/functionOutlining.ts +225 -0
- package/src/transforms/identifier/globalConcealing.ts +261 -189
- package/src/transforms/identifier/movedDeclarations.ts +228 -142
- package/src/transforms/identifier/renameVariables.ts +252 -258
- package/src/transforms/lock/integrity.ts +84 -260
- package/src/transforms/lock/lock.ts +342 -491
- package/src/transforms/minify.ts +523 -663
- package/src/transforms/opaquePredicates.ts +90 -229
- package/src/transforms/pack.ts +195 -0
- package/src/transforms/plugin.ts +185 -0
- package/src/transforms/preparation.ts +337 -215
- package/src/transforms/renameLabels.ts +176 -77
- package/src/transforms/rgf.ts +293 -386
- package/src/transforms/shuffle.ts +80 -254
- package/src/transforms/string/encoding.ts +26 -129
- package/src/transforms/string/stringCompression.ts +118 -236
- package/src/transforms/string/stringConcealing.ts +255 -339
- package/src/transforms/string/stringEncoding.ts +28 -47
- package/src/transforms/string/stringSplitting.ts +61 -75
- package/src/transforms/variableMasking.ts +257 -0
- package/src/utils/ControlObject.ts +141 -0
- package/src/utils/IntGen.ts +33 -0
- package/src/utils/NameGen.ts +106 -0
- package/src/utils/ast-utils.ts +667 -0
- package/src/utils/function-utils.ts +50 -0
- package/src/utils/gen-utils.ts +48 -0
- package/src/utils/node.ts +78 -0
- package/src/utils/object-utils.ts +21 -0
- package/src/utils/random-utils.ts +79 -0
- package/src/utils/static-utils.ts +66 -0
- package/src/validateOptions.ts +256 -0
- package/tsconfig.json +13 -8
- package/babel.config.js +0 -12
- package/dev.js +0 -8
- package/dist/compiler.js +0 -34
- package/dist/parser.js +0 -59
- package/dist/precedence.js +0 -66
- package/dist/templates/bufferToString.js +0 -108
- package/dist/templates/crash.js +0 -59
- package/dist/templates/es5.js +0 -137
- package/dist/templates/functionLength.js +0 -34
- package/dist/templates/globals.js +0 -9
- package/dist/transforms/antiTooling.js +0 -88
- package/dist/transforms/controlFlowFlattening/controlFlowFlattening.js +0 -1281
- package/dist/transforms/controlFlowFlattening/expressionObfuscation.js +0 -131
- package/dist/transforms/es5/antiClass.js +0 -164
- package/dist/transforms/es5/antiDestructuring.js +0 -193
- package/dist/transforms/es5/antiES6Object.js +0 -185
- package/dist/transforms/es5/antiSpreadOperator.js +0 -35
- package/dist/transforms/es5/antiTemplate.js +0 -66
- package/dist/transforms/es5/es5.js +0 -123
- package/dist/transforms/extraction/classExtraction.js +0 -83
- package/dist/transforms/identifier/globalAnalysis.js +0 -70
- package/dist/transforms/identifier/variableAnalysis.js +0 -104
- package/dist/transforms/lock/antiDebug.js +0 -76
- package/dist/transforms/stack.js +0 -343
- package/dist/transforms/transform.js +0 -350
- package/dist/traverse.js +0 -110
- package/dist/util/compare.js +0 -145
- package/dist/util/gen.js +0 -564
- package/dist/util/guard.js +0 -9
- package/dist/util/identifiers.js +0 -355
- package/dist/util/insert.js +0 -362
- package/dist/util/math.js +0 -19
- package/dist/util/object.js +0 -40
- package/dist/util/random.js +0 -130
- package/dist/util/scope.js +0 -20
- package/docs/ControlFlowFlattening.md +0 -595
- package/docs/Countermeasures.md +0 -63
- package/docs/ES5.md +0 -197
- package/docs/Integrity.md +0 -75
- package/docs/RGF.md +0 -419
- package/samples/example.js +0 -15
- package/samples/high.js +0 -1
- package/samples/input.js +0 -3
- package/samples/javascriptobfuscator.com.js +0 -8
- package/samples/jscrambler_advanced.js +0 -1894
- package/samples/jscrambler_light.js +0 -1134
- package/samples/low.js +0 -1
- package/samples/medium.js +0 -1
- package/samples/obfuscator.io.js +0 -1686
- package/samples/preemptive.com.js +0 -16
- package/src/compiler.ts +0 -35
- package/src/parser.ts +0 -49
- package/src/precedence.ts +0 -61
- package/src/templates/crash.ts +0 -55
- package/src/templates/es5.ts +0 -131
- package/src/templates/functionLength.ts +0 -32
- package/src/templates/globals.ts +0 -3
- package/src/transforms/antiTooling.ts +0 -102
- package/src/transforms/controlFlowFlattening/controlFlowFlattening.ts +0 -2146
- package/src/transforms/controlFlowFlattening/expressionObfuscation.ts +0 -179
- package/src/transforms/es5/antiClass.ts +0 -272
- package/src/transforms/es5/antiDestructuring.ts +0 -294
- package/src/transforms/es5/antiES6Object.ts +0 -267
- package/src/transforms/es5/antiSpreadOperator.ts +0 -56
- package/src/transforms/es5/antiTemplate.ts +0 -98
- package/src/transforms/es5/es5.ts +0 -149
- package/src/transforms/extraction/classExtraction.ts +0 -168
- package/src/transforms/identifier/globalAnalysis.ts +0 -85
- package/src/transforms/identifier/variableAnalysis.ts +0 -118
- package/src/transforms/lock/antiDebug.ts +0 -112
- package/src/transforms/stack.ts +0 -551
- package/src/transforms/transform.ts +0 -453
- package/src/traverse.ts +0 -120
- package/src/types.ts +0 -131
- package/src/util/compare.ts +0 -181
- package/src/util/gen.ts +0 -651
- package/src/util/guard.ts +0 -7
- package/src/util/identifiers.ts +0 -494
- package/src/util/insert.ts +0 -419
- package/src/util/math.ts +0 -15
- package/src/util/object.ts +0 -39
- package/src/util/random.ts +0 -141
- package/src/util/scope.ts +0 -21
- package/test/code/Cash.src.js +0 -1011
- package/test/code/Cash.test.ts +0 -49
- package/test/code/Dynamic.src.js +0 -118
- package/test/code/Dynamic.test.ts +0 -49
- package/test/code/ES6.src.js +0 -235
- package/test/code/ES6.test.ts +0 -42
- package/test/code/NewFeatures.test.ts +0 -19
- package/test/code/StrictMode.src.js +0 -65
- package/test/code/StrictMode.test.js +0 -37
- package/test/compare.test.ts +0 -104
- package/test/index.test.ts +0 -249
- package/test/options.test.ts +0 -132
- package/test/presets.test.ts +0 -22
- package/test/probability.test.ts +0 -44
- package/test/templates/template.test.ts +0 -14
- package/test/transforms/antiTooling.test.ts +0 -52
- package/test/transforms/calculator.test.ts +0 -78
- package/test/transforms/controlFlowFlattening/controlFlowFlattening.test.ts +0 -1274
- package/test/transforms/controlFlowFlattening/expressionObfuscation.test.ts +0 -192
- package/test/transforms/deadCode.test.ts +0 -85
- package/test/transforms/dispatcher.test.ts +0 -457
- package/test/transforms/es5/antiClass.test.ts +0 -427
- package/test/transforms/es5/antiDestructuring.test.ts +0 -157
- package/test/transforms/es5/antiES6Object.test.ts +0 -245
- package/test/transforms/es5/antiTemplate.test.ts +0 -116
- package/test/transforms/es5/es5.test.ts +0 -110
- package/test/transforms/extraction/classExtraction.test.ts +0 -86
- package/test/transforms/extraction/duplicateLiteralsRemoval.test.ts +0 -200
- package/test/transforms/extraction/objectExtraction.test.ts +0 -491
- package/test/transforms/flatten.test.ts +0 -721
- package/test/transforms/hexadecimalNumbers.test.ts +0 -62
- package/test/transforms/identifier/globalConcealing.test.ts +0 -72
- package/test/transforms/identifier/movedDeclarations.test.ts +0 -275
- package/test/transforms/identifier/renameVariables.test.ts +0 -621
- package/test/transforms/lock/antiDebug.test.ts +0 -66
- package/test/transforms/lock/browserLock.test.ts +0 -129
- package/test/transforms/lock/countermeasures.test.ts +0 -100
- package/test/transforms/lock/integrity.test.ts +0 -161
- package/test/transforms/lock/lock.test.ts +0 -204
- package/test/transforms/lock/osLock.test.ts +0 -312
- package/test/transforms/lock/selfDefending.test.ts +0 -68
- package/test/transforms/minify.test.ts +0 -575
- package/test/transforms/opaquePredicates.test.ts +0 -43
- package/test/transforms/preparation.test.ts +0 -157
- package/test/transforms/renameLabels.test.ts +0 -95
- package/test/transforms/rgf.test.ts +0 -378
- package/test/transforms/shuffle.test.ts +0 -135
- package/test/transforms/stack.test.ts +0 -573
- package/test/transforms/string/stringCompression.test.ts +0 -120
- package/test/transforms/string/stringConcealing.test.ts +0 -299
- package/test/transforms/string/stringEncoding.test.ts +0 -95
- package/test/transforms/string/stringSplitting.test.ts +0 -135
- package/test/transforms/transform.test.ts +0 -66
- package/test/traverse.test.ts +0 -139
- package/test/util/compare.test.ts +0 -34
- package/test/util/gen.test.ts +0 -121
- package/test/util/identifiers.test.ts +0 -253
- package/test/util/insert.test.ts +0 -142
- package/test/util/math.test.ts +0 -5
- package/test/util/random.test.ts +0 -71
- /package/dist/{types.js → obfuscationResult.js} +0 -0
package/test/code/Cash.src.js
DELETED
|
@@ -1,1011 +0,0 @@
|
|
|
1
|
-
/* MIT https://github.com/fabiospampinato/cash */
|
|
2
|
-
(function () {
|
|
3
|
-
"use strict";
|
|
4
|
-
var e = {
|
|
5
|
-
class: "className",
|
|
6
|
-
contenteditable: "contentEditable",
|
|
7
|
-
for: "htmlFor",
|
|
8
|
-
readonly: "readOnly",
|
|
9
|
-
maxlength: "maxLength",
|
|
10
|
-
tabindex: "tabIndex",
|
|
11
|
-
colspan: "colSpan",
|
|
12
|
-
rowspan: "rowSpan",
|
|
13
|
-
usemap: "useMap",
|
|
14
|
-
};
|
|
15
|
-
function aa(a, b) {
|
|
16
|
-
try {
|
|
17
|
-
return a(b);
|
|
18
|
-
} catch (c) {
|
|
19
|
-
return b;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
var k = document,
|
|
23
|
-
m = window,
|
|
24
|
-
ba = k.documentElement,
|
|
25
|
-
n = k.createElement.bind(k),
|
|
26
|
-
ca = n("div"),
|
|
27
|
-
p = n("table"),
|
|
28
|
-
da = n("tbody"),
|
|
29
|
-
ea = n("tr"),
|
|
30
|
-
q = Array.isArray,
|
|
31
|
-
r = Array.prototype,
|
|
32
|
-
fa = r.concat,
|
|
33
|
-
t = r.filter,
|
|
34
|
-
ha = r.indexOf,
|
|
35
|
-
ia = r.map,
|
|
36
|
-
ja = r.push,
|
|
37
|
-
ka = r.slice,
|
|
38
|
-
u = r.some,
|
|
39
|
-
la = r.splice,
|
|
40
|
-
ma = /^#(?:[\w-]|\\.|[^\x00-\xa0])*$/,
|
|
41
|
-
na = /^\.(?:[\w-]|\\.|[^\x00-\xa0])*$/,
|
|
42
|
-
oa = /<.+>/,
|
|
43
|
-
pa = /^\w+$/;
|
|
44
|
-
function v(a, b) {
|
|
45
|
-
return a && (w(b) || x(b))
|
|
46
|
-
? na.test(a)
|
|
47
|
-
? b.getElementsByClassName(a.slice(1))
|
|
48
|
-
: pa.test(a)
|
|
49
|
-
? b.getElementsByTagName(a)
|
|
50
|
-
: b.querySelectorAll(a)
|
|
51
|
-
: [];
|
|
52
|
-
}
|
|
53
|
-
var B = (function () {
|
|
54
|
-
function a(a, c) {
|
|
55
|
-
if (a) {
|
|
56
|
-
if (a instanceof B) return a;
|
|
57
|
-
var b = a;
|
|
58
|
-
if (C(a)) {
|
|
59
|
-
if (
|
|
60
|
-
((b = (c instanceof B ? c[0] : c) || k),
|
|
61
|
-
(b = ma.test(a)
|
|
62
|
-
? b.getElementById(a.slice(1))
|
|
63
|
-
: oa.test(a)
|
|
64
|
-
? qa(a)
|
|
65
|
-
: v(a, b)),
|
|
66
|
-
!b)
|
|
67
|
-
)
|
|
68
|
-
return;
|
|
69
|
-
} else if (D(a)) return this.ready(a);
|
|
70
|
-
if (b.nodeType || b === m) b = [b];
|
|
71
|
-
this.length = b.length;
|
|
72
|
-
a = 0;
|
|
73
|
-
for (c = this.length; a < c; a++) this[a] = b[a];
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
a.prototype.init = function (b, c) {
|
|
77
|
-
return new a(b, c);
|
|
78
|
-
};
|
|
79
|
-
return a;
|
|
80
|
-
})(),
|
|
81
|
-
E = B.prototype,
|
|
82
|
-
F = E.init;
|
|
83
|
-
F.fn = F.prototype = E;
|
|
84
|
-
E.length = 0;
|
|
85
|
-
E.splice = la;
|
|
86
|
-
"function" === typeof Symbol && (E[Symbol.iterator] = r[Symbol.iterator]);
|
|
87
|
-
E.map = function (a) {
|
|
88
|
-
return F(
|
|
89
|
-
fa.apply(
|
|
90
|
-
[],
|
|
91
|
-
ia.call(this, function (b, c) {
|
|
92
|
-
return a.call(b, c, b);
|
|
93
|
-
})
|
|
94
|
-
)
|
|
95
|
-
);
|
|
96
|
-
};
|
|
97
|
-
E.slice = function (a, b) {
|
|
98
|
-
return F(ka.call(this, a, b));
|
|
99
|
-
};
|
|
100
|
-
var ra = /-([a-z])/g;
|
|
101
|
-
function G(a) {
|
|
102
|
-
return a.replace(ra, function (a, c) {
|
|
103
|
-
return c.toUpperCase();
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
F.guid = 1;
|
|
107
|
-
function sa(a, b) {
|
|
108
|
-
var c = a && (a.matches || a.webkitMatchesSelector || a.msMatchesSelector);
|
|
109
|
-
return !!c && !!b && c.call(a, b);
|
|
110
|
-
}
|
|
111
|
-
function H(a) {
|
|
112
|
-
return !!a && a === a.window;
|
|
113
|
-
}
|
|
114
|
-
function w(a) {
|
|
115
|
-
return !!a && 9 === a.nodeType;
|
|
116
|
-
}
|
|
117
|
-
function x(a) {
|
|
118
|
-
return !!a && 1 === a.nodeType;
|
|
119
|
-
}
|
|
120
|
-
function D(a) {
|
|
121
|
-
return "function" === typeof a;
|
|
122
|
-
}
|
|
123
|
-
function C(a) {
|
|
124
|
-
return "string" === typeof a;
|
|
125
|
-
}
|
|
126
|
-
function ta(a) {
|
|
127
|
-
return !isNaN(parseFloat(a)) && isFinite(a);
|
|
128
|
-
}
|
|
129
|
-
function I(a) {
|
|
130
|
-
if ("object" !== typeof a || null === a) return !1;
|
|
131
|
-
a = Object.getPrototypeOf(a);
|
|
132
|
-
return null === a || a === Object.prototype;
|
|
133
|
-
}
|
|
134
|
-
F.isWindow = H;
|
|
135
|
-
F.isFunction = D;
|
|
136
|
-
F.isArray = q;
|
|
137
|
-
F.isNumeric = ta;
|
|
138
|
-
F.isPlainObject = I;
|
|
139
|
-
E.get = function (a) {
|
|
140
|
-
if (void 0 === a) return ka.call(this);
|
|
141
|
-
a = Number(a);
|
|
142
|
-
return this[0 > a ? a + this.length : a];
|
|
143
|
-
};
|
|
144
|
-
E.eq = function (a) {
|
|
145
|
-
return F(this.get(a));
|
|
146
|
-
};
|
|
147
|
-
E.first = function () {
|
|
148
|
-
return this.eq(0);
|
|
149
|
-
};
|
|
150
|
-
E.last = function () {
|
|
151
|
-
return this.eq(-1);
|
|
152
|
-
};
|
|
153
|
-
function J(a, b, c) {
|
|
154
|
-
if (c) for (c = a.length; c-- && !1 !== b.call(a[c], c, a[c]); );
|
|
155
|
-
else if (I(a)) {
|
|
156
|
-
var d = Object.keys(a);
|
|
157
|
-
c = 0;
|
|
158
|
-
for (var h = d.length; c < h; c++) {
|
|
159
|
-
var f = d[c];
|
|
160
|
-
if (!1 === b.call(a[f], f, a[f])) break;
|
|
161
|
-
}
|
|
162
|
-
} else
|
|
163
|
-
for (c = 0, h = a.length; c < h && !1 !== b.call(a[c], c, a[c]); c++);
|
|
164
|
-
return a;
|
|
165
|
-
}
|
|
166
|
-
F.each = J;
|
|
167
|
-
E.each = function (a) {
|
|
168
|
-
return J(this, a);
|
|
169
|
-
};
|
|
170
|
-
E.prop = function (a, b) {
|
|
171
|
-
if (a) {
|
|
172
|
-
if (C(a))
|
|
173
|
-
return (
|
|
174
|
-
(a = e[a] || a),
|
|
175
|
-
2 > arguments.length
|
|
176
|
-
? this[0] && this[0][a]
|
|
177
|
-
: this.each(function (c, h) {
|
|
178
|
-
h[a] = b;
|
|
179
|
-
})
|
|
180
|
-
);
|
|
181
|
-
for (var c in a) this.prop(c, a[c]);
|
|
182
|
-
return this;
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
E.removeProp = function (a) {
|
|
186
|
-
return this.each(function (b, c) {
|
|
187
|
-
delete c[e[a] || a];
|
|
188
|
-
});
|
|
189
|
-
};
|
|
190
|
-
function K() {
|
|
191
|
-
for (var a = [], b = 0; b < arguments.length; b++) a[b] = arguments[b];
|
|
192
|
-
b = "boolean" === typeof a[0] ? a.shift() : !1;
|
|
193
|
-
var c = a.shift(),
|
|
194
|
-
d = a.length;
|
|
195
|
-
if (!c) return {};
|
|
196
|
-
if (!d) return K(b, F, c);
|
|
197
|
-
for (var h = 0; h < d; h++) {
|
|
198
|
-
var f = a[h],
|
|
199
|
-
g;
|
|
200
|
-
for (g in f)
|
|
201
|
-
b && (q(f[g]) || I(f[g]))
|
|
202
|
-
? ((c[g] && c[g].constructor === f[g].constructor) ||
|
|
203
|
-
(c[g] = new f[g].constructor()),
|
|
204
|
-
K(b, c[g], f[g]))
|
|
205
|
-
: (c[g] = f[g]);
|
|
206
|
-
}
|
|
207
|
-
return c;
|
|
208
|
-
}
|
|
209
|
-
F.extend = K;
|
|
210
|
-
E.extend = function (a) {
|
|
211
|
-
return K(E, a);
|
|
212
|
-
};
|
|
213
|
-
function L(a) {
|
|
214
|
-
return C(a)
|
|
215
|
-
? function (b, c) {
|
|
216
|
-
return sa(c, a);
|
|
217
|
-
}
|
|
218
|
-
: D(a)
|
|
219
|
-
? a
|
|
220
|
-
: a instanceof B
|
|
221
|
-
? function (b, c) {
|
|
222
|
-
return a.is(c);
|
|
223
|
-
}
|
|
224
|
-
: a
|
|
225
|
-
? function (b, c) {
|
|
226
|
-
return c === a;
|
|
227
|
-
}
|
|
228
|
-
: function () {
|
|
229
|
-
return !1;
|
|
230
|
-
};
|
|
231
|
-
}
|
|
232
|
-
E.filter = function (a) {
|
|
233
|
-
var b = L(a);
|
|
234
|
-
return F(
|
|
235
|
-
t.call(this, function (a, d) {
|
|
236
|
-
return b.call(a, d, a);
|
|
237
|
-
})
|
|
238
|
-
);
|
|
239
|
-
};
|
|
240
|
-
function M(a, b) {
|
|
241
|
-
return b ? a.filter(b) : a;
|
|
242
|
-
}
|
|
243
|
-
var ua = /\S+/g;
|
|
244
|
-
function N(a) {
|
|
245
|
-
return C(a) ? a.match(ua) || [] : [];
|
|
246
|
-
}
|
|
247
|
-
E.hasClass = function (a) {
|
|
248
|
-
return (
|
|
249
|
-
!!a &&
|
|
250
|
-
u.call(this, function (b) {
|
|
251
|
-
return x(b) && b.classList.contains(a);
|
|
252
|
-
})
|
|
253
|
-
);
|
|
254
|
-
};
|
|
255
|
-
E.removeAttr = function (a) {
|
|
256
|
-
var b = N(a);
|
|
257
|
-
return this.each(function (a, d) {
|
|
258
|
-
x(d) &&
|
|
259
|
-
J(b, function (a, b) {
|
|
260
|
-
d.removeAttribute(b);
|
|
261
|
-
});
|
|
262
|
-
});
|
|
263
|
-
};
|
|
264
|
-
E.attr = function (a, b) {
|
|
265
|
-
if (a) {
|
|
266
|
-
if (C(a)) {
|
|
267
|
-
if (2 > arguments.length) {
|
|
268
|
-
if (!this[0] || !x(this[0])) return;
|
|
269
|
-
var c = this[0].getAttribute(a);
|
|
270
|
-
return null === c ? void 0 : c;
|
|
271
|
-
}
|
|
272
|
-
return void 0 === b
|
|
273
|
-
? this
|
|
274
|
-
: null === b
|
|
275
|
-
? this.removeAttr(a)
|
|
276
|
-
: this.each(function (c, h) {
|
|
277
|
-
x(h) && h.setAttribute(a, b);
|
|
278
|
-
});
|
|
279
|
-
}
|
|
280
|
-
for (c in a) this.attr(c, a[c]);
|
|
281
|
-
return this;
|
|
282
|
-
}
|
|
283
|
-
};
|
|
284
|
-
E.toggleClass = function (a, b) {
|
|
285
|
-
var c = N(a),
|
|
286
|
-
d = void 0 !== b;
|
|
287
|
-
return this.each(function (a, f) {
|
|
288
|
-
x(f) &&
|
|
289
|
-
J(c, function (a, c) {
|
|
290
|
-
d
|
|
291
|
-
? b
|
|
292
|
-
? f.classList.add(c)
|
|
293
|
-
: f.classList.remove(c)
|
|
294
|
-
: f.classList.toggle(c);
|
|
295
|
-
});
|
|
296
|
-
});
|
|
297
|
-
};
|
|
298
|
-
E.addClass = function (a) {
|
|
299
|
-
return this.toggleClass(a, !0);
|
|
300
|
-
};
|
|
301
|
-
E.removeClass = function (a) {
|
|
302
|
-
return arguments.length ? this.toggleClass(a, !1) : this.attr("class", "");
|
|
303
|
-
};
|
|
304
|
-
function O(a, b, c, d) {
|
|
305
|
-
for (var h = [], f = D(b), g = d && L(d), y = 0, z = a.length; y < z; y++)
|
|
306
|
-
if (f) {
|
|
307
|
-
var l = b(a[y]);
|
|
308
|
-
l.length && ja.apply(h, l);
|
|
309
|
-
} else
|
|
310
|
-
for (l = a[y][b]; !(null == l || (d && g(-1, l))); )
|
|
311
|
-
h.push(l), (l = c ? l[b] : null);
|
|
312
|
-
return h;
|
|
313
|
-
}
|
|
314
|
-
function P(a) {
|
|
315
|
-
return 1 < a.length
|
|
316
|
-
? t.call(a, function (a, c, d) {
|
|
317
|
-
return ha.call(d, a) === c;
|
|
318
|
-
})
|
|
319
|
-
: a;
|
|
320
|
-
}
|
|
321
|
-
F.unique = P;
|
|
322
|
-
E.add = function (a, b) {
|
|
323
|
-
return F(P(this.get().concat(F(a, b).get())));
|
|
324
|
-
};
|
|
325
|
-
function Q(a, b, c) {
|
|
326
|
-
if (x(a)) {
|
|
327
|
-
var d = m.getComputedStyle(a, null);
|
|
328
|
-
return c ? d.getPropertyValue(b) || void 0 : d[b] || a.style[b];
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
function R(a, b) {
|
|
332
|
-
return parseInt(Q(a, b), 10) || 0;
|
|
333
|
-
}
|
|
334
|
-
var S = /^--/,
|
|
335
|
-
T = {},
|
|
336
|
-
va = ca.style,
|
|
337
|
-
wa = ["webkit", "moz", "ms"];
|
|
338
|
-
function xa(a, b) {
|
|
339
|
-
void 0 === b && (b = S.test(a));
|
|
340
|
-
if (b) return a;
|
|
341
|
-
if (!T[a]) {
|
|
342
|
-
b = G(a);
|
|
343
|
-
var c = "" + b[0].toUpperCase() + b.slice(1);
|
|
344
|
-
b = (b + " " + wa.join(c + " ") + c).split(" ");
|
|
345
|
-
J(b, function (b, c) {
|
|
346
|
-
if (c in va) return (T[a] = c), !1;
|
|
347
|
-
});
|
|
348
|
-
}
|
|
349
|
-
return T[a];
|
|
350
|
-
}
|
|
351
|
-
var ya = {
|
|
352
|
-
animationIterationCount: !0,
|
|
353
|
-
columnCount: !0,
|
|
354
|
-
flexGrow: !0,
|
|
355
|
-
flexShrink: !0,
|
|
356
|
-
fontWeight: !0,
|
|
357
|
-
gridArea: !0,
|
|
358
|
-
gridColumn: !0,
|
|
359
|
-
gridColumnEnd: !0,
|
|
360
|
-
gridColumnStart: !0,
|
|
361
|
-
gridRow: !0,
|
|
362
|
-
gridRowEnd: !0,
|
|
363
|
-
gridRowStart: !0,
|
|
364
|
-
lineHeight: !0,
|
|
365
|
-
opacity: !0,
|
|
366
|
-
order: !0,
|
|
367
|
-
orphans: !0,
|
|
368
|
-
widows: !0,
|
|
369
|
-
zIndex: !0,
|
|
370
|
-
};
|
|
371
|
-
function za(a, b, c) {
|
|
372
|
-
void 0 === c && (c = S.test(a));
|
|
373
|
-
return c || ya[a] || !ta(b) ? b : b + "px";
|
|
374
|
-
}
|
|
375
|
-
E.css = function (a, b) {
|
|
376
|
-
if (C(a)) {
|
|
377
|
-
var c = S.test(a);
|
|
378
|
-
a = xa(a, c);
|
|
379
|
-
if (2 > arguments.length) return this[0] && Q(this[0], a, c);
|
|
380
|
-
if (!a) return this;
|
|
381
|
-
b = za(a, b, c);
|
|
382
|
-
return this.each(function (d, f) {
|
|
383
|
-
x(f) && (c ? f.style.setProperty(a, b) : (f.style[a] = b));
|
|
384
|
-
});
|
|
385
|
-
}
|
|
386
|
-
for (var d in a) this.css(d, a[d]);
|
|
387
|
-
return this;
|
|
388
|
-
};
|
|
389
|
-
var Aa = /^\s+|\s+$/;
|
|
390
|
-
function Ba(a, b) {
|
|
391
|
-
a = a.dataset[b] || a.dataset[G(b)];
|
|
392
|
-
return Aa.test(a) ? a : aa(JSON.parse, a);
|
|
393
|
-
}
|
|
394
|
-
E.data = function (a, b) {
|
|
395
|
-
if (!a) {
|
|
396
|
-
if (!this[0]) return;
|
|
397
|
-
var c = {},
|
|
398
|
-
d;
|
|
399
|
-
for (d in this[0].dataset) c[d] = Ba(this[0], d);
|
|
400
|
-
return c;
|
|
401
|
-
}
|
|
402
|
-
if (C(a))
|
|
403
|
-
return 2 > arguments.length
|
|
404
|
-
? this[0] && Ba(this[0], a)
|
|
405
|
-
: void 0 === b
|
|
406
|
-
? this
|
|
407
|
-
: this.each(function (c, d) {
|
|
408
|
-
c = b;
|
|
409
|
-
c = aa(JSON.stringify, c);
|
|
410
|
-
d.dataset[G(a)] = c;
|
|
411
|
-
});
|
|
412
|
-
for (d in a) this.data(d, a[d]);
|
|
413
|
-
return this;
|
|
414
|
-
};
|
|
415
|
-
function Ca(a, b) {
|
|
416
|
-
var c = a.documentElement;
|
|
417
|
-
return Math.max(
|
|
418
|
-
a.body["scroll" + b],
|
|
419
|
-
c["scroll" + b],
|
|
420
|
-
a.body["offset" + b],
|
|
421
|
-
c["offset" + b],
|
|
422
|
-
c["client" + b]
|
|
423
|
-
);
|
|
424
|
-
}
|
|
425
|
-
function Da(a, b) {
|
|
426
|
-
return (
|
|
427
|
-
R(a, "border" + (b ? "Left" : "Top") + "Width") +
|
|
428
|
-
R(a, "padding" + (b ? "Left" : "Top")) +
|
|
429
|
-
R(a, "padding" + (b ? "Right" : "Bottom")) +
|
|
430
|
-
R(a, "border" + (b ? "Right" : "Bottom") + "Width")
|
|
431
|
-
);
|
|
432
|
-
}
|
|
433
|
-
J([!0, !1], function (a, b) {
|
|
434
|
-
J(["Width", "Height"], function (a, d) {
|
|
435
|
-
E[(b ? "outer" : "inner") + d] = function (c) {
|
|
436
|
-
if (this[0])
|
|
437
|
-
return H(this[0])
|
|
438
|
-
? b
|
|
439
|
-
? this[0]["inner" + d]
|
|
440
|
-
: this[0].document.documentElement["client" + d]
|
|
441
|
-
: w(this[0])
|
|
442
|
-
? Ca(this[0], d)
|
|
443
|
-
: this[0][(b ? "offset" : "client") + d] +
|
|
444
|
-
(c && b
|
|
445
|
-
? R(this[0], "margin" + (a ? "Top" : "Left")) +
|
|
446
|
-
R(this[0], "margin" + (a ? "Bottom" : "Right"))
|
|
447
|
-
: 0);
|
|
448
|
-
};
|
|
449
|
-
});
|
|
450
|
-
});
|
|
451
|
-
J(["Width", "Height"], function (a, b) {
|
|
452
|
-
var c = b.toLowerCase();
|
|
453
|
-
E[c] = function (d) {
|
|
454
|
-
if (!this[0]) return void 0 === d ? void 0 : this;
|
|
455
|
-
if (!arguments.length)
|
|
456
|
-
return H(this[0])
|
|
457
|
-
? this[0].document.documentElement["client" + b]
|
|
458
|
-
: w(this[0])
|
|
459
|
-
? Ca(this[0], b)
|
|
460
|
-
: this[0].getBoundingClientRect()[c] - Da(this[0], !a);
|
|
461
|
-
var h = parseInt(d, 10);
|
|
462
|
-
return this.each(function (b, d) {
|
|
463
|
-
x(d) &&
|
|
464
|
-
((b = Q(d, "boxSizing")),
|
|
465
|
-
(d.style[c] = za(c, h + ("border-box" === b ? Da(d, !a) : 0))));
|
|
466
|
-
});
|
|
467
|
-
};
|
|
468
|
-
});
|
|
469
|
-
var U = {};
|
|
470
|
-
E.toggle = function (a) {
|
|
471
|
-
return this.each(function (b, c) {
|
|
472
|
-
if (x(c))
|
|
473
|
-
if (void 0 === a ? "none" === Q(c, "display") : a) {
|
|
474
|
-
if (((c.style.display = c.___cd || ""), "none" === Q(c, "display"))) {
|
|
475
|
-
b = c.style;
|
|
476
|
-
c = c.tagName;
|
|
477
|
-
if (U[c]) c = U[c];
|
|
478
|
-
else {
|
|
479
|
-
var d = n(c);
|
|
480
|
-
k.body.insertBefore(d, null);
|
|
481
|
-
var h = Q(d, "display");
|
|
482
|
-
k.body.removeChild(d);
|
|
483
|
-
c = U[c] = "none" !== h ? h : "block";
|
|
484
|
-
}
|
|
485
|
-
b.display = c;
|
|
486
|
-
}
|
|
487
|
-
} else (c.___cd = Q(c, "display")), (c.style.display = "none");
|
|
488
|
-
});
|
|
489
|
-
};
|
|
490
|
-
E.hide = function () {
|
|
491
|
-
return this.toggle(!1);
|
|
492
|
-
};
|
|
493
|
-
E.show = function () {
|
|
494
|
-
return this.toggle(!0);
|
|
495
|
-
};
|
|
496
|
-
function Ea(a, b) {
|
|
497
|
-
return (
|
|
498
|
-
!b ||
|
|
499
|
-
!u.call(b, function (b) {
|
|
500
|
-
return 0 > a.indexOf(b);
|
|
501
|
-
})
|
|
502
|
-
);
|
|
503
|
-
}
|
|
504
|
-
var V = { focus: "focusin", blur: "focusout" },
|
|
505
|
-
W = { mouseenter: "mouseover", mouseleave: "mouseout" },
|
|
506
|
-
Fa = /^(mouse|pointer|contextmenu|drag|drop|click|dblclick)/i;
|
|
507
|
-
function Ga(a, b, c, d, h) {
|
|
508
|
-
var f = (a.___ce = a.___ce || {});
|
|
509
|
-
f[b] = f[b] || [];
|
|
510
|
-
f[b].push([c, d, h]);
|
|
511
|
-
a.addEventListener(b, h);
|
|
512
|
-
}
|
|
513
|
-
function X(a) {
|
|
514
|
-
a = a.split(".");
|
|
515
|
-
return [a[0], a.slice(1).sort()];
|
|
516
|
-
}
|
|
517
|
-
function Y(a, b, c, d, h) {
|
|
518
|
-
var f = (a.___ce = a.___ce || {});
|
|
519
|
-
if (b)
|
|
520
|
-
f[b] &&
|
|
521
|
-
(f[b] = f[b].filter(function (f) {
|
|
522
|
-
var g = f[0],
|
|
523
|
-
z = f[1];
|
|
524
|
-
f = f[2];
|
|
525
|
-
if ((h && f.guid !== h.guid) || !Ea(g, c) || (d && d !== z))
|
|
526
|
-
return !0;
|
|
527
|
-
a.removeEventListener(b, f);
|
|
528
|
-
}));
|
|
529
|
-
else for (b in f) Y(a, b, c, d, h);
|
|
530
|
-
}
|
|
531
|
-
E.off = function (a, b, c) {
|
|
532
|
-
var d = this;
|
|
533
|
-
if (void 0 === a)
|
|
534
|
-
this.each(function (a, b) {
|
|
535
|
-
(x(b) || w(b) || H(b)) && Y(b);
|
|
536
|
-
});
|
|
537
|
-
else if (C(a))
|
|
538
|
-
D(b) && ((c = b), (b = "")),
|
|
539
|
-
J(N(a), function (a, h) {
|
|
540
|
-
a = X(h);
|
|
541
|
-
h = a[0];
|
|
542
|
-
var f = a[1],
|
|
543
|
-
g = W[h] || V[h] || h;
|
|
544
|
-
d.each(function (a, d) {
|
|
545
|
-
(x(d) || w(d) || H(d)) && Y(d, g, f, b, c);
|
|
546
|
-
});
|
|
547
|
-
});
|
|
548
|
-
else for (var h in a) this.off(h, a[h]);
|
|
549
|
-
return this;
|
|
550
|
-
};
|
|
551
|
-
E.on = function (a, b, c, d, h) {
|
|
552
|
-
var f = this;
|
|
553
|
-
if (!C(a)) {
|
|
554
|
-
for (var g in a) this.on(g, b, c, a[g], h);
|
|
555
|
-
return this;
|
|
556
|
-
}
|
|
557
|
-
C(b) ||
|
|
558
|
-
(void 0 !== b && null !== b && (void 0 !== c && (d = c), (c = b)),
|
|
559
|
-
(b = ""));
|
|
560
|
-
D(d) || ((d = c), (c = void 0));
|
|
561
|
-
if (!d) return this;
|
|
562
|
-
J(N(a), function (a, g) {
|
|
563
|
-
a = X(g);
|
|
564
|
-
g = a[0];
|
|
565
|
-
var l = a[1],
|
|
566
|
-
z = W[g] || V[g] || g,
|
|
567
|
-
y = g in W,
|
|
568
|
-
Ka = g in V;
|
|
569
|
-
z &&
|
|
570
|
-
f.each(function (a, f) {
|
|
571
|
-
if (x(f) || w(f) || H(f))
|
|
572
|
-
(a = function La(a) {
|
|
573
|
-
if (a.target["___i" + a.type])
|
|
574
|
-
return a.stopImmediatePropagation();
|
|
575
|
-
if (!a.namespace || Ea(l, a.namespace.split(".")))
|
|
576
|
-
if (
|
|
577
|
-
b ||
|
|
578
|
-
!(
|
|
579
|
-
(Ka && (a.target !== f || a.___ot === z)) ||
|
|
580
|
-
(y && a.relatedTarget && f.contains(a.relatedTarget))
|
|
581
|
-
)
|
|
582
|
-
) {
|
|
583
|
-
var g = f;
|
|
584
|
-
if (b) {
|
|
585
|
-
for (var A = a.target; !sa(A, b); ) {
|
|
586
|
-
if (A === f) return;
|
|
587
|
-
A = A.parentNode;
|
|
588
|
-
if (!A) return;
|
|
589
|
-
}
|
|
590
|
-
g = A;
|
|
591
|
-
a.___cd = !0;
|
|
592
|
-
}
|
|
593
|
-
a.___cd &&
|
|
594
|
-
Object.defineProperty(a, "currentTarget", {
|
|
595
|
-
configurable: !0,
|
|
596
|
-
get: function () {
|
|
597
|
-
return g;
|
|
598
|
-
},
|
|
599
|
-
});
|
|
600
|
-
Object.defineProperty(a, "data", {
|
|
601
|
-
configurable: !0,
|
|
602
|
-
get: function () {
|
|
603
|
-
return c;
|
|
604
|
-
},
|
|
605
|
-
});
|
|
606
|
-
A = d.call(g, a, a.___td);
|
|
607
|
-
h && Y(f, z, l, b, La);
|
|
608
|
-
!1 === A && (a.preventDefault(), a.stopPropagation());
|
|
609
|
-
}
|
|
610
|
-
}),
|
|
611
|
-
(a.guid = d.guid = d.guid || F.guid++),
|
|
612
|
-
Ga(f, z, l, b, a);
|
|
613
|
-
});
|
|
614
|
-
});
|
|
615
|
-
return this;
|
|
616
|
-
};
|
|
617
|
-
E.one = function (a, b, c, d) {
|
|
618
|
-
return this.on(a, b, c, d, !0);
|
|
619
|
-
};
|
|
620
|
-
E.ready = function (a) {
|
|
621
|
-
function b() {
|
|
622
|
-
return setTimeout(a, 0, F);
|
|
623
|
-
}
|
|
624
|
-
"loading" !== k.readyState
|
|
625
|
-
? b()
|
|
626
|
-
: k.addEventListener("DOMContentLoaded", b);
|
|
627
|
-
return this;
|
|
628
|
-
};
|
|
629
|
-
E.trigger = function (a, b) {
|
|
630
|
-
if (C(a)) {
|
|
631
|
-
var c = X(a),
|
|
632
|
-
d = c[0];
|
|
633
|
-
c = c[1];
|
|
634
|
-
var h = W[d] || V[d] || d;
|
|
635
|
-
if (!h) return this;
|
|
636
|
-
var f = Fa.test(h) ? "MouseEvents" : "HTMLEvents";
|
|
637
|
-
a = k.createEvent(f);
|
|
638
|
-
a.initEvent(h, !0, !0);
|
|
639
|
-
a.namespace = c.join(".");
|
|
640
|
-
a.___ot = d;
|
|
641
|
-
}
|
|
642
|
-
a.___td = b;
|
|
643
|
-
var g = a.___ot in V;
|
|
644
|
-
return this.each(function (b, c) {
|
|
645
|
-
g &&
|
|
646
|
-
D(c[a.___ot]) &&
|
|
647
|
-
((c["___i" + a.type] = !0), c[a.___ot](), (c["___i" + a.type] = !1));
|
|
648
|
-
c.dispatchEvent(a);
|
|
649
|
-
});
|
|
650
|
-
};
|
|
651
|
-
function Ha(a) {
|
|
652
|
-
return a.multiple && a.options
|
|
653
|
-
? O(
|
|
654
|
-
t.call(a.options, function (a) {
|
|
655
|
-
return a.selected && !a.disabled && !a.parentNode.disabled;
|
|
656
|
-
}),
|
|
657
|
-
"value"
|
|
658
|
-
)
|
|
659
|
-
: a.value || "";
|
|
660
|
-
}
|
|
661
|
-
var Ia = /%20/g,
|
|
662
|
-
Ja = /\r?\n/g,
|
|
663
|
-
Ma = /file|reset|submit|button|image/i,
|
|
664
|
-
Na = /radio|checkbox/i;
|
|
665
|
-
E.serialize = function () {
|
|
666
|
-
var a = "";
|
|
667
|
-
this.each(function (b, c) {
|
|
668
|
-
J(c.elements || [c], function (b, c) {
|
|
669
|
-
c.disabled ||
|
|
670
|
-
!c.name ||
|
|
671
|
-
"FIELDSET" === c.tagName ||
|
|
672
|
-
Ma.test(c.type) ||
|
|
673
|
-
(Na.test(c.type) && !c.checked) ||
|
|
674
|
-
((b = Ha(c)),
|
|
675
|
-
void 0 !== b &&
|
|
676
|
-
((b = q(b) ? b : [b]),
|
|
677
|
-
J(b, function (b, d) {
|
|
678
|
-
b = a;
|
|
679
|
-
d =
|
|
680
|
-
"&" +
|
|
681
|
-
encodeURIComponent(c.name) +
|
|
682
|
-
"=" +
|
|
683
|
-
encodeURIComponent(d.replace(Ja, "\r\n")).replace(Ia, "+");
|
|
684
|
-
a = b + d;
|
|
685
|
-
})));
|
|
686
|
-
});
|
|
687
|
-
});
|
|
688
|
-
return a.slice(1);
|
|
689
|
-
};
|
|
690
|
-
E.val = function (a) {
|
|
691
|
-
return arguments.length
|
|
692
|
-
? this.each(function (b, c) {
|
|
693
|
-
if ((b = c.multiple && c.options) || Na.test(c.type)) {
|
|
694
|
-
var d = q(a) ? ia.call(a, String) : null === a ? [] : [String(a)];
|
|
695
|
-
b
|
|
696
|
-
? J(
|
|
697
|
-
c.options,
|
|
698
|
-
function (a, b) {
|
|
699
|
-
b.selected = 0 <= d.indexOf(b.value);
|
|
700
|
-
},
|
|
701
|
-
!0
|
|
702
|
-
)
|
|
703
|
-
: (c.checked = 0 <= d.indexOf(c.value));
|
|
704
|
-
} else c.value = void 0 === a || null === a ? "" : a;
|
|
705
|
-
})
|
|
706
|
-
: this[0] && Ha(this[0]);
|
|
707
|
-
};
|
|
708
|
-
E.clone = function () {
|
|
709
|
-
return this.map(function (a, b) {
|
|
710
|
-
return b.cloneNode(!0);
|
|
711
|
-
});
|
|
712
|
-
};
|
|
713
|
-
E.detach = function (a) {
|
|
714
|
-
M(this, a).each(function (a, c) {
|
|
715
|
-
c.parentNode && c.parentNode.removeChild(c);
|
|
716
|
-
});
|
|
717
|
-
return this;
|
|
718
|
-
};
|
|
719
|
-
var Oa = /^\s*<(\w+)[^>]*>/,
|
|
720
|
-
Pa = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
|
|
721
|
-
Qa = { "*": ca, tr: da, td: ea, th: ea, thead: p, tbody: p, tfoot: p };
|
|
722
|
-
function qa(a) {
|
|
723
|
-
if (!C(a)) return [];
|
|
724
|
-
if (Pa.test(a)) return [n(RegExp.$1)];
|
|
725
|
-
var b = Oa.test(a) && RegExp.$1;
|
|
726
|
-
b = Qa[b] || Qa["*"];
|
|
727
|
-
b.innerHTML = a;
|
|
728
|
-
return F(b.childNodes).detach().get();
|
|
729
|
-
}
|
|
730
|
-
F.parseHTML = qa;
|
|
731
|
-
E.empty = function () {
|
|
732
|
-
return this.each(function (a, b) {
|
|
733
|
-
for (; b.firstChild; ) b.removeChild(b.firstChild);
|
|
734
|
-
});
|
|
735
|
-
};
|
|
736
|
-
E.html = function (a) {
|
|
737
|
-
return arguments.length
|
|
738
|
-
? void 0 === a
|
|
739
|
-
? this
|
|
740
|
-
: this.each(function (b, c) {
|
|
741
|
-
x(c) && (c.innerHTML = a);
|
|
742
|
-
})
|
|
743
|
-
: this[0] && this[0].innerHTML;
|
|
744
|
-
};
|
|
745
|
-
E.remove = function (a) {
|
|
746
|
-
M(this, a).detach().off();
|
|
747
|
-
return this;
|
|
748
|
-
};
|
|
749
|
-
E.text = function (a) {
|
|
750
|
-
return void 0 === a
|
|
751
|
-
? this[0]
|
|
752
|
-
? this[0].textContent
|
|
753
|
-
: ""
|
|
754
|
-
: this.each(function (b, c) {
|
|
755
|
-
x(c) && (c.textContent = a);
|
|
756
|
-
});
|
|
757
|
-
};
|
|
758
|
-
E.unwrap = function () {
|
|
759
|
-
this.parent().each(function (a, b) {
|
|
760
|
-
"BODY" !== b.tagName && ((a = F(b)), a.replaceWith(a.children()));
|
|
761
|
-
});
|
|
762
|
-
return this;
|
|
763
|
-
};
|
|
764
|
-
E.offset = function () {
|
|
765
|
-
var a = this[0];
|
|
766
|
-
if (a)
|
|
767
|
-
return (
|
|
768
|
-
(a = a.getBoundingClientRect()),
|
|
769
|
-
{ top: a.top + m.pageYOffset, left: a.left + m.pageXOffset }
|
|
770
|
-
);
|
|
771
|
-
};
|
|
772
|
-
E.offsetParent = function () {
|
|
773
|
-
return this.map(function (a, b) {
|
|
774
|
-
for (a = b.offsetParent; a && "static" === Q(a, "position"); )
|
|
775
|
-
a = a.offsetParent;
|
|
776
|
-
return a || ba;
|
|
777
|
-
});
|
|
778
|
-
};
|
|
779
|
-
E.position = function () {
|
|
780
|
-
var a = this[0];
|
|
781
|
-
if (a) {
|
|
782
|
-
var b = "fixed" === Q(a, "position"),
|
|
783
|
-
c = b ? a.getBoundingClientRect() : this.offset();
|
|
784
|
-
if (!b) {
|
|
785
|
-
var d = a.ownerDocument;
|
|
786
|
-
for (
|
|
787
|
-
b = a.offsetParent || d.documentElement;
|
|
788
|
-
(b === d.body || b === d.documentElement) &&
|
|
789
|
-
"static" === Q(b, "position");
|
|
790
|
-
|
|
791
|
-
)
|
|
792
|
-
b = b.parentNode;
|
|
793
|
-
b !== a &&
|
|
794
|
-
x(b) &&
|
|
795
|
-
((d = F(b).offset()),
|
|
796
|
-
(c.top -= d.top + R(b, "borderTopWidth")),
|
|
797
|
-
(c.left -= d.left + R(b, "borderLeftWidth")));
|
|
798
|
-
}
|
|
799
|
-
return {
|
|
800
|
-
top: c.top - R(a, "marginTop"),
|
|
801
|
-
left: c.left - R(a, "marginLeft"),
|
|
802
|
-
};
|
|
803
|
-
}
|
|
804
|
-
};
|
|
805
|
-
E.children = function (a) {
|
|
806
|
-
return M(
|
|
807
|
-
F(
|
|
808
|
-
P(
|
|
809
|
-
O(this, function (a) {
|
|
810
|
-
return a.children;
|
|
811
|
-
})
|
|
812
|
-
)
|
|
813
|
-
),
|
|
814
|
-
a
|
|
815
|
-
);
|
|
816
|
-
};
|
|
817
|
-
E.contents = function () {
|
|
818
|
-
return F(
|
|
819
|
-
P(
|
|
820
|
-
O(this, function (a) {
|
|
821
|
-
return "IFRAME" === a.tagName
|
|
822
|
-
? [a.contentDocument]
|
|
823
|
-
: "TEMPLATE" === a.tagName
|
|
824
|
-
? a.content.childNodes
|
|
825
|
-
: a.childNodes;
|
|
826
|
-
})
|
|
827
|
-
)
|
|
828
|
-
);
|
|
829
|
-
};
|
|
830
|
-
E.find = function (a) {
|
|
831
|
-
return F(
|
|
832
|
-
P(
|
|
833
|
-
O(this, function (b) {
|
|
834
|
-
return v(a, b);
|
|
835
|
-
})
|
|
836
|
-
)
|
|
837
|
-
);
|
|
838
|
-
};
|
|
839
|
-
var Ra = /^\s*<!(?:\[CDATA\[|--)|(?:\]\]|--)>\s*$/g,
|
|
840
|
-
Sa = /^$|^module$|\/(java|ecma)script/i,
|
|
841
|
-
Ta = ["type", "src", "nonce", "noModule"];
|
|
842
|
-
function Ua(a, b) {
|
|
843
|
-
a = F(a);
|
|
844
|
-
a.filter("script")
|
|
845
|
-
.add(a.find("script"))
|
|
846
|
-
.each(function (a, d) {
|
|
847
|
-
if (Sa.test(d.type) && ba.contains(d)) {
|
|
848
|
-
var c = n("script");
|
|
849
|
-
c.text = d.textContent.replace(Ra, "");
|
|
850
|
-
J(Ta, function (a, b) {
|
|
851
|
-
d[b] && (c[b] = d[b]);
|
|
852
|
-
});
|
|
853
|
-
b.head.insertBefore(c, null);
|
|
854
|
-
b.head.removeChild(c);
|
|
855
|
-
}
|
|
856
|
-
});
|
|
857
|
-
}
|
|
858
|
-
function Z(a, b, c, d, h, f, g, y) {
|
|
859
|
-
J(
|
|
860
|
-
a,
|
|
861
|
-
function (a, f) {
|
|
862
|
-
J(
|
|
863
|
-
F(f),
|
|
864
|
-
function (a, f) {
|
|
865
|
-
J(
|
|
866
|
-
F(b),
|
|
867
|
-
function (b, g) {
|
|
868
|
-
var l = c ? g : f;
|
|
869
|
-
b = c ? a : b;
|
|
870
|
-
g = c ? f : g;
|
|
871
|
-
l = b ? l.cloneNode(!0) : l;
|
|
872
|
-
b = !b;
|
|
873
|
-
h
|
|
874
|
-
? g.insertBefore(l, d ? g.firstChild : null)
|
|
875
|
-
: g.parentNode.insertBefore(l, d ? g : g.nextSibling);
|
|
876
|
-
b && Ua(l, g.ownerDocument);
|
|
877
|
-
},
|
|
878
|
-
y
|
|
879
|
-
);
|
|
880
|
-
},
|
|
881
|
-
g
|
|
882
|
-
);
|
|
883
|
-
},
|
|
884
|
-
f
|
|
885
|
-
);
|
|
886
|
-
return b;
|
|
887
|
-
}
|
|
888
|
-
E.after = function () {
|
|
889
|
-
return Z(arguments, this, !1, !1, !1, !0, !0);
|
|
890
|
-
};
|
|
891
|
-
E.append = function () {
|
|
892
|
-
return Z(arguments, this, !1, !1, !0);
|
|
893
|
-
};
|
|
894
|
-
E.appendTo = function (a) {
|
|
895
|
-
return Z(arguments, this, !0, !1, !0);
|
|
896
|
-
};
|
|
897
|
-
E.before = function () {
|
|
898
|
-
return Z(arguments, this, !1, !0);
|
|
899
|
-
};
|
|
900
|
-
E.insertAfter = function (a) {
|
|
901
|
-
return Z(arguments, this, !0, !1, !1, !1, !1, !0);
|
|
902
|
-
};
|
|
903
|
-
E.insertBefore = function (a) {
|
|
904
|
-
return Z(arguments, this, !0, !0);
|
|
905
|
-
};
|
|
906
|
-
E.prepend = function () {
|
|
907
|
-
return Z(arguments, this, !1, !0, !0, !0, !0);
|
|
908
|
-
};
|
|
909
|
-
E.prependTo = function (a) {
|
|
910
|
-
return Z(arguments, this, !0, !0, !0, !1, !1, !0);
|
|
911
|
-
};
|
|
912
|
-
E.replaceWith = function (a) {
|
|
913
|
-
return this.before(a).remove();
|
|
914
|
-
};
|
|
915
|
-
E.replaceAll = function (a) {
|
|
916
|
-
F(a).replaceWith(this);
|
|
917
|
-
return this;
|
|
918
|
-
};
|
|
919
|
-
E.wrapAll = function (a) {
|
|
920
|
-
a = F(a);
|
|
921
|
-
for (var b = a[0]; b.children.length; ) b = b.firstElementChild;
|
|
922
|
-
this.first().before(a);
|
|
923
|
-
return this.appendTo(b);
|
|
924
|
-
};
|
|
925
|
-
E.wrap = function (a) {
|
|
926
|
-
return this.each(function (b, c) {
|
|
927
|
-
var d = F(a)[0];
|
|
928
|
-
F(c).wrapAll(b ? d.cloneNode(!0) : d);
|
|
929
|
-
});
|
|
930
|
-
};
|
|
931
|
-
E.wrapInner = function (a) {
|
|
932
|
-
return this.each(function (b, c) {
|
|
933
|
-
b = F(c);
|
|
934
|
-
c = b.contents();
|
|
935
|
-
c.length ? c.wrapAll(a) : b.append(a);
|
|
936
|
-
});
|
|
937
|
-
};
|
|
938
|
-
E.has = function (a) {
|
|
939
|
-
var b = C(a)
|
|
940
|
-
? function (b, d) {
|
|
941
|
-
return v(a, d).length;
|
|
942
|
-
}
|
|
943
|
-
: function (b, d) {
|
|
944
|
-
return d.contains(a);
|
|
945
|
-
};
|
|
946
|
-
return this.filter(b);
|
|
947
|
-
};
|
|
948
|
-
E.is = function (a) {
|
|
949
|
-
var b = L(a);
|
|
950
|
-
return u.call(this, function (a, d) {
|
|
951
|
-
return b.call(a, d, a);
|
|
952
|
-
});
|
|
953
|
-
};
|
|
954
|
-
E.next = function (a, b, c) {
|
|
955
|
-
return M(F(P(O(this, "nextElementSibling", b, c))), a);
|
|
956
|
-
};
|
|
957
|
-
E.nextAll = function (a) {
|
|
958
|
-
return this.next(a, !0);
|
|
959
|
-
};
|
|
960
|
-
E.nextUntil = function (a, b) {
|
|
961
|
-
return this.next(b, !0, a);
|
|
962
|
-
};
|
|
963
|
-
E.not = function (a) {
|
|
964
|
-
var b = L(a);
|
|
965
|
-
return this.filter(function (c, d) {
|
|
966
|
-
return (!C(a) || x(d)) && !b.call(d, c, d);
|
|
967
|
-
});
|
|
968
|
-
};
|
|
969
|
-
E.parent = function (a) {
|
|
970
|
-
return M(F(P(O(this, "parentNode"))), a);
|
|
971
|
-
};
|
|
972
|
-
E.index = function (a) {
|
|
973
|
-
var b = a ? F(a)[0] : this[0];
|
|
974
|
-
a = a ? this : F(b).parent().children();
|
|
975
|
-
return ha.call(a, b);
|
|
976
|
-
};
|
|
977
|
-
E.closest = function (a) {
|
|
978
|
-
var b = this.filter(a);
|
|
979
|
-
if (b.length) return b;
|
|
980
|
-
var c = this.parent();
|
|
981
|
-
return c.length ? c.closest(a) : b;
|
|
982
|
-
};
|
|
983
|
-
E.parents = function (a, b) {
|
|
984
|
-
return M(F(P(O(this, "parentElement", !0, b))), a);
|
|
985
|
-
};
|
|
986
|
-
E.parentsUntil = function (a, b) {
|
|
987
|
-
return this.parents(b, a);
|
|
988
|
-
};
|
|
989
|
-
E.prev = function (a, b, c) {
|
|
990
|
-
return M(F(P(O(this, "previousElementSibling", b, c))), a);
|
|
991
|
-
};
|
|
992
|
-
E.prevAll = function (a) {
|
|
993
|
-
return this.prev(a, !0);
|
|
994
|
-
};
|
|
995
|
-
E.prevUntil = function (a, b) {
|
|
996
|
-
return this.prev(b, !0, a);
|
|
997
|
-
};
|
|
998
|
-
E.siblings = function (a) {
|
|
999
|
-
return M(
|
|
1000
|
-
F(
|
|
1001
|
-
P(
|
|
1002
|
-
O(this, function (a) {
|
|
1003
|
-
return F(a).parent().children().not(a);
|
|
1004
|
-
})
|
|
1005
|
-
)
|
|
1006
|
-
),
|
|
1007
|
-
a
|
|
1008
|
-
);
|
|
1009
|
-
};
|
|
1010
|
-
m.cash = m.$ = F;
|
|
1011
|
-
})();
|