amos-apptool 1.0.2 → 1.0.4

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/esm/_clone.js ADDED
@@ -0,0 +1,72 @@
1
+ const findType = function(e) {
2
+ return Object.prototype.toString.call(e).match(/\[object (\w+)\]/)[1];
3
+ };
4
+
5
+ function findAllType(e) {
6
+ switch (Object.prototype.toString.call(e)) {
7
+ case "[object Date]":
8
+ return "date";
9
+
10
+ case "[object RegExp]":
11
+ return "regexp";
12
+
13
+ case "[object Arguments]":
14
+ return "arguments";
15
+
16
+ case "[object Array]":
17
+ return "array";
18
+
19
+ case "[object Error]":
20
+ return "error";
21
+ }
22
+ return null === e ? "null" : void 0 === e ? "undefined" : e && 1 === e.nodeType ? "element" : typeof (e = e.valueOf ? e.valueOf() : Object.prototype.valueOf.apply(e));
23
+ }
24
+
25
+ const simpleClone = function(e) {
26
+ switch (findType(e)) {
27
+ case "Object":
28
+ var r = {};
29
+ for (var t in e) e.hasOwnProperty(t) && (r[t] = simpleClone(e[t]));
30
+ return r;
31
+
32
+ case "Array":
33
+ return e.slice();
34
+ }
35
+ return e;
36
+ }, clone = function(e) {
37
+ try {
38
+ return JSON.parse(JSON.stringify(e, function(e, r) {
39
+ return "function" == typeof r ? r.toString() : r;
40
+ }));
41
+ } catch (r) {
42
+ return e;
43
+ }
44
+ }, cloneAll = function(e) {
45
+ switch (findAllType(e)) {
46
+ case "object":
47
+ var r = {};
48
+ return Object.keys(e).forEach(function(t) {
49
+ "$" !== t.charAt(0) && (r[t] = cloneAll(e[t]));
50
+ }), r;
51
+
52
+ case "element":
53
+ return e.cloneNode(!0);
54
+
55
+ case "array":
56
+ for (var t = new Array(e.length), n = 0, c = e.length; n < c; n++) t[n] = cloneAll(e[n]);
57
+ return t;
58
+
59
+ case "regexp":
60
+ var o = "";
61
+ return o += e.multiline ? "m" : "", o += e.global ? "g" : "", o += e.ignoreCase ? "i" : "",
62
+ new RegExp(e.source, o);
63
+
64
+ case "date":
65
+ return new Date(e.getTime());
66
+
67
+ default:
68
+ return e;
69
+ }
70
+ };
71
+
72
+ export { simpleClone, clone, cloneAll };
@@ -0,0 +1,27 @@
1
+ import _typeOfList from "./_typeOfList";
2
+
3
+ import utils from "./utils";
4
+
5
+ var BUILTIN_OBJECT = _typeOfList.BUILTIN_OBJECT, TYPED_ARRAY = _typeOfList.TYPED_ARRAY;
6
+
7
+ function eq(e, t) {
8
+ return e === t || e != e && t != t;
9
+ }
10
+
11
+ function deepCopy(e) {
12
+ if (null == e || "object" != typeof e) return e;
13
+ var t = e, r = Object.prototype.toString.call(e);
14
+ if ("[object Array]" === r) {
15
+ t = [];
16
+ for (var o = 0, p = e.length; o < p; o++) t[o] = deepCopy(e[o]);
17
+ } else if (TYPED_ARRAY[r]) {
18
+ var f = e.constructor;
19
+ if (e.constructor.from) t = f.from(e); else {
20
+ t = new f(e.length);
21
+ for (var i = 0, n = e.length; i < n; i++) t[i] = deepCopy(e[i]);
22
+ }
23
+ } else if (!BUILTIN_OBJECT[r] && !utils.isDom(e)) for (var s in t = {}, e) e.hasOwnProperty(s) && (t[s] = deepCopy(e[s]));
24
+ return t;
25
+ }
26
+
27
+ export { deepCopy, eq };
@@ -0,0 +1,7 @@
1
+ import stringify from "./_stringify";
2
+
3
+ import utils from "./utils";
4
+
5
+ const deepEqual = (i, t) => !(utils.isEmpty(i) && !utils.isEmpty(t) || !utils.isEmpty(i) && utils.isEmpty(t)) && (typeof i == typeof t && (utils.isString(i) && utils.isString(t) || utils.isNumber(i) && utils.isNumber(t) ? i === t : utils.isArray(i) && utils.isArray(t) ? i.length === t.length : stringify(i) === stringify(t)));
6
+
7
+ export default deepEqual;
@@ -0,0 +1,27 @@
1
+ const isArray = Array.isArray, keyList = Object.keys, hasProp = Object.prototype.hasOwnProperty, isFn = t => "function" == typeof t, isObj = t => "object" == typeof t;
2
+
3
+ export default function fastDeepEqual(t, e) {
4
+ if (t === e) return !0;
5
+ if (t && e && isObj(t) && isObj(e)) {
6
+ const r = isArray(t), n = isArray(e);
7
+ let i, s, f;
8
+ if (r && n) {
9
+ if (s = t.length, s != e.length) return !1;
10
+ for (i = s; 0 !== i--; ) if (!fastDeepEqual(t[i], e[i])) return !1;
11
+ return !0;
12
+ }
13
+ if (r != n) return !1;
14
+ const o = t instanceof Date, a = e instanceof Date;
15
+ if (o != a) return !1;
16
+ if (o && a) return t.getTime() == e.getTime();
17
+ const u = t instanceof RegExp, c = e instanceof RegExp;
18
+ if (u != c) return !1;
19
+ if (u && c) return t.toString() == e.toString();
20
+ const p = keyList(t);
21
+ if (s = p.length, s !== keyList(e).length) return !1;
22
+ for (i = s; 0 !== i--; ) if (!hasProp.call(e, p[i])) return !1;
23
+ for (i = s; 0 !== i--; ) if (f = p[i], !fastDeepEqual(t[f], e[f])) return !1;
24
+ return !0;
25
+ }
26
+ return t && e && isFn(t) && isFn(e) ? t.name === e.name : t != t && e != e;
27
+ }
package/esm/_forOwn.js ADDED
@@ -0,0 +1,11 @@
1
+ function forIn(n, r, o) {
2
+ for (var a in n) if (!1 === r.call(o, n[a], a, n)) break;
3
+ }
4
+
5
+ var hasOwn = Object.prototype.hasOwnProperty;
6
+
7
+ export default function forOwn(n, r, o) {
8
+ forIn(n, function(a, f) {
9
+ if (hasOwn.call(n, f)) return r.call(o, n[f], f, n);
10
+ });
11
+ }
package/esm/_isnode.js ADDED
@@ -0,0 +1,3 @@
1
+ const isNode = !("undefined" == typeof process || !process.versions || !process.versions.node);
2
+
3
+ export default isNode;
package/esm/_omit.js ADDED
@@ -0,0 +1,13 @@
1
+ import forOwn from "./_forOwn";
2
+
3
+ import _utils from "./utils";
4
+
5
+ export default function omit(t, n) {
6
+ if (!_utils.isObject(t)) return {};
7
+ var o, f = (n = [].concat.apply([], [].slice.call(arguments, 1)))[n.length - 1], i = {};
8
+ "function" == typeof f && (o = n.pop());
9
+ var r = "function" == typeof o;
10
+ return n.length || r ? (forOwn(t, function(f, e) {
11
+ -1 === n.indexOf(e) && (r ? o(f, e, t) && (i[e] = f) : i[e] = f);
12
+ }), i) : t;
13
+ }
@@ -0,0 +1,9 @@
1
+ import trim from "./_trim";
2
+
3
+ export default function(r) {
4
+ if (window.JSON && window.JSON.parse) return window.JSON.parse(r + "");
5
+ var n, t = null, i = trim(r + "");
6
+ return i && !trim(i.replace(/(,)|(\[|{)|(}|])|"(?:[^"\\\r\n]|\\["\\\/bfnrt]|\\u[\da-fA-F]{4})*"\s*:?|true|false|null|-?(?!0\d)\d+(?:\.\d+|)(?:[eE][+-]?\d+|)/g, function(r, i, e, u) {
7
+ return n && i && (t = 0), 0 === t ? r : (n = e || i, t += !u - !e, "");
8
+ })) ? Function("return " + i)() : Function("Invalid JSON: " + r)();
9
+ }
package/esm/_pick.js ADDED
@@ -0,0 +1,12 @@
1
+ import _utils from "./utils";
2
+
3
+ export default function pick(i, t) {
4
+ if (!_utils.isObject(i)) return {};
5
+ var r = {};
6
+ if (_utils.isString(t)) return t in i && (r[t] = i[t]), r;
7
+ if (_utils.isArray(t) && t.length > 0) for (let u = 0, e = t.length; u < e; u++) {
8
+ var n = t[u];
9
+ n in i && (r[n] = i[n]);
10
+ }
11
+ return r;
12
+ }
package/esm/_pickBy.js ADDED
@@ -0,0 +1,14 @@
1
+ import _utils from "./utils";
2
+
3
+ export default function pickBy(t, i) {
4
+ if (!_utils.isObject(t)) return {};
5
+ var e = {};
6
+ if (_utils.isFunction(i)) {
7
+ const n = Object.keys(t);
8
+ for (let r = 0, s = n.length; r < s; r++) {
9
+ const s = n[r];
10
+ i(s, t[s]) && (e[s] = t[s]);
11
+ }
12
+ }
13
+ return e;
14
+ }
package/esm/_queue.js ADDED
@@ -0,0 +1,68 @@
1
+ function _ArrayHigh(r) {
2
+ this.array = void 0 === r ? [] : new Array(r);
3
+ }
4
+
5
+ _ArrayHigh.prototype = {
6
+ length: function() {
7
+ return this.array.length;
8
+ },
9
+ at: function(r) {
10
+ return this.array[r];
11
+ },
12
+ set: function(r, t) {
13
+ this.array[r] = t;
14
+ },
15
+ push: function(r) {
16
+ return this.array.push(r);
17
+ },
18
+ slice: function(r, t) {
19
+ return this.array = this.array.slice(r, t);
20
+ },
21
+ concat: function(r) {
22
+ this.array = this.array.concat(r);
23
+ },
24
+ remove: function(r, t) {
25
+ t = void 0 === t ? 1 : t, this.array.splice(r, t);
26
+ },
27
+ join: function(r) {
28
+ return this.array.join(r);
29
+ },
30
+ clear: function() {
31
+ this.array.length = 0;
32
+ }
33
+ };
34
+
35
+ var Queue = function() {
36
+ this._array_h = new _ArrayHigh;
37
+ };
38
+
39
+ Queue.prototype = {
40
+ _index: 0,
41
+ push: function(r) {
42
+ this._array_h.push(r);
43
+ },
44
+ pop: function() {
45
+ var r = null;
46
+ return this._array_h.length() && (r = this._array_h.at(this._index), 2 * ++this._index >= this._array_h.length() && (this._array_h.slice(this._index),
47
+ this._index = 0)), r;
48
+ },
49
+ head: function() {
50
+ var r = null, t = this._array_h.length();
51
+ return t && (r = this._array_h.at(t - 1)), r;
52
+ },
53
+ tail: function() {
54
+ var r = null;
55
+ return this._array_h.length() && (r = this._array_h.at(this._index)), r;
56
+ },
57
+ length: function() {
58
+ return this._array_h.length() - this._index;
59
+ },
60
+ empty: function() {
61
+ return 0 === this._array_h.length();
62
+ },
63
+ clear: function() {
64
+ this._array_h.clear();
65
+ }
66
+ };
67
+
68
+ export default Queue;
@@ -0,0 +1,57 @@
1
+ import utils from "./utils";
2
+
3
+ function overArg(e, r) {
4
+ return function(n) {
5
+ return e(r(n));
6
+ };
7
+ }
8
+
9
+ var nativeKeys = overArg(Object.keys, Object), hasOwnProperty = Object.prototype.hasOwnProperty;
10
+
11
+ function baseSlice(e, r, n) {
12
+ var t = -1, o = e.length;
13
+ r < 0 && (r = -r > o ? 0 : o + r), (n = n > o ? o : n) < 0 && (n += o), o = r > n ? 0 : n - r >>> 0,
14
+ r >>>= 0;
15
+ for (var a = Array(o); ++t < o; ) a[t] = e[t + r];
16
+ return a;
17
+ }
18
+
19
+ function copyArray(e) {
20
+ return baseSlice(e, 0, e.length);
21
+ }
22
+
23
+ function baseAssignValue(e, r, n) {
24
+ e[r] = n;
25
+ }
26
+
27
+ function assignValue(e, r, n) {
28
+ var t = e[r];
29
+ hasOwnProperty.call(e, r) && eq(t, n) && (void 0 !== n || r in e) || baseAssignValue(e, r, n);
30
+ }
31
+
32
+ function copyObject(e, r, n, t) {
33
+ var o = !n;
34
+ n || (n = {});
35
+ for (var a = -1, c = r.length; ++a < c; ) {
36
+ var s = r[a], i = t ? t(n[s], e[s], s, n, e) : void 0;
37
+ void 0 === i && (i = e[s]), o ? baseAssignValue(n, s, i) : assignValue(n, s, i);
38
+ }
39
+ return n;
40
+ }
41
+
42
+ function eq(e, r) {
43
+ return e === r || e != e && r != r;
44
+ }
45
+
46
+ function clone(e) {
47
+ return utils.isObject(e) ? utils.isArray(e) ? copyArray(e) : copyObject(e, nativeKeys(e)) : e;
48
+ }
49
+
50
+ const shallowCopy = {
51
+ clone: clone,
52
+ copyArray: copyArray,
53
+ copyObject: copyObject,
54
+ eq: eq
55
+ };
56
+
57
+ export default shallowCopy;
@@ -0,0 +1,12 @@
1
+ export default function(t) {
2
+ if ("undefined" != typeof JSON && JSON.stringify) return JSON.stringify(t);
3
+ var e = "", o = [], r = function(t) {
4
+ var n = !1;
5
+ for (var c in "[object Array]" === Object.prototype.toString.call(t) ? (o.push("]", "["),
6
+ n = !0) : "[object Object]" === Object.prototype.toString.call(t) && o.push("}", "{"),
7
+ t) "[object Null]" === Object.prototype.toString.call(t[c]) ? t[c] = "null" : "[object Undefined]" === Object.prototype.toString.call(t[c]) && (t[c] = "undefined"),
8
+ t[c] && "object" == typeof t[c] ? e += "," + (n ? "" : '"' + c + '":' + (n ? '"' : "")) + r(t[c]) : e += ',"' + (n ? "" : c + '":"') + t[c] + '"';
9
+ return "" != e && (e = e.slice(1)), o.pop() + e + o.pop();
10
+ };
11
+ return r(t);
12
+ }
package/esm/_trim.js ADDED
@@ -0,0 +1,9 @@
1
+ function makeTrim() {
2
+ return String.prototype.trim ? function(t) {
3
+ return t = "string" == typeof t ? t : "", String.prototype.trim.call(t);
4
+ } : function(t) {
5
+ return (t = "string" == typeof t ? t : "").replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "");
6
+ };
7
+ }
8
+
9
+ export default makeTrim();
@@ -0,0 +1,25 @@
1
+ const BUILTIN_OBJECT = {
2
+ "[object Function]": 1,
3
+ "[object RegExp]": 1,
4
+ "[object Date]": 1,
5
+ "[object Error]": 1,
6
+ "[object CanvasGradient]": 1,
7
+ "[object CanvasPattern]": 1,
8
+ "[object Image]": 1,
9
+ "[object Canvas]": 1
10
+ }, TYPED_ARRAY = {
11
+ "[object Int8Array]": 1,
12
+ "[object Uint8Array]": 1,
13
+ "[object Uint8ClampedArray]": 1,
14
+ "[object Int16Array]": 1,
15
+ "[object Uint16Array]": 1,
16
+ "[object Int32Array]": 1,
17
+ "[object Uint32Array]": 1,
18
+ "[object Float32Array]": 1,
19
+ "[object Float64Array]": 1
20
+ }, _typeOfList = {
21
+ BUILTIN_OBJECT: BUILTIN_OBJECT,
22
+ TYPED_ARRAY: TYPED_ARRAY
23
+ };
24
+
25
+ export default _typeOfList;
package/esm/_uuids.js ADDED
@@ -0,0 +1,54 @@
1
+ var CHARS = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""), index = 0, longtimeIndex = 0, formatDate = function() {
2
+ var x = "yyyyMMddhhmm", t = new Date, e = {
3
+ "M+": t.getMonth() + 1,
4
+ "d+": t.getDate(),
5
+ "h+": t.getHours(),
6
+ "m+": t.getMinutes(),
7
+ "s+": t.getSeconds(),
8
+ S: t.getMilliseconds()
9
+ };
10
+ for (var n in /(y+)/.test(x) && (x = x.replace(RegExp.$1, (t.getFullYear() + "").substr(4 - RegExp.$1.length))),
11
+ e) new RegExp("(" + n + ")").test(x) && (x = x.replace(RegExp.$1, 1 == RegExp.$1.length ? e[n] : ("00" + e[n]).substr(("" + e[n]).length)));
12
+ return x;
13
+ };
14
+
15
+ const UUID = {
16
+ uuid: function(x, t) {
17
+ var e, n, r = CHARS, o = [];
18
+ if (t = t || r.length, x) for (e = 0; e < x; e++) o[e] = r[0 | Math.random() * t]; else for (o[8] = o[13] = o[18] = o[23] = "-",
19
+ o[14] = "4", e = 0; e < 36; e++) o[e] || (n = 0 | 16 * Math.random(), o[e] = r[19 == e ? 3 & n | 8 : n]);
20
+ return o.join("");
21
+ },
22
+ uuidFast: function() {
23
+ for (var x, t = CHARS, e = new Array(36), n = 0, r = 0; r < 36; r++) 8 == r || 13 == r || 18 == r || 23 == r ? e[r] = "-" : 14 == r ? e[r] = "4" : (n <= 2 && (n = 33554432 + 16777216 * Math.random() | 0),
24
+ x = 15 & n, n >>= 4, e[r] = t[19 == r ? 3 & x | 8 : x]);
25
+ return e.join("");
26
+ },
27
+ uuidCompact: function() {
28
+ return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(x) {
29
+ var t = 16 * Math.random() | 0;
30
+ return ("x" == x ? t : 3 & t | 8).toString(16);
31
+ });
32
+ },
33
+ uuidTime: function(x) {
34
+ var t = Date.now(), e = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(x) {
35
+ var e = (t + 16 * Math.random()) % 16 | 0;
36
+ return t = Math.floor(t / 16), ("x" === x ? e : 3 & e | 8).toString(16);
37
+ });
38
+ return x ? e.replace(/-/g, "") : e;
39
+ },
40
+ timeUUID: function(x) {
41
+ return x || (x = "amos-timeuuid"), x + "-" + Date.now() + "-" + ++index;
42
+ },
43
+ longTimeUUID: function(x) {
44
+ return x || (x = "longtime"), x + "-" + formatDate() + "-" + ++longtimeIndex;
45
+ },
46
+ otherUUID: function(x) {
47
+ return (x = x || "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx").replace(/[xy]/g, function(x) {
48
+ var t = 16 * Math.random() | 0;
49
+ return ("x" == x ? t : 3 & t | 8).toString(16);
50
+ }).replace(/\-/g, "");
51
+ }
52
+ };
53
+
54
+ export default UUID;
@@ -0,0 +1,35 @@
1
+ const ObjProto = Object.prototype, toString = ObjProto.toString, isString = function(r) {
2
+ return "[object String]" === toString.call(r);
3
+ }, Base64 = function() {
4
+ var r = this, t = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
5
+ this.encode = function(o) {
6
+ var e, n, a, h, i, c, d, C = "", f = 0;
7
+ for (isString(o) || (o += ""), o = r._utf8_encode(o); f < o.length; ) h = (e = o.charCodeAt(f++)) >> 2,
8
+ i = (3 & e) << 4 | (n = o.charCodeAt(f++)) >> 4, c = (15 & n) << 2 | (a = o.charCodeAt(f++)) >> 6,
9
+ d = 63 & a, isNaN(n) ? c = d = 64 : isNaN(a) && (d = 64), C = C + t.charAt(h) + t.charAt(i) + t.charAt(c) + t.charAt(d);
10
+ return C;
11
+ }, this.decode = function(o) {
12
+ var e, n, a, h, i, c, d = "", C = 0;
13
+ for (o = o.replace(/[^A-Za-z0-9\+\/\=]/g, ""); C < o.length; ) e = t.indexOf(o.charAt(C++)) << 2 | (h = t.indexOf(o.charAt(C++))) >> 4,
14
+ n = (15 & h) << 4 | (i = t.indexOf(o.charAt(C++))) >> 2, a = (3 & i) << 6 | (c = t.indexOf(o.charAt(C++))),
15
+ d += String.fromCharCode(e), 64 != i && (d += String.fromCharCode(n)), 64 != c && (d += String.fromCharCode(a));
16
+ return d = r._utf8_decode(d);
17
+ }, this._utf8_encode = function(r) {
18
+ r = r.replace(/\r\n/g, "\n");
19
+ for (var t = "", o = 0; o < r.length; o++) {
20
+ var e = r.charCodeAt(o);
21
+ e < 128 ? t += String.fromCharCode(e) : e > 127 && e < 2048 ? (t += String.fromCharCode(e >> 6 | 192),
22
+ t += String.fromCharCode(63 & e | 128)) : (t += String.fromCharCode(e >> 12 | 224),
23
+ t += String.fromCharCode(e >> 6 & 63 | 128), t += String.fromCharCode(63 & e | 128));
24
+ }
25
+ return t;
26
+ }, this._utf8_decode = function(r) {
27
+ for (var t = "", o = 0, e = 0, n = 0, a = 0; o < r.length; ) (e = r.charCodeAt(o)) < 128 ? (t += String.fromCharCode(e),
28
+ o++) : e > 191 && e < 224 ? (n = r.charCodeAt(o + 1), t += String.fromCharCode((31 & e) << 6 | 63 & n),
29
+ o += 2) : (n = r.charCodeAt(o + 1), a = r.charCodeAt(o + 2), t += String.fromCharCode((15 & e) << 12 | (63 & n) << 6 | 63 & a),
30
+ o += 3);
31
+ return t;
32
+ };
33
+ };
34
+
35
+ export default Base64;
@@ -0,0 +1,124 @@
1
+ function safeAdd(r, d) {
2
+ var n = (65535 & r) + (65535 & d);
3
+ return (r >> 16) + (d >> 16) + (n >> 16) << 16 | 65535 & n;
4
+ }
5
+
6
+ function bitRotateLeft(r, d) {
7
+ return r << d | r >>> 32 - d;
8
+ }
9
+
10
+ function md5cmn(r, d, n, t, m, f) {
11
+ return safeAdd(bitRotateLeft(safeAdd(safeAdd(d, r), safeAdd(t, f)), m), n);
12
+ }
13
+
14
+ function md5ff(r, d, n, t, m, f, i) {
15
+ return md5cmn(d & n | ~d & t, r, d, m, f, i);
16
+ }
17
+
18
+ function md5gg(r, d, n, t, m, f, i) {
19
+ return md5cmn(d & t | n & ~t, r, d, m, f, i);
20
+ }
21
+
22
+ function md5hh(r, d, n, t, m, f, i) {
23
+ return md5cmn(d ^ n ^ t, r, d, m, f, i);
24
+ }
25
+
26
+ function md5ii(r, d, n, t, m, f, i) {
27
+ return md5cmn(n ^ (d | ~t), r, d, m, f, i);
28
+ }
29
+
30
+ function binlMD5(r, d) {
31
+ var n, t, m, f, i;
32
+ r[d >> 5] |= 128 << d % 32, r[14 + (d + 64 >>> 9 << 4)] = d;
33
+ var e = 1732584193, h = -271733879, g = -1732584194, u = 271733878;
34
+ for (n = 0; n < r.length; n += 16) t = e, m = h, f = g, i = u, e = md5ff(e, h, g, u, r[n], 7, -680876936),
35
+ u = md5ff(u, e, h, g, r[n + 1], 12, -389564586), g = md5ff(g, u, e, h, r[n + 2], 17, 606105819),
36
+ h = md5ff(h, g, u, e, r[n + 3], 22, -1044525330), e = md5ff(e, h, g, u, r[n + 4], 7, -176418897),
37
+ u = md5ff(u, e, h, g, r[n + 5], 12, 1200080426), g = md5ff(g, u, e, h, r[n + 6], 17, -1473231341),
38
+ h = md5ff(h, g, u, e, r[n + 7], 22, -45705983), e = md5ff(e, h, g, u, r[n + 8], 7, 1770035416),
39
+ u = md5ff(u, e, h, g, r[n + 9], 12, -1958414417), g = md5ff(g, u, e, h, r[n + 10], 17, -42063),
40
+ h = md5ff(h, g, u, e, r[n + 11], 22, -1990404162), e = md5ff(e, h, g, u, r[n + 12], 7, 1804603682),
41
+ u = md5ff(u, e, h, g, r[n + 13], 12, -40341101), g = md5ff(g, u, e, h, r[n + 14], 17, -1502002290),
42
+ e = md5gg(e, h = md5ff(h, g, u, e, r[n + 15], 22, 1236535329), g, u, r[n + 1], 5, -165796510),
43
+ u = md5gg(u, e, h, g, r[n + 6], 9, -1069501632), g = md5gg(g, u, e, h, r[n + 11], 14, 643717713),
44
+ h = md5gg(h, g, u, e, r[n], 20, -373897302), e = md5gg(e, h, g, u, r[n + 5], 5, -701558691),
45
+ u = md5gg(u, e, h, g, r[n + 10], 9, 38016083), g = md5gg(g, u, e, h, r[n + 15], 14, -660478335),
46
+ h = md5gg(h, g, u, e, r[n + 4], 20, -405537848), e = md5gg(e, h, g, u, r[n + 9], 5, 568446438),
47
+ u = md5gg(u, e, h, g, r[n + 14], 9, -1019803690), g = md5gg(g, u, e, h, r[n + 3], 14, -187363961),
48
+ h = md5gg(h, g, u, e, r[n + 8], 20, 1163531501), e = md5gg(e, h, g, u, r[n + 13], 5, -1444681467),
49
+ u = md5gg(u, e, h, g, r[n + 2], 9, -51403784), g = md5gg(g, u, e, h, r[n + 7], 14, 1735328473),
50
+ e = md5hh(e, h = md5gg(h, g, u, e, r[n + 12], 20, -1926607734), g, u, r[n + 5], 4, -378558),
51
+ u = md5hh(u, e, h, g, r[n + 8], 11, -2022574463), g = md5hh(g, u, e, h, r[n + 11], 16, 1839030562),
52
+ h = md5hh(h, g, u, e, r[n + 14], 23, -35309556), e = md5hh(e, h, g, u, r[n + 1], 4, -1530992060),
53
+ u = md5hh(u, e, h, g, r[n + 4], 11, 1272893353), g = md5hh(g, u, e, h, r[n + 7], 16, -155497632),
54
+ h = md5hh(h, g, u, e, r[n + 10], 23, -1094730640), e = md5hh(e, h, g, u, r[n + 13], 4, 681279174),
55
+ u = md5hh(u, e, h, g, r[n], 11, -358537222), g = md5hh(g, u, e, h, r[n + 3], 16, -722521979),
56
+ h = md5hh(h, g, u, e, r[n + 6], 23, 76029189), e = md5hh(e, h, g, u, r[n + 9], 4, -640364487),
57
+ u = md5hh(u, e, h, g, r[n + 12], 11, -421815835), g = md5hh(g, u, e, h, r[n + 15], 16, 530742520),
58
+ e = md5ii(e, h = md5hh(h, g, u, e, r[n + 2], 23, -995338651), g, u, r[n], 6, -198630844),
59
+ u = md5ii(u, e, h, g, r[n + 7], 10, 1126891415), g = md5ii(g, u, e, h, r[n + 14], 15, -1416354905),
60
+ h = md5ii(h, g, u, e, r[n + 5], 21, -57434055), e = md5ii(e, h, g, u, r[n + 12], 6, 1700485571),
61
+ u = md5ii(u, e, h, g, r[n + 3], 10, -1894986606), g = md5ii(g, u, e, h, r[n + 10], 15, -1051523),
62
+ h = md5ii(h, g, u, e, r[n + 1], 21, -2054922799), e = md5ii(e, h, g, u, r[n + 8], 6, 1873313359),
63
+ u = md5ii(u, e, h, g, r[n + 15], 10, -30611744), g = md5ii(g, u, e, h, r[n + 6], 15, -1560198380),
64
+ h = md5ii(h, g, u, e, r[n + 13], 21, 1309151649), e = md5ii(e, h, g, u, r[n + 4], 6, -145523070),
65
+ u = md5ii(u, e, h, g, r[n + 11], 10, -1120210379), g = md5ii(g, u, e, h, r[n + 2], 15, 718787259),
66
+ h = md5ii(h, g, u, e, r[n + 9], 21, -343485551), e = safeAdd(e, t), h = safeAdd(h, m),
67
+ g = safeAdd(g, f), u = safeAdd(u, i);
68
+ return [ e, h, g, u ];
69
+ }
70
+
71
+ function binl2rstr(r) {
72
+ var d, n = "", t = 32 * r.length;
73
+ for (d = 0; d < t; d += 8) n += String.fromCharCode(r[d >> 5] >>> d % 32 & 255);
74
+ return n;
75
+ }
76
+
77
+ function rstr2binl(r) {
78
+ var d, n = [];
79
+ for (n[(r.length >> 2) - 1] = void 0, d = 0; d < n.length; d += 1) n[d] = 0;
80
+ var t = 8 * r.length;
81
+ for (d = 0; d < t; d += 8) n[d >> 5] |= (255 & r.charCodeAt(d / 8)) << d % 32;
82
+ return n;
83
+ }
84
+
85
+ function rstrMD5(r) {
86
+ return binl2rstr(binlMD5(rstr2binl(r), 8 * r.length));
87
+ }
88
+
89
+ function rstrHMACMD5(r, d) {
90
+ var n, t, m = rstr2binl(r), f = [], i = [];
91
+ for (f[15] = i[15] = void 0, m.length > 16 && (m = binlMD5(m, 8 * r.length)), n = 0; n < 16; n += 1) f[n] = 909522486 ^ m[n],
92
+ i[n] = 1549556828 ^ m[n];
93
+ return t = binlMD5(f.concat(rstr2binl(d)), 512 + 8 * d.length), binl2rstr(binlMD5(i.concat(t), 640));
94
+ }
95
+
96
+ function rstr2hex(r) {
97
+ var d, n, t = "0123456789abcdef", m = "";
98
+ for (n = 0; n < r.length; n += 1) d = r.charCodeAt(n), m += t.charAt(d >>> 4 & 15) + t.charAt(15 & d);
99
+ return m;
100
+ }
101
+
102
+ function str2rstrUTF8(r) {
103
+ return unescape(encodeURIComponent(r));
104
+ }
105
+
106
+ function rawMD5(r) {
107
+ return rstrMD5(str2rstrUTF8(r));
108
+ }
109
+
110
+ function hexMD5(r) {
111
+ return rstr2hex(rawMD5(r));
112
+ }
113
+
114
+ function rawHMACMD5(r, d) {
115
+ return rstrHMACMD5(str2rstrUTF8(r), str2rstrUTF8(d));
116
+ }
117
+
118
+ function hexHMACMD5(r, d) {
119
+ return rstr2hex(rawHMACMD5(r, d));
120
+ }
121
+
122
+ export default function md5(r, d, n) {
123
+ return d ? n ? rawHMACMD5(d, r) : hexHMACMD5(d, r) : n ? rawMD5(r) : hexMD5(r);
124
+ }