6992 lines
244 KiB
JavaScript
6992 lines
244 KiB
JavaScript
!function(e) {
|
|
if ("object" == typeof exports && "undefined" != typeof module) module.exports = e(); else if ("function" == typeof define && define.amd) define([], e); else {
|
|
("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).JSZip = e();
|
|
}
|
|
}(function() {
|
|
return function e(t, r, n) {
|
|
function i(s, o) {
|
|
if (!r[s]) {
|
|
if (!t[s]) {
|
|
var u = "function" == typeof require && require;
|
|
if (!o && u) return u(s, !0);
|
|
if (a) return a(s, !0);
|
|
var h = new Error("Cannot find module '" + s + "'");
|
|
throw h.code = "MODULE_NOT_FOUND", h;
|
|
}
|
|
var l = r[s] = {
|
|
exports: {}
|
|
};
|
|
t[s][0].call(l.exports, function(e) {
|
|
var r = t[s][1][e];
|
|
return i(r || e);
|
|
}, l, l.exports, e, t, r, n);
|
|
}
|
|
return r[s].exports;
|
|
}
|
|
for (var a = "function" == typeof require && require, s = 0; s < n.length; s++) i(n[s]);
|
|
return i;
|
|
}({
|
|
1: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./utils"), i = e("./support"), a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
|
r.encode = function(e) {
|
|
for (var t, r, i, s, o, u, h, l = [], c = 0, f = e.length, d = f, p = "string" !== n.getTypeOf(e); c < e.length; ) d = f - c,
|
|
p ? (t = e[c++], r = f > c ? e[c++] : 0, i = f > c ? e[c++] : 0) : (t = e.charCodeAt(c++),
|
|
r = f > c ? e.charCodeAt(c++) : 0, i = f > c ? e.charCodeAt(c++) : 0), s = t >> 2,
|
|
o = (3 & t) << 4 | r >> 4, u = d > 1 ? (15 & r) << 2 | i >> 6 : 64, h = d > 2 ? 63 & i : 64,
|
|
l.push(a.charAt(s) + a.charAt(o) + a.charAt(u) + a.charAt(h));
|
|
return l.join("");
|
|
}, r.decode = function(e) {
|
|
var t, r, n, s, o, u, h = 0, l = 0, c = "data:";
|
|
if (e.substr(0, c.length) === c) throw new Error("Invalid base64 input, it looks like a data url.");
|
|
var f, d = 3 * (e = e.replace(/[^A-Za-z0-9\+\/\=]/g, "")).length / 4;
|
|
if (e.charAt(e.length - 1) === a.charAt(64) && d--, e.charAt(e.length - 2) === a.charAt(64) && d--,
|
|
d % 1 != 0) throw new Error("Invalid base64 input, bad content length.");
|
|
for (f = i.uint8array ? new Uint8Array(0 | d) : new Array(0 | d); h < e.length; ) t = a.indexOf(e.charAt(h++)) << 2 | (s = a.indexOf(e.charAt(h++))) >> 4,
|
|
r = (15 & s) << 4 | (o = a.indexOf(e.charAt(h++))) >> 2, n = (3 & o) << 6 | (u = a.indexOf(e.charAt(h++))),
|
|
f[l++] = t, 64 !== o && (f[l++] = r), 64 !== u && (f[l++] = n);
|
|
return f;
|
|
};
|
|
}, {
|
|
"./support": 30,
|
|
"./utils": 32
|
|
} ],
|
|
2: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n, i) {
|
|
this.compressedSize = e, this.uncompressedSize = t, this.crc32 = r, this.compression = n,
|
|
this.compressedContent = i;
|
|
}
|
|
var i = e("./external"), a = e("./stream/DataWorker"), s = e("./stream/DataLengthProbe"), o = e("./stream/Crc32Probe");
|
|
s = e("./stream/DataLengthProbe");
|
|
n.prototype = {
|
|
getContentWorker: function() {
|
|
var e = new a(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new s("data_length")), t = this;
|
|
return e.on("end", function() {
|
|
if (this.streamInfo.data_length !== t.uncompressedSize) throw new Error("Bug : uncompressed data size mismatch");
|
|
}), e;
|
|
},
|
|
getCompressedWorker: function() {
|
|
return new a(i.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize", this.compressedSize).withStreamInfo("uncompressedSize", this.uncompressedSize).withStreamInfo("crc32", this.crc32).withStreamInfo("compression", this.compression);
|
|
}
|
|
}, n.createWorkerFrom = function(e, t, r) {
|
|
return e.pipe(new o()).pipe(new s("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new s("compressedSize")).withStreamInfo("compression", t);
|
|
}, t.exports = n;
|
|
}, {
|
|
"./external": 6,
|
|
"./stream/Crc32Probe": 25,
|
|
"./stream/DataLengthProbe": 26,
|
|
"./stream/DataWorker": 27
|
|
} ],
|
|
3: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./stream/GenericWorker");
|
|
r.STORE = {
|
|
magic: "\0\0",
|
|
compressWorker: function(e) {
|
|
return new n("STORE compression");
|
|
},
|
|
uncompressWorker: function() {
|
|
return new n("STORE decompression");
|
|
}
|
|
}, r.DEFLATE = e("./flate");
|
|
}, {
|
|
"./flate": 7,
|
|
"./stream/GenericWorker": 28
|
|
} ],
|
|
4: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n) {
|
|
var i = s, a = n + r;
|
|
e ^= -1;
|
|
for (var o = n; a > o; o++) e = e >>> 8 ^ i[255 & (e ^ t[o])];
|
|
return -1 ^ e;
|
|
}
|
|
function i(e, t, r, n) {
|
|
var i = s, a = n + r;
|
|
e ^= -1;
|
|
for (var o = n; a > o; o++) e = e >>> 8 ^ i[255 & (e ^ t.charCodeAt(o))];
|
|
return -1 ^ e;
|
|
}
|
|
var a = e("./utils"), s = function() {
|
|
for (var e, t = [], r = 0; 256 > r; r++) {
|
|
e = r;
|
|
for (var n = 0; 8 > n; n++) e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1;
|
|
t[r] = e;
|
|
}
|
|
return t;
|
|
}();
|
|
t.exports = function(e, t) {
|
|
return "undefined" != typeof e && e.length ? "string" !== a.getTypeOf(e) ? n(0 | t, e, e.length, 0) : i(0 | t, e, e.length, 0) : 0;
|
|
};
|
|
}, {
|
|
"./utils": 32
|
|
} ],
|
|
5: [ function(e, t, r) {
|
|
"use strict";
|
|
r.base64 = !1, r.binary = !1, r.dir = !1, r.createFolders = !0, r.date = null, r.compression = null,
|
|
r.compressionOptions = null, r.comment = null, r.unixPermissions = null, r.dosPermissions = null;
|
|
}, {} ],
|
|
6: [ function(e, t, r) {
|
|
"use strict";
|
|
var n;
|
|
n = "undefined" != typeof Promise ? Promise : e("lie"), t.exports = {
|
|
Promise: n
|
|
};
|
|
}, {
|
|
lie: 58
|
|
} ],
|
|
7: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
o.call(this, "FlateWorker/" + e), this._pako = null, this._pakoAction = e, this._pakoOptions = t,
|
|
this.meta = {};
|
|
}
|
|
var i = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Uint32Array, a = e("pako"), s = e("./utils"), o = e("./stream/GenericWorker"), u = i ? "uint8array" : "array";
|
|
r.magic = "\b\0", s.inherits(n, o), n.prototype.processChunk = function(e) {
|
|
this.meta = e.meta, null === this._pako && this._createPako(), this._pako.push(s.transformTo(u, e.data), !1);
|
|
}, n.prototype.flush = function() {
|
|
o.prototype.flush.call(this), null === this._pako && this._createPako(), this._pako.push([], !0);
|
|
}, n.prototype.cleanUp = function() {
|
|
o.prototype.cleanUp.call(this), this._pako = null;
|
|
}, n.prototype._createPako = function() {
|
|
this._pako = new a[this._pakoAction]({
|
|
raw: !0,
|
|
level: this._pakoOptions.level || -1
|
|
});
|
|
var e = this;
|
|
this._pako.onData = function(t) {
|
|
e.push({
|
|
data: t,
|
|
meta: e.meta
|
|
});
|
|
};
|
|
}, r.compressWorker = function(e) {
|
|
return new n("Deflate", e);
|
|
}, r.uncompressWorker = function() {
|
|
return new n("Inflate", {});
|
|
};
|
|
}, {
|
|
"./stream/GenericWorker": 28,
|
|
"./utils": 32,
|
|
pako: 59
|
|
} ],
|
|
8: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n) {
|
|
a.call(this, "ZipFileWorker"), this.bytesWritten = 0, this.zipComment = t, this.zipPlatform = r,
|
|
this.encodeFileName = n, this.streamFiles = e, this.accumulate = !1, this.contentBuffer = [],
|
|
this.dirRecords = [], this.currentSourceOffset = 0, this.entriesCount = 0, this.currentFile = null,
|
|
this._sources = [];
|
|
}
|
|
var i = e("../utils"), a = e("../stream/GenericWorker"), s = e("../utf8"), o = e("../crc32"), u = e("../signature"), h = function(e, t) {
|
|
var r, n = "";
|
|
for (r = 0; t > r; r++) n += String.fromCharCode(255 & e), e >>>= 8;
|
|
return n;
|
|
}, l = function(e, t) {
|
|
var r = e;
|
|
return e || (r = t ? 16893 : 33204), (65535 & r) << 16;
|
|
}, c = function(e, t) {
|
|
return 63 & (e || 0);
|
|
}, f = function(e, t, r, n, a, f) {
|
|
var d, p, m = e.file, _ = e.compression, g = f !== s.utf8encode, b = i.transformTo("string", f(m.name)), v = i.transformTo("string", s.utf8encode(m.name)), w = m.comment, y = i.transformTo("string", f(w)), k = i.transformTo("string", s.utf8encode(w)), x = v.length !== m.name.length, S = k.length !== w.length, z = "", E = "", C = "", A = m.dir, I = m.date, O = {
|
|
crc32: 0,
|
|
compressedSize: 0,
|
|
uncompressedSize: 0
|
|
};
|
|
(!t || r) && (O.crc32 = e.crc32, O.compressedSize = e.compressedSize, O.uncompressedSize = e.uncompressedSize);
|
|
var B = 0;
|
|
t && (B |= 8), g || !x && !S || (B |= 2048);
|
|
var R = 0, T = 0;
|
|
A && (R |= 16), "UNIX" === a ? (T = 798, R |= l(m.unixPermissions, A)) : (T = 20,
|
|
R |= c(m.dosPermissions)), d = I.getUTCHours(), d <<= 6, d |= I.getUTCMinutes(),
|
|
d <<= 5, d |= I.getUTCSeconds() / 2, p = I.getUTCFullYear() - 1980, p <<= 4, p |= I.getUTCMonth() + 1,
|
|
p <<= 5, p |= I.getUTCDate(), x && (E = h(1, 1) + h(o(b), 4) + v, z += "up" + h(E.length, 2) + E),
|
|
S && (C = h(1, 1) + h(o(y), 4) + k, z += "uc" + h(C.length, 2) + C);
|
|
var D = "";
|
|
D += "\n\0", D += h(B, 2), D += _.magic, D += h(d, 2), D += h(p, 2), D += h(O.crc32, 4),
|
|
D += h(O.compressedSize, 4), D += h(O.uncompressedSize, 4), D += h(b.length, 2),
|
|
D += h(z.length, 2);
|
|
return {
|
|
fileRecord: u.LOCAL_FILE_HEADER + D + b + z,
|
|
dirRecord: u.CENTRAL_FILE_HEADER + h(T, 2) + D + h(y.length, 2) + "\0\0\0\0" + h(R, 4) + h(n, 4) + b + z + y
|
|
};
|
|
}, d = function(e, t, r, n, a) {
|
|
var s = i.transformTo("string", a(n));
|
|
return u.CENTRAL_DIRECTORY_END + "\0\0\0\0" + h(e, 2) + h(e, 2) + h(t, 4) + h(r, 4) + h(s.length, 2) + s;
|
|
}, p = function(e) {
|
|
return u.DATA_DESCRIPTOR + h(e.crc32, 4) + h(e.compressedSize, 4) + h(e.uncompressedSize, 4);
|
|
};
|
|
i.inherits(n, a), n.prototype.push = function(e) {
|
|
var t = e.meta.percent || 0, r = this.entriesCount, n = this._sources.length;
|
|
this.accumulate ? this.contentBuffer.push(e) : (this.bytesWritten += e.data.length,
|
|
a.prototype.push.call(this, {
|
|
data: e.data,
|
|
meta: {
|
|
currentFile: this.currentFile,
|
|
percent: r ? (t + 100 * (r - n - 1)) / r : 100
|
|
}
|
|
}));
|
|
}, n.prototype.openedSource = function(e) {
|
|
this.currentSourceOffset = this.bytesWritten, this.currentFile = e.file.name;
|
|
var t = this.streamFiles && !e.file.dir;
|
|
if (t) {
|
|
var r = f(e, t, !1, this.currentSourceOffset, this.zipPlatform, this.encodeFileName);
|
|
this.push({
|
|
data: r.fileRecord,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
});
|
|
} else this.accumulate = !0;
|
|
}, n.prototype.closedSource = function(e) {
|
|
this.accumulate = !1;
|
|
var t = this.streamFiles && !e.file.dir, r = f(e, t, !0, this.currentSourceOffset, this.zipPlatform, this.encodeFileName);
|
|
if (this.dirRecords.push(r.dirRecord), t) this.push({
|
|
data: p(e),
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
}); else for (this.push({
|
|
data: r.fileRecord,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
}); this.contentBuffer.length; ) this.push(this.contentBuffer.shift());
|
|
this.currentFile = null;
|
|
}, n.prototype.flush = function() {
|
|
for (var e = this.bytesWritten, t = 0; t < this.dirRecords.length; t++) this.push({
|
|
data: this.dirRecords[t],
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
});
|
|
var r = this.bytesWritten - e, n = d(this.dirRecords.length, r, e, this.zipComment, this.encodeFileName);
|
|
this.push({
|
|
data: n,
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
});
|
|
}, n.prototype.prepareNextSource = function() {
|
|
this.previous = this._sources.shift(), this.openedSource(this.previous.streamInfo),
|
|
this.isPaused ? this.previous.pause() : this.previous.resume();
|
|
}, n.prototype.registerPrevious = function(e) {
|
|
this._sources.push(e);
|
|
var t = this;
|
|
return e.on("data", function(e) {
|
|
t.processChunk(e);
|
|
}), e.on("end", function() {
|
|
t.closedSource(t.previous.streamInfo), t._sources.length ? t.prepareNextSource() : t.end();
|
|
}), e.on("error", function(e) {
|
|
t.error(e);
|
|
}), this;
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (!this.previous && this._sources.length ? (this.prepareNextSource(),
|
|
!0) : this.previous || this._sources.length || this.generatedError ? void 0 : (this.end(),
|
|
!0));
|
|
}, n.prototype.error = function(e) {
|
|
var t = this._sources;
|
|
if (!a.prototype.error.call(this, e)) return !1;
|
|
for (var r = 0; r < t.length; r++) try {
|
|
t[r].error(e);
|
|
} catch (e) {}
|
|
return !0;
|
|
}, n.prototype.lock = function() {
|
|
a.prototype.lock.call(this);
|
|
for (var e = this._sources, t = 0; t < e.length; t++) e[t].lock();
|
|
}, t.exports = n;
|
|
}, {
|
|
"../crc32": 4,
|
|
"../signature": 23,
|
|
"../stream/GenericWorker": 28,
|
|
"../utf8": 31,
|
|
"../utils": 32
|
|
} ],
|
|
9: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../compressions"), i = e("./ZipFileWorker"), a = function(e, t) {
|
|
var r = e || t, i = n[r];
|
|
if (!i) throw new Error(r + " is not a valid compression method !");
|
|
return i;
|
|
};
|
|
r.generateWorker = function(e, t, r) {
|
|
var n = new i(t.streamFiles, r, t.platform, t.encodeFileName), s = 0;
|
|
try {
|
|
e.forEach(function(e, r) {
|
|
s++;
|
|
var i = a(r.options.compression, t.compression), o = r.options.compressionOptions || t.compressionOptions || {}, u = r.dir, h = r.date;
|
|
r._compressWorker(i, o).withStreamInfo("file", {
|
|
name: e,
|
|
dir: u,
|
|
date: h,
|
|
comment: r.comment || "",
|
|
unixPermissions: r.unixPermissions,
|
|
dosPermissions: r.dosPermissions
|
|
}).pipe(n);
|
|
}), n.entriesCount = s;
|
|
} catch (e) {
|
|
n.error(e);
|
|
}
|
|
return n;
|
|
};
|
|
}, {
|
|
"../compressions": 3,
|
|
"./ZipFileWorker": 8
|
|
} ],
|
|
10: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
if (!(this instanceof n)) return new n();
|
|
if (arguments.length) throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
this.files = {}, this.comment = null, this.root = "", this.clone = function() {
|
|
var e = new n();
|
|
for (var t in this) "function" != typeof this[t] && (e[t] = this[t]);
|
|
return e;
|
|
};
|
|
}
|
|
n.prototype = e("./object"), n.prototype.loadAsync = e("./load"), n.support = e("./support"),
|
|
n.defaults = e("./defaults"), n.version = "3.1.5", n.loadAsync = function(e, t) {
|
|
return new n().loadAsync(e, t);
|
|
}, n.external = e("./external"), t.exports = n;
|
|
}, {
|
|
"./defaults": 5,
|
|
"./external": 6,
|
|
"./load": 11,
|
|
"./object": 15,
|
|
"./support": 30
|
|
} ],
|
|
11: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return new a.Promise(function(t, r) {
|
|
var n = e.decompressed.getContentWorker().pipe(new u());
|
|
n.on("error", function(e) {
|
|
r(e);
|
|
}).on("end", function() {
|
|
n.streamInfo.crc32 !== e.decompressed.crc32 ? r(new Error("Corrupted zip : CRC32 mismatch")) : t();
|
|
}).resume();
|
|
});
|
|
}
|
|
var i = e("./utils"), a = e("./external"), s = e("./utf8"), o = (i = e("./utils"),
|
|
e("./zipEntries")), u = e("./stream/Crc32Probe"), h = e("./nodejsUtils");
|
|
t.exports = function(e, t) {
|
|
var r = this;
|
|
return t = i.extend(t || {}, {
|
|
base64: !1,
|
|
checkCRC32: !1,
|
|
optimizedBinaryString: !1,
|
|
createFolders: !1,
|
|
decodeFileName: s.utf8decode
|
|
}), h.isNode && h.isStream(e) ? a.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")) : i.prepareContent("the loaded zip file", e, !0, t.optimizedBinaryString, t.base64).then(function(e) {
|
|
var r = new o(t);
|
|
return r.load(e), r;
|
|
}).then(function(e) {
|
|
var r = [ a.Promise.resolve(e) ], i = e.files;
|
|
if (t.checkCRC32) for (var s = 0; s < i.length; s++) r.push(n(i[s]));
|
|
return a.Promise.all(r);
|
|
}).then(function(e) {
|
|
for (var n = e.shift(), i = n.files, a = 0; a < i.length; a++) {
|
|
var s = i[a];
|
|
r.file(s.fileNameStr, s.decompressed, {
|
|
binary: !0,
|
|
optimizedBinaryString: !0,
|
|
date: s.date,
|
|
dir: s.dir,
|
|
comment: s.fileCommentStr.length ? s.fileCommentStr : null,
|
|
unixPermissions: s.unixPermissions,
|
|
dosPermissions: s.dosPermissions,
|
|
createFolders: t.createFolders
|
|
});
|
|
}
|
|
return n.zipComment.length && (r.comment = n.zipComment), r;
|
|
});
|
|
};
|
|
}, {
|
|
"./external": 6,
|
|
"./nodejsUtils": 14,
|
|
"./stream/Crc32Probe": 25,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipEntries": 33
|
|
} ],
|
|
12: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
a.call(this, "Nodejs stream input adapter for " + e), this._upstreamEnded = !1,
|
|
this._bindStream(t);
|
|
}
|
|
var i = e("../utils"), a = e("../stream/GenericWorker");
|
|
i.inherits(n, a), n.prototype._bindStream = function(e) {
|
|
var t = this;
|
|
this._stream = e, e.pause(), e.on("data", function(e) {
|
|
t.push({
|
|
data: e,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
});
|
|
}).on("error", function(e) {
|
|
t.isPaused ? this.generatedError = e : t.error(e);
|
|
}).on("end", function() {
|
|
t.isPaused ? t._upstreamEnded = !0 : t.end();
|
|
});
|
|
}, n.prototype.pause = function() {
|
|
return !!a.prototype.pause.call(this) && (this._stream.pause(), !0);
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (this._upstreamEnded ? this.end() : this._stream.resume(),
|
|
!0);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../stream/GenericWorker": 28,
|
|
"../utils": 32
|
|
} ],
|
|
13: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r) {
|
|
i.call(this, t), this._helper = e;
|
|
var n = this;
|
|
e.on("data", function(e, t) {
|
|
n.push(e) || n._helper.pause(), r && r(t);
|
|
}).on("error", function(e) {
|
|
n.emit("error", e);
|
|
}).on("end", function() {
|
|
n.push(null);
|
|
});
|
|
}
|
|
var i = e("readable-stream").Readable;
|
|
e("../utils").inherits(n, i), n.prototype._read = function() {
|
|
this._helper.resume();
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"readable-stream": 16
|
|
} ],
|
|
14: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
isNode: "undefined" != typeof Buffer,
|
|
newBufferFrom: function(e, t) {
|
|
return new Buffer(e, t);
|
|
},
|
|
allocBuffer: function(e) {
|
|
return Buffer.alloc ? Buffer.alloc(e) : new Buffer(e);
|
|
},
|
|
isBuffer: function(e) {
|
|
return Buffer.isBuffer(e);
|
|
},
|
|
isStream: function(e) {
|
|
return e && "function" == typeof e.on && "function" == typeof e.pause && "function" == typeof e.resume;
|
|
}
|
|
};
|
|
}, {} ],
|
|
15: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return "[object RegExp]" === Object.prototype.toString.call(e);
|
|
}
|
|
var i = e("./utf8"), a = e("./utils"), s = e("./stream/GenericWorker"), o = e("./stream/StreamHelper"), u = e("./defaults"), h = e("./compressedObject"), l = e("./zipObject"), c = e("./generate"), f = e("./nodejsUtils"), d = e("./nodejs/NodejsStreamInputAdapter"), p = function(e, t, r) {
|
|
var n, i = a.getTypeOf(t), o = a.extend(r || {}, u);
|
|
o.date = o.date || new Date(), null !== o.compression && (o.compression = o.compression.toUpperCase()),
|
|
"string" == typeof o.unixPermissions && (o.unixPermissions = parseInt(o.unixPermissions, 8)),
|
|
o.unixPermissions && 16384 & o.unixPermissions && (o.dir = !0), o.dosPermissions && 16 & o.dosPermissions && (o.dir = !0),
|
|
o.dir && (e = _(e)), o.createFolders && (n = m(e)) && g.call(this, n, !0);
|
|
var c = "string" === i && !1 === o.binary && !1 === o.base64;
|
|
r && "undefined" != typeof r.binary || (o.binary = !c);
|
|
(t instanceof h && 0 === t.uncompressedSize || o.dir || !t || 0 === t.length) && (o.base64 = !1,
|
|
o.binary = !0, t = "", o.compression = "STORE", i = "string");
|
|
var p;
|
|
p = t instanceof h || t instanceof s ? t : f.isNode && f.isStream(t) ? new d(e, t) : a.prepareContent(e, t, o.binary, o.optimizedBinaryString, o.base64);
|
|
var b = new l(e, p, o);
|
|
this.files[e] = b;
|
|
}, m = function(e) {
|
|
"/" === e.slice(-1) && (e = e.substring(0, e.length - 1));
|
|
var t = e.lastIndexOf("/");
|
|
return t > 0 ? e.substring(0, t) : "";
|
|
}, _ = function(e) {
|
|
return "/" !== e.slice(-1) && (e += "/"), e;
|
|
}, g = function(e, t) {
|
|
return t = "undefined" != typeof t ? t : u.createFolders, e = _(e), this.files[e] || p.call(this, e, null, {
|
|
dir: !0,
|
|
createFolders: t
|
|
}), this.files[e];
|
|
}, b = {
|
|
load: function() {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
},
|
|
forEach: function(e) {
|
|
var t, r, n;
|
|
for (t in this.files) this.files.hasOwnProperty(t) && (n = this.files[t], (r = t.slice(this.root.length, t.length)) && t.slice(0, this.root.length) === this.root && e(r, n));
|
|
},
|
|
filter: function(e) {
|
|
var t = [];
|
|
return this.forEach(function(r, n) {
|
|
e(r, n) && t.push(n);
|
|
}), t;
|
|
},
|
|
file: function(e, t, r) {
|
|
if (1 === arguments.length) {
|
|
if (n(e)) {
|
|
var i = e;
|
|
return this.filter(function(e, t) {
|
|
return !t.dir && i.test(e);
|
|
});
|
|
}
|
|
var a = this.files[this.root + e];
|
|
return a && !a.dir ? a : null;
|
|
}
|
|
return e = this.root + e, p.call(this, e, t, r), this;
|
|
},
|
|
folder: function(e) {
|
|
if (!e) return this;
|
|
if (n(e)) return this.filter(function(t, r) {
|
|
return r.dir && e.test(t);
|
|
});
|
|
var t = this.root + e, r = g.call(this, t), i = this.clone();
|
|
return i.root = r.name, i;
|
|
},
|
|
remove: function(e) {
|
|
e = this.root + e;
|
|
var t = this.files[e];
|
|
if (t || ("/" !== e.slice(-1) && (e += "/"), t = this.files[e]), t && !t.dir) delete this.files[e]; else for (var r = this.filter(function(t, r) {
|
|
return r.name.slice(0, e.length) === e;
|
|
}), n = 0; n < r.length; n++) delete this.files[r[n].name];
|
|
return this;
|
|
},
|
|
generate: function(e) {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
},
|
|
generateInternalStream: function(e) {
|
|
var t, r = {};
|
|
try {
|
|
if ((r = a.extend(e || {}, {
|
|
streamFiles: !1,
|
|
compression: "STORE",
|
|
compressionOptions: null,
|
|
type: "",
|
|
platform: "DOS",
|
|
comment: null,
|
|
mimeType: "application/zip",
|
|
encodeFileName: i.utf8encode
|
|
})).type = r.type.toLowerCase(), r.compression = r.compression.toUpperCase(), "binarystring" === r.type && (r.type = "string"),
|
|
!r.type) throw new Error("No output type specified.");
|
|
a.checkSupport(r.type), ("darwin" === r.platform || "freebsd" === r.platform || "linux" === r.platform || "sunos" === r.platform) && (r.platform = "UNIX"),
|
|
"win32" === r.platform && (r.platform = "DOS");
|
|
var n = r.comment || this.comment || "";
|
|
t = c.generateWorker(this, r, n);
|
|
} catch (e) {
|
|
(t = new s("error")).error(e);
|
|
}
|
|
return new o(t, r.type || "string", r.mimeType);
|
|
},
|
|
generateAsync: function(e, t) {
|
|
return this.generateInternalStream(e).accumulate(t);
|
|
},
|
|
generateNodeStream: function(e, t) {
|
|
return (e = e || {}).type || (e.type = "nodebuffer"), this.generateInternalStream(e).toNodejsStream(t);
|
|
}
|
|
};
|
|
t.exports = b;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./defaults": 5,
|
|
"./generate": 9,
|
|
"./nodejs/NodejsStreamInputAdapter": 12,
|
|
"./nodejsUtils": 14,
|
|
"./stream/GenericWorker": 28,
|
|
"./stream/StreamHelper": 29,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipObject": 35
|
|
} ],
|
|
16: [ function(e, t, r) {
|
|
t.exports = e("stream");
|
|
}, {
|
|
stream: void 0
|
|
} ],
|
|
17: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
for (var t = 0; t < this.data.length; t++) e[t] = 255 & e[t];
|
|
}
|
|
var i = e("./DataReader");
|
|
e("../utils").inherits(n, i), n.prototype.byteAt = function(e) {
|
|
return this.data[this.zero + e];
|
|
}, n.prototype.lastIndexOfSignature = function(e) {
|
|
for (var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), a = this.length - 4; a >= 0; --a) if (this.data[a] === t && this.data[a + 1] === r && this.data[a + 2] === n && this.data[a + 3] === i) return a - this.zero;
|
|
return -1;
|
|
}, n.prototype.readAndCheckSignature = function(e) {
|
|
var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), a = this.readData(4);
|
|
return t === a[0] && r === a[1] && n === a[2] && i === a[3];
|
|
}, n.prototype.readData = function(e) {
|
|
if (this.checkOffset(e), 0 === e) return [];
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./DataReader": 18
|
|
} ],
|
|
18: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.data = e, this.length = e.length, this.index = 0, this.zero = 0;
|
|
}
|
|
var i = e("../utils");
|
|
n.prototype = {
|
|
checkOffset: function(e) {
|
|
this.checkIndex(this.index + e);
|
|
},
|
|
checkIndex: function(e) {
|
|
if (this.length < this.zero + e || 0 > e) throw new Error("End of data reached (data length = " + this.length + ", asked index = " + e + "). Corrupted zip ?");
|
|
},
|
|
setIndex: function(e) {
|
|
this.checkIndex(e), this.index = e;
|
|
},
|
|
skip: function(e) {
|
|
this.setIndex(this.index + e);
|
|
},
|
|
byteAt: function(e) {},
|
|
readInt: function(e) {
|
|
var t, r = 0;
|
|
for (this.checkOffset(e), t = this.index + e - 1; t >= this.index; t--) r = (r << 8) + this.byteAt(t);
|
|
return this.index += e, r;
|
|
},
|
|
readString: function(e) {
|
|
return i.transformTo("string", this.readData(e));
|
|
},
|
|
readData: function(e) {},
|
|
lastIndexOfSignature: function(e) {},
|
|
readAndCheckSignature: function(e) {},
|
|
readDate: function() {
|
|
var e = this.readInt(4);
|
|
return new Date(Date.UTC(1980 + (e >> 25 & 127), (e >> 21 & 15) - 1, e >> 16 & 31, e >> 11 & 31, e >> 5 & 63, (31 & e) << 1));
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32
|
|
} ],
|
|
19: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./Uint8ArrayReader");
|
|
e("../utils").inherits(n, i), n.prototype.readData = function(e) {
|
|
this.checkOffset(e);
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./Uint8ArrayReader": 21
|
|
} ],
|
|
20: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./DataReader");
|
|
e("../utils").inherits(n, i), n.prototype.byteAt = function(e) {
|
|
return this.data.charCodeAt(this.zero + e);
|
|
}, n.prototype.lastIndexOfSignature = function(e) {
|
|
return this.data.lastIndexOf(e) - this.zero;
|
|
}, n.prototype.readAndCheckSignature = function(e) {
|
|
return e === this.readData(4);
|
|
}, n.prototype.readData = function(e) {
|
|
this.checkOffset(e);
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./DataReader": 18
|
|
} ],
|
|
21: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./ArrayReader");
|
|
e("../utils").inherits(n, i), n.prototype.readData = function(e) {
|
|
if (this.checkOffset(e), 0 === e) return new Uint8Array(0);
|
|
var t = this.data.subarray(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./ArrayReader": 17
|
|
} ],
|
|
22: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../utils"), i = e("../support"), a = e("./ArrayReader"), s = e("./StringReader"), o = e("./NodeBufferReader"), u = e("./Uint8ArrayReader");
|
|
t.exports = function(e) {
|
|
var t = n.getTypeOf(e);
|
|
return n.checkSupport(t), "string" !== t || i.uint8array ? "nodebuffer" === t ? new o(e) : i.uint8array ? new u(n.transformTo("uint8array", e)) : new a(n.transformTo("array", e)) : new s(e);
|
|
};
|
|
}, {
|
|
"../support": 30,
|
|
"../utils": 32,
|
|
"./ArrayReader": 17,
|
|
"./NodeBufferReader": 19,
|
|
"./StringReader": 20,
|
|
"./Uint8ArrayReader": 21
|
|
} ],
|
|
23: [ function(e, t, r) {
|
|
"use strict";
|
|
r.LOCAL_FILE_HEADER = "PK", r.CENTRAL_FILE_HEADER = "PK", r.CENTRAL_DIRECTORY_END = "PK",
|
|
r.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK", r.ZIP64_CENTRAL_DIRECTORY_END = "PK",
|
|
r.DATA_DESCRIPTOR = "PK\b";
|
|
}, {} ],
|
|
24: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, "ConvertWorker to " + e), this.destType = e;
|
|
}
|
|
var i = e("./GenericWorker"), a = e("../utils");
|
|
a.inherits(n, i), n.prototype.processChunk = function(e) {
|
|
this.push({
|
|
data: a.transformTo(this.destType, e.data),
|
|
meta: e.meta
|
|
});
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
25: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
i.call(this, "Crc32Probe"), this.withStreamInfo("crc32", 0);
|
|
}
|
|
var i = e("./GenericWorker"), a = e("../crc32");
|
|
e("../utils").inherits(n, i), n.prototype.processChunk = function(e) {
|
|
this.streamInfo.crc32 = a(e.data, this.streamInfo.crc32 || 0), this.push(e);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../crc32": 4,
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
26: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
a.call(this, "DataLengthProbe for " + e), this.propName = e, this.withStreamInfo(e, 0);
|
|
}
|
|
var i = e("../utils"), a = e("./GenericWorker");
|
|
i.inherits(n, a), n.prototype.processChunk = function(e) {
|
|
if (e) {
|
|
var t = this.streamInfo[this.propName] || 0;
|
|
this.streamInfo[this.propName] = t + e.data.length;
|
|
}
|
|
a.prototype.processChunk.call(this, e);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
27: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
a.call(this, "DataWorker");
|
|
var t = this;
|
|
this.dataIsReady = !1, this.index = 0, this.max = 0, this.data = null, this.type = "",
|
|
this._tickScheduled = !1, e.then(function(e) {
|
|
t.dataIsReady = !0, t.data = e, t.max = e && e.length || 0, t.type = i.getTypeOf(e),
|
|
t.isPaused || t._tickAndRepeat();
|
|
}, function(e) {
|
|
t.error(e);
|
|
});
|
|
}
|
|
var i = e("../utils"), a = e("./GenericWorker");
|
|
i.inherits(n, a), n.prototype.cleanUp = function() {
|
|
a.prototype.cleanUp.call(this), this.data = null;
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (!this._tickScheduled && this.dataIsReady && (this._tickScheduled = !0,
|
|
i.delay(this._tickAndRepeat, [], this)), !0);
|
|
}, n.prototype._tickAndRepeat = function() {
|
|
this._tickScheduled = !1, this.isPaused || this.isFinished || (this._tick(), this.isFinished || (i.delay(this._tickAndRepeat, [], this),
|
|
this._tickScheduled = !0));
|
|
}, n.prototype._tick = function() {
|
|
if (this.isPaused || this.isFinished) return !1;
|
|
var e = null, t = Math.min(this.max, this.index + 16384);
|
|
if (this.index >= this.max) return this.end();
|
|
switch (this.type) {
|
|
case "string":
|
|
e = this.data.substring(this.index, t);
|
|
break;
|
|
|
|
case "uint8array":
|
|
e = this.data.subarray(this.index, t);
|
|
break;
|
|
|
|
case "array":
|
|
case "nodebuffer":
|
|
e = this.data.slice(this.index, t);
|
|
}
|
|
return this.index = t, this.push({
|
|
data: e,
|
|
meta: {
|
|
percent: this.max ? this.index / this.max * 100 : 0
|
|
}
|
|
});
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
28: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.name = e || "default", this.streamInfo = {}, this.generatedError = null, this.extraStreamInfo = {},
|
|
this.isPaused = !0, this.isFinished = !1, this.isLocked = !1, this._listeners = {
|
|
data: [],
|
|
end: [],
|
|
error: []
|
|
}, this.previous = null;
|
|
}
|
|
n.prototype = {
|
|
push: function(e) {
|
|
this.emit("data", e);
|
|
},
|
|
end: function() {
|
|
if (this.isFinished) return !1;
|
|
this.flush();
|
|
try {
|
|
this.emit("end"), this.cleanUp(), this.isFinished = !0;
|
|
} catch (e) {
|
|
this.emit("error", e);
|
|
}
|
|
return !0;
|
|
},
|
|
error: function(e) {
|
|
return !this.isFinished && (this.isPaused ? this.generatedError = e : (this.isFinished = !0,
|
|
this.emit("error", e), this.previous && this.previous.error(e), this.cleanUp()),
|
|
!0);
|
|
},
|
|
on: function(e, t) {
|
|
return this._listeners[e].push(t), this;
|
|
},
|
|
cleanUp: function() {
|
|
this.streamInfo = this.generatedError = this.extraStreamInfo = null, this._listeners = [];
|
|
},
|
|
emit: function(e, t) {
|
|
if (this._listeners[e]) for (var r = 0; r < this._listeners[e].length; r++) this._listeners[e][r].call(this, t);
|
|
},
|
|
pipe: function(e) {
|
|
return e.registerPrevious(this);
|
|
},
|
|
registerPrevious: function(e) {
|
|
if (this.isLocked) throw new Error("The stream '" + this + "' has already been used.");
|
|
this.streamInfo = e.streamInfo, this.mergeStreamInfo(), this.previous = e;
|
|
var t = this;
|
|
return e.on("data", function(e) {
|
|
t.processChunk(e);
|
|
}), e.on("end", function() {
|
|
t.end();
|
|
}), e.on("error", function(e) {
|
|
t.error(e);
|
|
}), this;
|
|
},
|
|
pause: function() {
|
|
return !this.isPaused && !this.isFinished && (this.isPaused = !0, this.previous && this.previous.pause(),
|
|
!0);
|
|
},
|
|
resume: function() {
|
|
if (!this.isPaused || this.isFinished) return !1;
|
|
this.isPaused = !1;
|
|
var e = !1;
|
|
return this.generatedError && (this.error(this.generatedError), e = !0), this.previous && this.previous.resume(),
|
|
!e;
|
|
},
|
|
flush: function() {},
|
|
processChunk: function(e) {
|
|
this.push(e);
|
|
},
|
|
withStreamInfo: function(e, t) {
|
|
return this.extraStreamInfo[e] = t, this.mergeStreamInfo(), this;
|
|
},
|
|
mergeStreamInfo: function() {
|
|
for (var e in this.extraStreamInfo) this.extraStreamInfo.hasOwnProperty(e) && (this.streamInfo[e] = this.extraStreamInfo[e]);
|
|
},
|
|
lock: function() {
|
|
if (this.isLocked) throw new Error("The stream '" + this + "' has already been used.");
|
|
this.isLocked = !0, this.previous && this.previous.lock();
|
|
},
|
|
toString: function() {
|
|
var e = "Worker " + this.name;
|
|
return this.previous ? this.previous + " -> " + e : e;
|
|
}
|
|
}, t.exports = n;
|
|
}, {} ],
|
|
29: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r) {
|
|
switch (e) {
|
|
case "blob":
|
|
return o.newBlob(o.transformTo("arraybuffer", t), r);
|
|
|
|
case "base64":
|
|
return l.encode(t);
|
|
|
|
default:
|
|
return o.transformTo(e, t);
|
|
}
|
|
}
|
|
function i(e, t) {
|
|
var r, n = 0, i = null, a = 0;
|
|
for (r = 0; r < t.length; r++) a += t[r].length;
|
|
switch (e) {
|
|
case "string":
|
|
return t.join("");
|
|
|
|
case "array":
|
|
return Array.prototype.concat.apply([], t);
|
|
|
|
case "uint8array":
|
|
for (i = new Uint8Array(a), r = 0; r < t.length; r++) i.set(t[r], n), n += t[r].length;
|
|
return i;
|
|
|
|
case "nodebuffer":
|
|
return Buffer.concat(t);
|
|
|
|
default:
|
|
throw new Error("concat : unsupported type '" + e + "'");
|
|
}
|
|
}
|
|
function a(e, t) {
|
|
return new f.Promise(function(r, a) {
|
|
var s = [], o = e._internalType, u = e._outputType, h = e._mimeType;
|
|
e.on("data", function(e, r) {
|
|
s.push(e), t && t(r);
|
|
}).on("error", function(e) {
|
|
s = [], a(e);
|
|
}).on("end", function() {
|
|
try {
|
|
var e = n(u, i(o, s), h);
|
|
r(e);
|
|
} catch (e) {
|
|
a(e);
|
|
}
|
|
s = [];
|
|
}).resume();
|
|
});
|
|
}
|
|
function s(e, t, r) {
|
|
var n = t;
|
|
switch (t) {
|
|
case "blob":
|
|
case "arraybuffer":
|
|
n = "uint8array";
|
|
break;
|
|
|
|
case "base64":
|
|
n = "string";
|
|
}
|
|
try {
|
|
this._internalType = n, this._outputType = t, this._mimeType = r, o.checkSupport(n),
|
|
this._worker = e.pipe(new u(n)), e.lock();
|
|
} catch (e) {
|
|
this._worker = new h("error"), this._worker.error(e);
|
|
}
|
|
}
|
|
var o = e("../utils"), u = e("./ConvertWorker"), h = e("./GenericWorker"), l = e("../base64"), c = e("../support"), f = e("../external"), d = null;
|
|
if (c.nodestream) try {
|
|
d = e("../nodejs/NodejsStreamOutputAdapter");
|
|
} catch (e) {}
|
|
s.prototype = {
|
|
accumulate: function(e) {
|
|
return a(this, e);
|
|
},
|
|
on: function(e, t) {
|
|
var r = this;
|
|
return "data" === e ? this._worker.on(e, function(e) {
|
|
t.call(r, e.data, e.meta);
|
|
}) : this._worker.on(e, function() {
|
|
o.delay(t, arguments, r);
|
|
}), this;
|
|
},
|
|
resume: function() {
|
|
return o.delay(this._worker.resume, [], this._worker), this;
|
|
},
|
|
pause: function() {
|
|
return this._worker.pause(), this;
|
|
},
|
|
toNodejsStream: function(e) {
|
|
if (o.checkSupport("nodestream"), "nodebuffer" !== this._outputType) throw new Error(this._outputType + " is not supported by this method");
|
|
return new d(this, {
|
|
objectMode: "nodebuffer" !== this._outputType
|
|
}, e);
|
|
}
|
|
}, t.exports = s;
|
|
}, {
|
|
"../base64": 1,
|
|
"../external": 6,
|
|
"../nodejs/NodejsStreamOutputAdapter": 13,
|
|
"../support": 30,
|
|
"../utils": 32,
|
|
"./ConvertWorker": 24,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
30: [ function(e, t, r) {
|
|
"use strict";
|
|
if (r.base64 = !0, r.array = !0, r.string = !0, r.arraybuffer = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array,
|
|
r.nodebuffer = "undefined" != typeof Buffer, r.uint8array = "undefined" != typeof Uint8Array,
|
|
"undefined" == typeof ArrayBuffer) r.blob = !1; else {
|
|
var n = new ArrayBuffer(0);
|
|
try {
|
|
r.blob = 0 === new Blob([ n ], {
|
|
type: "application/zip"
|
|
}).size;
|
|
} catch (e) {
|
|
try {
|
|
var i = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder)();
|
|
i.append(n), r.blob = 0 === i.getBlob("application/zip").size;
|
|
} catch (e) {
|
|
r.blob = !1;
|
|
}
|
|
}
|
|
}
|
|
try {
|
|
r.nodestream = !!e("readable-stream").Readable;
|
|
} catch (e) {
|
|
r.nodestream = !1;
|
|
}
|
|
}, {
|
|
"readable-stream": 16
|
|
} ],
|
|
31: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
u.call(this, "utf-8 decode"), this.leftOver = null;
|
|
}
|
|
function i() {
|
|
u.call(this, "utf-8 encode");
|
|
}
|
|
for (var a = e("./utils"), s = e("./support"), o = e("./nodejsUtils"), u = e("./stream/GenericWorker"), h = new Array(256), l = 0; 256 > l; l++) h[l] = l >= 252 ? 6 : l >= 248 ? 5 : l >= 240 ? 4 : l >= 224 ? 3 : l >= 192 ? 2 : 1;
|
|
h[254] = h[254] = 1;
|
|
var c = function(e) {
|
|
var t, r, n, i, a, o = e.length, u = 0;
|
|
for (i = 0; o > i; i++) 55296 == (64512 & (r = e.charCodeAt(i))) && o > i + 1 && (56320 == (64512 & (n = e.charCodeAt(i + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
i++)), u += 128 > r ? 1 : 2048 > r ? 2 : 65536 > r ? 3 : 4;
|
|
for (t = s.uint8array ? new Uint8Array(u) : new Array(u), a = 0, i = 0; u > a; i++) 55296 == (64512 & (r = e.charCodeAt(i))) && o > i + 1 && (56320 == (64512 & (n = e.charCodeAt(i + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
i++)), 128 > r ? t[a++] = r : 2048 > r ? (t[a++] = 192 | r >>> 6, t[a++] = 128 | 63 & r) : 65536 > r ? (t[a++] = 224 | r >>> 12,
|
|
t[a++] = 128 | r >>> 6 & 63, t[a++] = 128 | 63 & r) : (t[a++] = 240 | r >>> 18,
|
|
t[a++] = 128 | r >>> 12 & 63, t[a++] = 128 | r >>> 6 & 63, t[a++] = 128 | 63 & r);
|
|
return t;
|
|
}, f = function(e, t) {
|
|
var r;
|
|
for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; r >= 0 && 128 == (192 & e[r]); ) r--;
|
|
return 0 > r ? t : 0 === r ? t : r + h[e[r]] > t ? r : t;
|
|
}, d = function(e) {
|
|
var t, r, n, i, s = e.length, o = new Array(2 * s);
|
|
for (r = 0, t = 0; s > t; ) if (128 > (n = e[t++])) o[r++] = n; else if ((i = h[n]) > 4) o[r++] = 65533,
|
|
t += i - 1; else {
|
|
for (n &= 2 === i ? 31 : 3 === i ? 15 : 7; i > 1 && s > t; ) n = n << 6 | 63 & e[t++],
|
|
i--;
|
|
i > 1 ? o[r++] = 65533 : 65536 > n ? o[r++] = n : (n -= 65536, o[r++] = 55296 | n >> 10 & 1023,
|
|
o[r++] = 56320 | 1023 & n);
|
|
}
|
|
return o.length !== r && (o.subarray ? o = o.subarray(0, r) : o.length = r), a.applyFromCharCode(o);
|
|
};
|
|
r.utf8encode = function(e) {
|
|
return s.nodebuffer ? o.newBufferFrom(e, "utf-8") : c(e);
|
|
}, r.utf8decode = function(e) {
|
|
return s.nodebuffer ? a.transformTo("nodebuffer", e).toString("utf-8") : (e = a.transformTo(s.uint8array ? "uint8array" : "array", e),
|
|
d(e));
|
|
}, a.inherits(n, u), n.prototype.processChunk = function(e) {
|
|
var t = a.transformTo(s.uint8array ? "uint8array" : "array", e.data);
|
|
if (this.leftOver && this.leftOver.length) {
|
|
if (s.uint8array) {
|
|
var n = t;
|
|
(t = new Uint8Array(n.length + this.leftOver.length)).set(this.leftOver, 0), t.set(n, this.leftOver.length);
|
|
} else t = this.leftOver.concat(t);
|
|
this.leftOver = null;
|
|
}
|
|
var i = f(t), o = t;
|
|
i !== t.length && (s.uint8array ? (o = t.subarray(0, i), this.leftOver = t.subarray(i, t.length)) : (o = t.slice(0, i),
|
|
this.leftOver = t.slice(i, t.length))), this.push({
|
|
data: r.utf8decode(o),
|
|
meta: e.meta
|
|
});
|
|
}, n.prototype.flush = function() {
|
|
this.leftOver && this.leftOver.length && (this.push({
|
|
data: r.utf8decode(this.leftOver),
|
|
meta: {}
|
|
}), this.leftOver = null);
|
|
}, r.Utf8DecodeWorker = n, a.inherits(i, u), i.prototype.processChunk = function(e) {
|
|
this.push({
|
|
data: r.utf8encode(e.data),
|
|
meta: e.meta
|
|
});
|
|
}, r.Utf8EncodeWorker = i;
|
|
}, {
|
|
"./nodejsUtils": 14,
|
|
"./stream/GenericWorker": 28,
|
|
"./support": 30,
|
|
"./utils": 32
|
|
} ],
|
|
32: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return a(e, u.uint8array ? new Uint8Array(e.length) : new Array(e.length));
|
|
}
|
|
function i(e) {
|
|
return e;
|
|
}
|
|
function a(e, t) {
|
|
for (var r = 0; r < e.length; ++r) t[r] = 255 & e.charCodeAt(r);
|
|
return t;
|
|
}
|
|
function s(e) {
|
|
var t = 65536, n = r.getTypeOf(e), i = !0;
|
|
if ("uint8array" === n ? i = d.applyCanBeUsed.uint8array : "nodebuffer" === n && (i = d.applyCanBeUsed.nodebuffer),
|
|
i) for (;t > 1; ) try {
|
|
return d.stringifyByChunk(e, n, t);
|
|
} catch (e) {
|
|
t = Math.floor(t / 2);
|
|
}
|
|
return d.stringifyByChar(e);
|
|
}
|
|
function o(e, t) {
|
|
for (var r = 0; r < e.length; r++) t[r] = e[r];
|
|
return t;
|
|
}
|
|
var u = e("./support"), h = e("./base64"), l = e("./nodejsUtils"), c = e("core-js/library/fn/set-immediate"), f = e("./external");
|
|
r.newBlob = function(e, t) {
|
|
r.checkSupport("blob");
|
|
try {
|
|
return new Blob([ e ], {
|
|
type: t
|
|
});
|
|
} catch (r) {
|
|
try {
|
|
var n = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder)();
|
|
return n.append(e), n.getBlob(t);
|
|
} catch (e) {
|
|
throw new Error("Bug : can't construct the Blob.");
|
|
}
|
|
}
|
|
};
|
|
var d = {
|
|
stringifyByChunk: function(e, t, r) {
|
|
var n = [], i = 0, a = e.length;
|
|
if (r >= a) return String.fromCharCode.apply(null, e);
|
|
for (;a > i; ) "array" === t || "nodebuffer" === t ? n.push(String.fromCharCode.apply(null, e.slice(i, Math.min(i + r, a)))) : n.push(String.fromCharCode.apply(null, e.subarray(i, Math.min(i + r, a)))),
|
|
i += r;
|
|
return n.join("");
|
|
},
|
|
stringifyByChar: function(e) {
|
|
for (var t = "", r = 0; r < e.length; r++) t += String.fromCharCode(e[r]);
|
|
return t;
|
|
},
|
|
applyCanBeUsed: {
|
|
uint8array: function() {
|
|
try {
|
|
return u.uint8array && 1 === String.fromCharCode.apply(null, new Uint8Array(1)).length;
|
|
} catch (e) {
|
|
return !1;
|
|
}
|
|
}(),
|
|
nodebuffer: function() {
|
|
try {
|
|
return u.nodebuffer && 1 === String.fromCharCode.apply(null, l.allocBuffer(1)).length;
|
|
} catch (e) {
|
|
return !1;
|
|
}
|
|
}()
|
|
}
|
|
};
|
|
r.applyFromCharCode = s;
|
|
var p = {};
|
|
p.string = {
|
|
string: i,
|
|
array: function(e) {
|
|
return a(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return p.string.uint8array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return a(e, new Uint8Array(e.length));
|
|
},
|
|
nodebuffer: function(e) {
|
|
return a(e, l.allocBuffer(e.length));
|
|
}
|
|
}, p.array = {
|
|
string: s,
|
|
array: i,
|
|
arraybuffer: function(e) {
|
|
return new Uint8Array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return new Uint8Array(e);
|
|
},
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(e);
|
|
}
|
|
}, p.arraybuffer = {
|
|
string: function(e) {
|
|
return s(new Uint8Array(e));
|
|
},
|
|
array: function(e) {
|
|
return o(new Uint8Array(e), new Array(e.byteLength));
|
|
},
|
|
arraybuffer: i,
|
|
uint8array: function(e) {
|
|
return new Uint8Array(e);
|
|
},
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(new Uint8Array(e));
|
|
}
|
|
}, p.uint8array = {
|
|
string: s,
|
|
array: function(e) {
|
|
return o(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return e.buffer;
|
|
},
|
|
uint8array: i,
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(e);
|
|
}
|
|
}, p.nodebuffer = {
|
|
string: s,
|
|
array: function(e) {
|
|
return o(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return p.nodebuffer.uint8array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return o(e, new Uint8Array(e.length));
|
|
},
|
|
nodebuffer: i
|
|
}, r.transformTo = function(e, t) {
|
|
if (t || (t = ""), !e) return t;
|
|
r.checkSupport(e);
|
|
var n = r.getTypeOf(t);
|
|
return p[n][e](t);
|
|
}, r.getTypeOf = function(e) {
|
|
return "string" == typeof e ? "string" : "[object Array]" === Object.prototype.toString.call(e) ? "array" : u.nodebuffer && l.isBuffer(e) ? "nodebuffer" : u.uint8array && e instanceof Uint8Array ? "uint8array" : u.arraybuffer && e instanceof ArrayBuffer ? "arraybuffer" : void 0;
|
|
}, r.checkSupport = function(e) {
|
|
if (!u[e.toLowerCase()]) throw new Error(e + " is not supported by this platform");
|
|
}, r.MAX_VALUE_16BITS = 65535, r.MAX_VALUE_32BITS = -1, r.pretty = function(e) {
|
|
var t, r, n = "";
|
|
for (r = 0; r < (e || "").length; r++) n += "\\x" + (16 > (t = e.charCodeAt(r)) ? "0" : "") + t.toString(16).toUpperCase();
|
|
return n;
|
|
}, r.delay = function(e, t, r) {
|
|
c(function() {
|
|
e.apply(r || null, t || []);
|
|
});
|
|
}, r.inherits = function(e, t) {
|
|
var r = function() {};
|
|
r.prototype = t.prototype, e.prototype = new r();
|
|
}, r.extend = function() {
|
|
var e, t, r = {};
|
|
for (e = 0; e < arguments.length; e++) for (t in arguments[e]) arguments[e].hasOwnProperty(t) && "undefined" == typeof r[t] && (r[t] = arguments[e][t]);
|
|
return r;
|
|
}, r.prepareContent = function(e, t, i, a, s) {
|
|
return f.Promise.resolve(t).then(function(e) {
|
|
return u.blob && (e instanceof Blob || -1 !== [ "[object File]", "[object Blob]" ].indexOf(Object.prototype.toString.call(e))) && "undefined" != typeof FileReader ? new f.Promise(function(t, r) {
|
|
var n = new FileReader();
|
|
n.onload = function(e) {
|
|
t(e.target.result);
|
|
}, n.onerror = function(e) {
|
|
r(e.target.error);
|
|
}, n.readAsArrayBuffer(e);
|
|
}) : e;
|
|
}).then(function(t) {
|
|
var o = r.getTypeOf(t);
|
|
return o ? ("arraybuffer" === o ? t = r.transformTo("uint8array", t) : "string" === o && (s ? t = h.decode(t) : i && !0 !== a && (t = n(t))),
|
|
t) : f.Promise.reject(new Error("Can't read the data of '" + e + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"));
|
|
});
|
|
};
|
|
}, {
|
|
"./base64": 1,
|
|
"./external": 6,
|
|
"./nodejsUtils": 14,
|
|
"./support": 30,
|
|
"core-js/library/fn/set-immediate": 36
|
|
} ],
|
|
33: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.files = [], this.loadOptions = e;
|
|
}
|
|
var i = e("./reader/readerFor"), a = e("./utils"), s = e("./signature"), o = e("./zipEntry"), u = (e("./utf8"),
|
|
e("./support"));
|
|
n.prototype = {
|
|
checkSignature: function(e) {
|
|
if (!this.reader.readAndCheckSignature(e)) {
|
|
this.reader.index -= 4;
|
|
var t = this.reader.readString(4);
|
|
throw new Error("Corrupted zip or bug: unexpected signature (" + a.pretty(t) + ", expected " + a.pretty(e) + ")");
|
|
}
|
|
},
|
|
isSignature: function(e, t) {
|
|
var r = this.reader.index;
|
|
this.reader.setIndex(e);
|
|
var n = this.reader.readString(4) === t;
|
|
return this.reader.setIndex(r), n;
|
|
},
|
|
readBlockEndOfCentral: function() {
|
|
this.diskNumber = this.reader.readInt(2), this.diskWithCentralDirStart = this.reader.readInt(2),
|
|
this.centralDirRecordsOnThisDisk = this.reader.readInt(2), this.centralDirRecords = this.reader.readInt(2),
|
|
this.centralDirSize = this.reader.readInt(4), this.centralDirOffset = this.reader.readInt(4),
|
|
this.zipCommentLength = this.reader.readInt(2);
|
|
var e = this.reader.readData(this.zipCommentLength), t = u.uint8array ? "uint8array" : "array", r = a.transformTo(t, e);
|
|
this.zipComment = this.loadOptions.decodeFileName(r);
|
|
},
|
|
readBlockZip64EndOfCentral: function() {
|
|
this.zip64EndOfCentralSize = this.reader.readInt(8), this.reader.skip(4), this.diskNumber = this.reader.readInt(4),
|
|
this.diskWithCentralDirStart = this.reader.readInt(4), this.centralDirRecordsOnThisDisk = this.reader.readInt(8),
|
|
this.centralDirRecords = this.reader.readInt(8), this.centralDirSize = this.reader.readInt(8),
|
|
this.centralDirOffset = this.reader.readInt(8), this.zip64ExtensibleData = {};
|
|
for (var e, t, r, n = this.zip64EndOfCentralSize - 44; n > 0; ) e = this.reader.readInt(2),
|
|
t = this.reader.readInt(4), r = this.reader.readData(t), this.zip64ExtensibleData[e] = {
|
|
id: e,
|
|
length: t,
|
|
value: r
|
|
};
|
|
},
|
|
readBlockZip64EndOfCentralLocator: function() {
|
|
if (this.diskWithZip64CentralDirStart = this.reader.readInt(4), this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8),
|
|
this.disksCount = this.reader.readInt(4), this.disksCount > 1) throw new Error("Multi-volumes zip are not supported");
|
|
},
|
|
readLocalFiles: function() {
|
|
var e, t;
|
|
for (e = 0; e < this.files.length; e++) t = this.files[e], this.reader.setIndex(t.localHeaderOffset),
|
|
this.checkSignature(s.LOCAL_FILE_HEADER), t.readLocalPart(this.reader), t.handleUTF8(),
|
|
t.processAttributes();
|
|
},
|
|
readCentralDir: function() {
|
|
var e;
|
|
for (this.reader.setIndex(this.centralDirOffset); this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER); ) (e = new o({
|
|
zip64: this.zip64
|
|
}, this.loadOptions)).readCentralPart(this.reader), this.files.push(e);
|
|
if (this.centralDirRecords !== this.files.length && 0 !== this.centralDirRecords && 0 === this.files.length) throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length);
|
|
},
|
|
readEndOfCentral: function() {
|
|
var e = this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);
|
|
if (0 > e) {
|
|
throw !this.isSignature(0, s.LOCAL_FILE_HEADER) ? new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html") : new Error("Corrupted zip: can't find end of central directory");
|
|
}
|
|
this.reader.setIndex(e);
|
|
var t = e;
|
|
if (this.checkSignature(s.CENTRAL_DIRECTORY_END), this.readBlockEndOfCentral(),
|
|
this.diskNumber === a.MAX_VALUE_16BITS || this.diskWithCentralDirStart === a.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === a.MAX_VALUE_16BITS || this.centralDirRecords === a.MAX_VALUE_16BITS || this.centralDirSize === a.MAX_VALUE_32BITS || this.centralDirOffset === a.MAX_VALUE_32BITS) {
|
|
if (this.zip64 = !0, 0 > (e = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");
|
|
if (this.reader.setIndex(e), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),
|
|
this.readBlockZip64EndOfCentralLocator(), !this.isSignature(this.relativeOffsetEndOfZip64CentralDir, s.ZIP64_CENTRAL_DIRECTORY_END) && (this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),
|
|
this.relativeOffsetEndOfZip64CentralDir < 0)) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");
|
|
this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),
|
|
this.readBlockZip64EndOfCentral();
|
|
}
|
|
var r = this.centralDirOffset + this.centralDirSize;
|
|
this.zip64 && (r += 20, r += 12 + this.zip64EndOfCentralSize);
|
|
var n = t - r;
|
|
if (n > 0) this.isSignature(t, s.CENTRAL_FILE_HEADER) || (this.reader.zero = n); else if (0 > n) throw new Error("Corrupted zip: missing " + Math.abs(n) + " bytes.");
|
|
},
|
|
prepareReader: function(e) {
|
|
this.reader = i(e);
|
|
},
|
|
load: function(e) {
|
|
this.prepareReader(e), this.readEndOfCentral(), this.readCentralDir(), this.readLocalFiles();
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"./reader/readerFor": 22,
|
|
"./signature": 23,
|
|
"./support": 30,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipEntry": 34
|
|
} ],
|
|
34: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
this.options = e, this.loadOptions = t;
|
|
}
|
|
var i = e("./reader/readerFor"), a = e("./utils"), s = e("./compressedObject"), o = e("./crc32"), u = e("./utf8"), h = e("./compressions"), l = e("./support"), c = function(e) {
|
|
for (var t in h) if (h.hasOwnProperty(t) && h[t].magic === e) return h[t];
|
|
return null;
|
|
};
|
|
n.prototype = {
|
|
isEncrypted: function() {
|
|
return 1 == (1 & this.bitFlag);
|
|
},
|
|
useUTF8: function() {
|
|
return 2048 == (2048 & this.bitFlag);
|
|
},
|
|
readLocalPart: function(e) {
|
|
var t, r;
|
|
if (e.skip(22), this.fileNameLength = e.readInt(2), r = e.readInt(2), this.fileName = e.readData(this.fileNameLength),
|
|
e.skip(r), -1 === this.compressedSize || -1 === this.uncompressedSize) throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");
|
|
if (null === (t = c(this.compressionMethod))) throw new Error("Corrupted zip : compression " + a.pretty(this.compressionMethod) + " unknown (inner file : " + a.transformTo("string", this.fileName) + ")");
|
|
this.decompressed = new s(this.compressedSize, this.uncompressedSize, this.crc32, t, e.readData(this.compressedSize));
|
|
},
|
|
readCentralPart: function(e) {
|
|
this.versionMadeBy = e.readInt(2), e.skip(2), this.bitFlag = e.readInt(2), this.compressionMethod = e.readString(2),
|
|
this.date = e.readDate(), this.crc32 = e.readInt(4), this.compressedSize = e.readInt(4),
|
|
this.uncompressedSize = e.readInt(4);
|
|
var t = e.readInt(2);
|
|
if (this.extraFieldsLength = e.readInt(2), this.fileCommentLength = e.readInt(2),
|
|
this.diskNumberStart = e.readInt(2), this.internalFileAttributes = e.readInt(2),
|
|
this.externalFileAttributes = e.readInt(4), this.localHeaderOffset = e.readInt(4),
|
|
this.isEncrypted()) throw new Error("Encrypted zip are not supported");
|
|
e.skip(t), this.readExtraFields(e), this.parseZIP64ExtraField(e), this.fileComment = e.readData(this.fileCommentLength);
|
|
},
|
|
processAttributes: function() {
|
|
this.unixPermissions = null, this.dosPermissions = null;
|
|
var e = this.versionMadeBy >> 8;
|
|
this.dir = !!(16 & this.externalFileAttributes), 0 === e && (this.dosPermissions = 63 & this.externalFileAttributes),
|
|
3 === e && (this.unixPermissions = this.externalFileAttributes >> 16 & 65535), this.dir || "/" !== this.fileNameStr.slice(-1) || (this.dir = !0);
|
|
},
|
|
parseZIP64ExtraField: function(e) {
|
|
if (this.extraFields[1]) {
|
|
var t = i(this.extraFields[1].value);
|
|
this.uncompressedSize === a.MAX_VALUE_32BITS && (this.uncompressedSize = t.readInt(8)),
|
|
this.compressedSize === a.MAX_VALUE_32BITS && (this.compressedSize = t.readInt(8)),
|
|
this.localHeaderOffset === a.MAX_VALUE_32BITS && (this.localHeaderOffset = t.readInt(8)),
|
|
this.diskNumberStart === a.MAX_VALUE_32BITS && (this.diskNumberStart = t.readInt(4));
|
|
}
|
|
},
|
|
readExtraFields: function(e) {
|
|
var t, r, n, i = e.index + this.extraFieldsLength;
|
|
for (this.extraFields || (this.extraFields = {}); e.index < i; ) t = e.readInt(2),
|
|
r = e.readInt(2), n = e.readData(r), this.extraFields[t] = {
|
|
id: t,
|
|
length: r,
|
|
value: n
|
|
};
|
|
},
|
|
handleUTF8: function() {
|
|
var e = l.uint8array ? "uint8array" : "array";
|
|
if (this.useUTF8()) this.fileNameStr = u.utf8decode(this.fileName), this.fileCommentStr = u.utf8decode(this.fileComment); else {
|
|
var t = this.findExtraFieldUnicodePath();
|
|
if (null !== t) this.fileNameStr = t; else {
|
|
var r = a.transformTo(e, this.fileName);
|
|
this.fileNameStr = this.loadOptions.decodeFileName(r);
|
|
}
|
|
var n = this.findExtraFieldUnicodeComment();
|
|
if (null !== n) this.fileCommentStr = n; else {
|
|
var i = a.transformTo(e, this.fileComment);
|
|
this.fileCommentStr = this.loadOptions.decodeFileName(i);
|
|
}
|
|
}
|
|
},
|
|
findExtraFieldUnicodePath: function() {
|
|
var e = this.extraFields[28789];
|
|
if (e) {
|
|
var t = i(e.value);
|
|
return 1 !== t.readInt(1) ? null : o(this.fileName) !== t.readInt(4) ? null : u.utf8decode(t.readData(e.length - 5));
|
|
}
|
|
return null;
|
|
},
|
|
findExtraFieldUnicodeComment: function() {
|
|
var e = this.extraFields[25461];
|
|
if (e) {
|
|
var t = i(e.value);
|
|
return 1 !== t.readInt(1) ? null : o(this.fileComment) !== t.readInt(4) ? null : u.utf8decode(t.readData(e.length - 5));
|
|
}
|
|
return null;
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./compressions": 3,
|
|
"./crc32": 4,
|
|
"./reader/readerFor": 22,
|
|
"./support": 30,
|
|
"./utf8": 31,
|
|
"./utils": 32
|
|
} ],
|
|
35: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./stream/StreamHelper"), i = e("./stream/DataWorker"), a = e("./utf8"), s = e("./compressedObject"), o = e("./stream/GenericWorker"), u = function(e, t, r) {
|
|
this.name = e, this.dir = r.dir, this.date = r.date, this.comment = r.comment, this.unixPermissions = r.unixPermissions,
|
|
this.dosPermissions = r.dosPermissions, this._data = t, this._dataBinary = r.binary,
|
|
this.options = {
|
|
compression: r.compression,
|
|
compressionOptions: r.compressionOptions
|
|
};
|
|
};
|
|
u.prototype = {
|
|
internalStream: function(e) {
|
|
var t = null, r = "string";
|
|
try {
|
|
if (!e) throw new Error("No output type specified.");
|
|
var i = "string" === (r = e.toLowerCase()) || "text" === r;
|
|
("binarystring" === r || "text" === r) && (r = "string"), t = this._decompressWorker();
|
|
var s = !this._dataBinary;
|
|
s && !i && (t = t.pipe(new a.Utf8EncodeWorker())), !s && i && (t = t.pipe(new a.Utf8DecodeWorker()));
|
|
} catch (e) {
|
|
(t = new o("error")).error(e);
|
|
}
|
|
return new n(t, r, "");
|
|
},
|
|
async: function(e, t) {
|
|
return this.internalStream(e).accumulate(t);
|
|
},
|
|
nodeStream: function(e, t) {
|
|
return this.internalStream(e || "nodebuffer").toNodejsStream(t);
|
|
},
|
|
_compressWorker: function(e, t) {
|
|
if (this._data instanceof s && this._data.compression.magic === e.magic) return this._data.getCompressedWorker();
|
|
var r = this._decompressWorker();
|
|
return this._dataBinary || (r = r.pipe(new a.Utf8EncodeWorker())), s.createWorkerFrom(r, e, t);
|
|
},
|
|
_decompressWorker: function() {
|
|
return this._data instanceof s ? this._data.getContentWorker() : this._data instanceof o ? this._data : new i(this._data);
|
|
}
|
|
};
|
|
for (var h = [ "asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer" ], l = function() {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
}, c = 0; c < h.length; c++) u.prototype[h[c]] = l;
|
|
t.exports = u;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./stream/DataWorker": 27,
|
|
"./stream/GenericWorker": 28,
|
|
"./stream/StreamHelper": 29,
|
|
"./utf8": 31
|
|
} ],
|
|
36: [ function(e, t, r) {
|
|
e("../modules/web.immediate"), t.exports = e("../modules/_core").setImmediate;
|
|
}, {
|
|
"../modules/_core": 40,
|
|
"../modules/web.immediate": 56
|
|
} ],
|
|
37: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
if ("function" != typeof e) throw TypeError(e + " is not a function!");
|
|
return e;
|
|
};
|
|
}, {} ],
|
|
38: [ function(e, t, r) {
|
|
var n = e("./_is-object");
|
|
t.exports = function(e) {
|
|
if (!n(e)) throw TypeError(e + " is not an object!");
|
|
return e;
|
|
};
|
|
}, {
|
|
"./_is-object": 51
|
|
} ],
|
|
39: [ function(e, t, r) {
|
|
var n = {}.toString;
|
|
t.exports = function(e) {
|
|
return n.call(e).slice(8, -1);
|
|
};
|
|
}, {} ],
|
|
40: [ function(e, t, r) {
|
|
var n = t.exports = {
|
|
version: "2.3.0"
|
|
};
|
|
"number" == typeof __e && (__e = n);
|
|
}, {} ],
|
|
41: [ function(e, t, r) {
|
|
var n = e("./_a-function");
|
|
t.exports = function(e, t, r) {
|
|
if (n(e), void 0 === t) return e;
|
|
switch (r) {
|
|
case 1:
|
|
return function(r) {
|
|
return e.call(t, r);
|
|
};
|
|
|
|
case 2:
|
|
return function(r, n) {
|
|
return e.call(t, r, n);
|
|
};
|
|
|
|
case 3:
|
|
return function(r, n, i) {
|
|
return e.call(t, r, n, i);
|
|
};
|
|
}
|
|
return function() {
|
|
return e.apply(t, arguments);
|
|
};
|
|
};
|
|
}, {
|
|
"./_a-function": 37
|
|
} ],
|
|
42: [ function(e, t, r) {
|
|
t.exports = !e("./_fails")(function() {
|
|
return 7 != Object.defineProperty({}, "a", {
|
|
get: function() {
|
|
return 7;
|
|
}
|
|
}).a;
|
|
});
|
|
}, {
|
|
"./_fails": 45
|
|
} ],
|
|
43: [ function(e, t, r) {
|
|
var n = e("./_is-object"), i = e("./_global").document, a = n(i) && n(i.createElement);
|
|
t.exports = function(e) {
|
|
return a ? i.createElement(e) : {};
|
|
};
|
|
}, {
|
|
"./_global": 46,
|
|
"./_is-object": 51
|
|
} ],
|
|
44: [ function(e, t, r) {
|
|
var n = e("./_global"), i = e("./_core"), a = e("./_ctx"), s = e("./_hide"), o = "prototype", u = function(e, t, r) {
|
|
var h, l, c, f = e & u.F, d = e & u.G, p = e & u.S, m = e & u.P, _ = e & u.B, g = e & u.W, b = d ? i : i[t] || (i[t] = {}), v = b[o], w = d ? n : p ? n[t] : (n[t] || {})[o];
|
|
d && (r = t);
|
|
for (h in r) (l = !f && w && void 0 !== w[h]) && h in b || (c = l ? w[h] : r[h],
|
|
b[h] = d && "function" != typeof w[h] ? r[h] : _ && l ? a(c, n) : g && w[h] == c ? function(e) {
|
|
var t = function(t, r, n) {
|
|
if (this instanceof e) {
|
|
switch (arguments.length) {
|
|
case 0:
|
|
return new e();
|
|
|
|
case 1:
|
|
return new e(t);
|
|
|
|
case 2:
|
|
return new e(t, r);
|
|
}
|
|
return new e(t, r, n);
|
|
}
|
|
return e.apply(this, arguments);
|
|
};
|
|
return t[o] = e[o], t;
|
|
}(c) : m && "function" == typeof c ? a(Function.call, c) : c, m && ((b.virtual || (b.virtual = {}))[h] = c,
|
|
e & u.R && v && !v[h] && s(v, h, c)));
|
|
};
|
|
u.F = 1, u.G = 2, u.S = 4, u.P = 8, u.B = 16, u.W = 32, u.U = 64, u.R = 128, t.exports = u;
|
|
}, {
|
|
"./_core": 40,
|
|
"./_ctx": 41,
|
|
"./_global": 46,
|
|
"./_hide": 47
|
|
} ],
|
|
45: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
try {
|
|
return !!e();
|
|
} catch (e) {
|
|
return !0;
|
|
}
|
|
};
|
|
}, {} ],
|
|
46: [ function(e, t, r) {
|
|
var n = t.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
|
|
"number" == typeof __g && (__g = n);
|
|
}, {} ],
|
|
47: [ function(e, t, r) {
|
|
var n = e("./_object-dp"), i = e("./_property-desc");
|
|
t.exports = e("./_descriptors") ? function(e, t, r) {
|
|
return n.f(e, t, i(1, r));
|
|
} : function(e, t, r) {
|
|
return e[t] = r, e;
|
|
};
|
|
}, {
|
|
"./_descriptors": 42,
|
|
"./_object-dp": 52,
|
|
"./_property-desc": 53
|
|
} ],
|
|
48: [ function(e, t, r) {
|
|
t.exports = e("./_global").document && document.documentElement;
|
|
}, {
|
|
"./_global": 46
|
|
} ],
|
|
49: [ function(e, t, r) {
|
|
t.exports = !e("./_descriptors") && !e("./_fails")(function() {
|
|
return 7 != Object.defineProperty(e("./_dom-create")("div"), "a", {
|
|
get: function() {
|
|
return 7;
|
|
}
|
|
}).a;
|
|
});
|
|
}, {
|
|
"./_descriptors": 42,
|
|
"./_dom-create": 43,
|
|
"./_fails": 45
|
|
} ],
|
|
50: [ function(e, t, r) {
|
|
t.exports = function(e, t, r) {
|
|
var n = void 0 === r;
|
|
switch (t.length) {
|
|
case 0:
|
|
return n ? e() : e.call(r);
|
|
|
|
case 1:
|
|
return n ? e(t[0]) : e.call(r, t[0]);
|
|
|
|
case 2:
|
|
return n ? e(t[0], t[1]) : e.call(r, t[0], t[1]);
|
|
|
|
case 3:
|
|
return n ? e(t[0], t[1], t[2]) : e.call(r, t[0], t[1], t[2]);
|
|
|
|
case 4:
|
|
return n ? e(t[0], t[1], t[2], t[3]) : e.call(r, t[0], t[1], t[2], t[3]);
|
|
}
|
|
return e.apply(r, t);
|
|
};
|
|
}, {} ],
|
|
51: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
return "object" == typeof e ? null !== e : "function" == typeof e;
|
|
};
|
|
}, {} ],
|
|
52: [ function(e, t, r) {
|
|
var n = e("./_an-object"), i = e("./_ie8-dom-define"), a = e("./_to-primitive"), s = Object.defineProperty;
|
|
r.f = e("./_descriptors") ? Object.defineProperty : function(e, t, r) {
|
|
if (n(e), t = a(t, !0), n(r), i) try {
|
|
return s(e, t, r);
|
|
} catch (e) {}
|
|
if ("get" in r || "set" in r) throw TypeError("Accessors not supported!");
|
|
return "value" in r && (e[t] = r.value), e;
|
|
};
|
|
}, {
|
|
"./_an-object": 38,
|
|
"./_descriptors": 42,
|
|
"./_ie8-dom-define": 49,
|
|
"./_to-primitive": 55
|
|
} ],
|
|
53: [ function(e, t, r) {
|
|
t.exports = function(e, t) {
|
|
return {
|
|
enumerable: !(1 & e),
|
|
configurable: !(2 & e),
|
|
writable: !(4 & e),
|
|
value: t
|
|
};
|
|
};
|
|
}, {} ],
|
|
54: [ function(e, t, r) {
|
|
var n, i, a, s = e("./_ctx"), o = e("./_invoke"), u = e("./_html"), h = e("./_dom-create"), l = e("./_global"), c = l.process, f = l.setImmediate, d = l.clearImmediate, p = l.MessageChannel, m = 0, _ = {}, g = "onreadystatechange", b = function() {
|
|
var e = +this;
|
|
if (_.hasOwnProperty(e)) {
|
|
var t = _[e];
|
|
delete _[e], t();
|
|
}
|
|
}, v = function(e) {
|
|
b.call(e.data);
|
|
};
|
|
f && d || (f = function(e) {
|
|
for (var t = [], r = 1; arguments.length > r; ) t.push(arguments[r++]);
|
|
return _[++m] = function() {
|
|
o("function" == typeof e ? e : Function(e), t);
|
|
}, n(m), m;
|
|
}, d = function(e) {
|
|
delete _[e];
|
|
}, "process" == e("./_cof")(c) ? n = function(e) {
|
|
c.nextTick(s(b, e, 1));
|
|
} : p ? (a = (i = new p()).port2, i.port1.onmessage = v, n = s(a.postMessage, a, 1)) : l.addEventListener && "function" == typeof postMessage && !l.importScripts ? (n = function(e) {
|
|
l.postMessage(e + "", "*");
|
|
}, l.addEventListener("message", v, !1)) : n = g in h("script") ? function(e) {
|
|
u.appendChild(h("script"))[g] = function() {
|
|
u.removeChild(this), b.call(e);
|
|
};
|
|
} : function(e) {
|
|
setTimeout(s(b, e, 1), 0);
|
|
}), t.exports = {
|
|
set: f,
|
|
clear: d
|
|
};
|
|
}, {
|
|
"./_cof": 39,
|
|
"./_ctx": 41,
|
|
"./_dom-create": 43,
|
|
"./_global": 46,
|
|
"./_html": 48,
|
|
"./_invoke": 50
|
|
} ],
|
|
55: [ function(e, t, r) {
|
|
var n = e("./_is-object");
|
|
t.exports = function(e, t) {
|
|
if (!n(e)) return e;
|
|
var r, i;
|
|
if (t && "function" == typeof (r = e.toString) && !n(i = r.call(e))) return i;
|
|
if ("function" == typeof (r = e.valueOf) && !n(i = r.call(e))) return i;
|
|
if (!t && "function" == typeof (r = e.toString) && !n(i = r.call(e))) return i;
|
|
throw TypeError("Can't convert object to primitive value");
|
|
};
|
|
}, {
|
|
"./_is-object": 51
|
|
} ],
|
|
56: [ function(e, t, r) {
|
|
var n = e("./_export"), i = e("./_task");
|
|
n(n.G + n.B, {
|
|
setImmediate: i.set,
|
|
clearImmediate: i.clear
|
|
});
|
|
}, {
|
|
"./_export": 44,
|
|
"./_task": 54
|
|
} ],
|
|
57: [ function(e, t, r) {
|
|
(function(e) {
|
|
"use strict";
|
|
function r() {
|
|
h = !0;
|
|
for (var e, t, r = l.length; r; ) {
|
|
for (t = l, l = [], e = -1; ++e < r; ) t[e]();
|
|
r = l.length;
|
|
}
|
|
h = !1;
|
|
}
|
|
var n, i = e.MutationObserver || e.WebKitMutationObserver;
|
|
if (i) {
|
|
var a = 0, s = new i(r), o = e.document.createTextNode("");
|
|
s.observe(o, {
|
|
characterData: !0
|
|
}), n = function() {
|
|
o.data = a = ++a % 2;
|
|
};
|
|
} else if (e.setImmediate || "undefined" == typeof e.MessageChannel) n = "document" in e && "onreadystatechange" in e.document.createElement("script") ? function() {
|
|
var t = e.document.createElement("script");
|
|
t.onreadystatechange = function() {
|
|
r(), t.onreadystatechange = null, t.parentNode.removeChild(t), t = null;
|
|
}, e.document.documentElement.appendChild(t);
|
|
} : function() {
|
|
setTimeout(r, 0);
|
|
}; else {
|
|
var u = new e.MessageChannel();
|
|
u.port1.onmessage = r, n = function() {
|
|
u.port2.postMessage(0);
|
|
};
|
|
}
|
|
var h, l = [];
|
|
t.exports = function(e) {
|
|
1 !== l.push(e) || h || n();
|
|
};
|
|
}).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {});
|
|
}, {} ],
|
|
58: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {}
|
|
function i(e) {
|
|
if ("function" != typeof e) throw new TypeError("resolver must be a function");
|
|
this.state = p, this.queue = [], this.outcome = void 0, e !== n && u(this, e);
|
|
}
|
|
function a(e, t, r) {
|
|
this.promise = e, "function" == typeof t && (this.onFulfilled = t, this.callFulfilled = this.otherCallFulfilled),
|
|
"function" == typeof r && (this.onRejected = r, this.callRejected = this.otherCallRejected);
|
|
}
|
|
function s(e, t, r) {
|
|
l(function() {
|
|
var n;
|
|
try {
|
|
n = t(r);
|
|
} catch (t) {
|
|
return c.reject(e, t);
|
|
}
|
|
n === e ? c.reject(e, new TypeError("Cannot resolve promise with itself")) : c.resolve(e, n);
|
|
});
|
|
}
|
|
function o(e) {
|
|
var t = e && e.then;
|
|
return !e || "object" != typeof e && "function" != typeof e || "function" != typeof t ? void 0 : function() {
|
|
t.apply(e, arguments);
|
|
};
|
|
}
|
|
function u(e, t) {
|
|
function r(t) {
|
|
i || (i = !0, c.reject(e, t));
|
|
}
|
|
function n(t) {
|
|
i || (i = !0, c.resolve(e, t));
|
|
}
|
|
var i = !1, a = h(function() {
|
|
t(n, r);
|
|
});
|
|
"error" === a.status && r(a.value);
|
|
}
|
|
function h(e, t) {
|
|
var r = {};
|
|
try {
|
|
r.value = e(t), r.status = "success";
|
|
} catch (e) {
|
|
r.status = "error", r.value = e;
|
|
}
|
|
return r;
|
|
}
|
|
var l = e("immediate"), c = {}, f = [ "REJECTED" ], d = [ "FULFILLED" ], p = [ "PENDING" ];
|
|
t.exports = i, i.prototype.catch = function(e) {
|
|
return this.then(null, e);
|
|
}, i.prototype.then = function(e, t) {
|
|
if ("function" != typeof e && this.state === d || "function" != typeof t && this.state === f) return this;
|
|
var r = new this.constructor(n);
|
|
if (this.state !== p) {
|
|
s(r, this.state === d ? e : t, this.outcome);
|
|
} else this.queue.push(new a(r, e, t));
|
|
return r;
|
|
}, a.prototype.callFulfilled = function(e) {
|
|
c.resolve(this.promise, e);
|
|
}, a.prototype.otherCallFulfilled = function(e) {
|
|
s(this.promise, this.onFulfilled, e);
|
|
}, a.prototype.callRejected = function(e) {
|
|
c.reject(this.promise, e);
|
|
}, a.prototype.otherCallRejected = function(e) {
|
|
s(this.promise, this.onRejected, e);
|
|
}, c.resolve = function(e, t) {
|
|
var r = h(o, t);
|
|
if ("error" === r.status) return c.reject(e, r.value);
|
|
var n = r.value;
|
|
if (n) u(e, n); else {
|
|
e.state = d, e.outcome = t;
|
|
for (var i = -1, a = e.queue.length; ++i < a; ) e.queue[i].callFulfilled(t);
|
|
}
|
|
return e;
|
|
}, c.reject = function(e, t) {
|
|
e.state = f, e.outcome = t;
|
|
for (var r = -1, n = e.queue.length; ++r < n; ) e.queue[r].callRejected(t);
|
|
return e;
|
|
}, i.resolve = function(e) {
|
|
return e instanceof this ? e : c.resolve(new this(n), e);
|
|
}, i.reject = function(e) {
|
|
var t = new this(n);
|
|
return c.reject(t, e);
|
|
}, i.all = function(e) {
|
|
function t(e, t) {
|
|
r.resolve(e).then(function(e) {
|
|
s[t] = e, ++o !== i || a || (a = !0, c.resolve(h, s));
|
|
}, function(e) {
|
|
a || (a = !0, c.reject(h, e));
|
|
});
|
|
}
|
|
var r = this;
|
|
if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array"));
|
|
var i = e.length, a = !1;
|
|
if (!i) return this.resolve([]);
|
|
for (var s = new Array(i), o = 0, u = -1, h = new this(n); ++u < i; ) t(e[u], u);
|
|
return h;
|
|
}, i.race = function(e) {
|
|
function t(e) {
|
|
r.resolve(e).then(function(e) {
|
|
a || (a = !0, c.resolve(o, e));
|
|
}, function(e) {
|
|
a || (a = !0, c.reject(o, e));
|
|
});
|
|
}
|
|
var r = this;
|
|
if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array"));
|
|
var i = e.length, a = !1;
|
|
if (!i) return this.resolve([]);
|
|
for (var s = -1, o = new this(n); ++s < i; ) t(e[s]);
|
|
return o;
|
|
};
|
|
}, {
|
|
immediate: 57
|
|
} ],
|
|
59: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = {};
|
|
(0, e("./lib/utils/common").assign)(n, e("./lib/deflate"), e("./lib/inflate"), e("./lib/zlib/constants")),
|
|
t.exports = n;
|
|
}, {
|
|
"./lib/deflate": 60,
|
|
"./lib/inflate": 61,
|
|
"./lib/utils/common": 62,
|
|
"./lib/zlib/constants": 65
|
|
} ],
|
|
60: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
if (!(this instanceof n)) return new n(e);
|
|
this.options = s.assign({
|
|
level: f,
|
|
method: p,
|
|
chunkSize: 16384,
|
|
windowBits: 15,
|
|
memLevel: 8,
|
|
strategy: d,
|
|
to: ""
|
|
}, e || {});
|
|
var t = this.options;
|
|
t.raw && t.windowBits > 0 ? t.windowBits = -t.windowBits : t.gzip && t.windowBits > 0 && t.windowBits < 16 && (t.windowBits += 16),
|
|
this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new h(),
|
|
this.strm.avail_out = 0;
|
|
var r = a.deflateInit2(this.strm, t.level, t.method, t.windowBits, t.memLevel, t.strategy);
|
|
if (r !== c) throw new Error(u[r]);
|
|
if (t.header && a.deflateSetHeader(this.strm, t.header), t.dictionary) {
|
|
var i;
|
|
if (i = "string" == typeof t.dictionary ? o.string2buf(t.dictionary) : "[object ArrayBuffer]" === l.call(t.dictionary) ? new Uint8Array(t.dictionary) : t.dictionary,
|
|
(r = a.deflateSetDictionary(this.strm, i)) !== c) throw new Error(u[r]);
|
|
this._dict_set = !0;
|
|
}
|
|
}
|
|
function i(e, t) {
|
|
var r = new n(t);
|
|
if (r.push(e, !0), r.err) throw r.msg || u[r.err];
|
|
return r.result;
|
|
}
|
|
var a = e("./zlib/deflate"), s = e("./utils/common"), o = e("./utils/strings"), u = e("./zlib/messages"), h = e("./zlib/zstream"), l = Object.prototype.toString, c = 0, f = -1, d = 0, p = 8;
|
|
n.prototype.push = function(e, t) {
|
|
var r, n, i = this.strm, u = this.options.chunkSize;
|
|
if (this.ended) return !1;
|
|
n = t === ~~t ? t : !0 === t ? 4 : 0, "string" == typeof e ? i.input = o.string2buf(e) : "[object ArrayBuffer]" === l.call(e) ? i.input = new Uint8Array(e) : i.input = e,
|
|
i.next_in = 0, i.avail_in = i.input.length;
|
|
do {
|
|
if (0 === i.avail_out && (i.output = new s.Buf8(u), i.next_out = 0, i.avail_out = u),
|
|
1 !== (r = a.deflate(i, n)) && r !== c) return this.onEnd(r), this.ended = !0, !1;
|
|
(0 === i.avail_out || 0 === i.avail_in && (4 === n || 2 === n)) && ("string" === this.options.to ? this.onData(o.buf2binstring(s.shrinkBuf(i.output, i.next_out))) : this.onData(s.shrinkBuf(i.output, i.next_out)));
|
|
} while ((i.avail_in > 0 || 0 === i.avail_out) && 1 !== r);
|
|
return 4 === n ? (r = a.deflateEnd(this.strm), this.onEnd(r), this.ended = !0, r === c) : 2 !== n || (this.onEnd(c),
|
|
i.avail_out = 0, !0);
|
|
}, n.prototype.onData = function(e) {
|
|
this.chunks.push(e);
|
|
}, n.prototype.onEnd = function(e) {
|
|
e === c && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = s.flattenChunks(this.chunks)),
|
|
this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
}, r.Deflate = n, r.deflate = i, r.deflateRaw = function(e, t) {
|
|
return (t = t || {}).raw = !0, i(e, t);
|
|
}, r.gzip = function(e, t) {
|
|
return (t = t || {}).gzip = !0, i(e, t);
|
|
};
|
|
}, {
|
|
"./utils/common": 62,
|
|
"./utils/strings": 63,
|
|
"./zlib/deflate": 67,
|
|
"./zlib/messages": 72,
|
|
"./zlib/zstream": 74
|
|
} ],
|
|
61: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
if (!(this instanceof n)) return new n(e);
|
|
this.options = s.assign({
|
|
chunkSize: 16384,
|
|
windowBits: 0,
|
|
to: ""
|
|
}, e || {});
|
|
var t = this.options;
|
|
t.raw && t.windowBits >= 0 && t.windowBits < 16 && (t.windowBits = -t.windowBits,
|
|
0 === t.windowBits && (t.windowBits = -15)), !(t.windowBits >= 0 && t.windowBits < 16) || e && e.windowBits || (t.windowBits += 32),
|
|
t.windowBits > 15 && t.windowBits < 48 && 0 == (15 & t.windowBits) && (t.windowBits |= 15),
|
|
this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new l(),
|
|
this.strm.avail_out = 0;
|
|
var r = a.inflateInit2(this.strm, t.windowBits);
|
|
if (r !== u.Z_OK) throw new Error(h[r]);
|
|
this.header = new c(), a.inflateGetHeader(this.strm, this.header);
|
|
}
|
|
function i(e, t) {
|
|
var r = new n(t);
|
|
if (r.push(e, !0), r.err) throw r.msg || h[r.err];
|
|
return r.result;
|
|
}
|
|
var a = e("./zlib/inflate"), s = e("./utils/common"), o = e("./utils/strings"), u = e("./zlib/constants"), h = e("./zlib/messages"), l = e("./zlib/zstream"), c = e("./zlib/gzheader"), f = Object.prototype.toString;
|
|
n.prototype.push = function(e, t) {
|
|
var r, n, i, h, l, c, d = this.strm, p = this.options.chunkSize, m = this.options.dictionary, _ = !1;
|
|
if (this.ended) return !1;
|
|
n = t === ~~t ? t : !0 === t ? u.Z_FINISH : u.Z_NO_FLUSH, "string" == typeof e ? d.input = o.binstring2buf(e) : "[object ArrayBuffer]" === f.call(e) ? d.input = new Uint8Array(e) : d.input = e,
|
|
d.next_in = 0, d.avail_in = d.input.length;
|
|
do {
|
|
if (0 === d.avail_out && (d.output = new s.Buf8(p), d.next_out = 0, d.avail_out = p),
|
|
(r = a.inflate(d, u.Z_NO_FLUSH)) === u.Z_NEED_DICT && m && (c = "string" == typeof m ? o.string2buf(m) : "[object ArrayBuffer]" === f.call(m) ? new Uint8Array(m) : m,
|
|
r = a.inflateSetDictionary(this.strm, c)), r === u.Z_BUF_ERROR && !0 === _ && (r = u.Z_OK,
|
|
_ = !1), r !== u.Z_STREAM_END && r !== u.Z_OK) return this.onEnd(r), this.ended = !0,
|
|
!1;
|
|
d.next_out && (0 === d.avail_out || r === u.Z_STREAM_END || 0 === d.avail_in && (n === u.Z_FINISH || n === u.Z_SYNC_FLUSH)) && ("string" === this.options.to ? (i = o.utf8border(d.output, d.next_out),
|
|
h = d.next_out - i, l = o.buf2string(d.output, i), d.next_out = h, d.avail_out = p - h,
|
|
h && s.arraySet(d.output, d.output, i, h, 0), this.onData(l)) : this.onData(s.shrinkBuf(d.output, d.next_out))),
|
|
0 === d.avail_in && 0 === d.avail_out && (_ = !0);
|
|
} while ((d.avail_in > 0 || 0 === d.avail_out) && r !== u.Z_STREAM_END);
|
|
return r === u.Z_STREAM_END && (n = u.Z_FINISH), n === u.Z_FINISH ? (r = a.inflateEnd(this.strm),
|
|
this.onEnd(r), this.ended = !0, r === u.Z_OK) : n !== u.Z_SYNC_FLUSH || (this.onEnd(u.Z_OK),
|
|
d.avail_out = 0, !0);
|
|
}, n.prototype.onData = function(e) {
|
|
this.chunks.push(e);
|
|
}, n.prototype.onEnd = function(e) {
|
|
e === u.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = s.flattenChunks(this.chunks)),
|
|
this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
}, r.Inflate = n, r.inflate = i, r.inflateRaw = function(e, t) {
|
|
return (t = t || {}).raw = !0, i(e, t);
|
|
}, r.ungzip = i;
|
|
}, {
|
|
"./utils/common": 62,
|
|
"./utils/strings": 63,
|
|
"./zlib/constants": 65,
|
|
"./zlib/gzheader": 68,
|
|
"./zlib/inflate": 70,
|
|
"./zlib/messages": 72,
|
|
"./zlib/zstream": 74
|
|
} ],
|
|
62: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array;
|
|
r.assign = function(e) {
|
|
for (var t = Array.prototype.slice.call(arguments, 1); t.length; ) {
|
|
var r = t.shift();
|
|
if (r) {
|
|
if ("object" != typeof r) throw new TypeError(r + "must be non-object");
|
|
for (var n in r) r.hasOwnProperty(n) && (e[n] = r[n]);
|
|
}
|
|
}
|
|
return e;
|
|
}, r.shrinkBuf = function(e, t) {
|
|
return e.length === t ? e : e.subarray ? e.subarray(0, t) : (e.length = t, e);
|
|
};
|
|
var i = {
|
|
arraySet: function(e, t, r, n, i) {
|
|
if (t.subarray && e.subarray) e.set(t.subarray(r, r + n), i); else for (var a = 0; n > a; a++) e[i + a] = t[r + a];
|
|
},
|
|
flattenChunks: function(e) {
|
|
var t, r, n, i, a, s;
|
|
for (n = 0, t = 0, r = e.length; r > t; t++) n += e[t].length;
|
|
for (s = new Uint8Array(n), i = 0, t = 0, r = e.length; r > t; t++) a = e[t], s.set(a, i),
|
|
i += a.length;
|
|
return s;
|
|
}
|
|
}, a = {
|
|
arraySet: function(e, t, r, n, i) {
|
|
for (var a = 0; n > a; a++) e[i + a] = t[r + a];
|
|
},
|
|
flattenChunks: function(e) {
|
|
return [].concat.apply([], e);
|
|
}
|
|
};
|
|
r.setTyped = function(e) {
|
|
e ? (r.Buf8 = Uint8Array, r.Buf16 = Uint16Array, r.Buf32 = Int32Array, r.assign(r, i)) : (r.Buf8 = Array,
|
|
r.Buf16 = Array, r.Buf32 = Array, r.assign(r, a));
|
|
}, r.setTyped(n);
|
|
}, {} ],
|
|
63: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
if (65537 > t && (e.subarray && s || !e.subarray && a)) return String.fromCharCode.apply(null, i.shrinkBuf(e, t));
|
|
for (var r = "", n = 0; t > n; n++) r += String.fromCharCode(e[n]);
|
|
return r;
|
|
}
|
|
var i = e("./common"), a = !0, s = !0;
|
|
try {
|
|
String.fromCharCode.apply(null, [ 0 ]);
|
|
} catch (e) {
|
|
a = !1;
|
|
}
|
|
try {
|
|
String.fromCharCode.apply(null, new Uint8Array(1));
|
|
} catch (e) {
|
|
s = !1;
|
|
}
|
|
for (var o = new i.Buf8(256), u = 0; 256 > u; u++) o[u] = u >= 252 ? 6 : u >= 248 ? 5 : u >= 240 ? 4 : u >= 224 ? 3 : u >= 192 ? 2 : 1;
|
|
o[254] = o[254] = 1, r.string2buf = function(e) {
|
|
var t, r, n, a, s, o = e.length, u = 0;
|
|
for (a = 0; o > a; a++) 55296 == (64512 & (r = e.charCodeAt(a))) && o > a + 1 && (56320 == (64512 & (n = e.charCodeAt(a + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
a++)), u += 128 > r ? 1 : 2048 > r ? 2 : 65536 > r ? 3 : 4;
|
|
for (t = new i.Buf8(u), s = 0, a = 0; u > s; a++) 55296 == (64512 & (r = e.charCodeAt(a))) && o > a + 1 && (56320 == (64512 & (n = e.charCodeAt(a + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
a++)), 128 > r ? t[s++] = r : 2048 > r ? (t[s++] = 192 | r >>> 6, t[s++] = 128 | 63 & r) : 65536 > r ? (t[s++] = 224 | r >>> 12,
|
|
t[s++] = 128 | r >>> 6 & 63, t[s++] = 128 | 63 & r) : (t[s++] = 240 | r >>> 18,
|
|
t[s++] = 128 | r >>> 12 & 63, t[s++] = 128 | r >>> 6 & 63, t[s++] = 128 | 63 & r);
|
|
return t;
|
|
}, r.buf2binstring = function(e) {
|
|
return n(e, e.length);
|
|
}, r.binstring2buf = function(e) {
|
|
for (var t = new i.Buf8(e.length), r = 0, n = t.length; n > r; r++) t[r] = e.charCodeAt(r);
|
|
return t;
|
|
}, r.buf2string = function(e, t) {
|
|
var r, i, a, s, u = t || e.length, h = new Array(2 * u);
|
|
for (i = 0, r = 0; u > r; ) if (128 > (a = e[r++])) h[i++] = a; else if ((s = o[a]) > 4) h[i++] = 65533,
|
|
r += s - 1; else {
|
|
for (a &= 2 === s ? 31 : 3 === s ? 15 : 7; s > 1 && u > r; ) a = a << 6 | 63 & e[r++],
|
|
s--;
|
|
s > 1 ? h[i++] = 65533 : 65536 > a ? h[i++] = a : (a -= 65536, h[i++] = 55296 | a >> 10 & 1023,
|
|
h[i++] = 56320 | 1023 & a);
|
|
}
|
|
return n(h, i);
|
|
}, r.utf8border = function(e, t) {
|
|
var r;
|
|
for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; r >= 0 && 128 == (192 & e[r]); ) r--;
|
|
return 0 > r ? t : 0 === r ? t : r + o[e[r]] > t ? r : t;
|
|
};
|
|
}, {
|
|
"./common": 62
|
|
} ],
|
|
64: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function(e, t, r, n) {
|
|
for (var i = 65535 & e | 0, a = e >>> 16 & 65535 | 0, s = 0; 0 !== r; ) {
|
|
r -= s = r > 2e3 ? 2e3 : r;
|
|
do {
|
|
a = a + (i = i + t[n++] | 0) | 0;
|
|
} while (--s);
|
|
i %= 65521, a %= 65521;
|
|
}
|
|
return i | a << 16 | 0;
|
|
};
|
|
}, {} ],
|
|
65: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
Z_NO_FLUSH: 0,
|
|
Z_PARTIAL_FLUSH: 1,
|
|
Z_SYNC_FLUSH: 2,
|
|
Z_FULL_FLUSH: 3,
|
|
Z_FINISH: 4,
|
|
Z_BLOCK: 5,
|
|
Z_TREES: 6,
|
|
Z_OK: 0,
|
|
Z_STREAM_END: 1,
|
|
Z_NEED_DICT: 2,
|
|
Z_ERRNO: -1,
|
|
Z_STREAM_ERROR: -2,
|
|
Z_DATA_ERROR: -3,
|
|
Z_BUF_ERROR: -5,
|
|
Z_NO_COMPRESSION: 0,
|
|
Z_BEST_SPEED: 1,
|
|
Z_BEST_COMPRESSION: 9,
|
|
Z_DEFAULT_COMPRESSION: -1,
|
|
Z_FILTERED: 1,
|
|
Z_HUFFMAN_ONLY: 2,
|
|
Z_RLE: 3,
|
|
Z_FIXED: 4,
|
|
Z_DEFAULT_STRATEGY: 0,
|
|
Z_BINARY: 0,
|
|
Z_TEXT: 1,
|
|
Z_UNKNOWN: 2,
|
|
Z_DEFLATED: 8
|
|
};
|
|
}, {} ],
|
|
66: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = function() {
|
|
for (var e, t = [], r = 0; 256 > r; r++) {
|
|
e = r;
|
|
for (var n = 0; 8 > n; n++) e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1;
|
|
t[r] = e;
|
|
}
|
|
return t;
|
|
}();
|
|
t.exports = function(e, t, r, i) {
|
|
var a = n, s = i + r;
|
|
e ^= -1;
|
|
for (var o = i; s > o; o++) e = e >>> 8 ^ a[255 & (e ^ t[o])];
|
|
return -1 ^ e;
|
|
};
|
|
}, {} ],
|
|
67: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
return e.msg = A[t], t;
|
|
}
|
|
function i(e) {
|
|
return (e << 1) - (e > 4 ? 9 : 0);
|
|
}
|
|
function a(e) {
|
|
for (var t = e.length; --t >= 0; ) e[t] = 0;
|
|
}
|
|
function s(e) {
|
|
var t = e.state, r = t.pending;
|
|
r > e.avail_out && (r = e.avail_out), 0 !== r && (S.arraySet(e.output, t.pending_buf, t.pending_out, r, e.next_out),
|
|
e.next_out += r, t.pending_out += r, e.total_out += r, e.avail_out -= r, t.pending -= r,
|
|
0 === t.pending && (t.pending_out = 0));
|
|
}
|
|
function o(e, t) {
|
|
z._tr_flush_block(e, e.block_start >= 0 ? e.block_start : -1, e.strstart - e.block_start, t),
|
|
e.block_start = e.strstart, s(e.strm);
|
|
}
|
|
function u(e, t) {
|
|
e.pending_buf[e.pending++] = t;
|
|
}
|
|
function h(e, t) {
|
|
e.pending_buf[e.pending++] = t >>> 8 & 255, e.pending_buf[e.pending++] = 255 & t;
|
|
}
|
|
function l(e, t, r, n) {
|
|
var i = e.avail_in;
|
|
return i > n && (i = n), 0 === i ? 0 : (e.avail_in -= i, S.arraySet(t, e.input, e.next_in, i, r),
|
|
1 === e.state.wrap ? e.adler = E(e.adler, t, i, r) : 2 === e.state.wrap && (e.adler = C(e.adler, t, i, r)),
|
|
e.next_in += i, e.total_in += i, i);
|
|
}
|
|
function c(e, t) {
|
|
var r, n, i = e.max_chain_length, a = e.strstart, s = e.prev_length, o = e.nice_match, u = e.strstart > e.w_size - ne ? e.strstart - (e.w_size - ne) : 0, h = e.window, l = e.w_mask, c = e.prev, f = e.strstart + re, d = h[a + s - 1], p = h[a + s];
|
|
e.prev_length >= e.good_match && (i >>= 2), o > e.lookahead && (o = e.lookahead);
|
|
do {
|
|
if (h[(r = t) + s] === p && h[r + s - 1] === d && h[r] === h[a] && h[++r] === h[a + 1]) {
|
|
a += 2, r++;
|
|
do {} while (h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && f > a);
|
|
if (n = re - (f - a), a = f - re, n > s) {
|
|
if (e.match_start = t, s = n, n >= o) break;
|
|
d = h[a + s - 1], p = h[a + s];
|
|
}
|
|
}
|
|
} while ((t = c[t & l]) > u && 0 != --i);
|
|
return s <= e.lookahead ? s : e.lookahead;
|
|
}
|
|
function f(e) {
|
|
var t, r, n, i, a, s = e.w_size;
|
|
do {
|
|
if (i = e.window_size - e.lookahead - e.strstart, e.strstart >= s + (s - ne)) {
|
|
S.arraySet(e.window, e.window, s, s, 0), e.match_start -= s, e.strstart -= s, e.block_start -= s,
|
|
t = r = e.hash_size;
|
|
do {
|
|
n = e.head[--t], e.head[t] = n >= s ? n - s : 0;
|
|
} while (--r);
|
|
t = r = s;
|
|
do {
|
|
n = e.prev[--t], e.prev[t] = n >= s ? n - s : 0;
|
|
} while (--r);
|
|
i += s;
|
|
}
|
|
if (0 === e.strm.avail_in) break;
|
|
if (r = l(e.strm, e.window, e.strstart + e.lookahead, i), e.lookahead += r, e.lookahead + e.insert >= te) for (a = e.strstart - e.insert,
|
|
e.ins_h = e.window[a], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[a + 1]) & e.hash_mask; e.insert && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[a + te - 1]) & e.hash_mask,
|
|
e.prev[a & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = a, a++, e.insert--, !(e.lookahead + e.insert < te)); ) ;
|
|
} while (e.lookahead < ne && 0 !== e.strm.avail_in);
|
|
}
|
|
function d(e, t) {
|
|
for (var r, n; ;) {
|
|
if (e.lookahead < ne) {
|
|
if (f(e), e.lookahead < ne && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (r = 0, e.lookahead >= te && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart),
|
|
0 !== r && e.strstart - r <= e.w_size - ne && (e.match_length = c(e, r)), e.match_length >= te) if (n = z._tr_tally(e, e.strstart - e.match_start, e.match_length - te),
|
|
e.lookahead -= e.match_length, e.match_length <= e.max_lazy_match && e.lookahead >= te) {
|
|
e.match_length--;
|
|
do {
|
|
e.strstart++, e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart;
|
|
} while (0 != --e.match_length);
|
|
e.strstart++;
|
|
} else e.strstart += e.match_length, e.match_length = 0, e.ins_h = e.window[e.strstart],
|
|
e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 1]) & e.hash_mask; else n = z._tr_tally(e, 0, e.window[e.strstart]),
|
|
e.lookahead--, e.strstart++;
|
|
if (n && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = e.strstart < te - 1 ? e.strstart : te - 1, t === R ? (o(e, !0),
|
|
0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1), 0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function p(e, t) {
|
|
for (var r, n, i; ;) {
|
|
if (e.lookahead < ne) {
|
|
if (f(e), e.lookahead < ne && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (r = 0, e.lookahead >= te && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart),
|
|
e.prev_length = e.match_length, e.prev_match = e.match_start, e.match_length = te - 1,
|
|
0 !== r && e.prev_length < e.max_lazy_match && e.strstart - r <= e.w_size - ne && (e.match_length = c(e, r),
|
|
e.match_length <= 5 && (e.strategy === j || e.match_length === te && e.strstart - e.match_start > 4096) && (e.match_length = te - 1)),
|
|
e.prev_length >= te && e.match_length <= e.prev_length) {
|
|
i = e.strstart + e.lookahead - te, n = z._tr_tally(e, e.strstart - 1 - e.prev_match, e.prev_length - te),
|
|
e.lookahead -= e.prev_length - 1, e.prev_length -= 2;
|
|
do {
|
|
++e.strstart <= i && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart);
|
|
} while (0 != --e.prev_length);
|
|
if (e.match_available = 0, e.match_length = te - 1, e.strstart++, n && (o(e, !1),
|
|
0 === e.strm.avail_out)) return fe;
|
|
} else if (e.match_available) {
|
|
if ((n = z._tr_tally(e, 0, e.window[e.strstart - 1])) && o(e, !1), e.strstart++,
|
|
e.lookahead--, 0 === e.strm.avail_out) return fe;
|
|
} else e.match_available = 1, e.strstart++, e.lookahead--;
|
|
}
|
|
return e.match_available && (n = z._tr_tally(e, 0, e.window[e.strstart - 1]), e.match_available = 0),
|
|
e.insert = e.strstart < te - 1 ? e.strstart : te - 1, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function m(e, t) {
|
|
for (var r, n, i, a, s = e.window; ;) {
|
|
if (e.lookahead <= re) {
|
|
if (f(e), e.lookahead <= re && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (e.match_length = 0, e.lookahead >= te && e.strstart > 0 && ((n = s[i = e.strstart - 1]) === s[++i] && n === s[++i] && n === s[++i])) {
|
|
a = e.strstart + re;
|
|
do {} while (n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && a > i);
|
|
e.match_length = re - (a - i), e.match_length > e.lookahead && (e.match_length = e.lookahead);
|
|
}
|
|
if (e.match_length >= te ? (r = z._tr_tally(e, 1, e.match_length - te), e.lookahead -= e.match_length,
|
|
e.strstart += e.match_length, e.match_length = 0) : (r = z._tr_tally(e, 0, e.window[e.strstart]),
|
|
e.lookahead--, e.strstart++), r && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function _(e, t) {
|
|
for (var r; ;) {
|
|
if (0 === e.lookahead && (f(e), 0 === e.lookahead)) {
|
|
if (t === I) return fe;
|
|
break;
|
|
}
|
|
if (e.match_length = 0, r = z._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--,
|
|
e.strstart++, r && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function g(e, t, r, n, i) {
|
|
this.good_length = e, this.max_lazy = t, this.nice_length = r, this.max_chain = n,
|
|
this.func = i;
|
|
}
|
|
function b(e) {
|
|
e.window_size = 2 * e.w_size, a(e.head), e.max_lazy_match = x[e.level].max_lazy,
|
|
e.good_match = x[e.level].good_length, e.nice_match = x[e.level].nice_length, e.max_chain_length = x[e.level].max_chain,
|
|
e.strstart = 0, e.block_start = 0, e.lookahead = 0, e.insert = 0, e.match_length = e.prev_length = te - 1,
|
|
e.match_available = 0, e.ins_h = 0;
|
|
}
|
|
function v() {
|
|
this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0,
|
|
this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0,
|
|
this.method = K, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0,
|
|
this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0,
|
|
this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0,
|
|
this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0,
|
|
this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0,
|
|
this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0,
|
|
this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new S.Buf16(2 * $), this.dyn_dtree = new S.Buf16(2 * (2 * J + 1)),
|
|
this.bl_tree = new S.Buf16(2 * (2 * Q + 1)), a(this.dyn_ltree), a(this.dyn_dtree),
|
|
a(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new S.Buf16(ee + 1),
|
|
this.heap = new S.Buf16(2 * q + 1), a(this.heap), this.heap_len = 0, this.heap_max = 0,
|
|
this.depth = new S.Buf16(2 * q + 1), a(this.depth), this.l_buf = 0, this.lit_bufsize = 0,
|
|
this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0,
|
|
this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
|
|
}
|
|
function w(e) {
|
|
var t;
|
|
return e && e.state ? (e.total_in = e.total_out = 0, e.data_type = G, (t = e.state).pending = 0,
|
|
t.pending_out = 0, t.wrap < 0 && (t.wrap = -t.wrap), t.status = t.wrap ? ae : le,
|
|
e.adler = 2 === t.wrap ? 0 : 1, t.last_flush = I, z._tr_init(t), D) : n(e, N);
|
|
}
|
|
function y(e) {
|
|
var t = w(e);
|
|
return t === D && b(e.state), t;
|
|
}
|
|
function k(e, t, r, i, a, s) {
|
|
if (!e) return N;
|
|
var o = 1;
|
|
if (t === L && (t = 6), 0 > i ? (o = 0, i = -i) : i > 15 && (o = 2, i -= 16), 1 > a || a > Y || r !== K || 8 > i || i > 15 || 0 > t || t > 9 || 0 > s || s > M) return n(e, N);
|
|
8 === i && (i = 9);
|
|
var u = new v();
|
|
return e.state = u, u.strm = e, u.wrap = o, u.gzhead = null, u.w_bits = i, u.w_size = 1 << u.w_bits,
|
|
u.w_mask = u.w_size - 1, u.hash_bits = a + 7, u.hash_size = 1 << u.hash_bits, u.hash_mask = u.hash_size - 1,
|
|
u.hash_shift = ~~((u.hash_bits + te - 1) / te), u.window = new S.Buf8(2 * u.w_size),
|
|
u.head = new S.Buf16(u.hash_size), u.prev = new S.Buf16(u.w_size), u.lit_bufsize = 1 << a + 6,
|
|
u.pending_buf_size = 4 * u.lit_bufsize, u.pending_buf = new S.Buf8(u.pending_buf_size),
|
|
u.d_buf = 1 * u.lit_bufsize, u.l_buf = 3 * u.lit_bufsize, u.level = t, u.strategy = s,
|
|
u.method = r, y(e);
|
|
}
|
|
var x, S = e("../utils/common"), z = e("./trees"), E = e("./adler32"), C = e("./crc32"), A = e("./messages"), I = 0, O = 1, B = 3, R = 4, T = 5, D = 0, F = 1, N = -2, P = -3, U = -5, L = -1, j = 1, Z = 2, W = 3, M = 4, H = 0, G = 2, K = 8, Y = 9, X = 15, V = 8, q = 286, J = 30, Q = 19, $ = 2 * q + 1, ee = 15, te = 3, re = 258, ne = re + te + 1, ie = 32, ae = 42, se = 69, oe = 73, ue = 91, he = 103, le = 113, ce = 666, fe = 1, de = 2, pe = 3, me = 4, _e = 3;
|
|
x = [ new g(0, 0, 0, 0, function(e, t) {
|
|
var r = 65535;
|
|
for (r > e.pending_buf_size - 5 && (r = e.pending_buf_size - 5); ;) {
|
|
if (e.lookahead <= 1) {
|
|
if (f(e), 0 === e.lookahead && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
e.strstart += e.lookahead, e.lookahead = 0;
|
|
var n = e.block_start + r;
|
|
if ((0 === e.strstart || e.strstart >= n) && (e.lookahead = e.strstart - n, e.strstart = n,
|
|
o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
if (e.strstart - e.block_start >= e.w_size - ne && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : (e.strstart > e.block_start && (o(e, !1),
|
|
e.strm.avail_out), fe);
|
|
}), new g(4, 4, 8, 4, d), new g(4, 5, 16, 8, d), new g(4, 6, 32, 32, d), new g(4, 4, 16, 16, p), new g(8, 16, 32, 32, p), new g(8, 16, 128, 128, p), new g(8, 32, 128, 256, p), new g(32, 128, 258, 1024, p), new g(32, 258, 258, 4096, p) ],
|
|
r.deflateInit = function(e, t) {
|
|
return k(e, t, K, X, V, H);
|
|
}, r.deflateInit2 = k, r.deflateReset = y, r.deflateResetKeep = w, r.deflateSetHeader = function(e, t) {
|
|
return e && e.state ? 2 !== e.state.wrap ? N : (e.state.gzhead = t, D) : N;
|
|
}, r.deflate = function(e, t) {
|
|
var r, o, l, c;
|
|
if (!e || !e.state || t > T || 0 > t) return e ? n(e, N) : N;
|
|
if (o = e.state, !e.output || !e.input && 0 !== e.avail_in || o.status === ce && t !== R) return n(e, 0 === e.avail_out ? U : N);
|
|
if (o.strm = e, r = o.last_flush, o.last_flush = t, o.status === ae) if (2 === o.wrap) e.adler = 0,
|
|
u(o, 31), u(o, 139), u(o, 8), o.gzhead ? (u(o, (o.gzhead.text ? 1 : 0) + (o.gzhead.hcrc ? 2 : 0) + (o.gzhead.extra ? 4 : 0) + (o.gzhead.name ? 8 : 0) + (o.gzhead.comment ? 16 : 0)),
|
|
u(o, 255 & o.gzhead.time), u(o, o.gzhead.time >> 8 & 255), u(o, o.gzhead.time >> 16 & 255),
|
|
u(o, o.gzhead.time >> 24 & 255), u(o, 9 === o.level ? 2 : o.strategy >= Z || o.level < 2 ? 4 : 0),
|
|
u(o, 255 & o.gzhead.os), o.gzhead.extra && o.gzhead.extra.length && (u(o, 255 & o.gzhead.extra.length),
|
|
u(o, o.gzhead.extra.length >> 8 & 255)), o.gzhead.hcrc && (e.adler = C(e.adler, o.pending_buf, o.pending, 0)),
|
|
o.gzindex = 0, o.status = se) : (u(o, 0), u(o, 0), u(o, 0), u(o, 0), u(o, 0), u(o, 9 === o.level ? 2 : o.strategy >= Z || o.level < 2 ? 4 : 0),
|
|
u(o, _e), o.status = le); else {
|
|
var f = K + (o.w_bits - 8 << 4) << 8;
|
|
f |= (o.strategy >= Z || o.level < 2 ? 0 : o.level < 6 ? 1 : 6 === o.level ? 2 : 3) << 6,
|
|
0 !== o.strstart && (f |= ie), f += 31 - f % 31, o.status = le, h(o, f), 0 !== o.strstart && (h(o, e.adler >>> 16),
|
|
h(o, 65535 & e.adler)), e.adler = 1;
|
|
}
|
|
if (o.status === se) if (o.gzhead.extra) {
|
|
for (l = o.pending; o.gzindex < (65535 & o.gzhead.extra.length) && (o.pending !== o.pending_buf_size || (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending !== o.pending_buf_size)); ) u(o, 255 & o.gzhead.extra[o.gzindex]),
|
|
o.gzindex++;
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
o.gzindex === o.gzhead.extra.length && (o.gzindex = 0, o.status = oe);
|
|
} else o.status = oe;
|
|
if (o.status === oe) if (o.gzhead.name) {
|
|
l = o.pending;
|
|
do {
|
|
if (o.pending === o.pending_buf_size && (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending === o.pending_buf_size)) {
|
|
c = 1;
|
|
break;
|
|
}
|
|
c = o.gzindex < o.gzhead.name.length ? 255 & o.gzhead.name.charCodeAt(o.gzindex++) : 0,
|
|
u(o, c);
|
|
} while (0 !== c);
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
0 === c && (o.gzindex = 0, o.status = ue);
|
|
} else o.status = ue;
|
|
if (o.status === ue) if (o.gzhead.comment) {
|
|
l = o.pending;
|
|
do {
|
|
if (o.pending === o.pending_buf_size && (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending === o.pending_buf_size)) {
|
|
c = 1;
|
|
break;
|
|
}
|
|
c = o.gzindex < o.gzhead.comment.length ? 255 & o.gzhead.comment.charCodeAt(o.gzindex++) : 0,
|
|
u(o, c);
|
|
} while (0 !== c);
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
0 === c && (o.status = he);
|
|
} else o.status = he;
|
|
if (o.status === he && (o.gzhead.hcrc ? (o.pending + 2 > o.pending_buf_size && s(e),
|
|
o.pending + 2 <= o.pending_buf_size && (u(o, 255 & e.adler), u(o, e.adler >> 8 & 255),
|
|
e.adler = 0, o.status = le)) : o.status = le), 0 !== o.pending) {
|
|
if (s(e), 0 === e.avail_out) return o.last_flush = -1, D;
|
|
} else if (0 === e.avail_in && i(t) <= i(r) && t !== R) return n(e, U);
|
|
if (o.status === ce && 0 !== e.avail_in) return n(e, U);
|
|
if (0 !== e.avail_in || 0 !== o.lookahead || t !== I && o.status !== ce) {
|
|
var d = o.strategy === Z ? _(o, t) : o.strategy === W ? m(o, t) : x[o.level].func(o, t);
|
|
if ((d === pe || d === me) && (o.status = ce), d === fe || d === pe) return 0 === e.avail_out && (o.last_flush = -1),
|
|
D;
|
|
if (d === de && (t === O ? z._tr_align(o) : t !== T && (z._tr_stored_block(o, 0, 0, !1),
|
|
t === B && (a(o.head), 0 === o.lookahead && (o.strstart = 0, o.block_start = 0,
|
|
o.insert = 0))), s(e), 0 === e.avail_out)) return o.last_flush = -1, D;
|
|
}
|
|
return t !== R ? D : o.wrap <= 0 ? F : (2 === o.wrap ? (u(o, 255 & e.adler), u(o, e.adler >> 8 & 255),
|
|
u(o, e.adler >> 16 & 255), u(o, e.adler >> 24 & 255), u(o, 255 & e.total_in), u(o, e.total_in >> 8 & 255),
|
|
u(o, e.total_in >> 16 & 255), u(o, e.total_in >> 24 & 255)) : (h(o, e.adler >>> 16),
|
|
h(o, 65535 & e.adler)), s(e), o.wrap > 0 && (o.wrap = -o.wrap), 0 !== o.pending ? D : F);
|
|
}, r.deflateEnd = function(e) {
|
|
var t;
|
|
return e && e.state ? (t = e.state.status) !== ae && t !== se && t !== oe && t !== ue && t !== he && t !== le && t !== ce ? n(e, N) : (e.state = null,
|
|
t === le ? n(e, P) : D) : N;
|
|
}, r.deflateSetDictionary = function(e, t) {
|
|
var r, n, i, s, o, u, h, l, c = t.length;
|
|
if (!e || !e.state) return N;
|
|
if (2 === (s = (r = e.state).wrap) || 1 === s && r.status !== ae || r.lookahead) return N;
|
|
for (1 === s && (e.adler = E(e.adler, t, c, 0)), r.wrap = 0, c >= r.w_size && (0 === s && (a(r.head),
|
|
r.strstart = 0, r.block_start = 0, r.insert = 0), l = new S.Buf8(r.w_size), S.arraySet(l, t, c - r.w_size, r.w_size, 0),
|
|
t = l, c = r.w_size), o = e.avail_in, u = e.next_in, h = e.input, e.avail_in = c,
|
|
e.next_in = 0, e.input = t, f(r); r.lookahead >= te; ) {
|
|
n = r.strstart, i = r.lookahead - (te - 1);
|
|
do {
|
|
r.ins_h = (r.ins_h << r.hash_shift ^ r.window[n + te - 1]) & r.hash_mask, r.prev[n & r.w_mask] = r.head[r.ins_h],
|
|
r.head[r.ins_h] = n, n++;
|
|
} while (--i);
|
|
r.strstart = n, r.lookahead = te - 1, f(r);
|
|
}
|
|
return r.strstart += r.lookahead, r.block_start = r.strstart, r.insert = r.lookahead,
|
|
r.lookahead = 0, r.match_length = r.prev_length = te - 1, r.match_available = 0,
|
|
e.next_in = u, e.input = h, e.avail_in = o, r.wrap = s, D;
|
|
}, r.deflateInfo = "pako deflate (from Nodeca project)";
|
|
}, {
|
|
"../utils/common": 62,
|
|
"./adler32": 64,
|
|
"./crc32": 66,
|
|
"./messages": 72,
|
|
"./trees": 73
|
|
} ],
|
|
68: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function() {
|
|
this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0,
|
|
this.name = "", this.comment = "", this.hcrc = 0, this.done = !1;
|
|
};
|
|
}, {} ],
|
|
69: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function(e, t) {
|
|
var r, n, i, a, s, o, u, h, l, c, f, d, p, m, _, g, b, v, w, y, k, x, S, z, E;
|
|
r = e.state, n = e.next_in, z = e.input, i = n + (e.avail_in - 5), a = e.next_out,
|
|
E = e.output, s = a - (t - e.avail_out), o = a + (e.avail_out - 257), u = r.dmax,
|
|
h = r.wsize, l = r.whave, c = r.wnext, f = r.window, d = r.hold, p = r.bits, m = r.lencode,
|
|
_ = r.distcode, g = (1 << r.lenbits) - 1, b = (1 << r.distbits) - 1;
|
|
e: do {
|
|
15 > p && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = m[d & g];
|
|
t: for (;;) {
|
|
if (d >>>= w = v >>> 24, p -= w, 0 === (w = v >>> 16 & 255)) E[a++] = 65535 & v; else {
|
|
if (!(16 & w)) {
|
|
if (0 == (64 & w)) {
|
|
v = m[(65535 & v) + (d & (1 << w) - 1)];
|
|
continue t;
|
|
}
|
|
if (32 & w) {
|
|
r.mode = 12;
|
|
break e;
|
|
}
|
|
e.msg = "invalid literal/length code", r.mode = 30;
|
|
break e;
|
|
}
|
|
y = 65535 & v, (w &= 15) && (w > p && (d += z[n++] << p, p += 8), y += d & (1 << w) - 1,
|
|
d >>>= w, p -= w), 15 > p && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8),
|
|
v = _[d & b];
|
|
r: for (;;) {
|
|
if (d >>>= w = v >>> 24, p -= w, !(16 & (w = v >>> 16 & 255))) {
|
|
if (0 == (64 & w)) {
|
|
v = _[(65535 & v) + (d & (1 << w) - 1)];
|
|
continue r;
|
|
}
|
|
e.msg = "invalid distance code", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (k = 65535 & v, (w &= 15) > p && (d += z[n++] << p, w > (p += 8) && (d += z[n++] << p,
|
|
p += 8)), (k += d & (1 << w) - 1) > u) {
|
|
e.msg = "invalid distance too far back", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (d >>>= w, p -= w, k > (w = a - s)) {
|
|
if ((w = k - w) > l && r.sane) {
|
|
e.msg = "invalid distance too far back", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (x = 0, S = f, 0 === c) {
|
|
if (x += h - w, y > w) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
} else if (w > c) {
|
|
if (x += h + c - w, y > (w -= c)) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
if (x = 0, y > c) {
|
|
y -= w = c;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
}
|
|
} else if (x += c - w, y > w) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
for (;y > 2; ) E[a++] = S[x++], E[a++] = S[x++], E[a++] = S[x++], y -= 3;
|
|
y && (E[a++] = S[x++], y > 1 && (E[a++] = S[x++]));
|
|
} else {
|
|
x = a - k;
|
|
do {
|
|
E[a++] = E[x++], E[a++] = E[x++], E[a++] = E[x++], y -= 3;
|
|
} while (y > 2);
|
|
y && (E[a++] = E[x++], y > 1 && (E[a++] = E[x++]));
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
} while (i > n && o > a);
|
|
n -= y = p >> 3, d &= (1 << (p -= y << 3)) - 1, e.next_in = n, e.next_out = a, e.avail_in = i > n ? i - n + 5 : 5 - (n - i),
|
|
e.avail_out = o > a ? o - a + 257 : 257 - (a - o), r.hold = d, r.bits = p;
|
|
};
|
|
}, {} ],
|
|
70: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return (e >>> 24 & 255) + (e >>> 8 & 65280) + ((65280 & e) << 8) + ((255 & e) << 24);
|
|
}
|
|
function i() {
|
|
this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0,
|
|
this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0,
|
|
this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0,
|
|
this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null,
|
|
this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0,
|
|
this.ndist = 0, this.have = 0, this.next = null, this.lens = new d.Buf16(320), this.work = new d.Buf16(288),
|
|
this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0;
|
|
}
|
|
function a(e) {
|
|
var t;
|
|
return e && e.state ? (t = e.state, e.total_in = e.total_out = t.total = 0, e.msg = "",
|
|
t.wrap && (e.adler = 1 & t.wrap), t.mode = R, t.last = 0, t.havedict = 0, t.dmax = 32768,
|
|
t.head = null, t.hold = 0, t.bits = 0, t.lencode = t.lendyn = new d.Buf32(le), t.distcode = t.distdyn = new d.Buf32(ce),
|
|
t.sane = 1, t.back = -1, S) : C;
|
|
}
|
|
function s(e) {
|
|
var t;
|
|
return e && e.state ? ((t = e.state).wsize = 0, t.whave = 0, t.wnext = 0, a(e)) : C;
|
|
}
|
|
function o(e, t) {
|
|
var r, n;
|
|
return e && e.state ? (n = e.state, 0 > t ? (r = 0, t = -t) : (r = 1 + (t >> 4),
|
|
48 > t && (t &= 15)), t && (8 > t || t > 15) ? C : (null !== n.window && n.wbits !== t && (n.window = null),
|
|
n.wrap = r, n.wbits = t, s(e))) : C;
|
|
}
|
|
function u(e, t) {
|
|
var r, n;
|
|
return e ? (n = new i(), e.state = n, n.window = null, (r = o(e, t)) !== S && (e.state = null),
|
|
r) : C;
|
|
}
|
|
function h(e) {
|
|
if (de) {
|
|
var t;
|
|
for (c = new d.Buf32(512), f = new d.Buf32(32), t = 0; 144 > t; ) e.lens[t++] = 8;
|
|
for (;256 > t; ) e.lens[t++] = 9;
|
|
for (;280 > t; ) e.lens[t++] = 7;
|
|
for (;288 > t; ) e.lens[t++] = 8;
|
|
for (g(v, e.lens, 0, 288, c, 0, e.work, {
|
|
bits: 9
|
|
}), t = 0; 32 > t; ) e.lens[t++] = 5;
|
|
g(w, e.lens, 0, 32, f, 0, e.work, {
|
|
bits: 5
|
|
}), de = !1;
|
|
}
|
|
e.lencode = c, e.lenbits = 9, e.distcode = f, e.distbits = 5;
|
|
}
|
|
function l(e, t, r, n) {
|
|
var i, a = e.state;
|
|
return null === a.window && (a.wsize = 1 << a.wbits, a.wnext = 0, a.whave = 0, a.window = new d.Buf8(a.wsize)),
|
|
n >= a.wsize ? (d.arraySet(a.window, t, r - a.wsize, a.wsize, 0), a.wnext = 0, a.whave = a.wsize) : ((i = a.wsize - a.wnext) > n && (i = n),
|
|
d.arraySet(a.window, t, r - n, i, a.wnext), (n -= i) ? (d.arraySet(a.window, t, r - n, n, 0),
|
|
a.wnext = n, a.whave = a.wsize) : (a.wnext += i, a.wnext === a.wsize && (a.wnext = 0),
|
|
a.whave < a.wsize && (a.whave += i))), 0;
|
|
}
|
|
var c, f, d = e("../utils/common"), p = e("./adler32"), m = e("./crc32"), _ = e("./inffast"), g = e("./inftrees"), b = 0, v = 1, w = 2, y = 4, k = 5, x = 6, S = 0, z = 1, E = 2, C = -2, A = -3, I = -4, O = -5, B = 8, R = 1, T = 2, D = 3, F = 4, N = 5, P = 6, U = 7, L = 8, j = 9, Z = 10, W = 11, M = 12, H = 13, G = 14, K = 15, Y = 16, X = 17, V = 18, q = 19, J = 20, Q = 21, $ = 22, ee = 23, te = 24, re = 25, ne = 26, ie = 27, ae = 28, se = 29, oe = 30, ue = 31, he = 32, le = 852, ce = 592, fe = 15, de = !0;
|
|
r.inflateReset = s, r.inflateReset2 = o, r.inflateResetKeep = a, r.inflateInit = function(e) {
|
|
return u(e, fe);
|
|
}, r.inflateInit2 = u, r.inflate = function(e, t) {
|
|
var r, i, a, s, o, u, c, f, le, ce, fe, de, pe, me, _e, ge, be, ve, we, ye, ke, xe, Se, ze, Ee = 0, Ce = new d.Buf8(4), Ae = [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ];
|
|
if (!e || !e.state || !e.output || !e.input && 0 !== e.avail_in) return C;
|
|
(r = e.state).mode === M && (r.mode = H), o = e.next_out, a = e.output, c = e.avail_out,
|
|
s = e.next_in, i = e.input, u = e.avail_in, f = r.hold, le = r.bits, ce = u, fe = c,
|
|
xe = S;
|
|
e: for (;;) switch (r.mode) {
|
|
case R:
|
|
if (0 === r.wrap) {
|
|
r.mode = H;
|
|
break;
|
|
}
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (2 & r.wrap && 35615 === f) {
|
|
r.check = 0, Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0),
|
|
f = 0, le = 0, r.mode = T;
|
|
break;
|
|
}
|
|
if (r.flags = 0, r.head && (r.head.done = !1), !(1 & r.wrap) || (((255 & f) << 8) + (f >> 8)) % 31) {
|
|
e.msg = "incorrect header check", r.mode = oe;
|
|
break;
|
|
}
|
|
if ((15 & f) !== B) {
|
|
e.msg = "unknown compression method", r.mode = oe;
|
|
break;
|
|
}
|
|
if (le -= 4, ke = 8 + (15 & (f >>>= 4)), 0 === r.wbits) r.wbits = ke; else if (ke > r.wbits) {
|
|
e.msg = "invalid window size", r.mode = oe;
|
|
break;
|
|
}
|
|
r.dmax = 1 << ke, e.adler = r.check = 1, r.mode = 512 & f ? Z : M, f = 0, le = 0;
|
|
break;
|
|
|
|
case T:
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (r.flags = f, (255 & r.flags) !== B) {
|
|
e.msg = "unknown compression method", r.mode = oe;
|
|
break;
|
|
}
|
|
if (57344 & r.flags) {
|
|
e.msg = "unknown header flags set", r.mode = oe;
|
|
break;
|
|
}
|
|
r.head && (r.head.text = f >> 8 & 1), 512 & r.flags && (Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255,
|
|
r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0, r.mode = D;
|
|
|
|
case D:
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.head && (r.head.time = f), 512 & r.flags && (Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255,
|
|
Ce[2] = f >>> 16 & 255, Ce[3] = f >>> 24 & 255, r.check = m(r.check, Ce, 4, 0)),
|
|
f = 0, le = 0, r.mode = F;
|
|
|
|
case F:
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.head && (r.head.xflags = 255 & f, r.head.os = f >> 8), 512 & r.flags && (Ce[0] = 255 & f,
|
|
Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0, r.mode = N;
|
|
|
|
case N:
|
|
if (1024 & r.flags) {
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.length = f, r.head && (r.head.extra_len = f), 512 & r.flags && (Ce[0] = 255 & f,
|
|
Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0;
|
|
} else r.head && (r.head.extra = null);
|
|
r.mode = P;
|
|
|
|
case P:
|
|
if (1024 & r.flags && ((de = r.length) > u && (de = u), de && (r.head && (ke = r.head.extra_len - r.length,
|
|
r.head.extra || (r.head.extra = new Array(r.head.extra_len)), d.arraySet(r.head.extra, i, s, de, ke)),
|
|
512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, r.length -= de),
|
|
r.length)) break e;
|
|
r.length = 0, r.mode = U;
|
|
|
|
case U:
|
|
if (2048 & r.flags) {
|
|
if (0 === u) break e;
|
|
de = 0;
|
|
do {
|
|
ke = i[s + de++], r.head && ke && r.length < 65536 && (r.head.name += String.fromCharCode(ke));
|
|
} while (ke && u > de);
|
|
if (512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, ke) break e;
|
|
} else r.head && (r.head.name = null);
|
|
r.length = 0, r.mode = L;
|
|
|
|
case L:
|
|
if (4096 & r.flags) {
|
|
if (0 === u) break e;
|
|
de = 0;
|
|
do {
|
|
ke = i[s + de++], r.head && ke && r.length < 65536 && (r.head.comment += String.fromCharCode(ke));
|
|
} while (ke && u > de);
|
|
if (512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, ke) break e;
|
|
} else r.head && (r.head.comment = null);
|
|
r.mode = j;
|
|
|
|
case j:
|
|
if (512 & r.flags) {
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f !== (65535 & r.check)) {
|
|
e.msg = "header crc mismatch", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.head && (r.head.hcrc = r.flags >> 9 & 1, r.head.done = !0), e.adler = r.check = 0,
|
|
r.mode = M;
|
|
break;
|
|
|
|
case Z:
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
e.adler = r.check = n(f), f = 0, le = 0, r.mode = W;
|
|
|
|
case W:
|
|
if (0 === r.havedict) return e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u,
|
|
r.hold = f, r.bits = le, E;
|
|
e.adler = r.check = 1, r.mode = M;
|
|
|
|
case M:
|
|
if (t === k || t === x) break e;
|
|
|
|
case H:
|
|
if (r.last) {
|
|
f >>>= 7 & le, le -= 7 & le, r.mode = ie;
|
|
break;
|
|
}
|
|
for (;3 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
switch (r.last = 1 & f, le -= 1, 3 & (f >>>= 1)) {
|
|
case 0:
|
|
r.mode = G;
|
|
break;
|
|
|
|
case 1:
|
|
if (h(r), r.mode = J, t === x) {
|
|
f >>>= 2, le -= 2;
|
|
break e;
|
|
}
|
|
break;
|
|
|
|
case 2:
|
|
r.mode = X;
|
|
break;
|
|
|
|
case 3:
|
|
e.msg = "invalid block type", r.mode = oe;
|
|
}
|
|
f >>>= 2, le -= 2;
|
|
break;
|
|
|
|
case G:
|
|
for (f >>>= 7 & le, le -= 7 & le; 32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if ((65535 & f) != (f >>> 16 ^ 65535)) {
|
|
e.msg = "invalid stored block lengths", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.length = 65535 & f, f = 0, le = 0, r.mode = K, t === x) break e;
|
|
|
|
case K:
|
|
r.mode = Y;
|
|
|
|
case Y:
|
|
if (de = r.length) {
|
|
if (de > u && (de = u), de > c && (de = c), 0 === de) break e;
|
|
d.arraySet(a, i, s, de, o), u -= de, s += de, c -= de, o += de, r.length -= de;
|
|
break;
|
|
}
|
|
r.mode = M;
|
|
break;
|
|
|
|
case X:
|
|
for (;14 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (r.nlen = 257 + (31 & f), f >>>= 5, le -= 5, r.ndist = 1 + (31 & f), f >>>= 5,
|
|
le -= 5, r.ncode = 4 + (15 & f), f >>>= 4, le -= 4, r.nlen > 286 || r.ndist > 30) {
|
|
e.msg = "too many length or distance symbols", r.mode = oe;
|
|
break;
|
|
}
|
|
r.have = 0, r.mode = V;
|
|
|
|
case V:
|
|
for (;r.have < r.ncode; ) {
|
|
for (;3 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.lens[Ae[r.have++]] = 7 & f, f >>>= 3, le -= 3;
|
|
}
|
|
for (;r.have < 19; ) r.lens[Ae[r.have++]] = 0;
|
|
if (r.lencode = r.lendyn, r.lenbits = 7, Se = {
|
|
bits: r.lenbits
|
|
}, xe = g(b, r.lens, 0, 19, r.lencode, 0, r.work, Se), r.lenbits = Se.bits, xe) {
|
|
e.msg = "invalid code lengths set", r.mode = oe;
|
|
break;
|
|
}
|
|
r.have = 0, r.mode = q;
|
|
|
|
case q:
|
|
for (;r.have < r.nlen + r.ndist; ) {
|
|
for (;ge = (Ee = r.lencode[f & (1 << r.lenbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (16 > be) f >>>= _e, le -= _e, r.lens[r.have++] = be; else {
|
|
if (16 === be) {
|
|
for (ze = _e + 2; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f >>>= _e, le -= _e, 0 === r.have) {
|
|
e.msg = "invalid bit length repeat", r.mode = oe;
|
|
break;
|
|
}
|
|
ke = r.lens[r.have - 1], de = 3 + (3 & f), f >>>= 2, le -= 2;
|
|
} else if (17 === be) {
|
|
for (ze = _e + 3; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
le -= _e, ke = 0, de = 3 + (7 & (f >>>= _e)), f >>>= 3, le -= 3;
|
|
} else {
|
|
for (ze = _e + 7; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
le -= _e, ke = 0, de = 11 + (127 & (f >>>= _e)), f >>>= 7, le -= 7;
|
|
}
|
|
if (r.have + de > r.nlen + r.ndist) {
|
|
e.msg = "invalid bit length repeat", r.mode = oe;
|
|
break;
|
|
}
|
|
for (;de--; ) r.lens[r.have++] = ke;
|
|
}
|
|
}
|
|
if (r.mode === oe) break;
|
|
if (0 === r.lens[256]) {
|
|
e.msg = "invalid code -- missing end-of-block", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.lenbits = 9, Se = {
|
|
bits: r.lenbits
|
|
}, xe = g(v, r.lens, 0, r.nlen, r.lencode, 0, r.work, Se), r.lenbits = Se.bits,
|
|
xe) {
|
|
e.msg = "invalid literal/lengths set", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.distbits = 6, r.distcode = r.distdyn, Se = {
|
|
bits: r.distbits
|
|
}, xe = g(w, r.lens, r.nlen, r.ndist, r.distcode, 0, r.work, Se), r.distbits = Se.bits,
|
|
xe) {
|
|
e.msg = "invalid distances set", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.mode = J, t === x) break e;
|
|
|
|
case J:
|
|
r.mode = Q;
|
|
|
|
case Q:
|
|
if (u >= 6 && c >= 258) {
|
|
e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u, r.hold = f, r.bits = le,
|
|
_(e, fe), o = e.next_out, a = e.output, c = e.avail_out, s = e.next_in, i = e.input,
|
|
u = e.avail_in, f = r.hold, le = r.bits, r.mode === M && (r.back = -1);
|
|
break;
|
|
}
|
|
for (r.back = 0; ge = (Ee = r.lencode[f & (1 << r.lenbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (ge && 0 == (240 & ge)) {
|
|
for (ve = _e, we = ge, ye = be; ge = (Ee = r.lencode[ye + ((f & (1 << ve + we) - 1) >> ve)]) >>> 16 & 255,
|
|
be = 65535 & Ee, !(le >= ve + (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
f >>>= ve, le -= ve, r.back += ve;
|
|
}
|
|
if (f >>>= _e, le -= _e, r.back += _e, r.length = be, 0 === ge) {
|
|
r.mode = ne;
|
|
break;
|
|
}
|
|
if (32 & ge) {
|
|
r.back = -1, r.mode = M;
|
|
break;
|
|
}
|
|
if (64 & ge) {
|
|
e.msg = "invalid literal/length code", r.mode = oe;
|
|
break;
|
|
}
|
|
r.extra = 15 & ge, r.mode = $;
|
|
|
|
case $:
|
|
if (r.extra) {
|
|
for (ze = r.extra; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.length += f & (1 << r.extra) - 1, f >>>= r.extra, le -= r.extra, r.back += r.extra;
|
|
}
|
|
r.was = r.length, r.mode = ee;
|
|
|
|
case ee:
|
|
for (;ge = (Ee = r.distcode[f & (1 << r.distbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (0 == (240 & ge)) {
|
|
for (ve = _e, we = ge, ye = be; ge = (Ee = r.distcode[ye + ((f & (1 << ve + we) - 1) >> ve)]) >>> 16 & 255,
|
|
be = 65535 & Ee, !(le >= ve + (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
f >>>= ve, le -= ve, r.back += ve;
|
|
}
|
|
if (f >>>= _e, le -= _e, r.back += _e, 64 & ge) {
|
|
e.msg = "invalid distance code", r.mode = oe;
|
|
break;
|
|
}
|
|
r.offset = be, r.extra = 15 & ge, r.mode = te;
|
|
|
|
case te:
|
|
if (r.extra) {
|
|
for (ze = r.extra; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.offset += f & (1 << r.extra) - 1, f >>>= r.extra, le -= r.extra, r.back += r.extra;
|
|
}
|
|
if (r.offset > r.dmax) {
|
|
e.msg = "invalid distance too far back", r.mode = oe;
|
|
break;
|
|
}
|
|
r.mode = re;
|
|
|
|
case re:
|
|
if (0 === c) break e;
|
|
if (de = fe - c, r.offset > de) {
|
|
if ((de = r.offset - de) > r.whave && r.sane) {
|
|
e.msg = "invalid distance too far back", r.mode = oe;
|
|
break;
|
|
}
|
|
de > r.wnext ? (de -= r.wnext, pe = r.wsize - de) : pe = r.wnext - de, de > r.length && (de = r.length),
|
|
me = r.window;
|
|
} else me = a, pe = o - r.offset, de = r.length;
|
|
de > c && (de = c), c -= de, r.length -= de;
|
|
do {
|
|
a[o++] = me[pe++];
|
|
} while (--de);
|
|
0 === r.length && (r.mode = Q);
|
|
break;
|
|
|
|
case ne:
|
|
if (0 === c) break e;
|
|
a[o++] = r.length, c--, r.mode = Q;
|
|
break;
|
|
|
|
case ie:
|
|
if (r.wrap) {
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f |= i[s++] << le, le += 8;
|
|
}
|
|
if (fe -= c, e.total_out += fe, r.total += fe, fe && (e.adler = r.check = r.flags ? m(r.check, a, fe, o - fe) : p(r.check, a, fe, o - fe)),
|
|
fe = c, (r.flags ? f : n(f)) !== r.check) {
|
|
e.msg = "incorrect data check", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.mode = ae;
|
|
|
|
case ae:
|
|
if (r.wrap && r.flags) {
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f !== (4294967295 & r.total)) {
|
|
e.msg = "incorrect length check", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.mode = se;
|
|
|
|
case se:
|
|
xe = z;
|
|
break e;
|
|
|
|
case oe:
|
|
xe = A;
|
|
break e;
|
|
|
|
case ue:
|
|
return I;
|
|
|
|
case he:
|
|
default:
|
|
return C;
|
|
}
|
|
return e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u, r.hold = f,
|
|
r.bits = le, (r.wsize || fe !== e.avail_out && r.mode < oe && (r.mode < ie || t !== y)) && l(e, e.output, e.next_out, fe - e.avail_out) ? (r.mode = ue,
|
|
I) : (ce -= e.avail_in, fe -= e.avail_out, e.total_in += ce, e.total_out += fe,
|
|
r.total += fe, r.wrap && fe && (e.adler = r.check = r.flags ? m(r.check, a, fe, e.next_out - fe) : p(r.check, a, fe, e.next_out - fe)),
|
|
e.data_type = r.bits + (r.last ? 64 : 0) + (r.mode === M ? 128 : 0) + (r.mode === J || r.mode === K ? 256 : 0),
|
|
(0 === ce && 0 === fe || t === y) && xe === S && (xe = O), xe);
|
|
}, r.inflateEnd = function(e) {
|
|
if (!e || !e.state) return C;
|
|
var t = e.state;
|
|
return t.window && (t.window = null), e.state = null, S;
|
|
}, r.inflateGetHeader = function(e, t) {
|
|
var r;
|
|
return e && e.state ? 0 == (2 & (r = e.state).wrap) ? C : (r.head = t, t.done = !1,
|
|
S) : C;
|
|
}, r.inflateSetDictionary = function(e, t) {
|
|
var r, n = t.length;
|
|
return e && e.state ? 0 !== (r = e.state).wrap && r.mode !== W ? C : r.mode === W && p(1, t, n, 0) !== r.check ? A : l(e, t, n, n) ? (r.mode = ue,
|
|
I) : (r.havedict = 1, S) : C;
|
|
}, r.inflateInfo = "pako inflate (from Nodeca project)";
|
|
}, {
|
|
"../utils/common": 62,
|
|
"./adler32": 64,
|
|
"./crc32": 66,
|
|
"./inffast": 69,
|
|
"./inftrees": 71
|
|
} ],
|
|
71: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../utils/common"), i = 15, a = [ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 ], s = [ 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 ], o = [ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0 ], u = [ 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64 ];
|
|
t.exports = function(e, t, r, h, l, c, f, d) {
|
|
var p, m, _, g, b, v, w, y, k, x = d.bits, S = 0, z = 0, E = 0, C = 0, A = 0, I = 0, O = 0, B = 0, R = 0, T = 0, D = null, F = 0, N = new n.Buf16(16), P = new n.Buf16(16), U = null, L = 0;
|
|
for (S = 0; i >= S; S++) N[S] = 0;
|
|
for (z = 0; h > z; z++) N[t[r + z]]++;
|
|
for (A = x, C = i; C >= 1 && 0 === N[C]; C--) ;
|
|
if (A > C && (A = C), 0 === C) return l[c++] = 20971520, l[c++] = 20971520, d.bits = 1,
|
|
0;
|
|
for (E = 1; C > E && 0 === N[E]; E++) ;
|
|
for (E > A && (A = E), B = 1, S = 1; i >= S; S++) if (B <<= 1, 0 > (B -= N[S])) return -1;
|
|
if (B > 0 && (0 === e || 1 !== C)) return -1;
|
|
for (P[1] = 0, S = 1; i > S; S++) P[S + 1] = P[S] + N[S];
|
|
for (z = 0; h > z; z++) 0 !== t[r + z] && (f[P[t[r + z]]++] = z);
|
|
if (0 === e ? (D = U = f, v = 19) : 1 === e ? (D = a, F -= 257, U = s, L -= 257,
|
|
v = 256) : (D = o, U = u, v = -1), T = 0, z = 0, S = E, b = c, I = A, O = 0, _ = -1,
|
|
g = (R = 1 << A) - 1, 1 === e && R > 852 || 2 === e && R > 592) return 1;
|
|
for (;;) {
|
|
w = S - O, f[z] < v ? (y = 0, k = f[z]) : f[z] > v ? (y = U[L + f[z]], k = D[F + f[z]]) : (y = 96,
|
|
k = 0), p = 1 << S - O, E = m = 1 << I;
|
|
do {
|
|
l[b + (T >> O) + (m -= p)] = w << 24 | y << 16 | k | 0;
|
|
} while (0 !== m);
|
|
for (p = 1 << S - 1; T & p; ) p >>= 1;
|
|
if (0 !== p ? (T &= p - 1, T += p) : T = 0, z++, 0 == --N[S]) {
|
|
if (S === C) break;
|
|
S = t[r + f[z]];
|
|
}
|
|
if (S > A && (T & g) !== _) {
|
|
for (0 === O && (O = A), b += E, B = 1 << (I = S - O); C > I + O && !(0 >= (B -= N[I + O])); ) I++,
|
|
B <<= 1;
|
|
if (R += 1 << I, 1 === e && R > 852 || 2 === e && R > 592) return 1;
|
|
l[_ = T & g] = A << 24 | I << 16 | b - c | 0;
|
|
}
|
|
}
|
|
return 0 !== T && (l[b + T] = S - O << 24 | 64 << 16 | 0), d.bits = A, 0;
|
|
};
|
|
}, {
|
|
"../utils/common": 62
|
|
} ],
|
|
72: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
2: "need dictionary",
|
|
1: "stream end",
|
|
0: "",
|
|
"-1": "file error",
|
|
"-2": "stream error",
|
|
"-3": "data error",
|
|
"-4": "insufficient memory",
|
|
"-5": "buffer error",
|
|
"-6": "incompatible version"
|
|
};
|
|
}, {} ],
|
|
73: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
for (var t = e.length; --t >= 0; ) e[t] = 0;
|
|
}
|
|
function i(e, t, r, n, i) {
|
|
this.static_tree = e, this.extra_bits = t, this.extra_base = r, this.elems = n,
|
|
this.max_length = i, this.has_stree = e && e.length;
|
|
}
|
|
function a(e, t) {
|
|
this.dyn_tree = e, this.max_code = 0, this.stat_desc = t;
|
|
}
|
|
function s(e) {
|
|
return 256 > e ? te[e] : te[256 + (e >>> 7)];
|
|
}
|
|
function o(e, t) {
|
|
e.pending_buf[e.pending++] = 255 & t, e.pending_buf[e.pending++] = t >>> 8 & 255;
|
|
}
|
|
function u(e, t, r) {
|
|
e.bi_valid > M - r ? (e.bi_buf |= t << e.bi_valid & 65535, o(e, e.bi_buf), e.bi_buf = t >> M - e.bi_valid,
|
|
e.bi_valid += r - M) : (e.bi_buf |= t << e.bi_valid & 65535, e.bi_valid += r);
|
|
}
|
|
function h(e, t, r) {
|
|
u(e, r[2 * t], r[2 * t + 1]);
|
|
}
|
|
function l(e, t) {
|
|
var r = 0;
|
|
do {
|
|
r |= 1 & e, e >>>= 1, r <<= 1;
|
|
} while (--t > 0);
|
|
return r >>> 1;
|
|
}
|
|
function c(e) {
|
|
16 === e.bi_valid ? (o(e, e.bi_buf), e.bi_buf = 0, e.bi_valid = 0) : e.bi_valid >= 8 && (e.pending_buf[e.pending++] = 255 & e.bi_buf,
|
|
e.bi_buf >>= 8, e.bi_valid -= 8);
|
|
}
|
|
function f(e, t) {
|
|
var r, n, i, a, s, o, u = t.dyn_tree, h = t.max_code, l = t.stat_desc.static_tree, c = t.stat_desc.has_stree, f = t.stat_desc.extra_bits, d = t.stat_desc.extra_base, p = t.stat_desc.max_length, m = 0;
|
|
for (a = 0; W >= a; a++) e.bl_count[a] = 0;
|
|
for (u[2 * e.heap[e.heap_max] + 1] = 0, r = e.heap_max + 1; Z > r; r++) (a = u[2 * u[2 * (n = e.heap[r]) + 1] + 1] + 1) > p && (a = p,
|
|
m++), u[2 * n + 1] = a, n > h || (e.bl_count[a]++, s = 0, n >= d && (s = f[n - d]),
|
|
o = u[2 * n], e.opt_len += o * (a + s), c && (e.static_len += o * (l[2 * n + 1] + s)));
|
|
if (0 !== m) {
|
|
do {
|
|
for (a = p - 1; 0 === e.bl_count[a]; ) a--;
|
|
e.bl_count[a]--, e.bl_count[a + 1] += 2, e.bl_count[p]--, m -= 2;
|
|
} while (m > 0);
|
|
for (a = p; 0 !== a; a--) for (n = e.bl_count[a]; 0 !== n; ) (i = e.heap[--r]) > h || (u[2 * i + 1] !== a && (e.opt_len += (a - u[2 * i + 1]) * u[2 * i],
|
|
u[2 * i + 1] = a), n--);
|
|
}
|
|
}
|
|
function d(e, t, r) {
|
|
var n, i, a = new Array(W + 1), s = 0;
|
|
for (n = 1; W >= n; n++) a[n] = s = s + r[n - 1] << 1;
|
|
for (i = 0; t >= i; i++) {
|
|
var o = e[2 * i + 1];
|
|
0 !== o && (e[2 * i] = l(a[o]++, o));
|
|
}
|
|
}
|
|
function p() {
|
|
var e, t, r, n, a, s = new Array(W + 1);
|
|
for (r = 0, n = 0; N - 1 > n; n++) for (ne[n] = r, e = 0; e < 1 << V[n]; e++) re[r++] = n;
|
|
for (re[r - 1] = n, a = 0, n = 0; 16 > n; n++) for (ie[n] = a, e = 0; e < 1 << q[n]; e++) te[a++] = n;
|
|
for (a >>= 7; L > n; n++) for (ie[n] = a << 7, e = 0; e < 1 << q[n] - 7; e++) te[256 + a++] = n;
|
|
for (t = 0; W >= t; t++) s[t] = 0;
|
|
for (e = 0; 143 >= e; ) $[2 * e + 1] = 8, e++, s[8]++;
|
|
for (;255 >= e; ) $[2 * e + 1] = 9, e++, s[9]++;
|
|
for (;279 >= e; ) $[2 * e + 1] = 7, e++, s[7]++;
|
|
for (;287 >= e; ) $[2 * e + 1] = 8, e++, s[8]++;
|
|
for (d($, U + 1, s), e = 0; L > e; e++) ee[2 * e + 1] = 5, ee[2 * e] = l(e, 5);
|
|
ae = new i($, V, P + 1, U, W), se = new i(ee, q, 0, L, W), oe = new i(new Array(0), J, 0, j, H);
|
|
}
|
|
function m(e) {
|
|
var t;
|
|
for (t = 0; U > t; t++) e.dyn_ltree[2 * t] = 0;
|
|
for (t = 0; L > t; t++) e.dyn_dtree[2 * t] = 0;
|
|
for (t = 0; j > t; t++) e.bl_tree[2 * t] = 0;
|
|
e.dyn_ltree[2 * G] = 1, e.opt_len = e.static_len = 0, e.last_lit = e.matches = 0;
|
|
}
|
|
function _(e) {
|
|
e.bi_valid > 8 ? o(e, e.bi_buf) : e.bi_valid > 0 && (e.pending_buf[e.pending++] = e.bi_buf),
|
|
e.bi_buf = 0, e.bi_valid = 0;
|
|
}
|
|
function g(e, t, r, n) {
|
|
_(e), n && (o(e, r), o(e, ~r)), A.arraySet(e.pending_buf, e.window, t, r, e.pending),
|
|
e.pending += r;
|
|
}
|
|
function b(e, t, r, n) {
|
|
var i = 2 * t, a = 2 * r;
|
|
return e[i] < e[a] || e[i] === e[a] && n[t] <= n[r];
|
|
}
|
|
function v(e, t, r) {
|
|
for (var n = e.heap[r], i = r << 1; i <= e.heap_len && (i < e.heap_len && b(t, e.heap[i + 1], e.heap[i], e.depth) && i++,
|
|
!b(t, n, e.heap[i], e.depth)); ) e.heap[r] = e.heap[i], r = i, i <<= 1;
|
|
e.heap[r] = n;
|
|
}
|
|
function w(e, t, r) {
|
|
var n, i, a, o, l = 0;
|
|
if (0 !== e.last_lit) do {
|
|
n = e.pending_buf[e.d_buf + 2 * l] << 8 | e.pending_buf[e.d_buf + 2 * l + 1], i = e.pending_buf[e.l_buf + l],
|
|
l++, 0 === n ? h(e, i, t) : (h(e, (a = re[i]) + P + 1, t), 0 !== (o = V[a]) && u(e, i -= ne[a], o),
|
|
h(e, a = s(--n), r), 0 !== (o = q[a]) && u(e, n -= ie[a], o));
|
|
} while (l < e.last_lit);
|
|
h(e, G, t);
|
|
}
|
|
function y(e, t) {
|
|
var r, n, i, a = t.dyn_tree, s = t.stat_desc.static_tree, o = t.stat_desc.has_stree, u = t.stat_desc.elems, h = -1;
|
|
for (e.heap_len = 0, e.heap_max = Z, r = 0; u > r; r++) 0 !== a[2 * r] ? (e.heap[++e.heap_len] = h = r,
|
|
e.depth[r] = 0) : a[2 * r + 1] = 0;
|
|
for (;e.heap_len < 2; ) a[2 * (i = e.heap[++e.heap_len] = 2 > h ? ++h : 0)] = 1,
|
|
e.depth[i] = 0, e.opt_len--, o && (e.static_len -= s[2 * i + 1]);
|
|
for (t.max_code = h, r = e.heap_len >> 1; r >= 1; r--) v(e, a, r);
|
|
i = u;
|
|
do {
|
|
r = e.heap[1], e.heap[1] = e.heap[e.heap_len--], v(e, a, 1), n = e.heap[1], e.heap[--e.heap_max] = r,
|
|
e.heap[--e.heap_max] = n, a[2 * i] = a[2 * r] + a[2 * n], e.depth[i] = (e.depth[r] >= e.depth[n] ? e.depth[r] : e.depth[n]) + 1,
|
|
a[2 * r + 1] = a[2 * n + 1] = i, e.heap[1] = i++, v(e, a, 1);
|
|
} while (e.heap_len >= 2);
|
|
e.heap[--e.heap_max] = e.heap[1], f(e, t), d(a, h, e.bl_count);
|
|
}
|
|
function k(e, t, r) {
|
|
var n, i, a = -1, s = t[1], o = 0, u = 7, h = 4;
|
|
for (0 === s && (u = 138, h = 3), t[2 * (r + 1) + 1] = 65535, n = 0; r >= n; n++) i = s,
|
|
s = t[2 * (n + 1) + 1], ++o < u && i === s || (h > o ? e.bl_tree[2 * i] += o : 0 !== i ? (i !== a && e.bl_tree[2 * i]++,
|
|
e.bl_tree[2 * K]++) : 10 >= o ? e.bl_tree[2 * Y]++ : e.bl_tree[2 * X]++, o = 0,
|
|
a = i, 0 === s ? (u = 138, h = 3) : i === s ? (u = 6, h = 3) : (u = 7, h = 4));
|
|
}
|
|
function x(e, t, r) {
|
|
var n, i, a = -1, s = t[1], o = 0, l = 7, c = 4;
|
|
for (0 === s && (l = 138, c = 3), n = 0; r >= n; n++) if (i = s, s = t[2 * (n + 1) + 1],
|
|
!(++o < l && i === s)) {
|
|
if (c > o) do {
|
|
h(e, i, e.bl_tree);
|
|
} while (0 != --o); else 0 !== i ? (i !== a && (h(e, i, e.bl_tree), o--), h(e, K, e.bl_tree),
|
|
u(e, o - 3, 2)) : 10 >= o ? (h(e, Y, e.bl_tree), u(e, o - 3, 3)) : (h(e, X, e.bl_tree),
|
|
u(e, o - 11, 7));
|
|
o = 0, a = i, 0 === s ? (l = 138, c = 3) : i === s ? (l = 6, c = 3) : (l = 7, c = 4);
|
|
}
|
|
}
|
|
function S(e) {
|
|
var t;
|
|
for (k(e, e.dyn_ltree, e.l_desc.max_code), k(e, e.dyn_dtree, e.d_desc.max_code),
|
|
y(e, e.bl_desc), t = j - 1; t >= 3 && 0 === e.bl_tree[2 * Q[t] + 1]; t--) ;
|
|
return e.opt_len += 3 * (t + 1) + 5 + 5 + 4, t;
|
|
}
|
|
function z(e, t, r, n) {
|
|
var i;
|
|
for (u(e, t - 257, 5), u(e, r - 1, 5), u(e, n - 4, 4), i = 0; n > i; i++) u(e, e.bl_tree[2 * Q[i] + 1], 3);
|
|
x(e, e.dyn_ltree, t - 1), x(e, e.dyn_dtree, r - 1);
|
|
}
|
|
function E(e) {
|
|
var t, r = 4093624447;
|
|
for (t = 0; 31 >= t; t++, r >>>= 1) if (1 & r && 0 !== e.dyn_ltree[2 * t]) return O;
|
|
if (0 !== e.dyn_ltree[18] || 0 !== e.dyn_ltree[20] || 0 !== e.dyn_ltree[26]) return B;
|
|
for (t = 32; P > t; t++) if (0 !== e.dyn_ltree[2 * t]) return B;
|
|
return O;
|
|
}
|
|
function C(e, t, r, n) {
|
|
u(e, (T << 1) + (n ? 1 : 0), 3), g(e, t, r, !0);
|
|
}
|
|
var A = e("../utils/common"), I = 4, O = 0, B = 1, R = 2, T = 0, D = 1, F = 2, N = 29, P = 256, U = P + 1 + N, L = 30, j = 19, Z = 2 * U + 1, W = 15, M = 16, H = 7, G = 256, K = 16, Y = 17, X = 18, V = [ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0 ], q = [ 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13 ], J = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7 ], Q = [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ], $ = new Array(2 * (U + 2));
|
|
n($);
|
|
var ee = new Array(2 * L);
|
|
n(ee);
|
|
var te = new Array(512);
|
|
n(te);
|
|
var re = new Array(256);
|
|
n(re);
|
|
var ne = new Array(N);
|
|
n(ne);
|
|
var ie = new Array(L);
|
|
n(ie);
|
|
var ae, se, oe, ue = !1;
|
|
r._tr_init = function(e) {
|
|
ue || (p(), ue = !0), e.l_desc = new a(e.dyn_ltree, ae), e.d_desc = new a(e.dyn_dtree, se),
|
|
e.bl_desc = new a(e.bl_tree, oe), e.bi_buf = 0, e.bi_valid = 0, m(e);
|
|
}, r._tr_stored_block = C, r._tr_flush_block = function(e, t, r, n) {
|
|
var i, a, s = 0;
|
|
e.level > 0 ? (e.strm.data_type === R && (e.strm.data_type = E(e)), y(e, e.l_desc),
|
|
y(e, e.d_desc), s = S(e), (i = e.opt_len + 3 + 7 >>> 3) >= (a = e.static_len + 3 + 7 >>> 3) && (i = a)) : i = a = r + 5,
|
|
i >= r + 4 && -1 !== t ? C(e, t, r, n) : e.strategy === I || a === i ? (u(e, (D << 1) + (n ? 1 : 0), 3),
|
|
w(e, $, ee)) : (u(e, (F << 1) + (n ? 1 : 0), 3), z(e, e.l_desc.max_code + 1, e.d_desc.max_code + 1, s + 1),
|
|
w(e, e.dyn_ltree, e.dyn_dtree)), m(e), n && _(e);
|
|
}, r._tr_tally = function(e, t, r) {
|
|
return e.pending_buf[e.d_buf + 2 * e.last_lit] = t >>> 8 & 255, e.pending_buf[e.d_buf + 2 * e.last_lit + 1] = 255 & t,
|
|
e.pending_buf[e.l_buf + e.last_lit] = 255 & r, e.last_lit++, 0 === t ? e.dyn_ltree[2 * r]++ : (e.matches++,
|
|
t--, e.dyn_ltree[2 * (re[r] + P + 1)]++, e.dyn_dtree[2 * s(t)]++), e.last_lit === e.lit_bufsize - 1;
|
|
}, r._tr_align = function(e) {
|
|
u(e, D << 1, 3), h(e, G, $), c(e);
|
|
};
|
|
}, {
|
|
"../utils/common": 62
|
|
} ],
|
|
74: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function() {
|
|
this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null,
|
|
this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null,
|
|
this.data_type = 2, this.adler = 0;
|
|
};
|
|
}, {} ]
|
|
}, {}, [ 10 ])(10);
|
|
}), function(e) {
|
|
if ("object" == typeof exports && "undefined" != typeof module) module.exports = e(); else if ("function" == typeof define && define.amd) define([], e); else {
|
|
("undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof self ? self : this).JSZip = e();
|
|
}
|
|
}(function() {
|
|
return function e(t, r, n) {
|
|
function i(s, o) {
|
|
if (!r[s]) {
|
|
if (!t[s]) {
|
|
var u = "function" == typeof require && require;
|
|
if (!o && u) return u(s, !0);
|
|
if (a) return a(s, !0);
|
|
var h = new Error("Cannot find module '" + s + "'");
|
|
throw h.code = "MODULE_NOT_FOUND", h;
|
|
}
|
|
var l = r[s] = {
|
|
exports: {}
|
|
};
|
|
t[s][0].call(l.exports, function(e) {
|
|
var r = t[s][1][e];
|
|
return i(r || e);
|
|
}, l, l.exports, e, t, r, n);
|
|
}
|
|
return r[s].exports;
|
|
}
|
|
for (var a = "function" == typeof require && require, s = 0; s < n.length; s++) i(n[s]);
|
|
return i;
|
|
}({
|
|
1: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./utils"), i = e("./support"), a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
|
|
r.encode = function(e) {
|
|
for (var t, r, i, s, o, u, h, l = [], c = 0, f = e.length, d = f, p = "string" !== n.getTypeOf(e); c < e.length; ) d = f - c,
|
|
p ? (t = e[c++], r = f > c ? e[c++] : 0, i = f > c ? e[c++] : 0) : (t = e.charCodeAt(c++),
|
|
r = f > c ? e.charCodeAt(c++) : 0, i = f > c ? e.charCodeAt(c++) : 0), s = t >> 2,
|
|
o = (3 & t) << 4 | r >> 4, u = d > 1 ? (15 & r) << 2 | i >> 6 : 64, h = d > 2 ? 63 & i : 64,
|
|
l.push(a.charAt(s) + a.charAt(o) + a.charAt(u) + a.charAt(h));
|
|
return l.join("");
|
|
}, r.decode = function(e) {
|
|
var t, r, n, s, o, u, h = 0, l = 0, c = "data:";
|
|
if (e.substr(0, c.length) === c) throw new Error("Invalid base64 input, it looks like a data url.");
|
|
var f, d = 3 * (e = e.replace(/[^A-Za-z0-9\+\/\=]/g, "")).length / 4;
|
|
if (e.charAt(e.length - 1) === a.charAt(64) && d--, e.charAt(e.length - 2) === a.charAt(64) && d--,
|
|
d % 1 != 0) throw new Error("Invalid base64 input, bad content length.");
|
|
for (f = i.uint8array ? new Uint8Array(0 | d) : new Array(0 | d); h < e.length; ) t = a.indexOf(e.charAt(h++)) << 2 | (s = a.indexOf(e.charAt(h++))) >> 4,
|
|
r = (15 & s) << 4 | (o = a.indexOf(e.charAt(h++))) >> 2, n = (3 & o) << 6 | (u = a.indexOf(e.charAt(h++))),
|
|
f[l++] = t, 64 !== o && (f[l++] = r), 64 !== u && (f[l++] = n);
|
|
return f;
|
|
};
|
|
}, {
|
|
"./support": 30,
|
|
"./utils": 32
|
|
} ],
|
|
2: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n, i) {
|
|
this.compressedSize = e, this.uncompressedSize = t, this.crc32 = r, this.compression = n,
|
|
this.compressedContent = i;
|
|
}
|
|
var i = e("./external"), a = e("./stream/DataWorker"), s = e("./stream/DataLengthProbe"), o = e("./stream/Crc32Probe");
|
|
s = e("./stream/DataLengthProbe");
|
|
n.prototype = {
|
|
getContentWorker: function() {
|
|
var e = new a(i.Promise.resolve(this.compressedContent)).pipe(this.compression.uncompressWorker()).pipe(new s("data_length")), t = this;
|
|
return e.on("end", function() {
|
|
if (this.streamInfo.data_length !== t.uncompressedSize) throw new Error("Bug : uncompressed data size mismatch");
|
|
}), e;
|
|
},
|
|
getCompressedWorker: function() {
|
|
return new a(i.Promise.resolve(this.compressedContent)).withStreamInfo("compressedSize", this.compressedSize).withStreamInfo("uncompressedSize", this.uncompressedSize).withStreamInfo("crc32", this.crc32).withStreamInfo("compression", this.compression);
|
|
}
|
|
}, n.createWorkerFrom = function(e, t, r) {
|
|
return e.pipe(new o()).pipe(new s("uncompressedSize")).pipe(t.compressWorker(r)).pipe(new s("compressedSize")).withStreamInfo("compression", t);
|
|
}, t.exports = n;
|
|
}, {
|
|
"./external": 6,
|
|
"./stream/Crc32Probe": 25,
|
|
"./stream/DataLengthProbe": 26,
|
|
"./stream/DataWorker": 27
|
|
} ],
|
|
3: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./stream/GenericWorker");
|
|
r.STORE = {
|
|
magic: "\0\0",
|
|
compressWorker: function(e) {
|
|
return new n("STORE compression");
|
|
},
|
|
uncompressWorker: function() {
|
|
return new n("STORE decompression");
|
|
}
|
|
}, r.DEFLATE = e("./flate");
|
|
}, {
|
|
"./flate": 7,
|
|
"./stream/GenericWorker": 28
|
|
} ],
|
|
4: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n) {
|
|
var i = s, a = n + r;
|
|
e ^= -1;
|
|
for (var o = n; a > o; o++) e = e >>> 8 ^ i[255 & (e ^ t[o])];
|
|
return -1 ^ e;
|
|
}
|
|
function i(e, t, r, n) {
|
|
var i = s, a = n + r;
|
|
e ^= -1;
|
|
for (var o = n; a > o; o++) e = e >>> 8 ^ i[255 & (e ^ t.charCodeAt(o))];
|
|
return -1 ^ e;
|
|
}
|
|
var a = e("./utils"), s = function() {
|
|
for (var e, t = [], r = 0; 256 > r; r++) {
|
|
e = r;
|
|
for (var n = 0; 8 > n; n++) e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1;
|
|
t[r] = e;
|
|
}
|
|
return t;
|
|
}();
|
|
t.exports = function(e, t) {
|
|
return "undefined" != typeof e && e.length ? "string" !== a.getTypeOf(e) ? n(0 | t, e, e.length, 0) : i(0 | t, e, e.length, 0) : 0;
|
|
};
|
|
}, {
|
|
"./utils": 32
|
|
} ],
|
|
5: [ function(e, t, r) {
|
|
"use strict";
|
|
r.base64 = !1, r.binary = !1, r.dir = !1, r.createFolders = !0, r.date = null, r.compression = null,
|
|
r.compressionOptions = null, r.comment = null, r.unixPermissions = null, r.dosPermissions = null;
|
|
}, {} ],
|
|
6: [ function(e, t, r) {
|
|
"use strict";
|
|
var n;
|
|
n = "undefined" != typeof Promise ? Promise : e("lie"), t.exports = {
|
|
Promise: n
|
|
};
|
|
}, {
|
|
lie: 58
|
|
} ],
|
|
7: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
o.call(this, "FlateWorker/" + e), this._pako = null, this._pakoAction = e, this._pakoOptions = t,
|
|
this.meta = {};
|
|
}
|
|
var i = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Uint32Array, a = e("pako"), s = e("./utils"), o = e("./stream/GenericWorker"), u = i ? "uint8array" : "array";
|
|
r.magic = "\b\0", s.inherits(n, o), n.prototype.processChunk = function(e) {
|
|
this.meta = e.meta, null === this._pako && this._createPako(), this._pako.push(s.transformTo(u, e.data), !1);
|
|
}, n.prototype.flush = function() {
|
|
o.prototype.flush.call(this), null === this._pako && this._createPako(), this._pako.push([], !0);
|
|
}, n.prototype.cleanUp = function() {
|
|
o.prototype.cleanUp.call(this), this._pako = null;
|
|
}, n.prototype._createPako = function() {
|
|
this._pako = new a[this._pakoAction]({
|
|
raw: !0,
|
|
level: this._pakoOptions.level || -1
|
|
});
|
|
var e = this;
|
|
this._pako.onData = function(t) {
|
|
e.push({
|
|
data: t,
|
|
meta: e.meta
|
|
});
|
|
};
|
|
}, r.compressWorker = function(e) {
|
|
return new n("Deflate", e);
|
|
}, r.uncompressWorker = function() {
|
|
return new n("Inflate", {});
|
|
};
|
|
}, {
|
|
"./stream/GenericWorker": 28,
|
|
"./utils": 32,
|
|
pako: 59
|
|
} ],
|
|
8: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r, n) {
|
|
a.call(this, "ZipFileWorker"), this.bytesWritten = 0, this.zipComment = t, this.zipPlatform = r,
|
|
this.encodeFileName = n, this.streamFiles = e, this.accumulate = !1, this.contentBuffer = [],
|
|
this.dirRecords = [], this.currentSourceOffset = 0, this.entriesCount = 0, this.currentFile = null,
|
|
this._sources = [];
|
|
}
|
|
var i = e("../utils"), a = e("../stream/GenericWorker"), s = e("../utf8"), o = e("../crc32"), u = e("../signature"), h = function(e, t) {
|
|
var r, n = "";
|
|
for (r = 0; t > r; r++) n += String.fromCharCode(255 & e), e >>>= 8;
|
|
return n;
|
|
}, l = function(e, t) {
|
|
var r = e;
|
|
return e || (r = t ? 16893 : 33204), (65535 & r) << 16;
|
|
}, c = function(e, t) {
|
|
return 63 & (e || 0);
|
|
}, f = function(e, t, r, n, a, f) {
|
|
var d, p, m = e.file, _ = e.compression, g = f !== s.utf8encode, b = i.transformTo("string", f(m.name)), v = i.transformTo("string", s.utf8encode(m.name)), w = m.comment, y = i.transformTo("string", f(w)), k = i.transformTo("string", s.utf8encode(w)), x = v.length !== m.name.length, S = k.length !== w.length, z = "", E = "", C = "", A = m.dir, I = m.date, O = {
|
|
crc32: 0,
|
|
compressedSize: 0,
|
|
uncompressedSize: 0
|
|
};
|
|
t && !r || (O.crc32 = e.crc32, O.compressedSize = e.compressedSize, O.uncompressedSize = e.uncompressedSize);
|
|
var B = 0;
|
|
t && (B |= 8), g || !x && !S || (B |= 2048);
|
|
var R = 0, T = 0;
|
|
A && (R |= 16), "UNIX" === a ? (T = 798, R |= l(m.unixPermissions, A)) : (T = 20,
|
|
R |= c(m.dosPermissions)), d = I.getUTCHours(), d <<= 6, d |= I.getUTCMinutes(),
|
|
d <<= 5, d |= I.getUTCSeconds() / 2, p = I.getUTCFullYear() - 1980, p <<= 4, p |= I.getUTCMonth() + 1,
|
|
p <<= 5, p |= I.getUTCDate(), x && (E = h(1, 1) + h(o(b), 4) + v, z += "up" + h(E.length, 2) + E),
|
|
S && (C = h(1, 1) + h(o(y), 4) + k, z += "uc" + h(C.length, 2) + C);
|
|
var D = "";
|
|
D += "\n\0", D += h(B, 2), D += _.magic, D += h(d, 2), D += h(p, 2), D += h(O.crc32, 4),
|
|
D += h(O.compressedSize, 4), D += h(O.uncompressedSize, 4), D += h(b.length, 2),
|
|
D += h(z.length, 2);
|
|
return {
|
|
fileRecord: u.LOCAL_FILE_HEADER + D + b + z,
|
|
dirRecord: u.CENTRAL_FILE_HEADER + h(T, 2) + D + h(y.length, 2) + "\0\0\0\0" + h(R, 4) + h(n, 4) + b + z + y
|
|
};
|
|
}, d = function(e, t, r, n, a) {
|
|
var s = i.transformTo("string", a(n));
|
|
return u.CENTRAL_DIRECTORY_END + "\0\0\0\0" + h(e, 2) + h(e, 2) + h(t, 4) + h(r, 4) + h(s.length, 2) + s;
|
|
}, p = function(e) {
|
|
return u.DATA_DESCRIPTOR + h(e.crc32, 4) + h(e.compressedSize, 4) + h(e.uncompressedSize, 4);
|
|
};
|
|
i.inherits(n, a), n.prototype.push = function(e) {
|
|
var t = e.meta.percent || 0, r = this.entriesCount, n = this._sources.length;
|
|
this.accumulate ? this.contentBuffer.push(e) : (this.bytesWritten += e.data.length,
|
|
a.prototype.push.call(this, {
|
|
data: e.data,
|
|
meta: {
|
|
currentFile: this.currentFile,
|
|
percent: r ? (t + 100 * (r - n - 1)) / r : 100
|
|
}
|
|
}));
|
|
}, n.prototype.openedSource = function(e) {
|
|
this.currentSourceOffset = this.bytesWritten, this.currentFile = e.file.name;
|
|
var t = this.streamFiles && !e.file.dir;
|
|
if (t) {
|
|
var r = f(e, t, !1, this.currentSourceOffset, this.zipPlatform, this.encodeFileName);
|
|
this.push({
|
|
data: r.fileRecord,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
});
|
|
} else this.accumulate = !0;
|
|
}, n.prototype.closedSource = function(e) {
|
|
this.accumulate = !1;
|
|
var t = this.streamFiles && !e.file.dir, r = f(e, t, !0, this.currentSourceOffset, this.zipPlatform, this.encodeFileName);
|
|
if (this.dirRecords.push(r.dirRecord), t) this.push({
|
|
data: p(e),
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
}); else for (this.push({
|
|
data: r.fileRecord,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
}); this.contentBuffer.length; ) this.push(this.contentBuffer.shift());
|
|
this.currentFile = null;
|
|
}, n.prototype.flush = function() {
|
|
for (var e = this.bytesWritten, t = 0; t < this.dirRecords.length; t++) this.push({
|
|
data: this.dirRecords[t],
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
});
|
|
var r = this.bytesWritten - e, n = d(this.dirRecords.length, r, e, this.zipComment, this.encodeFileName);
|
|
this.push({
|
|
data: n,
|
|
meta: {
|
|
percent: 100
|
|
}
|
|
});
|
|
}, n.prototype.prepareNextSource = function() {
|
|
this.previous = this._sources.shift(), this.openedSource(this.previous.streamInfo),
|
|
this.isPaused ? this.previous.pause() : this.previous.resume();
|
|
}, n.prototype.registerPrevious = function(e) {
|
|
this._sources.push(e);
|
|
var t = this;
|
|
return e.on("data", function(e) {
|
|
t.processChunk(e);
|
|
}), e.on("end", function() {
|
|
t.closedSource(t.previous.streamInfo), t._sources.length ? t.prepareNextSource() : t.end();
|
|
}), e.on("error", function(e) {
|
|
t.error(e);
|
|
}), this;
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (!this.previous && this._sources.length ? (this.prepareNextSource(),
|
|
!0) : this.previous || this._sources.length || this.generatedError ? void 0 : (this.end(),
|
|
!0));
|
|
}, n.prototype.error = function(e) {
|
|
var t = this._sources;
|
|
if (!a.prototype.error.call(this, e)) return !1;
|
|
for (var r = 0; r < t.length; r++) try {
|
|
t[r].error(e);
|
|
} catch (e) {}
|
|
return !0;
|
|
}, n.prototype.lock = function() {
|
|
a.prototype.lock.call(this);
|
|
for (var e = this._sources, t = 0; t < e.length; t++) e[t].lock();
|
|
}, t.exports = n;
|
|
}, {
|
|
"../crc32": 4,
|
|
"../signature": 23,
|
|
"../stream/GenericWorker": 28,
|
|
"../utf8": 31,
|
|
"../utils": 32
|
|
} ],
|
|
9: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../compressions"), i = e("./ZipFileWorker"), a = function(e, t) {
|
|
var r = e || t, i = n[r];
|
|
if (!i) throw new Error(r + " is not a valid compression method !");
|
|
return i;
|
|
};
|
|
r.generateWorker = function(e, t, r) {
|
|
var n = new i(t.streamFiles, r, t.platform, t.encodeFileName), s = 0;
|
|
try {
|
|
e.forEach(function(e, r) {
|
|
s++;
|
|
var i = a(r.options.compression, t.compression), o = r.options.compressionOptions || t.compressionOptions || {}, u = r.dir, h = r.date;
|
|
r._compressWorker(i, o).withStreamInfo("file", {
|
|
name: e,
|
|
dir: u,
|
|
date: h,
|
|
comment: r.comment || "",
|
|
unixPermissions: r.unixPermissions,
|
|
dosPermissions: r.dosPermissions
|
|
}).pipe(n);
|
|
}), n.entriesCount = s;
|
|
} catch (e) {
|
|
n.error(e);
|
|
}
|
|
return n;
|
|
};
|
|
}, {
|
|
"../compressions": 3,
|
|
"./ZipFileWorker": 8
|
|
} ],
|
|
10: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
if (!(this instanceof n)) return new n();
|
|
if (arguments.length) throw new Error("The constructor with parameters has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
this.files = {}, this.comment = null, this.root = "", this.clone = function() {
|
|
var e = new n();
|
|
for (var t in this) "function" != typeof this[t] && (e[t] = this[t]);
|
|
return e;
|
|
};
|
|
}
|
|
n.prototype = e("./object"), n.prototype.loadAsync = e("./load"), n.support = e("./support"),
|
|
n.defaults = e("./defaults"), n.version = "3.1.5", n.loadAsync = function(e, t) {
|
|
return new n().loadAsync(e, t);
|
|
}, n.external = e("./external"), t.exports = n;
|
|
}, {
|
|
"./defaults": 5,
|
|
"./external": 6,
|
|
"./load": 11,
|
|
"./object": 15,
|
|
"./support": 30
|
|
} ],
|
|
11: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return new a.Promise(function(t, r) {
|
|
var n = e.decompressed.getContentWorker().pipe(new u());
|
|
n.on("error", function(e) {
|
|
r(e);
|
|
}).on("end", function() {
|
|
n.streamInfo.crc32 !== e.decompressed.crc32 ? r(new Error("Corrupted zip : CRC32 mismatch")) : t();
|
|
}).resume();
|
|
});
|
|
}
|
|
var i = e("./utils"), a = e("./external"), s = e("./utf8"), o = (i = e("./utils"),
|
|
e("./zipEntries")), u = e("./stream/Crc32Probe"), h = e("./nodejsUtils");
|
|
t.exports = function(e, t) {
|
|
var r = this;
|
|
return t = i.extend(t || {}, {
|
|
base64: !1,
|
|
checkCRC32: !1,
|
|
optimizedBinaryString: !1,
|
|
createFolders: !1,
|
|
decodeFileName: s.utf8decode
|
|
}), h.isNode && h.isStream(e) ? a.Promise.reject(new Error("JSZip can't accept a stream when loading a zip file.")) : i.prepareContent("the loaded zip file", e, !0, t.optimizedBinaryString, t.base64).then(function(e) {
|
|
var r = new o(t);
|
|
return r.load(e), r;
|
|
}).then(function(e) {
|
|
var r = [ a.Promise.resolve(e) ], i = e.files;
|
|
if (t.checkCRC32) for (var s = 0; s < i.length; s++) r.push(n(i[s]));
|
|
return a.Promise.all(r);
|
|
}).then(function(e) {
|
|
for (var n = e.shift(), i = n.files, a = 0; a < i.length; a++) {
|
|
var s = i[a];
|
|
r.file(s.fileNameStr, s.decompressed, {
|
|
binary: !0,
|
|
optimizedBinaryString: !0,
|
|
date: s.date,
|
|
dir: s.dir,
|
|
comment: s.fileCommentStr.length ? s.fileCommentStr : null,
|
|
unixPermissions: s.unixPermissions,
|
|
dosPermissions: s.dosPermissions,
|
|
createFolders: t.createFolders
|
|
});
|
|
}
|
|
return n.zipComment.length && (r.comment = n.zipComment), r;
|
|
});
|
|
};
|
|
}, {
|
|
"./external": 6,
|
|
"./nodejsUtils": 14,
|
|
"./stream/Crc32Probe": 25,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipEntries": 33
|
|
} ],
|
|
12: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
a.call(this, "Nodejs stream input adapter for " + e), this._upstreamEnded = !1,
|
|
this._bindStream(t);
|
|
}
|
|
var i = e("../utils"), a = e("../stream/GenericWorker");
|
|
i.inherits(n, a), n.prototype._bindStream = function(e) {
|
|
var t = this;
|
|
this._stream = e, e.pause(), e.on("data", function(e) {
|
|
t.push({
|
|
data: e,
|
|
meta: {
|
|
percent: 0
|
|
}
|
|
});
|
|
}).on("error", function(e) {
|
|
t.isPaused ? this.generatedError = e : t.error(e);
|
|
}).on("end", function() {
|
|
t.isPaused ? t._upstreamEnded = !0 : t.end();
|
|
});
|
|
}, n.prototype.pause = function() {
|
|
return !!a.prototype.pause.call(this) && (this._stream.pause(), !0);
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (this._upstreamEnded ? this.end() : this._stream.resume(),
|
|
!0);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../stream/GenericWorker": 28,
|
|
"../utils": 32
|
|
} ],
|
|
13: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r) {
|
|
i.call(this, t), this._helper = e;
|
|
var n = this;
|
|
e.on("data", function(e, t) {
|
|
n.push(e) || n._helper.pause(), r && r(t);
|
|
}).on("error", function(e) {
|
|
n.emit("error", e);
|
|
}).on("end", function() {
|
|
n.push(null);
|
|
});
|
|
}
|
|
var i = e("readable-stream").Readable;
|
|
e("../utils").inherits(n, i), n.prototype._read = function() {
|
|
this._helper.resume();
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"readable-stream": 16
|
|
} ],
|
|
14: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
isNode: "undefined" != typeof Buffer,
|
|
newBufferFrom: function(e, t) {
|
|
return new Buffer(e, t);
|
|
},
|
|
allocBuffer: function(e) {
|
|
return Buffer.alloc ? Buffer.alloc(e) : new Buffer(e);
|
|
},
|
|
isBuffer: function(e) {
|
|
return Buffer.isBuffer(e);
|
|
},
|
|
isStream: function(e) {
|
|
return e && "function" == typeof e.on && "function" == typeof e.pause && "function" == typeof e.resume;
|
|
}
|
|
};
|
|
}, {} ],
|
|
15: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return "[object RegExp]" === Object.prototype.toString.call(e);
|
|
}
|
|
var i = e("./utf8"), a = e("./utils"), s = e("./stream/GenericWorker"), o = e("./stream/StreamHelper"), u = e("./defaults"), h = e("./compressedObject"), l = e("./zipObject"), c = e("./generate"), f = e("./nodejsUtils"), d = e("./nodejs/NodejsStreamInputAdapter"), p = function(e, t, r) {
|
|
var n, i = a.getTypeOf(t), o = a.extend(r || {}, u);
|
|
o.date = o.date || new Date(), null !== o.compression && (o.compression = o.compression.toUpperCase()),
|
|
"string" == typeof o.unixPermissions && (o.unixPermissions = parseInt(o.unixPermissions, 8)),
|
|
o.unixPermissions && 16384 & o.unixPermissions && (o.dir = !0), o.dosPermissions && 16 & o.dosPermissions && (o.dir = !0),
|
|
o.dir && (e = _(e)), o.createFolders && (n = m(e)) && g.call(this, n, !0);
|
|
var c = "string" === i && !1 === o.binary && !1 === o.base64;
|
|
r && "undefined" != typeof r.binary || (o.binary = !c);
|
|
(t instanceof h && 0 === t.uncompressedSize || o.dir || !t || 0 === t.length) && (o.base64 = !1,
|
|
o.binary = !0, t = "", o.compression = "STORE", i = "string");
|
|
var p;
|
|
p = t instanceof h || t instanceof s ? t : f.isNode && f.isStream(t) ? new d(e, t) : a.prepareContent(e, t, o.binary, o.optimizedBinaryString, o.base64);
|
|
var b = new l(e, p, o);
|
|
this.files[e] = b;
|
|
}, m = function(e) {
|
|
"/" === e.slice(-1) && (e = e.substring(0, e.length - 1));
|
|
var t = e.lastIndexOf("/");
|
|
return t > 0 ? e.substring(0, t) : "";
|
|
}, _ = function(e) {
|
|
return "/" !== e.slice(-1) && (e += "/"), e;
|
|
}, g = function(e, t) {
|
|
return t = "undefined" != typeof t ? t : u.createFolders, e = _(e), this.files[e] || p.call(this, e, null, {
|
|
dir: !0,
|
|
createFolders: t
|
|
}), this.files[e];
|
|
}, b = {
|
|
load: function() {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
},
|
|
forEach: function(e) {
|
|
var t, r, n;
|
|
for (t in this.files) this.files.hasOwnProperty(t) && (n = this.files[t], (r = t.slice(this.root.length, t.length)) && t.slice(0, this.root.length) === this.root && e(r, n));
|
|
},
|
|
filter: function(e) {
|
|
var t = [];
|
|
return this.forEach(function(r, n) {
|
|
e(r, n) && t.push(n);
|
|
}), t;
|
|
},
|
|
file: function(e, t, r) {
|
|
if (1 === arguments.length) {
|
|
if (n(e)) {
|
|
var i = e;
|
|
return this.filter(function(e, t) {
|
|
return !t.dir && i.test(e);
|
|
});
|
|
}
|
|
var a = this.files[this.root + e];
|
|
return a && !a.dir ? a : null;
|
|
}
|
|
return e = this.root + e, p.call(this, e, t, r), this;
|
|
},
|
|
folder: function(e) {
|
|
if (!e) return this;
|
|
if (n(e)) return this.filter(function(t, r) {
|
|
return r.dir && e.test(t);
|
|
});
|
|
var t = this.root + e, r = g.call(this, t), i = this.clone();
|
|
return i.root = r.name, i;
|
|
},
|
|
remove: function(e) {
|
|
e = this.root + e;
|
|
var t = this.files[e];
|
|
if (t || ("/" !== e.slice(-1) && (e += "/"), t = this.files[e]), t && !t.dir) delete this.files[e]; else for (var r = this.filter(function(t, r) {
|
|
return r.name.slice(0, e.length) === e;
|
|
}), n = 0; n < r.length; n++) delete this.files[r[n].name];
|
|
return this;
|
|
},
|
|
generate: function(e) {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
},
|
|
generateInternalStream: function(e) {
|
|
var t, r = {};
|
|
try {
|
|
if ((r = a.extend(e || {}, {
|
|
streamFiles: !1,
|
|
compression: "STORE",
|
|
compressionOptions: null,
|
|
type: "",
|
|
platform: "DOS",
|
|
comment: null,
|
|
mimeType: "application/zip",
|
|
encodeFileName: i.utf8encode
|
|
})).type = r.type.toLowerCase(), r.compression = r.compression.toUpperCase(), "binarystring" === r.type && (r.type = "string"),
|
|
!r.type) throw new Error("No output type specified.");
|
|
a.checkSupport(r.type), "darwin" !== r.platform && "freebsd" !== r.platform && "linux" !== r.platform && "sunos" !== r.platform || (r.platform = "UNIX"),
|
|
"win32" === r.platform && (r.platform = "DOS");
|
|
var n = r.comment || this.comment || "";
|
|
t = c.generateWorker(this, r, n);
|
|
} catch (e) {
|
|
(t = new s("error")).error(e);
|
|
}
|
|
return new o(t, r.type || "string", r.mimeType);
|
|
},
|
|
generateAsync: function(e, t) {
|
|
return this.generateInternalStream(e).accumulate(t);
|
|
},
|
|
generateNodeStream: function(e, t) {
|
|
return (e = e || {}).type || (e.type = "nodebuffer"), this.generateInternalStream(e).toNodejsStream(t);
|
|
}
|
|
};
|
|
t.exports = b;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./defaults": 5,
|
|
"./generate": 9,
|
|
"./nodejs/NodejsStreamInputAdapter": 12,
|
|
"./nodejsUtils": 14,
|
|
"./stream/GenericWorker": 28,
|
|
"./stream/StreamHelper": 29,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipObject": 35
|
|
} ],
|
|
16: [ function(e, t, r) {
|
|
t.exports = e("stream");
|
|
}, {
|
|
stream: void 0
|
|
} ],
|
|
17: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
for (var t = 0; t < this.data.length; t++) e[t] = 255 & e[t];
|
|
}
|
|
var i = e("./DataReader");
|
|
e("../utils").inherits(n, i), n.prototype.byteAt = function(e) {
|
|
return this.data[this.zero + e];
|
|
}, n.prototype.lastIndexOfSignature = function(e) {
|
|
for (var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), a = this.length - 4; a >= 0; --a) if (this.data[a] === t && this.data[a + 1] === r && this.data[a + 2] === n && this.data[a + 3] === i) return a - this.zero;
|
|
return -1;
|
|
}, n.prototype.readAndCheckSignature = function(e) {
|
|
var t = e.charCodeAt(0), r = e.charCodeAt(1), n = e.charCodeAt(2), i = e.charCodeAt(3), a = this.readData(4);
|
|
return t === a[0] && r === a[1] && n === a[2] && i === a[3];
|
|
}, n.prototype.readData = function(e) {
|
|
if (this.checkOffset(e), 0 === e) return [];
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./DataReader": 18
|
|
} ],
|
|
18: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.data = e, this.length = e.length, this.index = 0, this.zero = 0;
|
|
}
|
|
var i = e("../utils");
|
|
n.prototype = {
|
|
checkOffset: function(e) {
|
|
this.checkIndex(this.index + e);
|
|
},
|
|
checkIndex: function(e) {
|
|
if (this.length < this.zero + e || 0 > e) throw new Error("End of data reached (data length = " + this.length + ", asked index = " + e + "). Corrupted zip ?");
|
|
},
|
|
setIndex: function(e) {
|
|
this.checkIndex(e), this.index = e;
|
|
},
|
|
skip: function(e) {
|
|
this.setIndex(this.index + e);
|
|
},
|
|
byteAt: function(e) {},
|
|
readInt: function(e) {
|
|
var t, r = 0;
|
|
for (this.checkOffset(e), t = this.index + e - 1; t >= this.index; t--) r = (r << 8) + this.byteAt(t);
|
|
return this.index += e, r;
|
|
},
|
|
readString: function(e) {
|
|
return i.transformTo("string", this.readData(e));
|
|
},
|
|
readData: function(e) {},
|
|
lastIndexOfSignature: function(e) {},
|
|
readAndCheckSignature: function(e) {},
|
|
readDate: function() {
|
|
var e = this.readInt(4);
|
|
return new Date(Date.UTC(1980 + (e >> 25 & 127), (e >> 21 & 15) - 1, e >> 16 & 31, e >> 11 & 31, e >> 5 & 63, (31 & e) << 1));
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32
|
|
} ],
|
|
19: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./Uint8ArrayReader");
|
|
e("../utils").inherits(n, i), n.prototype.readData = function(e) {
|
|
this.checkOffset(e);
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./Uint8ArrayReader": 21
|
|
} ],
|
|
20: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./DataReader");
|
|
e("../utils").inherits(n, i), n.prototype.byteAt = function(e) {
|
|
return this.data.charCodeAt(this.zero + e);
|
|
}, n.prototype.lastIndexOfSignature = function(e) {
|
|
return this.data.lastIndexOf(e) - this.zero;
|
|
}, n.prototype.readAndCheckSignature = function(e) {
|
|
return e === this.readData(4);
|
|
}, n.prototype.readData = function(e) {
|
|
this.checkOffset(e);
|
|
var t = this.data.slice(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./DataReader": 18
|
|
} ],
|
|
21: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, e);
|
|
}
|
|
var i = e("./ArrayReader");
|
|
e("../utils").inherits(n, i), n.prototype.readData = function(e) {
|
|
if (this.checkOffset(e), 0 === e) return new Uint8Array(0);
|
|
var t = this.data.subarray(this.zero + this.index, this.zero + this.index + e);
|
|
return this.index += e, t;
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./ArrayReader": 17
|
|
} ],
|
|
22: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../utils"), i = e("../support"), a = e("./ArrayReader"), s = e("./StringReader"), o = e("./NodeBufferReader"), u = e("./Uint8ArrayReader");
|
|
t.exports = function(e) {
|
|
var t = n.getTypeOf(e);
|
|
return n.checkSupport(t), "string" !== t || i.uint8array ? "nodebuffer" === t ? new o(e) : i.uint8array ? new u(n.transformTo("uint8array", e)) : new a(n.transformTo("array", e)) : new s(e);
|
|
};
|
|
}, {
|
|
"../support": 30,
|
|
"../utils": 32,
|
|
"./ArrayReader": 17,
|
|
"./NodeBufferReader": 19,
|
|
"./StringReader": 20,
|
|
"./Uint8ArrayReader": 21
|
|
} ],
|
|
23: [ function(e, t, r) {
|
|
"use strict";
|
|
r.LOCAL_FILE_HEADER = "PK", r.CENTRAL_FILE_HEADER = "PK", r.CENTRAL_DIRECTORY_END = "PK",
|
|
r.ZIP64_CENTRAL_DIRECTORY_LOCATOR = "PK", r.ZIP64_CENTRAL_DIRECTORY_END = "PK",
|
|
r.DATA_DESCRIPTOR = "PK\b";
|
|
}, {} ],
|
|
24: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
i.call(this, "ConvertWorker to " + e), this.destType = e;
|
|
}
|
|
var i = e("./GenericWorker"), a = e("../utils");
|
|
a.inherits(n, i), n.prototype.processChunk = function(e) {
|
|
this.push({
|
|
data: a.transformTo(this.destType, e.data),
|
|
meta: e.meta
|
|
});
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
25: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
i.call(this, "Crc32Probe"), this.withStreamInfo("crc32", 0);
|
|
}
|
|
var i = e("./GenericWorker"), a = e("../crc32");
|
|
e("../utils").inherits(n, i), n.prototype.processChunk = function(e) {
|
|
this.streamInfo.crc32 = a(e.data, this.streamInfo.crc32 || 0), this.push(e);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../crc32": 4,
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
26: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
a.call(this, "DataLengthProbe for " + e), this.propName = e, this.withStreamInfo(e, 0);
|
|
}
|
|
var i = e("../utils"), a = e("./GenericWorker");
|
|
i.inherits(n, a), n.prototype.processChunk = function(e) {
|
|
if (e) {
|
|
var t = this.streamInfo[this.propName] || 0;
|
|
this.streamInfo[this.propName] = t + e.data.length;
|
|
}
|
|
a.prototype.processChunk.call(this, e);
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
27: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
a.call(this, "DataWorker");
|
|
var t = this;
|
|
this.dataIsReady = !1, this.index = 0, this.max = 0, this.data = null, this.type = "",
|
|
this._tickScheduled = !1, e.then(function(e) {
|
|
t.dataIsReady = !0, t.data = e, t.max = e && e.length || 0, t.type = i.getTypeOf(e),
|
|
t.isPaused || t._tickAndRepeat();
|
|
}, function(e) {
|
|
t.error(e);
|
|
});
|
|
}
|
|
var i = e("../utils"), a = e("./GenericWorker");
|
|
i.inherits(n, a), n.prototype.cleanUp = function() {
|
|
a.prototype.cleanUp.call(this), this.data = null;
|
|
}, n.prototype.resume = function() {
|
|
return !!a.prototype.resume.call(this) && (!this._tickScheduled && this.dataIsReady && (this._tickScheduled = !0,
|
|
i.delay(this._tickAndRepeat, [], this)), !0);
|
|
}, n.prototype._tickAndRepeat = function() {
|
|
this._tickScheduled = !1, this.isPaused || this.isFinished || (this._tick(), this.isFinished || (i.delay(this._tickAndRepeat, [], this),
|
|
this._tickScheduled = !0));
|
|
}, n.prototype._tick = function() {
|
|
if (this.isPaused || this.isFinished) return !1;
|
|
var e = null, t = Math.min(this.max, this.index + 16384);
|
|
if (this.index >= this.max) return this.end();
|
|
switch (this.type) {
|
|
case "string":
|
|
e = this.data.substring(this.index, t);
|
|
break;
|
|
|
|
case "uint8array":
|
|
e = this.data.subarray(this.index, t);
|
|
break;
|
|
|
|
case "array":
|
|
case "nodebuffer":
|
|
e = this.data.slice(this.index, t);
|
|
}
|
|
return this.index = t, this.push({
|
|
data: e,
|
|
meta: {
|
|
percent: this.max ? this.index / this.max * 100 : 0
|
|
}
|
|
});
|
|
}, t.exports = n;
|
|
}, {
|
|
"../utils": 32,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
28: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.name = e || "default", this.streamInfo = {}, this.generatedError = null, this.extraStreamInfo = {},
|
|
this.isPaused = !0, this.isFinished = !1, this.isLocked = !1, this._listeners = {
|
|
data: [],
|
|
end: [],
|
|
error: []
|
|
}, this.previous = null;
|
|
}
|
|
n.prototype = {
|
|
push: function(e) {
|
|
this.emit("data", e);
|
|
},
|
|
end: function() {
|
|
if (this.isFinished) return !1;
|
|
this.flush();
|
|
try {
|
|
this.emit("end"), this.cleanUp(), this.isFinished = !0;
|
|
} catch (e) {
|
|
this.emit("error", e);
|
|
}
|
|
return !0;
|
|
},
|
|
error: function(e) {
|
|
return !this.isFinished && (this.isPaused ? this.generatedError = e : (this.isFinished = !0,
|
|
this.emit("error", e), this.previous && this.previous.error(e), this.cleanUp()),
|
|
!0);
|
|
},
|
|
on: function(e, t) {
|
|
return this._listeners[e].push(t), this;
|
|
},
|
|
cleanUp: function() {
|
|
this.streamInfo = this.generatedError = this.extraStreamInfo = null, this._listeners = [];
|
|
},
|
|
emit: function(e, t) {
|
|
if (this._listeners[e]) for (var r = 0; r < this._listeners[e].length; r++) this._listeners[e][r].call(this, t);
|
|
},
|
|
pipe: function(e) {
|
|
return e.registerPrevious(this);
|
|
},
|
|
registerPrevious: function(e) {
|
|
if (this.isLocked) throw new Error("The stream '" + this + "' has already been used.");
|
|
this.streamInfo = e.streamInfo, this.mergeStreamInfo(), this.previous = e;
|
|
var t = this;
|
|
return e.on("data", function(e) {
|
|
t.processChunk(e);
|
|
}), e.on("end", function() {
|
|
t.end();
|
|
}), e.on("error", function(e) {
|
|
t.error(e);
|
|
}), this;
|
|
},
|
|
pause: function() {
|
|
return !this.isPaused && !this.isFinished && (this.isPaused = !0, this.previous && this.previous.pause(),
|
|
!0);
|
|
},
|
|
resume: function() {
|
|
if (!this.isPaused || this.isFinished) return !1;
|
|
this.isPaused = !1;
|
|
var e = !1;
|
|
return this.generatedError && (this.error(this.generatedError), e = !0), this.previous && this.previous.resume(),
|
|
!e;
|
|
},
|
|
flush: function() {},
|
|
processChunk: function(e) {
|
|
this.push(e);
|
|
},
|
|
withStreamInfo: function(e, t) {
|
|
return this.extraStreamInfo[e] = t, this.mergeStreamInfo(), this;
|
|
},
|
|
mergeStreamInfo: function() {
|
|
for (var e in this.extraStreamInfo) this.extraStreamInfo.hasOwnProperty(e) && (this.streamInfo[e] = this.extraStreamInfo[e]);
|
|
},
|
|
lock: function() {
|
|
if (this.isLocked) throw new Error("The stream '" + this + "' has already been used.");
|
|
this.isLocked = !0, this.previous && this.previous.lock();
|
|
},
|
|
toString: function() {
|
|
var e = "Worker " + this.name;
|
|
return this.previous ? this.previous + " -> " + e : e;
|
|
}
|
|
}, t.exports = n;
|
|
}, {} ],
|
|
29: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t, r) {
|
|
switch (e) {
|
|
case "blob":
|
|
return o.newBlob(o.transformTo("arraybuffer", t), r);
|
|
|
|
case "base64":
|
|
return l.encode(t);
|
|
|
|
default:
|
|
return o.transformTo(e, t);
|
|
}
|
|
}
|
|
function i(e, t) {
|
|
var r, n = 0, i = null, a = 0;
|
|
for (r = 0; r < t.length; r++) a += t[r].length;
|
|
switch (e) {
|
|
case "string":
|
|
return t.join("");
|
|
|
|
case "array":
|
|
return Array.prototype.concat.apply([], t);
|
|
|
|
case "uint8array":
|
|
for (i = new Uint8Array(a), r = 0; r < t.length; r++) i.set(t[r], n), n += t[r].length;
|
|
return i;
|
|
|
|
case "nodebuffer":
|
|
return Buffer.concat(t);
|
|
|
|
default:
|
|
throw new Error("concat : unsupported type '" + e + "'");
|
|
}
|
|
}
|
|
function a(e, t) {
|
|
return new f.Promise(function(r, a) {
|
|
var s = [], o = e._internalType, u = e._outputType, h = e._mimeType;
|
|
e.on("data", function(e, r) {
|
|
s.push(e), t && t(r);
|
|
}).on("error", function(e) {
|
|
s = [], a(e);
|
|
}).on("end", function() {
|
|
try {
|
|
var e = n(u, i(o, s), h);
|
|
r(e);
|
|
} catch (e) {
|
|
a(e);
|
|
}
|
|
s = [];
|
|
}).resume();
|
|
});
|
|
}
|
|
function s(e, t, r) {
|
|
var n = t;
|
|
switch (t) {
|
|
case "blob":
|
|
case "arraybuffer":
|
|
n = "uint8array";
|
|
break;
|
|
|
|
case "base64":
|
|
n = "string";
|
|
}
|
|
try {
|
|
this._internalType = n, this._outputType = t, this._mimeType = r, o.checkSupport(n),
|
|
this._worker = e.pipe(new u(n)), e.lock();
|
|
} catch (e) {
|
|
this._worker = new h("error"), this._worker.error(e);
|
|
}
|
|
}
|
|
var o = e("../utils"), u = e("./ConvertWorker"), h = e("./GenericWorker"), l = e("../base64"), c = e("../support"), f = e("../external"), d = null;
|
|
if (c.nodestream) try {
|
|
d = e("../nodejs/NodejsStreamOutputAdapter");
|
|
} catch (e) {}
|
|
s.prototype = {
|
|
accumulate: function(e) {
|
|
return a(this, e);
|
|
},
|
|
on: function(e, t) {
|
|
var r = this;
|
|
return "data" === e ? this._worker.on(e, function(e) {
|
|
t.call(r, e.data, e.meta);
|
|
}) : this._worker.on(e, function() {
|
|
o.delay(t, arguments, r);
|
|
}), this;
|
|
},
|
|
resume: function() {
|
|
return o.delay(this._worker.resume, [], this._worker), this;
|
|
},
|
|
pause: function() {
|
|
return this._worker.pause(), this;
|
|
},
|
|
toNodejsStream: function(e) {
|
|
if (o.checkSupport("nodestream"), "nodebuffer" !== this._outputType) throw new Error(this._outputType + " is not supported by this method");
|
|
return new d(this, {
|
|
objectMode: "nodebuffer" !== this._outputType
|
|
}, e);
|
|
}
|
|
}, t.exports = s;
|
|
}, {
|
|
"../base64": 1,
|
|
"../external": 6,
|
|
"../nodejs/NodejsStreamOutputAdapter": 13,
|
|
"../support": 30,
|
|
"../utils": 32,
|
|
"./ConvertWorker": 24,
|
|
"./GenericWorker": 28
|
|
} ],
|
|
30: [ function(e, t, r) {
|
|
"use strict";
|
|
if (r.base64 = !0, r.array = !0, r.string = !0, r.arraybuffer = "undefined" != typeof ArrayBuffer && "undefined" != typeof Uint8Array,
|
|
r.nodebuffer = "undefined" != typeof Buffer, r.uint8array = "undefined" != typeof Uint8Array,
|
|
"undefined" == typeof ArrayBuffer) r.blob = !1; else {
|
|
var n = new ArrayBuffer(0);
|
|
try {
|
|
r.blob = 0 === new Blob([ n ], {
|
|
type: "application/zip"
|
|
}).size;
|
|
} catch (e) {
|
|
try {
|
|
var i = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder)();
|
|
i.append(n), r.blob = 0 === i.getBlob("application/zip").size;
|
|
} catch (e) {
|
|
r.blob = !1;
|
|
}
|
|
}
|
|
}
|
|
try {
|
|
r.nodestream = !!e("readable-stream").Readable;
|
|
} catch (e) {
|
|
r.nodestream = !1;
|
|
}
|
|
}, {
|
|
"readable-stream": 16
|
|
} ],
|
|
31: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {
|
|
u.call(this, "utf-8 decode"), this.leftOver = null;
|
|
}
|
|
function i() {
|
|
u.call(this, "utf-8 encode");
|
|
}
|
|
for (var a = e("./utils"), s = e("./support"), o = e("./nodejsUtils"), u = e("./stream/GenericWorker"), h = new Array(256), l = 0; 256 > l; l++) h[l] = l >= 252 ? 6 : l >= 248 ? 5 : l >= 240 ? 4 : l >= 224 ? 3 : l >= 192 ? 2 : 1;
|
|
h[254] = h[254] = 1;
|
|
var c = function(e) {
|
|
var t, r, n, i, a, o = e.length, u = 0;
|
|
for (i = 0; o > i; i++) 55296 == (64512 & (r = e.charCodeAt(i))) && o > i + 1 && (56320 == (64512 & (n = e.charCodeAt(i + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
i++)), u += 128 > r ? 1 : 2048 > r ? 2 : 65536 > r ? 3 : 4;
|
|
for (t = s.uint8array ? new Uint8Array(u) : new Array(u), a = 0, i = 0; u > a; i++) 55296 == (64512 & (r = e.charCodeAt(i))) && o > i + 1 && (56320 == (64512 & (n = e.charCodeAt(i + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
i++)), 128 > r ? t[a++] = r : 2048 > r ? (t[a++] = 192 | r >>> 6, t[a++] = 128 | 63 & r) : 65536 > r ? (t[a++] = 224 | r >>> 12,
|
|
t[a++] = 128 | r >>> 6 & 63, t[a++] = 128 | 63 & r) : (t[a++] = 240 | r >>> 18,
|
|
t[a++] = 128 | r >>> 12 & 63, t[a++] = 128 | r >>> 6 & 63, t[a++] = 128 | 63 & r);
|
|
return t;
|
|
}, f = function(e, t) {
|
|
var r;
|
|
for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; r >= 0 && 128 == (192 & e[r]); ) r--;
|
|
return 0 > r ? t : 0 === r ? t : r + h[e[r]] > t ? r : t;
|
|
}, d = function(e) {
|
|
var t, r, n, i, s = e.length, o = new Array(2 * s);
|
|
for (r = 0, t = 0; s > t; ) if (128 > (n = e[t++])) o[r++] = n; else if ((i = h[n]) > 4) o[r++] = 65533,
|
|
t += i - 1; else {
|
|
for (n &= 2 === i ? 31 : 3 === i ? 15 : 7; i > 1 && s > t; ) n = n << 6 | 63 & e[t++],
|
|
i--;
|
|
i > 1 ? o[r++] = 65533 : 65536 > n ? o[r++] = n : (n -= 65536, o[r++] = 55296 | n >> 10 & 1023,
|
|
o[r++] = 56320 | 1023 & n);
|
|
}
|
|
return o.length !== r && (o.subarray ? o = o.subarray(0, r) : o.length = r), a.applyFromCharCode(o);
|
|
};
|
|
r.utf8encode = function(e) {
|
|
return s.nodebuffer ? o.newBufferFrom(e, "utf-8") : c(e);
|
|
}, r.utf8decode = function(e) {
|
|
return s.nodebuffer ? a.transformTo("nodebuffer", e).toString("utf-8") : (e = a.transformTo(s.uint8array ? "uint8array" : "array", e),
|
|
d(e));
|
|
}, a.inherits(n, u), n.prototype.processChunk = function(e) {
|
|
var t = a.transformTo(s.uint8array ? "uint8array" : "array", e.data);
|
|
if (this.leftOver && this.leftOver.length) {
|
|
if (s.uint8array) {
|
|
var n = t;
|
|
(t = new Uint8Array(n.length + this.leftOver.length)).set(this.leftOver, 0), t.set(n, this.leftOver.length);
|
|
} else t = this.leftOver.concat(t);
|
|
this.leftOver = null;
|
|
}
|
|
var i = f(t), o = t;
|
|
i !== t.length && (s.uint8array ? (o = t.subarray(0, i), this.leftOver = t.subarray(i, t.length)) : (o = t.slice(0, i),
|
|
this.leftOver = t.slice(i, t.length))), this.push({
|
|
data: r.utf8decode(o),
|
|
meta: e.meta
|
|
});
|
|
}, n.prototype.flush = function() {
|
|
this.leftOver && this.leftOver.length && (this.push({
|
|
data: r.utf8decode(this.leftOver),
|
|
meta: {}
|
|
}), this.leftOver = null);
|
|
}, r.Utf8DecodeWorker = n, a.inherits(i, u), i.prototype.processChunk = function(e) {
|
|
this.push({
|
|
data: r.utf8encode(e.data),
|
|
meta: e.meta
|
|
});
|
|
}, r.Utf8EncodeWorker = i;
|
|
}, {
|
|
"./nodejsUtils": 14,
|
|
"./stream/GenericWorker": 28,
|
|
"./support": 30,
|
|
"./utils": 32
|
|
} ],
|
|
32: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return a(e, u.uint8array ? new Uint8Array(e.length) : new Array(e.length));
|
|
}
|
|
function i(e) {
|
|
return e;
|
|
}
|
|
function a(e, t) {
|
|
for (var r = 0; r < e.length; ++r) t[r] = 255 & e.charCodeAt(r);
|
|
return t;
|
|
}
|
|
function s(e) {
|
|
var t = 65536, n = r.getTypeOf(e), i = !0;
|
|
if ("uint8array" === n ? i = d.applyCanBeUsed.uint8array : "nodebuffer" === n && (i = d.applyCanBeUsed.nodebuffer),
|
|
i) for (;t > 1; ) try {
|
|
return d.stringifyByChunk(e, n, t);
|
|
} catch (e) {
|
|
t = Math.floor(t / 2);
|
|
}
|
|
return d.stringifyByChar(e);
|
|
}
|
|
function o(e, t) {
|
|
for (var r = 0; r < e.length; r++) t[r] = e[r];
|
|
return t;
|
|
}
|
|
var u = e("./support"), h = e("./base64"), l = e("./nodejsUtils"), c = e("core-js/library/fn/set-immediate"), f = e("./external");
|
|
r.newBlob = function(e, t) {
|
|
r.checkSupport("blob");
|
|
try {
|
|
return new Blob([ e ], {
|
|
type: t
|
|
});
|
|
} catch (r) {
|
|
try {
|
|
var n = new (self.BlobBuilder || self.WebKitBlobBuilder || self.MozBlobBuilder || self.MSBlobBuilder)();
|
|
return n.append(e), n.getBlob(t);
|
|
} catch (e) {
|
|
throw new Error("Bug : can't construct the Blob.");
|
|
}
|
|
}
|
|
};
|
|
var d = {
|
|
stringifyByChunk: function(e, t, r) {
|
|
var n = [], i = 0, a = e.length;
|
|
if (r >= a) return String.fromCharCode.apply(null, e);
|
|
for (;a > i; ) "array" === t || "nodebuffer" === t ? n.push(String.fromCharCode.apply(null, e.slice(i, Math.min(i + r, a)))) : n.push(String.fromCharCode.apply(null, e.subarray(i, Math.min(i + r, a)))),
|
|
i += r;
|
|
return n.join("");
|
|
},
|
|
stringifyByChar: function(e) {
|
|
for (var t = "", r = 0; r < e.length; r++) t += String.fromCharCode(e[r]);
|
|
return t;
|
|
},
|
|
applyCanBeUsed: {
|
|
uint8array: function() {
|
|
try {
|
|
return u.uint8array && 1 === String.fromCharCode.apply(null, new Uint8Array(1)).length;
|
|
} catch (e) {
|
|
return !1;
|
|
}
|
|
}(),
|
|
nodebuffer: function() {
|
|
try {
|
|
return u.nodebuffer && 1 === String.fromCharCode.apply(null, l.allocBuffer(1)).length;
|
|
} catch (e) {
|
|
return !1;
|
|
}
|
|
}()
|
|
}
|
|
};
|
|
r.applyFromCharCode = s;
|
|
var p = {};
|
|
p.string = {
|
|
string: i,
|
|
array: function(e) {
|
|
return a(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return p.string.uint8array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return a(e, new Uint8Array(e.length));
|
|
},
|
|
nodebuffer: function(e) {
|
|
return a(e, l.allocBuffer(e.length));
|
|
}
|
|
}, p.array = {
|
|
string: s,
|
|
array: i,
|
|
arraybuffer: function(e) {
|
|
return new Uint8Array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return new Uint8Array(e);
|
|
},
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(e);
|
|
}
|
|
}, p.arraybuffer = {
|
|
string: function(e) {
|
|
return s(new Uint8Array(e));
|
|
},
|
|
array: function(e) {
|
|
return o(new Uint8Array(e), new Array(e.byteLength));
|
|
},
|
|
arraybuffer: i,
|
|
uint8array: function(e) {
|
|
return new Uint8Array(e);
|
|
},
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(new Uint8Array(e));
|
|
}
|
|
}, p.uint8array = {
|
|
string: s,
|
|
array: function(e) {
|
|
return o(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return e.buffer;
|
|
},
|
|
uint8array: i,
|
|
nodebuffer: function(e) {
|
|
return l.newBufferFrom(e);
|
|
}
|
|
}, p.nodebuffer = {
|
|
string: s,
|
|
array: function(e) {
|
|
return o(e, new Array(e.length));
|
|
},
|
|
arraybuffer: function(e) {
|
|
return p.nodebuffer.uint8array(e).buffer;
|
|
},
|
|
uint8array: function(e) {
|
|
return o(e, new Uint8Array(e.length));
|
|
},
|
|
nodebuffer: i
|
|
}, r.transformTo = function(e, t) {
|
|
if (t || (t = ""), !e) return t;
|
|
r.checkSupport(e);
|
|
var n = r.getTypeOf(t);
|
|
return p[n][e](t);
|
|
}, r.getTypeOf = function(e) {
|
|
return "string" == typeof e ? "string" : "[object Array]" === Object.prototype.toString.call(e) ? "array" : u.nodebuffer && l.isBuffer(e) ? "nodebuffer" : u.uint8array && e instanceof Uint8Array ? "uint8array" : u.arraybuffer && e instanceof ArrayBuffer ? "arraybuffer" : void 0;
|
|
}, r.checkSupport = function(e) {
|
|
if (!u[e.toLowerCase()]) throw new Error(e + " is not supported by this platform");
|
|
}, r.MAX_VALUE_16BITS = 65535, r.MAX_VALUE_32BITS = -1, r.pretty = function(e) {
|
|
var t, r, n = "";
|
|
for (r = 0; r < (e || "").length; r++) n += "\\x" + (16 > (t = e.charCodeAt(r)) ? "0" : "") + t.toString(16).toUpperCase();
|
|
return n;
|
|
}, r.delay = function(e, t, r) {
|
|
c(function() {
|
|
e.apply(r || null, t || []);
|
|
});
|
|
}, r.inherits = function(e, t) {
|
|
var r = function() {};
|
|
r.prototype = t.prototype, e.prototype = new r();
|
|
}, r.extend = function() {
|
|
var e, t, r = {};
|
|
for (e = 0; e < arguments.length; e++) for (t in arguments[e]) arguments[e].hasOwnProperty(t) && "undefined" == typeof r[t] && (r[t] = arguments[e][t]);
|
|
return r;
|
|
}, r.prepareContent = function(e, t, i, a, s) {
|
|
return f.Promise.resolve(t).then(function(e) {
|
|
return u.blob && (e instanceof Blob || -1 !== [ "[object File]", "[object Blob]" ].indexOf(Object.prototype.toString.call(e))) && "undefined" != typeof FileReader ? new f.Promise(function(t, r) {
|
|
var n = new FileReader();
|
|
n.onload = function(e) {
|
|
t(e.target.result);
|
|
}, n.onerror = function(e) {
|
|
r(e.target.error);
|
|
}, n.readAsArrayBuffer(e);
|
|
}) : e;
|
|
}).then(function(t) {
|
|
var o = r.getTypeOf(t);
|
|
return o ? ("arraybuffer" === o ? t = r.transformTo("uint8array", t) : "string" === o && (s ? t = h.decode(t) : i && !0 !== a && (t = n(t))),
|
|
t) : f.Promise.reject(new Error("Can't read the data of '" + e + "'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?"));
|
|
});
|
|
};
|
|
}, {
|
|
"./base64": 1,
|
|
"./external": 6,
|
|
"./nodejsUtils": 14,
|
|
"./support": 30,
|
|
"core-js/library/fn/set-immediate": 36
|
|
} ],
|
|
33: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
this.files = [], this.loadOptions = e;
|
|
}
|
|
var i = e("./reader/readerFor"), a = e("./utils"), s = e("./signature"), o = e("./zipEntry"), u = (e("./utf8"),
|
|
e("./support"));
|
|
n.prototype = {
|
|
checkSignature: function(e) {
|
|
if (!this.reader.readAndCheckSignature(e)) {
|
|
this.reader.index -= 4;
|
|
var t = this.reader.readString(4);
|
|
throw new Error("Corrupted zip or bug: unexpected signature (" + a.pretty(t) + ", expected " + a.pretty(e) + ")");
|
|
}
|
|
},
|
|
isSignature: function(e, t) {
|
|
var r = this.reader.index;
|
|
this.reader.setIndex(e);
|
|
var n = this.reader.readString(4) === t;
|
|
return this.reader.setIndex(r), n;
|
|
},
|
|
readBlockEndOfCentral: function() {
|
|
this.diskNumber = this.reader.readInt(2), this.diskWithCentralDirStart = this.reader.readInt(2),
|
|
this.centralDirRecordsOnThisDisk = this.reader.readInt(2), this.centralDirRecords = this.reader.readInt(2),
|
|
this.centralDirSize = this.reader.readInt(4), this.centralDirOffset = this.reader.readInt(4),
|
|
this.zipCommentLength = this.reader.readInt(2);
|
|
var e = this.reader.readData(this.zipCommentLength), t = u.uint8array ? "uint8array" : "array", r = a.transformTo(t, e);
|
|
this.zipComment = this.loadOptions.decodeFileName(r);
|
|
},
|
|
readBlockZip64EndOfCentral: function() {
|
|
this.zip64EndOfCentralSize = this.reader.readInt(8), this.reader.skip(4), this.diskNumber = this.reader.readInt(4),
|
|
this.diskWithCentralDirStart = this.reader.readInt(4), this.centralDirRecordsOnThisDisk = this.reader.readInt(8),
|
|
this.centralDirRecords = this.reader.readInt(8), this.centralDirSize = this.reader.readInt(8),
|
|
this.centralDirOffset = this.reader.readInt(8), this.zip64ExtensibleData = {};
|
|
for (var e, t, r, n = this.zip64EndOfCentralSize - 44; n > 0; ) e = this.reader.readInt(2),
|
|
t = this.reader.readInt(4), r = this.reader.readData(t), this.zip64ExtensibleData[e] = {
|
|
id: e,
|
|
length: t,
|
|
value: r
|
|
};
|
|
},
|
|
readBlockZip64EndOfCentralLocator: function() {
|
|
if (this.diskWithZip64CentralDirStart = this.reader.readInt(4), this.relativeOffsetEndOfZip64CentralDir = this.reader.readInt(8),
|
|
this.disksCount = this.reader.readInt(4), this.disksCount > 1) throw new Error("Multi-volumes zip are not supported");
|
|
},
|
|
readLocalFiles: function() {
|
|
var e, t;
|
|
for (e = 0; e < this.files.length; e++) t = this.files[e], this.reader.setIndex(t.localHeaderOffset),
|
|
this.checkSignature(s.LOCAL_FILE_HEADER), t.readLocalPart(this.reader), t.handleUTF8(),
|
|
t.processAttributes();
|
|
},
|
|
readCentralDir: function() {
|
|
var e;
|
|
for (this.reader.setIndex(this.centralDirOffset); this.reader.readAndCheckSignature(s.CENTRAL_FILE_HEADER); ) (e = new o({
|
|
zip64: this.zip64
|
|
}, this.loadOptions)).readCentralPart(this.reader), this.files.push(e);
|
|
if (this.centralDirRecords !== this.files.length && 0 !== this.centralDirRecords && 0 === this.files.length) throw new Error("Corrupted zip or bug: expected " + this.centralDirRecords + " records in central dir, got " + this.files.length);
|
|
},
|
|
readEndOfCentral: function() {
|
|
var e = this.reader.lastIndexOfSignature(s.CENTRAL_DIRECTORY_END);
|
|
if (0 > e) {
|
|
throw !this.isSignature(0, s.LOCAL_FILE_HEADER) ? new Error("Can't find end of central directory : is this a zip file ? If it is, see https://stuk.github.io/jszip/documentation/howto/read_zip.html") : new Error("Corrupted zip: can't find end of central directory");
|
|
}
|
|
this.reader.setIndex(e);
|
|
var t = e;
|
|
if (this.checkSignature(s.CENTRAL_DIRECTORY_END), this.readBlockEndOfCentral(),
|
|
this.diskNumber === a.MAX_VALUE_16BITS || this.diskWithCentralDirStart === a.MAX_VALUE_16BITS || this.centralDirRecordsOnThisDisk === a.MAX_VALUE_16BITS || this.centralDirRecords === a.MAX_VALUE_16BITS || this.centralDirSize === a.MAX_VALUE_32BITS || this.centralDirOffset === a.MAX_VALUE_32BITS) {
|
|
if (this.zip64 = !0, 0 > (e = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR))) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory locator");
|
|
if (this.reader.setIndex(e), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_LOCATOR),
|
|
this.readBlockZip64EndOfCentralLocator(), !this.isSignature(this.relativeOffsetEndOfZip64CentralDir, s.ZIP64_CENTRAL_DIRECTORY_END) && (this.relativeOffsetEndOfZip64CentralDir = this.reader.lastIndexOfSignature(s.ZIP64_CENTRAL_DIRECTORY_END),
|
|
this.relativeOffsetEndOfZip64CentralDir < 0)) throw new Error("Corrupted zip: can't find the ZIP64 end of central directory");
|
|
this.reader.setIndex(this.relativeOffsetEndOfZip64CentralDir), this.checkSignature(s.ZIP64_CENTRAL_DIRECTORY_END),
|
|
this.readBlockZip64EndOfCentral();
|
|
}
|
|
var r = this.centralDirOffset + this.centralDirSize;
|
|
this.zip64 && (r += 20, r += 12 + this.zip64EndOfCentralSize);
|
|
var n = t - r;
|
|
if (n > 0) this.isSignature(t, s.CENTRAL_FILE_HEADER) || (this.reader.zero = n); else if (0 > n) throw new Error("Corrupted zip: missing " + Math.abs(n) + " bytes.");
|
|
},
|
|
prepareReader: function(e) {
|
|
this.reader = i(e);
|
|
},
|
|
load: function(e) {
|
|
this.prepareReader(e), this.readEndOfCentral(), this.readCentralDir(), this.readLocalFiles();
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"./reader/readerFor": 22,
|
|
"./signature": 23,
|
|
"./support": 30,
|
|
"./utf8": 31,
|
|
"./utils": 32,
|
|
"./zipEntry": 34
|
|
} ],
|
|
34: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
this.options = e, this.loadOptions = t;
|
|
}
|
|
var i = e("./reader/readerFor"), a = e("./utils"), s = e("./compressedObject"), o = e("./crc32"), u = e("./utf8"), h = e("./compressions"), l = e("./support"), c = function(e) {
|
|
for (var t in h) if (h.hasOwnProperty(t) && h[t].magic === e) return h[t];
|
|
return null;
|
|
};
|
|
n.prototype = {
|
|
isEncrypted: function() {
|
|
return 1 == (1 & this.bitFlag);
|
|
},
|
|
useUTF8: function() {
|
|
return 2048 == (2048 & this.bitFlag);
|
|
},
|
|
readLocalPart: function(e) {
|
|
var t, r;
|
|
if (e.skip(22), this.fileNameLength = e.readInt(2), r = e.readInt(2), this.fileName = e.readData(this.fileNameLength),
|
|
e.skip(r), -1 === this.compressedSize || -1 === this.uncompressedSize) throw new Error("Bug or corrupted zip : didn't get enough informations from the central directory (compressedSize === -1 || uncompressedSize === -1)");
|
|
if (null === (t = c(this.compressionMethod))) throw new Error("Corrupted zip : compression " + a.pretty(this.compressionMethod) + " unknown (inner file : " + a.transformTo("string", this.fileName) + ")");
|
|
this.decompressed = new s(this.compressedSize, this.uncompressedSize, this.crc32, t, e.readData(this.compressedSize));
|
|
},
|
|
readCentralPart: function(e) {
|
|
this.versionMadeBy = e.readInt(2), e.skip(2), this.bitFlag = e.readInt(2), this.compressionMethod = e.readString(2),
|
|
this.date = e.readDate(), this.crc32 = e.readInt(4), this.compressedSize = e.readInt(4),
|
|
this.uncompressedSize = e.readInt(4);
|
|
var t = e.readInt(2);
|
|
if (this.extraFieldsLength = e.readInt(2), this.fileCommentLength = e.readInt(2),
|
|
this.diskNumberStart = e.readInt(2), this.internalFileAttributes = e.readInt(2),
|
|
this.externalFileAttributes = e.readInt(4), this.localHeaderOffset = e.readInt(4),
|
|
this.isEncrypted()) throw new Error("Encrypted zip are not supported");
|
|
e.skip(t), this.readExtraFields(e), this.parseZIP64ExtraField(e), this.fileComment = e.readData(this.fileCommentLength);
|
|
},
|
|
processAttributes: function() {
|
|
this.unixPermissions = null, this.dosPermissions = null;
|
|
var e = this.versionMadeBy >> 8;
|
|
this.dir = !!(16 & this.externalFileAttributes), 0 === e && (this.dosPermissions = 63 & this.externalFileAttributes),
|
|
3 === e && (this.unixPermissions = this.externalFileAttributes >> 16 & 65535), this.dir || "/" !== this.fileNameStr.slice(-1) || (this.dir = !0);
|
|
},
|
|
parseZIP64ExtraField: function(e) {
|
|
if (this.extraFields[1]) {
|
|
var t = i(this.extraFields[1].value);
|
|
this.uncompressedSize === a.MAX_VALUE_32BITS && (this.uncompressedSize = t.readInt(8)),
|
|
this.compressedSize === a.MAX_VALUE_32BITS && (this.compressedSize = t.readInt(8)),
|
|
this.localHeaderOffset === a.MAX_VALUE_32BITS && (this.localHeaderOffset = t.readInt(8)),
|
|
this.diskNumberStart === a.MAX_VALUE_32BITS && (this.diskNumberStart = t.readInt(4));
|
|
}
|
|
},
|
|
readExtraFields: function(e) {
|
|
var t, r, n, i = e.index + this.extraFieldsLength;
|
|
for (this.extraFields || (this.extraFields = {}); e.index < i; ) t = e.readInt(2),
|
|
r = e.readInt(2), n = e.readData(r), this.extraFields[t] = {
|
|
id: t,
|
|
length: r,
|
|
value: n
|
|
};
|
|
},
|
|
handleUTF8: function() {
|
|
var e = l.uint8array ? "uint8array" : "array";
|
|
if (this.useUTF8()) this.fileNameStr = u.utf8decode(this.fileName), this.fileCommentStr = u.utf8decode(this.fileComment); else {
|
|
var t = this.findExtraFieldUnicodePath();
|
|
if (null !== t) this.fileNameStr = t; else {
|
|
var r = a.transformTo(e, this.fileName);
|
|
this.fileNameStr = this.loadOptions.decodeFileName(r);
|
|
}
|
|
var n = this.findExtraFieldUnicodeComment();
|
|
if (null !== n) this.fileCommentStr = n; else {
|
|
var i = a.transformTo(e, this.fileComment);
|
|
this.fileCommentStr = this.loadOptions.decodeFileName(i);
|
|
}
|
|
}
|
|
},
|
|
findExtraFieldUnicodePath: function() {
|
|
var e = this.extraFields[28789];
|
|
if (e) {
|
|
var t = i(e.value);
|
|
return 1 !== t.readInt(1) ? null : o(this.fileName) !== t.readInt(4) ? null : u.utf8decode(t.readData(e.length - 5));
|
|
}
|
|
return null;
|
|
},
|
|
findExtraFieldUnicodeComment: function() {
|
|
var e = this.extraFields[25461];
|
|
if (e) {
|
|
var t = i(e.value);
|
|
return 1 !== t.readInt(1) ? null : o(this.fileComment) !== t.readInt(4) ? null : u.utf8decode(t.readData(e.length - 5));
|
|
}
|
|
return null;
|
|
}
|
|
}, t.exports = n;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./compressions": 3,
|
|
"./crc32": 4,
|
|
"./reader/readerFor": 22,
|
|
"./support": 30,
|
|
"./utf8": 31,
|
|
"./utils": 32
|
|
} ],
|
|
35: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("./stream/StreamHelper"), i = e("./stream/DataWorker"), a = e("./utf8"), s = e("./compressedObject"), o = e("./stream/GenericWorker"), u = function(e, t, r) {
|
|
this.name = e, this.dir = r.dir, this.date = r.date, this.comment = r.comment, this.unixPermissions = r.unixPermissions,
|
|
this.dosPermissions = r.dosPermissions, this._data = t, this._dataBinary = r.binary,
|
|
this.options = {
|
|
compression: r.compression,
|
|
compressionOptions: r.compressionOptions
|
|
};
|
|
};
|
|
u.prototype = {
|
|
internalStream: function(e) {
|
|
var t = null, r = "string";
|
|
try {
|
|
if (!e) throw new Error("No output type specified.");
|
|
var i = "string" === (r = e.toLowerCase()) || "text" === r;
|
|
"binarystring" !== r && "text" !== r || (r = "string"), t = this._decompressWorker();
|
|
var s = !this._dataBinary;
|
|
s && !i && (t = t.pipe(new a.Utf8EncodeWorker())), !s && i && (t = t.pipe(new a.Utf8DecodeWorker()));
|
|
} catch (e) {
|
|
(t = new o("error")).error(e);
|
|
}
|
|
return new n(t, r, "");
|
|
},
|
|
async: function(e, t) {
|
|
return this.internalStream(e).accumulate(t);
|
|
},
|
|
nodeStream: function(e, t) {
|
|
return this.internalStream(e || "nodebuffer").toNodejsStream(t);
|
|
},
|
|
_compressWorker: function(e, t) {
|
|
if (this._data instanceof s && this._data.compression.magic === e.magic) return this._data.getCompressedWorker();
|
|
var r = this._decompressWorker();
|
|
return this._dataBinary || (r = r.pipe(new a.Utf8EncodeWorker())), s.createWorkerFrom(r, e, t);
|
|
},
|
|
_decompressWorker: function() {
|
|
return this._data instanceof s ? this._data.getContentWorker() : this._data instanceof o ? this._data : new i(this._data);
|
|
}
|
|
};
|
|
for (var h = [ "asText", "asBinary", "asNodeBuffer", "asUint8Array", "asArrayBuffer" ], l = function() {
|
|
throw new Error("This method has been removed in JSZip 3.0, please check the upgrade guide.");
|
|
}, c = 0; c < h.length; c++) u.prototype[h[c]] = l;
|
|
t.exports = u;
|
|
}, {
|
|
"./compressedObject": 2,
|
|
"./stream/DataWorker": 27,
|
|
"./stream/GenericWorker": 28,
|
|
"./stream/StreamHelper": 29,
|
|
"./utf8": 31
|
|
} ],
|
|
36: [ function(e, t, r) {
|
|
e("../modules/web.immediate"), t.exports = e("../modules/_core").setImmediate;
|
|
}, {
|
|
"../modules/_core": 40,
|
|
"../modules/web.immediate": 56
|
|
} ],
|
|
37: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
if ("function" != typeof e) throw TypeError(e + " is not a function!");
|
|
return e;
|
|
};
|
|
}, {} ],
|
|
38: [ function(e, t, r) {
|
|
var n = e("./_is-object");
|
|
t.exports = function(e) {
|
|
if (!n(e)) throw TypeError(e + " is not an object!");
|
|
return e;
|
|
};
|
|
}, {
|
|
"./_is-object": 51
|
|
} ],
|
|
39: [ function(e, t, r) {
|
|
var n = {}.toString;
|
|
t.exports = function(e) {
|
|
return n.call(e).slice(8, -1);
|
|
};
|
|
}, {} ],
|
|
40: [ function(e, t, r) {
|
|
var n = t.exports = {
|
|
version: "2.3.0"
|
|
};
|
|
"number" == typeof __e && (__e = n);
|
|
}, {} ],
|
|
41: [ function(e, t, r) {
|
|
var n = e("./_a-function");
|
|
t.exports = function(e, t, r) {
|
|
if (n(e), void 0 === t) return e;
|
|
switch (r) {
|
|
case 1:
|
|
return function(r) {
|
|
return e.call(t, r);
|
|
};
|
|
|
|
case 2:
|
|
return function(r, n) {
|
|
return e.call(t, r, n);
|
|
};
|
|
|
|
case 3:
|
|
return function(r, n, i) {
|
|
return e.call(t, r, n, i);
|
|
};
|
|
}
|
|
return function() {
|
|
return e.apply(t, arguments);
|
|
};
|
|
};
|
|
}, {
|
|
"./_a-function": 37
|
|
} ],
|
|
42: [ function(e, t, r) {
|
|
t.exports = !e("./_fails")(function() {
|
|
return 7 != Object.defineProperty({}, "a", {
|
|
get: function() {
|
|
return 7;
|
|
}
|
|
}).a;
|
|
});
|
|
}, {
|
|
"./_fails": 45
|
|
} ],
|
|
43: [ function(e, t, r) {
|
|
var n = e("./_is-object"), i = e("./_global").document, a = n(i) && n(i.createElement);
|
|
t.exports = function(e) {
|
|
return a ? i.createElement(e) : {};
|
|
};
|
|
}, {
|
|
"./_global": 46,
|
|
"./_is-object": 51
|
|
} ],
|
|
44: [ function(e, t, r) {
|
|
var n = e("./_global"), i = e("./_core"), a = e("./_ctx"), s = e("./_hide"), o = "prototype", u = function(e, t, r) {
|
|
var h, l, c, f = e & u.F, d = e & u.G, p = e & u.S, m = e & u.P, _ = e & u.B, g = e & u.W, b = d ? i : i[t] || (i[t] = {}), v = b[o], w = d ? n : p ? n[t] : (n[t] || {})[o];
|
|
d && (r = t);
|
|
for (h in r) (l = !f && w && void 0 !== w[h]) && h in b || (c = l ? w[h] : r[h],
|
|
b[h] = d && "function" != typeof w[h] ? r[h] : _ && l ? a(c, n) : g && w[h] == c ? function(e) {
|
|
var t = function(t, r, n) {
|
|
if (this instanceof e) {
|
|
switch (arguments.length) {
|
|
case 0:
|
|
return new e();
|
|
|
|
case 1:
|
|
return new e(t);
|
|
|
|
case 2:
|
|
return new e(t, r);
|
|
}
|
|
return new e(t, r, n);
|
|
}
|
|
return e.apply(this, arguments);
|
|
};
|
|
return t[o] = e[o], t;
|
|
}(c) : m && "function" == typeof c ? a(Function.call, c) : c, m && ((b.virtual || (b.virtual = {}))[h] = c,
|
|
e & u.R && v && !v[h] && s(v, h, c)));
|
|
};
|
|
u.F = 1, u.G = 2, u.S = 4, u.P = 8, u.B = 16, u.W = 32, u.U = 64, u.R = 128, t.exports = u;
|
|
}, {
|
|
"./_core": 40,
|
|
"./_ctx": 41,
|
|
"./_global": 46,
|
|
"./_hide": 47
|
|
} ],
|
|
45: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
try {
|
|
return !!e();
|
|
} catch (e) {
|
|
return !0;
|
|
}
|
|
};
|
|
}, {} ],
|
|
46: [ function(e, t, r) {
|
|
var n = t.exports = "undefined" != typeof window && window.Math == Math ? window : "undefined" != typeof self && self.Math == Math ? self : Function("return this")();
|
|
"number" == typeof __g && (__g = n);
|
|
}, {} ],
|
|
47: [ function(e, t, r) {
|
|
var n = e("./_object-dp"), i = e("./_property-desc");
|
|
t.exports = e("./_descriptors") ? function(e, t, r) {
|
|
return n.f(e, t, i(1, r));
|
|
} : function(e, t, r) {
|
|
return e[t] = r, e;
|
|
};
|
|
}, {
|
|
"./_descriptors": 42,
|
|
"./_object-dp": 52,
|
|
"./_property-desc": 53
|
|
} ],
|
|
48: [ function(e, t, r) {
|
|
t.exports = e("./_global").document && document.documentElement;
|
|
}, {
|
|
"./_global": 46
|
|
} ],
|
|
49: [ function(e, t, r) {
|
|
t.exports = !e("./_descriptors") && !e("./_fails")(function() {
|
|
return 7 != Object.defineProperty(e("./_dom-create")("div"), "a", {
|
|
get: function() {
|
|
return 7;
|
|
}
|
|
}).a;
|
|
});
|
|
}, {
|
|
"./_descriptors": 42,
|
|
"./_dom-create": 43,
|
|
"./_fails": 45
|
|
} ],
|
|
50: [ function(e, t, r) {
|
|
t.exports = function(e, t, r) {
|
|
var n = void 0 === r;
|
|
switch (t.length) {
|
|
case 0:
|
|
return n ? e() : e.call(r);
|
|
|
|
case 1:
|
|
return n ? e(t[0]) : e.call(r, t[0]);
|
|
|
|
case 2:
|
|
return n ? e(t[0], t[1]) : e.call(r, t[0], t[1]);
|
|
|
|
case 3:
|
|
return n ? e(t[0], t[1], t[2]) : e.call(r, t[0], t[1], t[2]);
|
|
|
|
case 4:
|
|
return n ? e(t[0], t[1], t[2], t[3]) : e.call(r, t[0], t[1], t[2], t[3]);
|
|
}
|
|
return e.apply(r, t);
|
|
};
|
|
}, {} ],
|
|
51: [ function(e, t, r) {
|
|
t.exports = function(e) {
|
|
return "object" == typeof e ? null !== e : "function" == typeof e;
|
|
};
|
|
}, {} ],
|
|
52: [ function(e, t, r) {
|
|
var n = e("./_an-object"), i = e("./_ie8-dom-define"), a = e("./_to-primitive"), s = Object.defineProperty;
|
|
r.f = e("./_descriptors") ? Object.defineProperty : function(e, t, r) {
|
|
if (n(e), t = a(t, !0), n(r), i) try {
|
|
return s(e, t, r);
|
|
} catch (e) {}
|
|
if ("get" in r || "set" in r) throw TypeError("Accessors not supported!");
|
|
return "value" in r && (e[t] = r.value), e;
|
|
};
|
|
}, {
|
|
"./_an-object": 38,
|
|
"./_descriptors": 42,
|
|
"./_ie8-dom-define": 49,
|
|
"./_to-primitive": 55
|
|
} ],
|
|
53: [ function(e, t, r) {
|
|
t.exports = function(e, t) {
|
|
return {
|
|
enumerable: !(1 & e),
|
|
configurable: !(2 & e),
|
|
writable: !(4 & e),
|
|
value: t
|
|
};
|
|
};
|
|
}, {} ],
|
|
54: [ function(e, t, r) {
|
|
var n, i, a, s = e("./_ctx"), o = e("./_invoke"), u = e("./_html"), h = e("./_dom-create"), l = e("./_global"), c = l.process, f = l.setImmediate, d = l.clearImmediate, p = l.MessageChannel, m = 0, _ = {}, g = "onreadystatechange", b = function() {
|
|
var e = +this;
|
|
if (_.hasOwnProperty(e)) {
|
|
var t = _[e];
|
|
delete _[e], t();
|
|
}
|
|
}, v = function(e) {
|
|
b.call(e.data);
|
|
};
|
|
f && d || (f = function(e) {
|
|
for (var t = [], r = 1; arguments.length > r; ) t.push(arguments[r++]);
|
|
return _[++m] = function() {
|
|
o("function" == typeof e ? e : Function(e), t);
|
|
}, n(m), m;
|
|
}, d = function(e) {
|
|
delete _[e];
|
|
}, "process" == e("./_cof")(c) ? n = function(e) {
|
|
c.nextTick(s(b, e, 1));
|
|
} : p ? (a = (i = new p()).port2, i.port1.onmessage = v, n = s(a.postMessage, a, 1)) : l.addEventListener && "function" == typeof postMessage && !l.importScripts ? (n = function(e) {
|
|
l.postMessage(e + "", "*");
|
|
}, l.addEventListener("message", v, !1)) : n = g in h("script") ? function(e) {
|
|
u.appendChild(h("script"))[g] = function() {
|
|
u.removeChild(this), b.call(e);
|
|
};
|
|
} : function(e) {
|
|
setTimeout(s(b, e, 1), 0);
|
|
}), t.exports = {
|
|
set: f,
|
|
clear: d
|
|
};
|
|
}, {
|
|
"./_cof": 39,
|
|
"./_ctx": 41,
|
|
"./_dom-create": 43,
|
|
"./_global": 46,
|
|
"./_html": 48,
|
|
"./_invoke": 50
|
|
} ],
|
|
55: [ function(e, t, r) {
|
|
var n = e("./_is-object");
|
|
t.exports = function(e, t) {
|
|
if (!n(e)) return e;
|
|
var r, i;
|
|
if (t && "function" == typeof (r = e.toString) && !n(i = r.call(e))) return i;
|
|
if ("function" == typeof (r = e.valueOf) && !n(i = r.call(e))) return i;
|
|
if (!t && "function" == typeof (r = e.toString) && !n(i = r.call(e))) return i;
|
|
throw TypeError("Can't convert object to primitive value");
|
|
};
|
|
}, {
|
|
"./_is-object": 51
|
|
} ],
|
|
56: [ function(e, t, r) {
|
|
var n = e("./_export"), i = e("./_task");
|
|
n(n.G + n.B, {
|
|
setImmediate: i.set,
|
|
clearImmediate: i.clear
|
|
});
|
|
}, {
|
|
"./_export": 44,
|
|
"./_task": 54
|
|
} ],
|
|
57: [ function(e, t, r) {
|
|
(function(e) {
|
|
"use strict";
|
|
function r() {
|
|
h = !0;
|
|
for (var e, t, r = l.length; r; ) {
|
|
for (t = l, l = [], e = -1; ++e < r; ) t[e]();
|
|
r = l.length;
|
|
}
|
|
h = !1;
|
|
}
|
|
var n, i = e.MutationObserver || e.WebKitMutationObserver;
|
|
if (i) {
|
|
var a = 0, s = new i(r), o = e.document.createTextNode("");
|
|
s.observe(o, {
|
|
characterData: !0
|
|
}), n = function() {
|
|
o.data = a = ++a % 2;
|
|
};
|
|
} else if (e.setImmediate || "undefined" == typeof e.MessageChannel) n = "document" in e && "onreadystatechange" in e.document.createElement("script") ? function() {
|
|
var t = e.document.createElement("script");
|
|
t.onreadystatechange = function() {
|
|
r(), t.onreadystatechange = null, t.parentNode.removeChild(t), t = null;
|
|
}, e.document.documentElement.appendChild(t);
|
|
} : function() {
|
|
setTimeout(r, 0);
|
|
}; else {
|
|
var u = new e.MessageChannel();
|
|
u.port1.onmessage = r, n = function() {
|
|
u.port2.postMessage(0);
|
|
};
|
|
}
|
|
var h, l = [];
|
|
t.exports = function(e) {
|
|
1 !== l.push(e) || h || n();
|
|
};
|
|
}).call(this, "undefined" != typeof global ? global : "undefined" != typeof self ? self : "undefined" != typeof window ? window : {});
|
|
}, {} ],
|
|
58: [ function(e, t, r) {
|
|
"use strict";
|
|
function n() {}
|
|
function i(e) {
|
|
if ("function" != typeof e) throw new TypeError("resolver must be a function");
|
|
this.state = p, this.queue = [], this.outcome = void 0, e !== n && u(this, e);
|
|
}
|
|
function a(e, t, r) {
|
|
this.promise = e, "function" == typeof t && (this.onFulfilled = t, this.callFulfilled = this.otherCallFulfilled),
|
|
"function" == typeof r && (this.onRejected = r, this.callRejected = this.otherCallRejected);
|
|
}
|
|
function s(e, t, r) {
|
|
l(function() {
|
|
var n;
|
|
try {
|
|
n = t(r);
|
|
} catch (t) {
|
|
return c.reject(e, t);
|
|
}
|
|
n === e ? c.reject(e, new TypeError("Cannot resolve promise with itself")) : c.resolve(e, n);
|
|
});
|
|
}
|
|
function o(e) {
|
|
var t = e && e.then;
|
|
return !e || "object" != typeof e && "function" != typeof e || "function" != typeof t ? void 0 : function() {
|
|
t.apply(e, arguments);
|
|
};
|
|
}
|
|
function u(e, t) {
|
|
function r(t) {
|
|
i || (i = !0, c.reject(e, t));
|
|
}
|
|
function n(t) {
|
|
i || (i = !0, c.resolve(e, t));
|
|
}
|
|
var i = !1, a = h(function() {
|
|
t(n, r);
|
|
});
|
|
"error" === a.status && r(a.value);
|
|
}
|
|
function h(e, t) {
|
|
var r = {};
|
|
try {
|
|
r.value = e(t), r.status = "success";
|
|
} catch (e) {
|
|
r.status = "error", r.value = e;
|
|
}
|
|
return r;
|
|
}
|
|
var l = e("immediate"), c = {}, f = [ "REJECTED" ], d = [ "FULFILLED" ], p = [ "PENDING" ];
|
|
t.exports = i, i.prototype.catch = function(e) {
|
|
return this.then(null, e);
|
|
}, i.prototype.then = function(e, t) {
|
|
if ("function" != typeof e && this.state === d || "function" != typeof t && this.state === f) return this;
|
|
var r = new this.constructor(n);
|
|
if (this.state !== p) {
|
|
s(r, this.state === d ? e : t, this.outcome);
|
|
} else this.queue.push(new a(r, e, t));
|
|
return r;
|
|
}, a.prototype.callFulfilled = function(e) {
|
|
c.resolve(this.promise, e);
|
|
}, a.prototype.otherCallFulfilled = function(e) {
|
|
s(this.promise, this.onFulfilled, e);
|
|
}, a.prototype.callRejected = function(e) {
|
|
c.reject(this.promise, e);
|
|
}, a.prototype.otherCallRejected = function(e) {
|
|
s(this.promise, this.onRejected, e);
|
|
}, c.resolve = function(e, t) {
|
|
var r = h(o, t);
|
|
if ("error" === r.status) return c.reject(e, r.value);
|
|
var n = r.value;
|
|
if (n) u(e, n); else {
|
|
e.state = d, e.outcome = t;
|
|
for (var i = -1, a = e.queue.length; ++i < a; ) e.queue[i].callFulfilled(t);
|
|
}
|
|
return e;
|
|
}, c.reject = function(e, t) {
|
|
e.state = f, e.outcome = t;
|
|
for (var r = -1, n = e.queue.length; ++r < n; ) e.queue[r].callRejected(t);
|
|
return e;
|
|
}, i.resolve = function(e) {
|
|
return e instanceof this ? e : c.resolve(new this(n), e);
|
|
}, i.reject = function(e) {
|
|
var t = new this(n);
|
|
return c.reject(t, e);
|
|
}, i.all = function(e) {
|
|
function t(e, t) {
|
|
r.resolve(e).then(function(e) {
|
|
s[t] = e, ++o !== i || a || (a = !0, c.resolve(h, s));
|
|
}, function(e) {
|
|
a || (a = !0, c.reject(h, e));
|
|
});
|
|
}
|
|
var r = this;
|
|
if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array"));
|
|
var i = e.length, a = !1;
|
|
if (!i) return this.resolve([]);
|
|
for (var s = new Array(i), o = 0, u = -1, h = new this(n); ++u < i; ) t(e[u], u);
|
|
return h;
|
|
}, i.race = function(e) {
|
|
function t(e) {
|
|
r.resolve(e).then(function(e) {
|
|
a || (a = !0, c.resolve(o, e));
|
|
}, function(e) {
|
|
a || (a = !0, c.reject(o, e));
|
|
});
|
|
}
|
|
var r = this;
|
|
if ("[object Array]" !== Object.prototype.toString.call(e)) return this.reject(new TypeError("must be an array"));
|
|
var i = e.length, a = !1;
|
|
if (!i) return this.resolve([]);
|
|
for (var s = -1, o = new this(n); ++s < i; ) t(e[s]);
|
|
return o;
|
|
};
|
|
}, {
|
|
immediate: 57
|
|
} ],
|
|
59: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = {};
|
|
(0, e("./lib/utils/common").assign)(n, e("./lib/deflate"), e("./lib/inflate"), e("./lib/zlib/constants")),
|
|
t.exports = n;
|
|
}, {
|
|
"./lib/deflate": 60,
|
|
"./lib/inflate": 61,
|
|
"./lib/utils/common": 62,
|
|
"./lib/zlib/constants": 65
|
|
} ],
|
|
60: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
if (!(this instanceof n)) return new n(e);
|
|
this.options = s.assign({
|
|
level: f,
|
|
method: p,
|
|
chunkSize: 16384,
|
|
windowBits: 15,
|
|
memLevel: 8,
|
|
strategy: d,
|
|
to: ""
|
|
}, e || {});
|
|
var t = this.options;
|
|
t.raw && t.windowBits > 0 ? t.windowBits = -t.windowBits : t.gzip && t.windowBits > 0 && t.windowBits < 16 && (t.windowBits += 16),
|
|
this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new h(),
|
|
this.strm.avail_out = 0;
|
|
var r = a.deflateInit2(this.strm, t.level, t.method, t.windowBits, t.memLevel, t.strategy);
|
|
if (r !== c) throw new Error(u[r]);
|
|
if (t.header && a.deflateSetHeader(this.strm, t.header), t.dictionary) {
|
|
var i;
|
|
if (i = "string" == typeof t.dictionary ? o.string2buf(t.dictionary) : "[object ArrayBuffer]" === l.call(t.dictionary) ? new Uint8Array(t.dictionary) : t.dictionary,
|
|
(r = a.deflateSetDictionary(this.strm, i)) !== c) throw new Error(u[r]);
|
|
this._dict_set = !0;
|
|
}
|
|
}
|
|
function i(e, t) {
|
|
var r = new n(t);
|
|
if (r.push(e, !0), r.err) throw r.msg || u[r.err];
|
|
return r.result;
|
|
}
|
|
var a = e("./zlib/deflate"), s = e("./utils/common"), o = e("./utils/strings"), u = e("./zlib/messages"), h = e("./zlib/zstream"), l = Object.prototype.toString, c = 0, f = -1, d = 0, p = 8;
|
|
n.prototype.push = function(e, t) {
|
|
var r, n, i = this.strm, u = this.options.chunkSize;
|
|
if (this.ended) return !1;
|
|
n = t === ~~t ? t : !0 === t ? 4 : 0, "string" == typeof e ? i.input = o.string2buf(e) : "[object ArrayBuffer]" === l.call(e) ? i.input = new Uint8Array(e) : i.input = e,
|
|
i.next_in = 0, i.avail_in = i.input.length;
|
|
do {
|
|
if (0 === i.avail_out && (i.output = new s.Buf8(u), i.next_out = 0, i.avail_out = u),
|
|
1 !== (r = a.deflate(i, n)) && r !== c) return this.onEnd(r), this.ended = !0, !1;
|
|
0 !== i.avail_out && (0 !== i.avail_in || 4 !== n && 2 !== n) || ("string" === this.options.to ? this.onData(o.buf2binstring(s.shrinkBuf(i.output, i.next_out))) : this.onData(s.shrinkBuf(i.output, i.next_out)));
|
|
} while ((i.avail_in > 0 || 0 === i.avail_out) && 1 !== r);
|
|
return 4 === n ? (r = a.deflateEnd(this.strm), this.onEnd(r), this.ended = !0, r === c) : 2 !== n || (this.onEnd(c),
|
|
i.avail_out = 0, !0);
|
|
}, n.prototype.onData = function(e) {
|
|
this.chunks.push(e);
|
|
}, n.prototype.onEnd = function(e) {
|
|
e === c && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = s.flattenChunks(this.chunks)),
|
|
this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
}, r.Deflate = n, r.deflate = i, r.deflateRaw = function(e, t) {
|
|
return (t = t || {}).raw = !0, i(e, t);
|
|
}, r.gzip = function(e, t) {
|
|
return (t = t || {}).gzip = !0, i(e, t);
|
|
};
|
|
}, {
|
|
"./utils/common": 62,
|
|
"./utils/strings": 63,
|
|
"./zlib/deflate": 67,
|
|
"./zlib/messages": 72,
|
|
"./zlib/zstream": 74
|
|
} ],
|
|
61: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
if (!(this instanceof n)) return new n(e);
|
|
this.options = s.assign({
|
|
chunkSize: 16384,
|
|
windowBits: 0,
|
|
to: ""
|
|
}, e || {});
|
|
var t = this.options;
|
|
t.raw && t.windowBits >= 0 && t.windowBits < 16 && (t.windowBits = -t.windowBits,
|
|
0 === t.windowBits && (t.windowBits = -15)), !(t.windowBits >= 0 && t.windowBits < 16) || e && e.windowBits || (t.windowBits += 32),
|
|
t.windowBits > 15 && t.windowBits < 48 && 0 == (15 & t.windowBits) && (t.windowBits |= 15),
|
|
this.err = 0, this.msg = "", this.ended = !1, this.chunks = [], this.strm = new l(),
|
|
this.strm.avail_out = 0;
|
|
var r = a.inflateInit2(this.strm, t.windowBits);
|
|
if (r !== u.Z_OK) throw new Error(h[r]);
|
|
this.header = new c(), a.inflateGetHeader(this.strm, this.header);
|
|
}
|
|
function i(e, t) {
|
|
var r = new n(t);
|
|
if (r.push(e, !0), r.err) throw r.msg || h[r.err];
|
|
return r.result;
|
|
}
|
|
var a = e("./zlib/inflate"), s = e("./utils/common"), o = e("./utils/strings"), u = e("./zlib/constants"), h = e("./zlib/messages"), l = e("./zlib/zstream"), c = e("./zlib/gzheader"), f = Object.prototype.toString;
|
|
n.prototype.push = function(e, t) {
|
|
var r, n, i, h, l, c, d = this.strm, p = this.options.chunkSize, m = this.options.dictionary, _ = !1;
|
|
if (this.ended) return !1;
|
|
n = t === ~~t ? t : !0 === t ? u.Z_FINISH : u.Z_NO_FLUSH, "string" == typeof e ? d.input = o.binstring2buf(e) : "[object ArrayBuffer]" === f.call(e) ? d.input = new Uint8Array(e) : d.input = e,
|
|
d.next_in = 0, d.avail_in = d.input.length;
|
|
do {
|
|
if (0 === d.avail_out && (d.output = new s.Buf8(p), d.next_out = 0, d.avail_out = p),
|
|
(r = a.inflate(d, u.Z_NO_FLUSH)) === u.Z_NEED_DICT && m && (c = "string" == typeof m ? o.string2buf(m) : "[object ArrayBuffer]" === f.call(m) ? new Uint8Array(m) : m,
|
|
r = a.inflateSetDictionary(this.strm, c)), r === u.Z_BUF_ERROR && !0 === _ && (r = u.Z_OK,
|
|
_ = !1), r !== u.Z_STREAM_END && r !== u.Z_OK) return this.onEnd(r), this.ended = !0,
|
|
!1;
|
|
d.next_out && (0 !== d.avail_out && r !== u.Z_STREAM_END && (0 !== d.avail_in || n !== u.Z_FINISH && n !== u.Z_SYNC_FLUSH) || ("string" === this.options.to ? (i = o.utf8border(d.output, d.next_out),
|
|
h = d.next_out - i, l = o.buf2string(d.output, i), d.next_out = h, d.avail_out = p - h,
|
|
h && s.arraySet(d.output, d.output, i, h, 0), this.onData(l)) : this.onData(s.shrinkBuf(d.output, d.next_out)))),
|
|
0 === d.avail_in && 0 === d.avail_out && (_ = !0);
|
|
} while ((d.avail_in > 0 || 0 === d.avail_out) && r !== u.Z_STREAM_END);
|
|
return r === u.Z_STREAM_END && (n = u.Z_FINISH), n === u.Z_FINISH ? (r = a.inflateEnd(this.strm),
|
|
this.onEnd(r), this.ended = !0, r === u.Z_OK) : n !== u.Z_SYNC_FLUSH || (this.onEnd(u.Z_OK),
|
|
d.avail_out = 0, !0);
|
|
}, n.prototype.onData = function(e) {
|
|
this.chunks.push(e);
|
|
}, n.prototype.onEnd = function(e) {
|
|
e === u.Z_OK && ("string" === this.options.to ? this.result = this.chunks.join("") : this.result = s.flattenChunks(this.chunks)),
|
|
this.chunks = [], this.err = e, this.msg = this.strm.msg;
|
|
}, r.Inflate = n, r.inflate = i, r.inflateRaw = function(e, t) {
|
|
return (t = t || {}).raw = !0, i(e, t);
|
|
}, r.ungzip = i;
|
|
}, {
|
|
"./utils/common": 62,
|
|
"./utils/strings": 63,
|
|
"./zlib/constants": 65,
|
|
"./zlib/gzheader": 68,
|
|
"./zlib/inflate": 70,
|
|
"./zlib/messages": 72,
|
|
"./zlib/zstream": 74
|
|
} ],
|
|
62: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = "undefined" != typeof Uint8Array && "undefined" != typeof Uint16Array && "undefined" != typeof Int32Array;
|
|
r.assign = function(e) {
|
|
for (var t = Array.prototype.slice.call(arguments, 1); t.length; ) {
|
|
var r = t.shift();
|
|
if (r) {
|
|
if ("object" != typeof r) throw new TypeError(r + "must be non-object");
|
|
for (var n in r) r.hasOwnProperty(n) && (e[n] = r[n]);
|
|
}
|
|
}
|
|
return e;
|
|
}, r.shrinkBuf = function(e, t) {
|
|
return e.length === t ? e : e.subarray ? e.subarray(0, t) : (e.length = t, e);
|
|
};
|
|
var i = {
|
|
arraySet: function(e, t, r, n, i) {
|
|
if (t.subarray && e.subarray) e.set(t.subarray(r, r + n), i); else for (var a = 0; n > a; a++) e[i + a] = t[r + a];
|
|
},
|
|
flattenChunks: function(e) {
|
|
var t, r, n, i, a, s;
|
|
for (n = 0, t = 0, r = e.length; r > t; t++) n += e[t].length;
|
|
for (s = new Uint8Array(n), i = 0, t = 0, r = e.length; r > t; t++) a = e[t], s.set(a, i),
|
|
i += a.length;
|
|
return s;
|
|
}
|
|
}, a = {
|
|
arraySet: function(e, t, r, n, i) {
|
|
for (var a = 0; n > a; a++) e[i + a] = t[r + a];
|
|
},
|
|
flattenChunks: function(e) {
|
|
return [].concat.apply([], e);
|
|
}
|
|
};
|
|
r.setTyped = function(e) {
|
|
e ? (r.Buf8 = Uint8Array, r.Buf16 = Uint16Array, r.Buf32 = Int32Array, r.assign(r, i)) : (r.Buf8 = Array,
|
|
r.Buf16 = Array, r.Buf32 = Array, r.assign(r, a));
|
|
}, r.setTyped(n);
|
|
}, {} ],
|
|
63: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
if (65537 > t && (e.subarray && s || !e.subarray && a)) return String.fromCharCode.apply(null, i.shrinkBuf(e, t));
|
|
for (var r = "", n = 0; t > n; n++) r += String.fromCharCode(e[n]);
|
|
return r;
|
|
}
|
|
var i = e("./common"), a = !0, s = !0;
|
|
try {
|
|
String.fromCharCode.apply(null, [ 0 ]);
|
|
} catch (e) {
|
|
a = !1;
|
|
}
|
|
try {
|
|
String.fromCharCode.apply(null, new Uint8Array(1));
|
|
} catch (e) {
|
|
s = !1;
|
|
}
|
|
for (var o = new i.Buf8(256), u = 0; 256 > u; u++) o[u] = u >= 252 ? 6 : u >= 248 ? 5 : u >= 240 ? 4 : u >= 224 ? 3 : u >= 192 ? 2 : 1;
|
|
o[254] = o[254] = 1, r.string2buf = function(e) {
|
|
var t, r, n, a, s, o = e.length, u = 0;
|
|
for (a = 0; o > a; a++) 55296 == (64512 & (r = e.charCodeAt(a))) && o > a + 1 && (56320 == (64512 & (n = e.charCodeAt(a + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
a++)), u += 128 > r ? 1 : 2048 > r ? 2 : 65536 > r ? 3 : 4;
|
|
for (t = new i.Buf8(u), s = 0, a = 0; u > s; a++) 55296 == (64512 & (r = e.charCodeAt(a))) && o > a + 1 && (56320 == (64512 & (n = e.charCodeAt(a + 1))) && (r = 65536 + (r - 55296 << 10) + (n - 56320),
|
|
a++)), 128 > r ? t[s++] = r : 2048 > r ? (t[s++] = 192 | r >>> 6, t[s++] = 128 | 63 & r) : 65536 > r ? (t[s++] = 224 | r >>> 12,
|
|
t[s++] = 128 | r >>> 6 & 63, t[s++] = 128 | 63 & r) : (t[s++] = 240 | r >>> 18,
|
|
t[s++] = 128 | r >>> 12 & 63, t[s++] = 128 | r >>> 6 & 63, t[s++] = 128 | 63 & r);
|
|
return t;
|
|
}, r.buf2binstring = function(e) {
|
|
return n(e, e.length);
|
|
}, r.binstring2buf = function(e) {
|
|
for (var t = new i.Buf8(e.length), r = 0, n = t.length; n > r; r++) t[r] = e.charCodeAt(r);
|
|
return t;
|
|
}, r.buf2string = function(e, t) {
|
|
var r, i, a, s, u = t || e.length, h = new Array(2 * u);
|
|
for (i = 0, r = 0; u > r; ) if (128 > (a = e[r++])) h[i++] = a; else if ((s = o[a]) > 4) h[i++] = 65533,
|
|
r += s - 1; else {
|
|
for (a &= 2 === s ? 31 : 3 === s ? 15 : 7; s > 1 && u > r; ) a = a << 6 | 63 & e[r++],
|
|
s--;
|
|
s > 1 ? h[i++] = 65533 : 65536 > a ? h[i++] = a : (a -= 65536, h[i++] = 55296 | a >> 10 & 1023,
|
|
h[i++] = 56320 | 1023 & a);
|
|
}
|
|
return n(h, i);
|
|
}, r.utf8border = function(e, t) {
|
|
var r;
|
|
for ((t = t || e.length) > e.length && (t = e.length), r = t - 1; r >= 0 && 128 == (192 & e[r]); ) r--;
|
|
return 0 > r ? t : 0 === r ? t : r + o[e[r]] > t ? r : t;
|
|
};
|
|
}, {
|
|
"./common": 62
|
|
} ],
|
|
64: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function(e, t, r, n) {
|
|
for (var i = 65535 & e | 0, a = e >>> 16 & 65535 | 0, s = 0; 0 !== r; ) {
|
|
r -= s = r > 2e3 ? 2e3 : r;
|
|
do {
|
|
a = a + (i = i + t[n++] | 0) | 0;
|
|
} while (--s);
|
|
i %= 65521, a %= 65521;
|
|
}
|
|
return i | a << 16 | 0;
|
|
};
|
|
}, {} ],
|
|
65: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
Z_NO_FLUSH: 0,
|
|
Z_PARTIAL_FLUSH: 1,
|
|
Z_SYNC_FLUSH: 2,
|
|
Z_FULL_FLUSH: 3,
|
|
Z_FINISH: 4,
|
|
Z_BLOCK: 5,
|
|
Z_TREES: 6,
|
|
Z_OK: 0,
|
|
Z_STREAM_END: 1,
|
|
Z_NEED_DICT: 2,
|
|
Z_ERRNO: -1,
|
|
Z_STREAM_ERROR: -2,
|
|
Z_DATA_ERROR: -3,
|
|
Z_BUF_ERROR: -5,
|
|
Z_NO_COMPRESSION: 0,
|
|
Z_BEST_SPEED: 1,
|
|
Z_BEST_COMPRESSION: 9,
|
|
Z_DEFAULT_COMPRESSION: -1,
|
|
Z_FILTERED: 1,
|
|
Z_HUFFMAN_ONLY: 2,
|
|
Z_RLE: 3,
|
|
Z_FIXED: 4,
|
|
Z_DEFAULT_STRATEGY: 0,
|
|
Z_BINARY: 0,
|
|
Z_TEXT: 1,
|
|
Z_UNKNOWN: 2,
|
|
Z_DEFLATED: 8
|
|
};
|
|
}, {} ],
|
|
66: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = function() {
|
|
for (var e, t = [], r = 0; 256 > r; r++) {
|
|
e = r;
|
|
for (var n = 0; 8 > n; n++) e = 1 & e ? 3988292384 ^ e >>> 1 : e >>> 1;
|
|
t[r] = e;
|
|
}
|
|
return t;
|
|
}();
|
|
t.exports = function(e, t, r, i) {
|
|
var a = n, s = i + r;
|
|
e ^= -1;
|
|
for (var o = i; s > o; o++) e = e >>> 8 ^ a[255 & (e ^ t[o])];
|
|
return -1 ^ e;
|
|
};
|
|
}, {} ],
|
|
67: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e, t) {
|
|
return e.msg = A[t], t;
|
|
}
|
|
function i(e) {
|
|
return (e << 1) - (e > 4 ? 9 : 0);
|
|
}
|
|
function a(e) {
|
|
for (var t = e.length; --t >= 0; ) e[t] = 0;
|
|
}
|
|
function s(e) {
|
|
var t = e.state, r = t.pending;
|
|
r > e.avail_out && (r = e.avail_out), 0 !== r && (S.arraySet(e.output, t.pending_buf, t.pending_out, r, e.next_out),
|
|
e.next_out += r, t.pending_out += r, e.total_out += r, e.avail_out -= r, t.pending -= r,
|
|
0 === t.pending && (t.pending_out = 0));
|
|
}
|
|
function o(e, t) {
|
|
z._tr_flush_block(e, e.block_start >= 0 ? e.block_start : -1, e.strstart - e.block_start, t),
|
|
e.block_start = e.strstart, s(e.strm);
|
|
}
|
|
function u(e, t) {
|
|
e.pending_buf[e.pending++] = t;
|
|
}
|
|
function h(e, t) {
|
|
e.pending_buf[e.pending++] = t >>> 8 & 255, e.pending_buf[e.pending++] = 255 & t;
|
|
}
|
|
function l(e, t, r, n) {
|
|
var i = e.avail_in;
|
|
return i > n && (i = n), 0 === i ? 0 : (e.avail_in -= i, S.arraySet(t, e.input, e.next_in, i, r),
|
|
1 === e.state.wrap ? e.adler = E(e.adler, t, i, r) : 2 === e.state.wrap && (e.adler = C(e.adler, t, i, r)),
|
|
e.next_in += i, e.total_in += i, i);
|
|
}
|
|
function c(e, t) {
|
|
var r, n, i = e.max_chain_length, a = e.strstart, s = e.prev_length, o = e.nice_match, u = e.strstart > e.w_size - ne ? e.strstart - (e.w_size - ne) : 0, h = e.window, l = e.w_mask, c = e.prev, f = e.strstart + re, d = h[a + s - 1], p = h[a + s];
|
|
e.prev_length >= e.good_match && (i >>= 2), o > e.lookahead && (o = e.lookahead);
|
|
do {
|
|
if (h[(r = t) + s] === p && h[r + s - 1] === d && h[r] === h[a] && h[++r] === h[a + 1]) {
|
|
a += 2, r++;
|
|
do {} while (h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && h[++a] === h[++r] && f > a);
|
|
if (n = re - (f - a), a = f - re, n > s) {
|
|
if (e.match_start = t, s = n, n >= o) break;
|
|
d = h[a + s - 1], p = h[a + s];
|
|
}
|
|
}
|
|
} while ((t = c[t & l]) > u && 0 != --i);
|
|
return s <= e.lookahead ? s : e.lookahead;
|
|
}
|
|
function f(e) {
|
|
var t, r, n, i, a, s = e.w_size;
|
|
do {
|
|
if (i = e.window_size - e.lookahead - e.strstart, e.strstart >= s + (s - ne)) {
|
|
S.arraySet(e.window, e.window, s, s, 0), e.match_start -= s, e.strstart -= s, e.block_start -= s,
|
|
t = r = e.hash_size;
|
|
do {
|
|
n = e.head[--t], e.head[t] = n >= s ? n - s : 0;
|
|
} while (--r);
|
|
t = r = s;
|
|
do {
|
|
n = e.prev[--t], e.prev[t] = n >= s ? n - s : 0;
|
|
} while (--r);
|
|
i += s;
|
|
}
|
|
if (0 === e.strm.avail_in) break;
|
|
if (r = l(e.strm, e.window, e.strstart + e.lookahead, i), e.lookahead += r, e.lookahead + e.insert >= te) for (a = e.strstart - e.insert,
|
|
e.ins_h = e.window[a], e.ins_h = (e.ins_h << e.hash_shift ^ e.window[a + 1]) & e.hash_mask; e.insert && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[a + te - 1]) & e.hash_mask,
|
|
e.prev[a & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = a, a++, e.insert--, !(e.lookahead + e.insert < te)); ) ;
|
|
} while (e.lookahead < ne && 0 !== e.strm.avail_in);
|
|
}
|
|
function d(e, t) {
|
|
for (var r, n; ;) {
|
|
if (e.lookahead < ne) {
|
|
if (f(e), e.lookahead < ne && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (r = 0, e.lookahead >= te && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart),
|
|
0 !== r && e.strstart - r <= e.w_size - ne && (e.match_length = c(e, r)), e.match_length >= te) if (n = z._tr_tally(e, e.strstart - e.match_start, e.match_length - te),
|
|
e.lookahead -= e.match_length, e.match_length <= e.max_lazy_match && e.lookahead >= te) {
|
|
e.match_length--;
|
|
do {
|
|
e.strstart++, e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart;
|
|
} while (0 != --e.match_length);
|
|
e.strstart++;
|
|
} else e.strstart += e.match_length, e.match_length = 0, e.ins_h = e.window[e.strstart],
|
|
e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + 1]) & e.hash_mask; else n = z._tr_tally(e, 0, e.window[e.strstart]),
|
|
e.lookahead--, e.strstart++;
|
|
if (n && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = e.strstart < te - 1 ? e.strstart : te - 1, t === R ? (o(e, !0),
|
|
0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1), 0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function p(e, t) {
|
|
for (var r, n, i; ;) {
|
|
if (e.lookahead < ne) {
|
|
if (f(e), e.lookahead < ne && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (r = 0, e.lookahead >= te && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart),
|
|
e.prev_length = e.match_length, e.prev_match = e.match_start, e.match_length = te - 1,
|
|
0 !== r && e.prev_length < e.max_lazy_match && e.strstart - r <= e.w_size - ne && (e.match_length = c(e, r),
|
|
e.match_length <= 5 && (e.strategy === j || e.match_length === te && e.strstart - e.match_start > 4096) && (e.match_length = te - 1)),
|
|
e.prev_length >= te && e.match_length <= e.prev_length) {
|
|
i = e.strstart + e.lookahead - te, n = z._tr_tally(e, e.strstart - 1 - e.prev_match, e.prev_length - te),
|
|
e.lookahead -= e.prev_length - 1, e.prev_length -= 2;
|
|
do {
|
|
++e.strstart <= i && (e.ins_h = (e.ins_h << e.hash_shift ^ e.window[e.strstart + te - 1]) & e.hash_mask,
|
|
r = e.prev[e.strstart & e.w_mask] = e.head[e.ins_h], e.head[e.ins_h] = e.strstart);
|
|
} while (0 != --e.prev_length);
|
|
if (e.match_available = 0, e.match_length = te - 1, e.strstart++, n && (o(e, !1),
|
|
0 === e.strm.avail_out)) return fe;
|
|
} else if (e.match_available) {
|
|
if ((n = z._tr_tally(e, 0, e.window[e.strstart - 1])) && o(e, !1), e.strstart++,
|
|
e.lookahead--, 0 === e.strm.avail_out) return fe;
|
|
} else e.match_available = 1, e.strstart++, e.lookahead--;
|
|
}
|
|
return e.match_available && (n = z._tr_tally(e, 0, e.window[e.strstart - 1]), e.match_available = 0),
|
|
e.insert = e.strstart < te - 1 ? e.strstart : te - 1, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function m(e, t) {
|
|
for (var r, n, i, a, s = e.window; ;) {
|
|
if (e.lookahead <= re) {
|
|
if (f(e), e.lookahead <= re && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
if (e.match_length = 0, e.lookahead >= te && e.strstart > 0 && ((n = s[i = e.strstart - 1]) === s[++i] && n === s[++i] && n === s[++i])) {
|
|
a = e.strstart + re;
|
|
do {} while (n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && n === s[++i] && a > i);
|
|
e.match_length = re - (a - i), e.match_length > e.lookahead && (e.match_length = e.lookahead);
|
|
}
|
|
if (e.match_length >= te ? (r = z._tr_tally(e, 1, e.match_length - te), e.lookahead -= e.match_length,
|
|
e.strstart += e.match_length, e.match_length = 0) : (r = z._tr_tally(e, 0, e.window[e.strstart]),
|
|
e.lookahead--, e.strstart++), r && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function _(e, t) {
|
|
for (var r; ;) {
|
|
if (0 === e.lookahead && (f(e), 0 === e.lookahead)) {
|
|
if (t === I) return fe;
|
|
break;
|
|
}
|
|
if (e.match_length = 0, r = z._tr_tally(e, 0, e.window[e.strstart]), e.lookahead--,
|
|
e.strstart++, r && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : e.last_lit && (o(e, !1),
|
|
0 === e.strm.avail_out) ? fe : de;
|
|
}
|
|
function g(e, t, r, n, i) {
|
|
this.good_length = e, this.max_lazy = t, this.nice_length = r, this.max_chain = n,
|
|
this.func = i;
|
|
}
|
|
function b(e) {
|
|
e.window_size = 2 * e.w_size, a(e.head), e.max_lazy_match = x[e.level].max_lazy,
|
|
e.good_match = x[e.level].good_length, e.nice_match = x[e.level].nice_length, e.max_chain_length = x[e.level].max_chain,
|
|
e.strstart = 0, e.block_start = 0, e.lookahead = 0, e.insert = 0, e.match_length = e.prev_length = te - 1,
|
|
e.match_available = 0, e.ins_h = 0;
|
|
}
|
|
function v() {
|
|
this.strm = null, this.status = 0, this.pending_buf = null, this.pending_buf_size = 0,
|
|
this.pending_out = 0, this.pending = 0, this.wrap = 0, this.gzhead = null, this.gzindex = 0,
|
|
this.method = K, this.last_flush = -1, this.w_size = 0, this.w_bits = 0, this.w_mask = 0,
|
|
this.window = null, this.window_size = 0, this.prev = null, this.head = null, this.ins_h = 0,
|
|
this.hash_size = 0, this.hash_bits = 0, this.hash_mask = 0, this.hash_shift = 0,
|
|
this.block_start = 0, this.match_length = 0, this.prev_match = 0, this.match_available = 0,
|
|
this.strstart = 0, this.match_start = 0, this.lookahead = 0, this.prev_length = 0,
|
|
this.max_chain_length = 0, this.max_lazy_match = 0, this.level = 0, this.strategy = 0,
|
|
this.good_match = 0, this.nice_match = 0, this.dyn_ltree = new S.Buf16(2 * $), this.dyn_dtree = new S.Buf16(2 * (2 * J + 1)),
|
|
this.bl_tree = new S.Buf16(2 * (2 * Q + 1)), a(this.dyn_ltree), a(this.dyn_dtree),
|
|
a(this.bl_tree), this.l_desc = null, this.d_desc = null, this.bl_desc = null, this.bl_count = new S.Buf16(ee + 1),
|
|
this.heap = new S.Buf16(2 * q + 1), a(this.heap), this.heap_len = 0, this.heap_max = 0,
|
|
this.depth = new S.Buf16(2 * q + 1), a(this.depth), this.l_buf = 0, this.lit_bufsize = 0,
|
|
this.last_lit = 0, this.d_buf = 0, this.opt_len = 0, this.static_len = 0, this.matches = 0,
|
|
this.insert = 0, this.bi_buf = 0, this.bi_valid = 0;
|
|
}
|
|
function w(e) {
|
|
var t;
|
|
return e && e.state ? (e.total_in = e.total_out = 0, e.data_type = G, (t = e.state).pending = 0,
|
|
t.pending_out = 0, t.wrap < 0 && (t.wrap = -t.wrap), t.status = t.wrap ? ae : le,
|
|
e.adler = 2 === t.wrap ? 0 : 1, t.last_flush = I, z._tr_init(t), D) : n(e, N);
|
|
}
|
|
function y(e) {
|
|
var t = w(e);
|
|
return t === D && b(e.state), t;
|
|
}
|
|
function k(e, t, r, i, a, s) {
|
|
if (!e) return N;
|
|
var o = 1;
|
|
if (t === L && (t = 6), 0 > i ? (o = 0, i = -i) : i > 15 && (o = 2, i -= 16), 1 > a || a > Y || r !== K || 8 > i || i > 15 || 0 > t || t > 9 || 0 > s || s > M) return n(e, N);
|
|
8 === i && (i = 9);
|
|
var u = new v();
|
|
return e.state = u, u.strm = e, u.wrap = o, u.gzhead = null, u.w_bits = i, u.w_size = 1 << u.w_bits,
|
|
u.w_mask = u.w_size - 1, u.hash_bits = a + 7, u.hash_size = 1 << u.hash_bits, u.hash_mask = u.hash_size - 1,
|
|
u.hash_shift = ~~((u.hash_bits + te - 1) / te), u.window = new S.Buf8(2 * u.w_size),
|
|
u.head = new S.Buf16(u.hash_size), u.prev = new S.Buf16(u.w_size), u.lit_bufsize = 1 << a + 6,
|
|
u.pending_buf_size = 4 * u.lit_bufsize, u.pending_buf = new S.Buf8(u.pending_buf_size),
|
|
u.d_buf = 1 * u.lit_bufsize, u.l_buf = 3 * u.lit_bufsize, u.level = t, u.strategy = s,
|
|
u.method = r, y(e);
|
|
}
|
|
var x, S = e("../utils/common"), z = e("./trees"), E = e("./adler32"), C = e("./crc32"), A = e("./messages"), I = 0, O = 1, B = 3, R = 4, T = 5, D = 0, F = 1, N = -2, P = -3, U = -5, L = -1, j = 1, Z = 2, W = 3, M = 4, H = 0, G = 2, K = 8, Y = 9, X = 15, V = 8, q = 286, J = 30, Q = 19, $ = 2 * q + 1, ee = 15, te = 3, re = 258, ne = re + te + 1, ie = 32, ae = 42, se = 69, oe = 73, ue = 91, he = 103, le = 113, ce = 666, fe = 1, de = 2, pe = 3, me = 4, _e = 3;
|
|
x = [ new g(0, 0, 0, 0, function(e, t) {
|
|
var r = 65535;
|
|
for (r > e.pending_buf_size - 5 && (r = e.pending_buf_size - 5); ;) {
|
|
if (e.lookahead <= 1) {
|
|
if (f(e), 0 === e.lookahead && t === I) return fe;
|
|
if (0 === e.lookahead) break;
|
|
}
|
|
e.strstart += e.lookahead, e.lookahead = 0;
|
|
var n = e.block_start + r;
|
|
if ((0 === e.strstart || e.strstart >= n) && (e.lookahead = e.strstart - n, e.strstart = n,
|
|
o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
if (e.strstart - e.block_start >= e.w_size - ne && (o(e, !1), 0 === e.strm.avail_out)) return fe;
|
|
}
|
|
return e.insert = 0, t === R ? (o(e, !0), 0 === e.strm.avail_out ? pe : me) : (e.strstart > e.block_start && (o(e, !1),
|
|
e.strm.avail_out), fe);
|
|
}), new g(4, 4, 8, 4, d), new g(4, 5, 16, 8, d), new g(4, 6, 32, 32, d), new g(4, 4, 16, 16, p), new g(8, 16, 32, 32, p), new g(8, 16, 128, 128, p), new g(8, 32, 128, 256, p), new g(32, 128, 258, 1024, p), new g(32, 258, 258, 4096, p) ],
|
|
r.deflateInit = function(e, t) {
|
|
return k(e, t, K, X, V, H);
|
|
}, r.deflateInit2 = k, r.deflateReset = y, r.deflateResetKeep = w, r.deflateSetHeader = function(e, t) {
|
|
return e && e.state ? 2 !== e.state.wrap ? N : (e.state.gzhead = t, D) : N;
|
|
}, r.deflate = function(e, t) {
|
|
var r, o, l, c;
|
|
if (!e || !e.state || t > T || 0 > t) return e ? n(e, N) : N;
|
|
if (o = e.state, !e.output || !e.input && 0 !== e.avail_in || o.status === ce && t !== R) return n(e, 0 === e.avail_out ? U : N);
|
|
if (o.strm = e, r = o.last_flush, o.last_flush = t, o.status === ae) if (2 === o.wrap) e.adler = 0,
|
|
u(o, 31), u(o, 139), u(o, 8), o.gzhead ? (u(o, (o.gzhead.text ? 1 : 0) + (o.gzhead.hcrc ? 2 : 0) + (o.gzhead.extra ? 4 : 0) + (o.gzhead.name ? 8 : 0) + (o.gzhead.comment ? 16 : 0)),
|
|
u(o, 255 & o.gzhead.time), u(o, o.gzhead.time >> 8 & 255), u(o, o.gzhead.time >> 16 & 255),
|
|
u(o, o.gzhead.time >> 24 & 255), u(o, 9 === o.level ? 2 : o.strategy >= Z || o.level < 2 ? 4 : 0),
|
|
u(o, 255 & o.gzhead.os), o.gzhead.extra && o.gzhead.extra.length && (u(o, 255 & o.gzhead.extra.length),
|
|
u(o, o.gzhead.extra.length >> 8 & 255)), o.gzhead.hcrc && (e.adler = C(e.adler, o.pending_buf, o.pending, 0)),
|
|
o.gzindex = 0, o.status = se) : (u(o, 0), u(o, 0), u(o, 0), u(o, 0), u(o, 0), u(o, 9 === o.level ? 2 : o.strategy >= Z || o.level < 2 ? 4 : 0),
|
|
u(o, _e), o.status = le); else {
|
|
var f = K + (o.w_bits - 8 << 4) << 8;
|
|
f |= (o.strategy >= Z || o.level < 2 ? 0 : o.level < 6 ? 1 : 6 === o.level ? 2 : 3) << 6,
|
|
0 !== o.strstart && (f |= ie), f += 31 - f % 31, o.status = le, h(o, f), 0 !== o.strstart && (h(o, e.adler >>> 16),
|
|
h(o, 65535 & e.adler)), e.adler = 1;
|
|
}
|
|
if (o.status === se) if (o.gzhead.extra) {
|
|
for (l = o.pending; o.gzindex < (65535 & o.gzhead.extra.length) && (o.pending !== o.pending_buf_size || (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending !== o.pending_buf_size)); ) u(o, 255 & o.gzhead.extra[o.gzindex]),
|
|
o.gzindex++;
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
o.gzindex === o.gzhead.extra.length && (o.gzindex = 0, o.status = oe);
|
|
} else o.status = oe;
|
|
if (o.status === oe) if (o.gzhead.name) {
|
|
l = o.pending;
|
|
do {
|
|
if (o.pending === o.pending_buf_size && (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending === o.pending_buf_size)) {
|
|
c = 1;
|
|
break;
|
|
}
|
|
c = o.gzindex < o.gzhead.name.length ? 255 & o.gzhead.name.charCodeAt(o.gzindex++) : 0,
|
|
u(o, c);
|
|
} while (0 !== c);
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
0 === c && (o.gzindex = 0, o.status = ue);
|
|
} else o.status = ue;
|
|
if (o.status === ue) if (o.gzhead.comment) {
|
|
l = o.pending;
|
|
do {
|
|
if (o.pending === o.pending_buf_size && (o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
s(e), l = o.pending, o.pending === o.pending_buf_size)) {
|
|
c = 1;
|
|
break;
|
|
}
|
|
c = o.gzindex < o.gzhead.comment.length ? 255 & o.gzhead.comment.charCodeAt(o.gzindex++) : 0,
|
|
u(o, c);
|
|
} while (0 !== c);
|
|
o.gzhead.hcrc && o.pending > l && (e.adler = C(e.adler, o.pending_buf, o.pending - l, l)),
|
|
0 === c && (o.status = he);
|
|
} else o.status = he;
|
|
if (o.status === he && (o.gzhead.hcrc ? (o.pending + 2 > o.pending_buf_size && s(e),
|
|
o.pending + 2 <= o.pending_buf_size && (u(o, 255 & e.adler), u(o, e.adler >> 8 & 255),
|
|
e.adler = 0, o.status = le)) : o.status = le), 0 !== o.pending) {
|
|
if (s(e), 0 === e.avail_out) return o.last_flush = -1, D;
|
|
} else if (0 === e.avail_in && i(t) <= i(r) && t !== R) return n(e, U);
|
|
if (o.status === ce && 0 !== e.avail_in) return n(e, U);
|
|
if (0 !== e.avail_in || 0 !== o.lookahead || t !== I && o.status !== ce) {
|
|
var d = o.strategy === Z ? _(o, t) : o.strategy === W ? m(o, t) : x[o.level].func(o, t);
|
|
if (d !== pe && d !== me || (o.status = ce), d === fe || d === pe) return 0 === e.avail_out && (o.last_flush = -1),
|
|
D;
|
|
if (d === de && (t === O ? z._tr_align(o) : t !== T && (z._tr_stored_block(o, 0, 0, !1),
|
|
t === B && (a(o.head), 0 === o.lookahead && (o.strstart = 0, o.block_start = 0,
|
|
o.insert = 0))), s(e), 0 === e.avail_out)) return o.last_flush = -1, D;
|
|
}
|
|
return t !== R ? D : o.wrap <= 0 ? F : (2 === o.wrap ? (u(o, 255 & e.adler), u(o, e.adler >> 8 & 255),
|
|
u(o, e.adler >> 16 & 255), u(o, e.adler >> 24 & 255), u(o, 255 & e.total_in), u(o, e.total_in >> 8 & 255),
|
|
u(o, e.total_in >> 16 & 255), u(o, e.total_in >> 24 & 255)) : (h(o, e.adler >>> 16),
|
|
h(o, 65535 & e.adler)), s(e), o.wrap > 0 && (o.wrap = -o.wrap), 0 !== o.pending ? D : F);
|
|
}, r.deflateEnd = function(e) {
|
|
var t;
|
|
return e && e.state ? (t = e.state.status) !== ae && t !== se && t !== oe && t !== ue && t !== he && t !== le && t !== ce ? n(e, N) : (e.state = null,
|
|
t === le ? n(e, P) : D) : N;
|
|
}, r.deflateSetDictionary = function(e, t) {
|
|
var r, n, i, s, o, u, h, l, c = t.length;
|
|
if (!e || !e.state) return N;
|
|
if (2 === (s = (r = e.state).wrap) || 1 === s && r.status !== ae || r.lookahead) return N;
|
|
for (1 === s && (e.adler = E(e.adler, t, c, 0)), r.wrap = 0, c >= r.w_size && (0 === s && (a(r.head),
|
|
r.strstart = 0, r.block_start = 0, r.insert = 0), l = new S.Buf8(r.w_size), S.arraySet(l, t, c - r.w_size, r.w_size, 0),
|
|
t = l, c = r.w_size), o = e.avail_in, u = e.next_in, h = e.input, e.avail_in = c,
|
|
e.next_in = 0, e.input = t, f(r); r.lookahead >= te; ) {
|
|
n = r.strstart, i = r.lookahead - (te - 1);
|
|
do {
|
|
r.ins_h = (r.ins_h << r.hash_shift ^ r.window[n + te - 1]) & r.hash_mask, r.prev[n & r.w_mask] = r.head[r.ins_h],
|
|
r.head[r.ins_h] = n, n++;
|
|
} while (--i);
|
|
r.strstart = n, r.lookahead = te - 1, f(r);
|
|
}
|
|
return r.strstart += r.lookahead, r.block_start = r.strstart, r.insert = r.lookahead,
|
|
r.lookahead = 0, r.match_length = r.prev_length = te - 1, r.match_available = 0,
|
|
e.next_in = u, e.input = h, e.avail_in = o, r.wrap = s, D;
|
|
}, r.deflateInfo = "pako deflate (from Nodeca project)";
|
|
}, {
|
|
"../utils/common": 62,
|
|
"./adler32": 64,
|
|
"./crc32": 66,
|
|
"./messages": 72,
|
|
"./trees": 73
|
|
} ],
|
|
68: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function() {
|
|
this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0,
|
|
this.name = "", this.comment = "", this.hcrc = 0, this.done = !1;
|
|
};
|
|
}, {} ],
|
|
69: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function(e, t) {
|
|
var r, n, i, a, s, o, u, h, l, c, f, d, p, m, _, g, b, v, w, y, k, x, S, z, E;
|
|
r = e.state, n = e.next_in, z = e.input, i = n + (e.avail_in - 5), a = e.next_out,
|
|
E = e.output, s = a - (t - e.avail_out), o = a + (e.avail_out - 257), u = r.dmax,
|
|
h = r.wsize, l = r.whave, c = r.wnext, f = r.window, d = r.hold, p = r.bits, m = r.lencode,
|
|
_ = r.distcode, g = (1 << r.lenbits) - 1, b = (1 << r.distbits) - 1;
|
|
e: do {
|
|
15 > p && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8), v = m[d & g];
|
|
t: for (;;) {
|
|
if (d >>>= w = v >>> 24, p -= w, 0 === (w = v >>> 16 & 255)) E[a++] = 65535 & v; else {
|
|
if (!(16 & w)) {
|
|
if (0 == (64 & w)) {
|
|
v = m[(65535 & v) + (d & (1 << w) - 1)];
|
|
continue t;
|
|
}
|
|
if (32 & w) {
|
|
r.mode = 12;
|
|
break e;
|
|
}
|
|
e.msg = "invalid literal/length code", r.mode = 30;
|
|
break e;
|
|
}
|
|
y = 65535 & v, (w &= 15) && (w > p && (d += z[n++] << p, p += 8), y += d & (1 << w) - 1,
|
|
d >>>= w, p -= w), 15 > p && (d += z[n++] << p, p += 8, d += z[n++] << p, p += 8),
|
|
v = _[d & b];
|
|
r: for (;;) {
|
|
if (d >>>= w = v >>> 24, p -= w, !(16 & (w = v >>> 16 & 255))) {
|
|
if (0 == (64 & w)) {
|
|
v = _[(65535 & v) + (d & (1 << w) - 1)];
|
|
continue r;
|
|
}
|
|
e.msg = "invalid distance code", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (k = 65535 & v, (w &= 15) > p && (d += z[n++] << p, w > (p += 8) && (d += z[n++] << p,
|
|
p += 8)), (k += d & (1 << w) - 1) > u) {
|
|
e.msg = "invalid distance too far back", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (d >>>= w, p -= w, k > (w = a - s)) {
|
|
if ((w = k - w) > l && r.sane) {
|
|
e.msg = "invalid distance too far back", r.mode = 30;
|
|
break e;
|
|
}
|
|
if (x = 0, S = f, 0 === c) {
|
|
if (x += h - w, y > w) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
} else if (w > c) {
|
|
if (x += h + c - w, y > (w -= c)) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
if (x = 0, y > c) {
|
|
y -= w = c;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
}
|
|
} else if (x += c - w, y > w) {
|
|
y -= w;
|
|
do {
|
|
E[a++] = f[x++];
|
|
} while (--w);
|
|
x = a - k, S = E;
|
|
}
|
|
for (;y > 2; ) E[a++] = S[x++], E[a++] = S[x++], E[a++] = S[x++], y -= 3;
|
|
y && (E[a++] = S[x++], y > 1 && (E[a++] = S[x++]));
|
|
} else {
|
|
x = a - k;
|
|
do {
|
|
E[a++] = E[x++], E[a++] = E[x++], E[a++] = E[x++], y -= 3;
|
|
} while (y > 2);
|
|
y && (E[a++] = E[x++], y > 1 && (E[a++] = E[x++]));
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
} while (i > n && o > a);
|
|
n -= y = p >> 3, d &= (1 << (p -= y << 3)) - 1, e.next_in = n, e.next_out = a, e.avail_in = i > n ? i - n + 5 : 5 - (n - i),
|
|
e.avail_out = o > a ? o - a + 257 : 257 - (a - o), r.hold = d, r.bits = p;
|
|
};
|
|
}, {} ],
|
|
70: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
return (e >>> 24 & 255) + (e >>> 8 & 65280) + ((65280 & e) << 8) + ((255 & e) << 24);
|
|
}
|
|
function i() {
|
|
this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0,
|
|
this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0,
|
|
this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0,
|
|
this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null,
|
|
this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0,
|
|
this.ndist = 0, this.have = 0, this.next = null, this.lens = new d.Buf16(320), this.work = new d.Buf16(288),
|
|
this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0;
|
|
}
|
|
function a(e) {
|
|
var t;
|
|
return e && e.state ? (t = e.state, e.total_in = e.total_out = t.total = 0, e.msg = "",
|
|
t.wrap && (e.adler = 1 & t.wrap), t.mode = R, t.last = 0, t.havedict = 0, t.dmax = 32768,
|
|
t.head = null, t.hold = 0, t.bits = 0, t.lencode = t.lendyn = new d.Buf32(le), t.distcode = t.distdyn = new d.Buf32(ce),
|
|
t.sane = 1, t.back = -1, S) : C;
|
|
}
|
|
function s(e) {
|
|
var t;
|
|
return e && e.state ? ((t = e.state).wsize = 0, t.whave = 0, t.wnext = 0, a(e)) : C;
|
|
}
|
|
function o(e, t) {
|
|
var r, n;
|
|
return e && e.state ? (n = e.state, 0 > t ? (r = 0, t = -t) : (r = 1 + (t >> 4),
|
|
48 > t && (t &= 15)), t && (8 > t || t > 15) ? C : (null !== n.window && n.wbits !== t && (n.window = null),
|
|
n.wrap = r, n.wbits = t, s(e))) : C;
|
|
}
|
|
function u(e, t) {
|
|
var r, n;
|
|
return e ? (n = new i(), e.state = n, n.window = null, (r = o(e, t)) !== S && (e.state = null),
|
|
r) : C;
|
|
}
|
|
function h(e) {
|
|
if (de) {
|
|
var t;
|
|
for (c = new d.Buf32(512), f = new d.Buf32(32), t = 0; 144 > t; ) e.lens[t++] = 8;
|
|
for (;256 > t; ) e.lens[t++] = 9;
|
|
for (;280 > t; ) e.lens[t++] = 7;
|
|
for (;288 > t; ) e.lens[t++] = 8;
|
|
for (g(v, e.lens, 0, 288, c, 0, e.work, {
|
|
bits: 9
|
|
}), t = 0; 32 > t; ) e.lens[t++] = 5;
|
|
g(w, e.lens, 0, 32, f, 0, e.work, {
|
|
bits: 5
|
|
}), de = !1;
|
|
}
|
|
e.lencode = c, e.lenbits = 9, e.distcode = f, e.distbits = 5;
|
|
}
|
|
function l(e, t, r, n) {
|
|
var i, a = e.state;
|
|
return null === a.window && (a.wsize = 1 << a.wbits, a.wnext = 0, a.whave = 0, a.window = new d.Buf8(a.wsize)),
|
|
n >= a.wsize ? (d.arraySet(a.window, t, r - a.wsize, a.wsize, 0), a.wnext = 0, a.whave = a.wsize) : ((i = a.wsize - a.wnext) > n && (i = n),
|
|
d.arraySet(a.window, t, r - n, i, a.wnext), (n -= i) ? (d.arraySet(a.window, t, r - n, n, 0),
|
|
a.wnext = n, a.whave = a.wsize) : (a.wnext += i, a.wnext === a.wsize && (a.wnext = 0),
|
|
a.whave < a.wsize && (a.whave += i))), 0;
|
|
}
|
|
var c, f, d = e("../utils/common"), p = e("./adler32"), m = e("./crc32"), _ = e("./inffast"), g = e("./inftrees"), b = 0, v = 1, w = 2, y = 4, k = 5, x = 6, S = 0, z = 1, E = 2, C = -2, A = -3, I = -4, O = -5, B = 8, R = 1, T = 2, D = 3, F = 4, N = 5, P = 6, U = 7, L = 8, j = 9, Z = 10, W = 11, M = 12, H = 13, G = 14, K = 15, Y = 16, X = 17, V = 18, q = 19, J = 20, Q = 21, $ = 22, ee = 23, te = 24, re = 25, ne = 26, ie = 27, ae = 28, se = 29, oe = 30, ue = 31, he = 32, le = 852, ce = 592, fe = 15, de = !0;
|
|
r.inflateReset = s, r.inflateReset2 = o, r.inflateResetKeep = a, r.inflateInit = function(e) {
|
|
return u(e, fe);
|
|
}, r.inflateInit2 = u, r.inflate = function(e, t) {
|
|
var r, i, a, s, o, u, c, f, le, ce, fe, de, pe, me, _e, ge, be, ve, we, ye, ke, xe, Se, ze, Ee = 0, Ce = new d.Buf8(4), Ae = [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ];
|
|
if (!e || !e.state || !e.output || !e.input && 0 !== e.avail_in) return C;
|
|
(r = e.state).mode === M && (r.mode = H), o = e.next_out, a = e.output, c = e.avail_out,
|
|
s = e.next_in, i = e.input, u = e.avail_in, f = r.hold, le = r.bits, ce = u, fe = c,
|
|
xe = S;
|
|
e: for (;;) switch (r.mode) {
|
|
case R:
|
|
if (0 === r.wrap) {
|
|
r.mode = H;
|
|
break;
|
|
}
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (2 & r.wrap && 35615 === f) {
|
|
r.check = 0, Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0),
|
|
f = 0, le = 0, r.mode = T;
|
|
break;
|
|
}
|
|
if (r.flags = 0, r.head && (r.head.done = !1), !(1 & r.wrap) || (((255 & f) << 8) + (f >> 8)) % 31) {
|
|
e.msg = "incorrect header check", r.mode = oe;
|
|
break;
|
|
}
|
|
if ((15 & f) !== B) {
|
|
e.msg = "unknown compression method", r.mode = oe;
|
|
break;
|
|
}
|
|
if (le -= 4, ke = 8 + (15 & (f >>>= 4)), 0 === r.wbits) r.wbits = ke; else if (ke > r.wbits) {
|
|
e.msg = "invalid window size", r.mode = oe;
|
|
break;
|
|
}
|
|
r.dmax = 1 << ke, e.adler = r.check = 1, r.mode = 512 & f ? Z : M, f = 0, le = 0;
|
|
break;
|
|
|
|
case T:
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (r.flags = f, (255 & r.flags) !== B) {
|
|
e.msg = "unknown compression method", r.mode = oe;
|
|
break;
|
|
}
|
|
if (57344 & r.flags) {
|
|
e.msg = "unknown header flags set", r.mode = oe;
|
|
break;
|
|
}
|
|
r.head && (r.head.text = f >> 8 & 1), 512 & r.flags && (Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255,
|
|
r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0, r.mode = D;
|
|
|
|
case D:
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.head && (r.head.time = f), 512 & r.flags && (Ce[0] = 255 & f, Ce[1] = f >>> 8 & 255,
|
|
Ce[2] = f >>> 16 & 255, Ce[3] = f >>> 24 & 255, r.check = m(r.check, Ce, 4, 0)),
|
|
f = 0, le = 0, r.mode = F;
|
|
|
|
case F:
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.head && (r.head.xflags = 255 & f, r.head.os = f >> 8), 512 & r.flags && (Ce[0] = 255 & f,
|
|
Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0, r.mode = N;
|
|
|
|
case N:
|
|
if (1024 & r.flags) {
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.length = f, r.head && (r.head.extra_len = f), 512 & r.flags && (Ce[0] = 255 & f,
|
|
Ce[1] = f >>> 8 & 255, r.check = m(r.check, Ce, 2, 0)), f = 0, le = 0;
|
|
} else r.head && (r.head.extra = null);
|
|
r.mode = P;
|
|
|
|
case P:
|
|
if (1024 & r.flags && ((de = r.length) > u && (de = u), de && (r.head && (ke = r.head.extra_len - r.length,
|
|
r.head.extra || (r.head.extra = new Array(r.head.extra_len)), d.arraySet(r.head.extra, i, s, de, ke)),
|
|
512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, r.length -= de),
|
|
r.length)) break e;
|
|
r.length = 0, r.mode = U;
|
|
|
|
case U:
|
|
if (2048 & r.flags) {
|
|
if (0 === u) break e;
|
|
de = 0;
|
|
do {
|
|
ke = i[s + de++], r.head && ke && r.length < 65536 && (r.head.name += String.fromCharCode(ke));
|
|
} while (ke && u > de);
|
|
if (512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, ke) break e;
|
|
} else r.head && (r.head.name = null);
|
|
r.length = 0, r.mode = L;
|
|
|
|
case L:
|
|
if (4096 & r.flags) {
|
|
if (0 === u) break e;
|
|
de = 0;
|
|
do {
|
|
ke = i[s + de++], r.head && ke && r.length < 65536 && (r.head.comment += String.fromCharCode(ke));
|
|
} while (ke && u > de);
|
|
if (512 & r.flags && (r.check = m(r.check, i, de, s)), u -= de, s += de, ke) break e;
|
|
} else r.head && (r.head.comment = null);
|
|
r.mode = j;
|
|
|
|
case j:
|
|
if (512 & r.flags) {
|
|
for (;16 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f !== (65535 & r.check)) {
|
|
e.msg = "header crc mismatch", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.head && (r.head.hcrc = r.flags >> 9 & 1, r.head.done = !0), e.adler = r.check = 0,
|
|
r.mode = M;
|
|
break;
|
|
|
|
case Z:
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
e.adler = r.check = n(f), f = 0, le = 0, r.mode = W;
|
|
|
|
case W:
|
|
if (0 === r.havedict) return e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u,
|
|
r.hold = f, r.bits = le, E;
|
|
e.adler = r.check = 1, r.mode = M;
|
|
|
|
case M:
|
|
if (t === k || t === x) break e;
|
|
|
|
case H:
|
|
if (r.last) {
|
|
f >>>= 7 & le, le -= 7 & le, r.mode = ie;
|
|
break;
|
|
}
|
|
for (;3 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
switch (r.last = 1 & f, le -= 1, 3 & (f >>>= 1)) {
|
|
case 0:
|
|
r.mode = G;
|
|
break;
|
|
|
|
case 1:
|
|
if (h(r), r.mode = J, t === x) {
|
|
f >>>= 2, le -= 2;
|
|
break e;
|
|
}
|
|
break;
|
|
|
|
case 2:
|
|
r.mode = X;
|
|
break;
|
|
|
|
case 3:
|
|
e.msg = "invalid block type", r.mode = oe;
|
|
}
|
|
f >>>= 2, le -= 2;
|
|
break;
|
|
|
|
case G:
|
|
for (f >>>= 7 & le, le -= 7 & le; 32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if ((65535 & f) != (f >>> 16 ^ 65535)) {
|
|
e.msg = "invalid stored block lengths", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.length = 65535 & f, f = 0, le = 0, r.mode = K, t === x) break e;
|
|
|
|
case K:
|
|
r.mode = Y;
|
|
|
|
case Y:
|
|
if (de = r.length) {
|
|
if (de > u && (de = u), de > c && (de = c), 0 === de) break e;
|
|
d.arraySet(a, i, s, de, o), u -= de, s += de, c -= de, o += de, r.length -= de;
|
|
break;
|
|
}
|
|
r.mode = M;
|
|
break;
|
|
|
|
case X:
|
|
for (;14 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (r.nlen = 257 + (31 & f), f >>>= 5, le -= 5, r.ndist = 1 + (31 & f), f >>>= 5,
|
|
le -= 5, r.ncode = 4 + (15 & f), f >>>= 4, le -= 4, r.nlen > 286 || r.ndist > 30) {
|
|
e.msg = "too many length or distance symbols", r.mode = oe;
|
|
break;
|
|
}
|
|
r.have = 0, r.mode = V;
|
|
|
|
case V:
|
|
for (;r.have < r.ncode; ) {
|
|
for (;3 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.lens[Ae[r.have++]] = 7 & f, f >>>= 3, le -= 3;
|
|
}
|
|
for (;r.have < 19; ) r.lens[Ae[r.have++]] = 0;
|
|
if (r.lencode = r.lendyn, r.lenbits = 7, Se = {
|
|
bits: r.lenbits
|
|
}, xe = g(b, r.lens, 0, 19, r.lencode, 0, r.work, Se), r.lenbits = Se.bits, xe) {
|
|
e.msg = "invalid code lengths set", r.mode = oe;
|
|
break;
|
|
}
|
|
r.have = 0, r.mode = q;
|
|
|
|
case q:
|
|
for (;r.have < r.nlen + r.ndist; ) {
|
|
for (;ge = (Ee = r.lencode[f & (1 << r.lenbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (16 > be) f >>>= _e, le -= _e, r.lens[r.have++] = be; else {
|
|
if (16 === be) {
|
|
for (ze = _e + 2; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f >>>= _e, le -= _e, 0 === r.have) {
|
|
e.msg = "invalid bit length repeat", r.mode = oe;
|
|
break;
|
|
}
|
|
ke = r.lens[r.have - 1], de = 3 + (3 & f), f >>>= 2, le -= 2;
|
|
} else if (17 === be) {
|
|
for (ze = _e + 3; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
le -= _e, ke = 0, de = 3 + (7 & (f >>>= _e)), f >>>= 3, le -= 3;
|
|
} else {
|
|
for (ze = _e + 7; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
le -= _e, ke = 0, de = 11 + (127 & (f >>>= _e)), f >>>= 7, le -= 7;
|
|
}
|
|
if (r.have + de > r.nlen + r.ndist) {
|
|
e.msg = "invalid bit length repeat", r.mode = oe;
|
|
break;
|
|
}
|
|
for (;de--; ) r.lens[r.have++] = ke;
|
|
}
|
|
}
|
|
if (r.mode === oe) break;
|
|
if (0 === r.lens[256]) {
|
|
e.msg = "invalid code -- missing end-of-block", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.lenbits = 9, Se = {
|
|
bits: r.lenbits
|
|
}, xe = g(v, r.lens, 0, r.nlen, r.lencode, 0, r.work, Se), r.lenbits = Se.bits,
|
|
xe) {
|
|
e.msg = "invalid literal/lengths set", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.distbits = 6, r.distcode = r.distdyn, Se = {
|
|
bits: r.distbits
|
|
}, xe = g(w, r.lens, r.nlen, r.ndist, r.distcode, 0, r.work, Se), r.distbits = Se.bits,
|
|
xe) {
|
|
e.msg = "invalid distances set", r.mode = oe;
|
|
break;
|
|
}
|
|
if (r.mode = J, t === x) break e;
|
|
|
|
case J:
|
|
r.mode = Q;
|
|
|
|
case Q:
|
|
if (u >= 6 && c >= 258) {
|
|
e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u, r.hold = f, r.bits = le,
|
|
_(e, fe), o = e.next_out, a = e.output, c = e.avail_out, s = e.next_in, i = e.input,
|
|
u = e.avail_in, f = r.hold, le = r.bits, r.mode === M && (r.back = -1);
|
|
break;
|
|
}
|
|
for (r.back = 0; ge = (Ee = r.lencode[f & (1 << r.lenbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (ge && 0 == (240 & ge)) {
|
|
for (ve = _e, we = ge, ye = be; ge = (Ee = r.lencode[ye + ((f & (1 << ve + we) - 1) >> ve)]) >>> 16 & 255,
|
|
be = 65535 & Ee, !(le >= ve + (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
f >>>= ve, le -= ve, r.back += ve;
|
|
}
|
|
if (f >>>= _e, le -= _e, r.back += _e, r.length = be, 0 === ge) {
|
|
r.mode = ne;
|
|
break;
|
|
}
|
|
if (32 & ge) {
|
|
r.back = -1, r.mode = M;
|
|
break;
|
|
}
|
|
if (64 & ge) {
|
|
e.msg = "invalid literal/length code", r.mode = oe;
|
|
break;
|
|
}
|
|
r.extra = 15 & ge, r.mode = $;
|
|
|
|
case $:
|
|
if (r.extra) {
|
|
for (ze = r.extra; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.length += f & (1 << r.extra) - 1, f >>>= r.extra, le -= r.extra, r.back += r.extra;
|
|
}
|
|
r.was = r.length, r.mode = ee;
|
|
|
|
case ee:
|
|
for (;ge = (Ee = r.distcode[f & (1 << r.distbits) - 1]) >>> 16 & 255, be = 65535 & Ee,
|
|
!(le >= (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (0 == (240 & ge)) {
|
|
for (ve = _e, we = ge, ye = be; ge = (Ee = r.distcode[ye + ((f & (1 << ve + we) - 1) >> ve)]) >>> 16 & 255,
|
|
be = 65535 & Ee, !(le >= ve + (_e = Ee >>> 24)); ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
f >>>= ve, le -= ve, r.back += ve;
|
|
}
|
|
if (f >>>= _e, le -= _e, r.back += _e, 64 & ge) {
|
|
e.msg = "invalid distance code", r.mode = oe;
|
|
break;
|
|
}
|
|
r.offset = be, r.extra = 15 & ge, r.mode = te;
|
|
|
|
case te:
|
|
if (r.extra) {
|
|
for (ze = r.extra; ze > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
r.offset += f & (1 << r.extra) - 1, f >>>= r.extra, le -= r.extra, r.back += r.extra;
|
|
}
|
|
if (r.offset > r.dmax) {
|
|
e.msg = "invalid distance too far back", r.mode = oe;
|
|
break;
|
|
}
|
|
r.mode = re;
|
|
|
|
case re:
|
|
if (0 === c) break e;
|
|
if (de = fe - c, r.offset > de) {
|
|
if ((de = r.offset - de) > r.whave && r.sane) {
|
|
e.msg = "invalid distance too far back", r.mode = oe;
|
|
break;
|
|
}
|
|
de > r.wnext ? (de -= r.wnext, pe = r.wsize - de) : pe = r.wnext - de, de > r.length && (de = r.length),
|
|
me = r.window;
|
|
} else me = a, pe = o - r.offset, de = r.length;
|
|
de > c && (de = c), c -= de, r.length -= de;
|
|
do {
|
|
a[o++] = me[pe++];
|
|
} while (--de);
|
|
0 === r.length && (r.mode = Q);
|
|
break;
|
|
|
|
case ne:
|
|
if (0 === c) break e;
|
|
a[o++] = r.length, c--, r.mode = Q;
|
|
break;
|
|
|
|
case ie:
|
|
if (r.wrap) {
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f |= i[s++] << le, le += 8;
|
|
}
|
|
if (fe -= c, e.total_out += fe, r.total += fe, fe && (e.adler = r.check = r.flags ? m(r.check, a, fe, o - fe) : p(r.check, a, fe, o - fe)),
|
|
fe = c, (r.flags ? f : n(f)) !== r.check) {
|
|
e.msg = "incorrect data check", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.mode = ae;
|
|
|
|
case ae:
|
|
if (r.wrap && r.flags) {
|
|
for (;32 > le; ) {
|
|
if (0 === u) break e;
|
|
u--, f += i[s++] << le, le += 8;
|
|
}
|
|
if (f !== (4294967295 & r.total)) {
|
|
e.msg = "incorrect length check", r.mode = oe;
|
|
break;
|
|
}
|
|
f = 0, le = 0;
|
|
}
|
|
r.mode = se;
|
|
|
|
case se:
|
|
xe = z;
|
|
break e;
|
|
|
|
case oe:
|
|
xe = A;
|
|
break e;
|
|
|
|
case ue:
|
|
return I;
|
|
|
|
case he:
|
|
default:
|
|
return C;
|
|
}
|
|
return e.next_out = o, e.avail_out = c, e.next_in = s, e.avail_in = u, r.hold = f,
|
|
r.bits = le, (r.wsize || fe !== e.avail_out && r.mode < oe && (r.mode < ie || t !== y)) && l(e, e.output, e.next_out, fe - e.avail_out) ? (r.mode = ue,
|
|
I) : (ce -= e.avail_in, fe -= e.avail_out, e.total_in += ce, e.total_out += fe,
|
|
r.total += fe, r.wrap && fe && (e.adler = r.check = r.flags ? m(r.check, a, fe, e.next_out - fe) : p(r.check, a, fe, e.next_out - fe)),
|
|
e.data_type = r.bits + (r.last ? 64 : 0) + (r.mode === M ? 128 : 0) + (r.mode === J || r.mode === K ? 256 : 0),
|
|
(0 === ce && 0 === fe || t === y) && xe === S && (xe = O), xe);
|
|
}, r.inflateEnd = function(e) {
|
|
if (!e || !e.state) return C;
|
|
var t = e.state;
|
|
return t.window && (t.window = null), e.state = null, S;
|
|
}, r.inflateGetHeader = function(e, t) {
|
|
var r;
|
|
return e && e.state ? 0 == (2 & (r = e.state).wrap) ? C : (r.head = t, t.done = !1,
|
|
S) : C;
|
|
}, r.inflateSetDictionary = function(e, t) {
|
|
var r, n = t.length;
|
|
return e && e.state ? 0 !== (r = e.state).wrap && r.mode !== W ? C : r.mode === W && p(1, t, n, 0) !== r.check ? A : l(e, t, n, n) ? (r.mode = ue,
|
|
I) : (r.havedict = 1, S) : C;
|
|
}, r.inflateInfo = "pako inflate (from Nodeca project)";
|
|
}, {
|
|
"../utils/common": 62,
|
|
"./adler32": 64,
|
|
"./crc32": 66,
|
|
"./inffast": 69,
|
|
"./inftrees": 71
|
|
} ],
|
|
71: [ function(e, t, r) {
|
|
"use strict";
|
|
var n = e("../utils/common"), i = 15, a = [ 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0 ], s = [ 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78 ], o = [ 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 0, 0 ], u = [ 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22, 23, 23, 24, 24, 25, 25, 26, 26, 27, 27, 28, 28, 29, 29, 64, 64 ];
|
|
t.exports = function(e, t, r, h, l, c, f, d) {
|
|
var p, m, _, g, b, v, w, y, k, x = d.bits, S = 0, z = 0, E = 0, C = 0, A = 0, I = 0, O = 0, B = 0, R = 0, T = 0, D = null, F = 0, N = new n.Buf16(16), P = new n.Buf16(16), U = null, L = 0;
|
|
for (S = 0; i >= S; S++) N[S] = 0;
|
|
for (z = 0; h > z; z++) N[t[r + z]]++;
|
|
for (A = x, C = i; C >= 1 && 0 === N[C]; C--) ;
|
|
if (A > C && (A = C), 0 === C) return l[c++] = 20971520, l[c++] = 20971520, d.bits = 1,
|
|
0;
|
|
for (E = 1; C > E && 0 === N[E]; E++) ;
|
|
for (E > A && (A = E), B = 1, S = 1; i >= S; S++) if (B <<= 1, 0 > (B -= N[S])) return -1;
|
|
if (B > 0 && (0 === e || 1 !== C)) return -1;
|
|
for (P[1] = 0, S = 1; i > S; S++) P[S + 1] = P[S] + N[S];
|
|
for (z = 0; h > z; z++) 0 !== t[r + z] && (f[P[t[r + z]]++] = z);
|
|
if (0 === e ? (D = U = f, v = 19) : 1 === e ? (D = a, F -= 257, U = s, L -= 257,
|
|
v = 256) : (D = o, U = u, v = -1), T = 0, z = 0, S = E, b = c, I = A, O = 0, _ = -1,
|
|
g = (R = 1 << A) - 1, 1 === e && R > 852 || 2 === e && R > 592) return 1;
|
|
for (;;) {
|
|
w = S - O, f[z] < v ? (y = 0, k = f[z]) : f[z] > v ? (y = U[L + f[z]], k = D[F + f[z]]) : (y = 96,
|
|
k = 0), p = 1 << S - O, E = m = 1 << I;
|
|
do {
|
|
l[b + (T >> O) + (m -= p)] = w << 24 | y << 16 | k | 0;
|
|
} while (0 !== m);
|
|
for (p = 1 << S - 1; T & p; ) p >>= 1;
|
|
if (0 !== p ? (T &= p - 1, T += p) : T = 0, z++, 0 == --N[S]) {
|
|
if (S === C) break;
|
|
S = t[r + f[z]];
|
|
}
|
|
if (S > A && (T & g) !== _) {
|
|
for (0 === O && (O = A), b += E, B = 1 << (I = S - O); C > I + O && !(0 >= (B -= N[I + O])); ) I++,
|
|
B <<= 1;
|
|
if (R += 1 << I, 1 === e && R > 852 || 2 === e && R > 592) return 1;
|
|
l[_ = T & g] = A << 24 | I << 16 | b - c | 0;
|
|
}
|
|
}
|
|
return 0 !== T && (l[b + T] = S - O << 24 | 64 << 16 | 0), d.bits = A, 0;
|
|
};
|
|
}, {
|
|
"../utils/common": 62
|
|
} ],
|
|
72: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = {
|
|
2: "need dictionary",
|
|
1: "stream end",
|
|
0: "",
|
|
"-1": "file error",
|
|
"-2": "stream error",
|
|
"-3": "data error",
|
|
"-4": "insufficient memory",
|
|
"-5": "buffer error",
|
|
"-6": "incompatible version"
|
|
};
|
|
}, {} ],
|
|
73: [ function(e, t, r) {
|
|
"use strict";
|
|
function n(e) {
|
|
for (var t = e.length; --t >= 0; ) e[t] = 0;
|
|
}
|
|
function i(e, t, r, n, i) {
|
|
this.static_tree = e, this.extra_bits = t, this.extra_base = r, this.elems = n,
|
|
this.max_length = i, this.has_stree = e && e.length;
|
|
}
|
|
function a(e, t) {
|
|
this.dyn_tree = e, this.max_code = 0, this.stat_desc = t;
|
|
}
|
|
function s(e) {
|
|
return 256 > e ? te[e] : te[256 + (e >>> 7)];
|
|
}
|
|
function o(e, t) {
|
|
e.pending_buf[e.pending++] = 255 & t, e.pending_buf[e.pending++] = t >>> 8 & 255;
|
|
}
|
|
function u(e, t, r) {
|
|
e.bi_valid > M - r ? (e.bi_buf |= t << e.bi_valid & 65535, o(e, e.bi_buf), e.bi_buf = t >> M - e.bi_valid,
|
|
e.bi_valid += r - M) : (e.bi_buf |= t << e.bi_valid & 65535, e.bi_valid += r);
|
|
}
|
|
function h(e, t, r) {
|
|
u(e, r[2 * t], r[2 * t + 1]);
|
|
}
|
|
function l(e, t) {
|
|
var r = 0;
|
|
do {
|
|
r |= 1 & e, e >>>= 1, r <<= 1;
|
|
} while (--t > 0);
|
|
return r >>> 1;
|
|
}
|
|
function c(e) {
|
|
16 === e.bi_valid ? (o(e, e.bi_buf), e.bi_buf = 0, e.bi_valid = 0) : e.bi_valid >= 8 && (e.pending_buf[e.pending++] = 255 & e.bi_buf,
|
|
e.bi_buf >>= 8, e.bi_valid -= 8);
|
|
}
|
|
function f(e, t) {
|
|
var r, n, i, a, s, o, u = t.dyn_tree, h = t.max_code, l = t.stat_desc.static_tree, c = t.stat_desc.has_stree, f = t.stat_desc.extra_bits, d = t.stat_desc.extra_base, p = t.stat_desc.max_length, m = 0;
|
|
for (a = 0; W >= a; a++) e.bl_count[a] = 0;
|
|
for (u[2 * e.heap[e.heap_max] + 1] = 0, r = e.heap_max + 1; Z > r; r++) (a = u[2 * u[2 * (n = e.heap[r]) + 1] + 1] + 1) > p && (a = p,
|
|
m++), u[2 * n + 1] = a, n > h || (e.bl_count[a]++, s = 0, n >= d && (s = f[n - d]),
|
|
o = u[2 * n], e.opt_len += o * (a + s), c && (e.static_len += o * (l[2 * n + 1] + s)));
|
|
if (0 !== m) {
|
|
do {
|
|
for (a = p - 1; 0 === e.bl_count[a]; ) a--;
|
|
e.bl_count[a]--, e.bl_count[a + 1] += 2, e.bl_count[p]--, m -= 2;
|
|
} while (m > 0);
|
|
for (a = p; 0 !== a; a--) for (n = e.bl_count[a]; 0 !== n; ) (i = e.heap[--r]) > h || (u[2 * i + 1] !== a && (e.opt_len += (a - u[2 * i + 1]) * u[2 * i],
|
|
u[2 * i + 1] = a), n--);
|
|
}
|
|
}
|
|
function d(e, t, r) {
|
|
var n, i, a = new Array(W + 1), s = 0;
|
|
for (n = 1; W >= n; n++) a[n] = s = s + r[n - 1] << 1;
|
|
for (i = 0; t >= i; i++) {
|
|
var o = e[2 * i + 1];
|
|
0 !== o && (e[2 * i] = l(a[o]++, o));
|
|
}
|
|
}
|
|
function p() {
|
|
var e, t, r, n, a, s = new Array(W + 1);
|
|
for (r = 0, n = 0; N - 1 > n; n++) for (ne[n] = r, e = 0; e < 1 << V[n]; e++) re[r++] = n;
|
|
for (re[r - 1] = n, a = 0, n = 0; 16 > n; n++) for (ie[n] = a, e = 0; e < 1 << q[n]; e++) te[a++] = n;
|
|
for (a >>= 7; L > n; n++) for (ie[n] = a << 7, e = 0; e < 1 << q[n] - 7; e++) te[256 + a++] = n;
|
|
for (t = 0; W >= t; t++) s[t] = 0;
|
|
for (e = 0; 143 >= e; ) $[2 * e + 1] = 8, e++, s[8]++;
|
|
for (;255 >= e; ) $[2 * e + 1] = 9, e++, s[9]++;
|
|
for (;279 >= e; ) $[2 * e + 1] = 7, e++, s[7]++;
|
|
for (;287 >= e; ) $[2 * e + 1] = 8, e++, s[8]++;
|
|
for (d($, U + 1, s), e = 0; L > e; e++) ee[2 * e + 1] = 5, ee[2 * e] = l(e, 5);
|
|
ae = new i($, V, P + 1, U, W), se = new i(ee, q, 0, L, W), oe = new i(new Array(0), J, 0, j, H);
|
|
}
|
|
function m(e) {
|
|
var t;
|
|
for (t = 0; U > t; t++) e.dyn_ltree[2 * t] = 0;
|
|
for (t = 0; L > t; t++) e.dyn_dtree[2 * t] = 0;
|
|
for (t = 0; j > t; t++) e.bl_tree[2 * t] = 0;
|
|
e.dyn_ltree[2 * G] = 1, e.opt_len = e.static_len = 0, e.last_lit = e.matches = 0;
|
|
}
|
|
function _(e) {
|
|
e.bi_valid > 8 ? o(e, e.bi_buf) : e.bi_valid > 0 && (e.pending_buf[e.pending++] = e.bi_buf),
|
|
e.bi_buf = 0, e.bi_valid = 0;
|
|
}
|
|
function g(e, t, r, n) {
|
|
_(e), n && (o(e, r), o(e, ~r)), A.arraySet(e.pending_buf, e.window, t, r, e.pending),
|
|
e.pending += r;
|
|
}
|
|
function b(e, t, r, n) {
|
|
var i = 2 * t, a = 2 * r;
|
|
return e[i] < e[a] || e[i] === e[a] && n[t] <= n[r];
|
|
}
|
|
function v(e, t, r) {
|
|
for (var n = e.heap[r], i = r << 1; i <= e.heap_len && (i < e.heap_len && b(t, e.heap[i + 1], e.heap[i], e.depth) && i++,
|
|
!b(t, n, e.heap[i], e.depth)); ) e.heap[r] = e.heap[i], r = i, i <<= 1;
|
|
e.heap[r] = n;
|
|
}
|
|
function w(e, t, r) {
|
|
var n, i, a, o, l = 0;
|
|
if (0 !== e.last_lit) do {
|
|
n = e.pending_buf[e.d_buf + 2 * l] << 8 | e.pending_buf[e.d_buf + 2 * l + 1], i = e.pending_buf[e.l_buf + l],
|
|
l++, 0 === n ? h(e, i, t) : (h(e, (a = re[i]) + P + 1, t), 0 !== (o = V[a]) && u(e, i -= ne[a], o),
|
|
h(e, a = s(--n), r), 0 !== (o = q[a]) && u(e, n -= ie[a], o));
|
|
} while (l < e.last_lit);
|
|
h(e, G, t);
|
|
}
|
|
function y(e, t) {
|
|
var r, n, i, a = t.dyn_tree, s = t.stat_desc.static_tree, o = t.stat_desc.has_stree, u = t.stat_desc.elems, h = -1;
|
|
for (e.heap_len = 0, e.heap_max = Z, r = 0; u > r; r++) 0 !== a[2 * r] ? (e.heap[++e.heap_len] = h = r,
|
|
e.depth[r] = 0) : a[2 * r + 1] = 0;
|
|
for (;e.heap_len < 2; ) a[2 * (i = e.heap[++e.heap_len] = 2 > h ? ++h : 0)] = 1,
|
|
e.depth[i] = 0, e.opt_len--, o && (e.static_len -= s[2 * i + 1]);
|
|
for (t.max_code = h, r = e.heap_len >> 1; r >= 1; r--) v(e, a, r);
|
|
i = u;
|
|
do {
|
|
r = e.heap[1], e.heap[1] = e.heap[e.heap_len--], v(e, a, 1), n = e.heap[1], e.heap[--e.heap_max] = r,
|
|
e.heap[--e.heap_max] = n, a[2 * i] = a[2 * r] + a[2 * n], e.depth[i] = (e.depth[r] >= e.depth[n] ? e.depth[r] : e.depth[n]) + 1,
|
|
a[2 * r + 1] = a[2 * n + 1] = i, e.heap[1] = i++, v(e, a, 1);
|
|
} while (e.heap_len >= 2);
|
|
e.heap[--e.heap_max] = e.heap[1], f(e, t), d(a, h, e.bl_count);
|
|
}
|
|
function k(e, t, r) {
|
|
var n, i, a = -1, s = t[1], o = 0, u = 7, h = 4;
|
|
for (0 === s && (u = 138, h = 3), t[2 * (r + 1) + 1] = 65535, n = 0; r >= n; n++) i = s,
|
|
s = t[2 * (n + 1) + 1], ++o < u && i === s || (h > o ? e.bl_tree[2 * i] += o : 0 !== i ? (i !== a && e.bl_tree[2 * i]++,
|
|
e.bl_tree[2 * K]++) : 10 >= o ? e.bl_tree[2 * Y]++ : e.bl_tree[2 * X]++, o = 0,
|
|
a = i, 0 === s ? (u = 138, h = 3) : i === s ? (u = 6, h = 3) : (u = 7, h = 4));
|
|
}
|
|
function x(e, t, r) {
|
|
var n, i, a = -1, s = t[1], o = 0, l = 7, c = 4;
|
|
for (0 === s && (l = 138, c = 3), n = 0; r >= n; n++) if (i = s, s = t[2 * (n + 1) + 1],
|
|
!(++o < l && i === s)) {
|
|
if (c > o) do {
|
|
h(e, i, e.bl_tree);
|
|
} while (0 != --o); else 0 !== i ? (i !== a && (h(e, i, e.bl_tree), o--), h(e, K, e.bl_tree),
|
|
u(e, o - 3, 2)) : 10 >= o ? (h(e, Y, e.bl_tree), u(e, o - 3, 3)) : (h(e, X, e.bl_tree),
|
|
u(e, o - 11, 7));
|
|
o = 0, a = i, 0 === s ? (l = 138, c = 3) : i === s ? (l = 6, c = 3) : (l = 7, c = 4);
|
|
}
|
|
}
|
|
function S(e) {
|
|
var t;
|
|
for (k(e, e.dyn_ltree, e.l_desc.max_code), k(e, e.dyn_dtree, e.d_desc.max_code),
|
|
y(e, e.bl_desc), t = j - 1; t >= 3 && 0 === e.bl_tree[2 * Q[t] + 1]; t--) ;
|
|
return e.opt_len += 3 * (t + 1) + 5 + 5 + 4, t;
|
|
}
|
|
function z(e, t, r, n) {
|
|
var i;
|
|
for (u(e, t - 257, 5), u(e, r - 1, 5), u(e, n - 4, 4), i = 0; n > i; i++) u(e, e.bl_tree[2 * Q[i] + 1], 3);
|
|
x(e, e.dyn_ltree, t - 1), x(e, e.dyn_dtree, r - 1);
|
|
}
|
|
function E(e) {
|
|
var t, r = 4093624447;
|
|
for (t = 0; 31 >= t; t++, r >>>= 1) if (1 & r && 0 !== e.dyn_ltree[2 * t]) return O;
|
|
if (0 !== e.dyn_ltree[18] || 0 !== e.dyn_ltree[20] || 0 !== e.dyn_ltree[26]) return B;
|
|
for (t = 32; P > t; t++) if (0 !== e.dyn_ltree[2 * t]) return B;
|
|
return O;
|
|
}
|
|
function C(e, t, r, n) {
|
|
u(e, (T << 1) + (n ? 1 : 0), 3), g(e, t, r, !0);
|
|
}
|
|
var A = e("../utils/common"), I = 4, O = 0, B = 1, R = 2, T = 0, D = 1, F = 2, N = 29, P = 256, U = P + 1 + N, L = 30, j = 19, Z = 2 * U + 1, W = 15, M = 16, H = 7, G = 256, K = 16, Y = 17, X = 18, V = [ 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0 ], q = [ 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13 ], J = [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7 ], Q = [ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ], $ = new Array(2 * (U + 2));
|
|
n($);
|
|
var ee = new Array(2 * L);
|
|
n(ee);
|
|
var te = new Array(512);
|
|
n(te);
|
|
var re = new Array(256);
|
|
n(re);
|
|
var ne = new Array(N);
|
|
n(ne);
|
|
var ie = new Array(L);
|
|
n(ie);
|
|
var ae, se, oe, ue = !1;
|
|
r._tr_init = function(e) {
|
|
ue || (p(), ue = !0), e.l_desc = new a(e.dyn_ltree, ae), e.d_desc = new a(e.dyn_dtree, se),
|
|
e.bl_desc = new a(e.bl_tree, oe), e.bi_buf = 0, e.bi_valid = 0, m(e);
|
|
}, r._tr_stored_block = C, r._tr_flush_block = function(e, t, r, n) {
|
|
var i, a, s = 0;
|
|
e.level > 0 ? (e.strm.data_type === R && (e.strm.data_type = E(e)), y(e, e.l_desc),
|
|
y(e, e.d_desc), s = S(e), (i = e.opt_len + 3 + 7 >>> 3) >= (a = e.static_len + 3 + 7 >>> 3) && (i = a)) : i = a = r + 5,
|
|
i >= r + 4 && -1 !== t ? C(e, t, r, n) : e.strategy === I || a === i ? (u(e, (D << 1) + (n ? 1 : 0), 3),
|
|
w(e, $, ee)) : (u(e, (F << 1) + (n ? 1 : 0), 3), z(e, e.l_desc.max_code + 1, e.d_desc.max_code + 1, s + 1),
|
|
w(e, e.dyn_ltree, e.dyn_dtree)), m(e), n && _(e);
|
|
}, r._tr_tally = function(e, t, r) {
|
|
return e.pending_buf[e.d_buf + 2 * e.last_lit] = t >>> 8 & 255, e.pending_buf[e.d_buf + 2 * e.last_lit + 1] = 255 & t,
|
|
e.pending_buf[e.l_buf + e.last_lit] = 255 & r, e.last_lit++, 0 === t ? e.dyn_ltree[2 * r]++ : (e.matches++,
|
|
t--, e.dyn_ltree[2 * (re[r] + P + 1)]++, e.dyn_dtree[2 * s(t)]++), e.last_lit === e.lit_bufsize - 1;
|
|
}, r._tr_align = function(e) {
|
|
u(e, D << 1, 3), h(e, G, $), c(e);
|
|
};
|
|
}, {
|
|
"../utils/common": 62
|
|
} ],
|
|
74: [ function(e, t, r) {
|
|
"use strict";
|
|
t.exports = function() {
|
|
this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null,
|
|
this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = "", this.state = null,
|
|
this.data_type = 2, this.adler = 0;
|
|
};
|
|
}, {} ]
|
|
}, {}, [ 10 ])(10);
|
|
});
|
|
|
|
var saveAs = saveAs || function(e) {
|
|
"use strict";
|
|
if (!("undefined" == typeof e || "undefined" != typeof navigator && /MSIE [1-9]\./.test(navigator.userAgent))) {
|
|
var t = function() {
|
|
return e.URL || e.webkitURL || e;
|
|
}, r = e.document.createElementNS("http://www.w3.org/1999/xhtml", "a"), n = "download" in r, i = function(e) {
|
|
var t = new MouseEvent("click");
|
|
e.dispatchEvent(t);
|
|
}, a = /constructor/i.test(e.HTMLElement) || e.safari, s = /CriOS\/[\d]+/.test(navigator.userAgent), o = e.setImmediate || e.setTimeout, u = function(e) {
|
|
o(function() {
|
|
throw e;
|
|
}, 0);
|
|
}, h = function(e) {
|
|
setTimeout(function() {
|
|
"string" == typeof e ? t().revokeObjectURL(e) : e.remove();
|
|
}, 4e4);
|
|
}, l = function(e, t, r) {
|
|
for (var n = (t = [].concat(t)).length; n--; ) {
|
|
var i = e["on" + t[n]];
|
|
if ("function" == typeof i) try {
|
|
i.call(e, r || e);
|
|
} catch (e) {
|
|
u(e);
|
|
}
|
|
}
|
|
}, c = function(e) {
|
|
return /^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type) ? new Blob([ String.fromCharCode(65279), e ], {
|
|
type: e.type
|
|
}) : e;
|
|
}, f = function(u, f, d) {
|
|
d || (u = c(u));
|
|
var p, m = this, _ = "application/octet-stream" === u.type, g = function() {
|
|
l(m, "writestart progress write writeend".split(" "));
|
|
};
|
|
return m.readyState = m.INIT, n ? (p = t().createObjectURL(u), void o(function() {
|
|
r.href = p, r.download = f, i(r), g(), h(p), m.readyState = m.DONE;
|
|
}, 0)) : void function() {
|
|
if ((s || _ && a) && e.FileReader) {
|
|
var r = new FileReader();
|
|
return r.onloadend = function() {
|
|
var t = s ? r.result : r.result.replace(/^data:[^;]*;/, "data:attachment/file;");
|
|
e.open(t, "_blank") || (e.location.href = t), t = void 0, m.readyState = m.DONE,
|
|
g();
|
|
}, r.readAsDataURL(u), void (m.readyState = m.INIT);
|
|
}
|
|
p || (p = t().createObjectURL(u)), _ ? e.location.href = p : e.open(p, "_blank") || (e.location.href = p);
|
|
m.readyState = m.DONE, g(), h(p);
|
|
}();
|
|
}, d = f.prototype;
|
|
return "undefined" != typeof navigator && navigator.msSaveOrOpenBlob ? function(e, t, r) {
|
|
return t = t || e.name || "download", r || (e = c(e)), navigator.msSaveOrOpenBlob(e, t);
|
|
} : (d.abort = function() {}, d.readyState = d.INIT = 0, d.WRITING = 1, d.DONE = 2,
|
|
d.error = d.onwritestart = d.onprogress = d.onwrite = d.onabort = d.onerror = d.onwriteend = null,
|
|
function(e, t, r) {
|
|
return new f(e, t || e.name || "download", r);
|
|
});
|
|
}
|
|
}("undefined" != typeof self && self || "undefined" != typeof window && window || this); |