timer-db
Version:
A library for cubing timer results storage with CouchDB-based synchronization.
1,441 lines (1,426 loc) • 559 kB
JavaScript
globalThis.global = globalThis;
var __create = Object.create;
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __getProtoOf = Object.getPrototypeOf;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __commonJS = (cb, mod) => function __require() {
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
var __accessCheck = (obj, member, msg) => {
if (!member.has(obj))
throw TypeError("Cannot " + msg);
};
var __privateGet = (obj, member, getter) => {
__accessCheck(obj, member, "read from private field");
return getter ? getter.call(obj) : member.get(obj);
};
var __privateAdd = (obj, member, value) => {
if (member.has(obj))
throw TypeError("Cannot add the same private member more than once");
member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
};
var __privateSet = (obj, member, value, setter) => {
__accessCheck(obj, member, "write to private field");
setter ? setter.call(obj, value) : member.set(obj, value);
return value;
};
// (disabled):node_modules/immediate/lib/nextTick
var require_nextTick = __commonJS({
"(disabled):node_modules/immediate/lib/nextTick"() {
}
});
// node_modules/immediate/lib/queueMicrotask.js
var require_queueMicrotask = __commonJS({
"node_modules/immediate/lib/queueMicrotask.js"(exports) {
"use strict";
exports.test = function() {
return typeof global.queueMicrotask === "function";
};
exports.install = function(func) {
return function() {
global.queueMicrotask(func);
};
};
}
});
// node_modules/immediate/lib/mutation.js
var require_mutation = __commonJS({
"node_modules/immediate/lib/mutation.js"(exports) {
"use strict";
var Mutation = global.MutationObserver || global.WebKitMutationObserver;
exports.test = function() {
return Mutation;
};
exports.install = function(handle) {
var called = 0;
var observer = new Mutation(handle);
var element = global.document.createTextNode("");
observer.observe(element, {
characterData: true
});
return function() {
element.data = called = ++called % 2;
};
};
}
});
// node_modules/immediate/lib/messageChannel.js
var require_messageChannel = __commonJS({
"node_modules/immediate/lib/messageChannel.js"(exports) {
"use strict";
exports.test = function() {
if (global.setImmediate) {
return false;
}
return typeof global.MessageChannel !== "undefined";
};
exports.install = function(func) {
var channel = new global.MessageChannel();
channel.port1.onmessage = func;
return function() {
channel.port2.postMessage(0);
};
};
}
});
// node_modules/immediate/lib/stateChange.js
var require_stateChange = __commonJS({
"node_modules/immediate/lib/stateChange.js"(exports) {
"use strict";
exports.test = function() {
return "document" in global && "onreadystatechange" in global.document.createElement("script");
};
exports.install = function(handle) {
return function() {
var scriptEl = global.document.createElement("script");
scriptEl.onreadystatechange = function() {
handle();
scriptEl.onreadystatechange = null;
scriptEl.parentNode.removeChild(scriptEl);
scriptEl = null;
};
global.document.documentElement.appendChild(scriptEl);
return handle;
};
};
}
});
// node_modules/immediate/lib/timeout.js
var require_timeout = __commonJS({
"node_modules/immediate/lib/timeout.js"(exports) {
"use strict";
exports.test = function() {
return true;
};
exports.install = function(t) {
return function() {
setTimeout(t, 0);
};
};
}
});
// node_modules/immediate/lib/index.js
var require_lib = __commonJS({
"node_modules/immediate/lib/index.js"(exports, module) {
"use strict";
var types = [
require_nextTick(),
require_queueMicrotask(),
require_mutation(),
require_messageChannel(),
require_stateChange(),
require_timeout()
];
var draining;
var currentQueue;
var queueIndex = -1;
var queue2 = [];
var scheduled = false;
function cleanUpNextTick() {
if (!draining || !currentQueue) {
return;
}
draining = false;
if (currentQueue.length) {
queue2 = currentQueue.concat(queue2);
} else {
queueIndex = -1;
}
if (queue2.length) {
nextTick();
}
}
function nextTick() {
if (draining) {
return;
}
scheduled = false;
draining = true;
var len2 = queue2.length;
var timeout = setTimeout(cleanUpNextTick);
while (len2) {
currentQueue = queue2;
queue2 = [];
while (currentQueue && ++queueIndex < len2) {
currentQueue[queueIndex].run();
}
queueIndex = -1;
len2 = queue2.length;
}
currentQueue = null;
queueIndex = -1;
draining = false;
clearTimeout(timeout);
}
var scheduleDrain;
var i = -1;
var len = types.length;
while (++i < len) {
if (types[i] && types[i].test && types[i].test()) {
scheduleDrain = types[i].install(nextTick);
break;
}
}
function Item(fun, array) {
this.fun = fun;
this.array = array;
}
Item.prototype.run = function() {
var fun = this.fun;
var array = this.array;
switch (array.length) {
case 0:
return fun();
case 1:
return fun(array[0]);
case 2:
return fun(array[0], array[1]);
case 3:
return fun(array[0], array[1], array[2]);
default:
return fun.apply(null, array);
}
};
module.exports = immediate3;
function immediate3(task) {
var args = new Array(arguments.length - 1);
if (arguments.length > 1) {
for (var i2 = 1; i2 < arguments.length; i2++) {
args[i2 - 1] = arguments[i2];
}
}
queue2.push(new Item(task, args));
if (!scheduled && !draining) {
scheduled = true;
scheduleDrain();
}
}
}
});
// node_modules/spark-md5/spark-md5.js
var require_spark_md5 = __commonJS({
"node_modules/spark-md5/spark-md5.js"(exports, module) {
(function(factory) {
if (typeof exports === "object") {
module.exports = factory();
} else if (typeof define === "function" && define.amd) {
define(factory);
} else {
var glob;
try {
glob = window;
} catch (e) {
glob = self;
}
glob.SparkMD5 = factory();
}
})(function(undefined2) {
"use strict";
var add32 = function(a2, b) {
return a2 + b & 4294967295;
}, hex_chr = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"];
function cmn(q, a2, b, x, s, t) {
a2 = add32(add32(a2, q), add32(x, t));
return add32(a2 << s | a2 >>> 32 - s, b);
}
function md5cycle(x, k) {
var a2 = x[0], b = x[1], c = x[2], d = x[3];
a2 += (b & c | ~b & d) + k[0] - 680876936 | 0;
a2 = (a2 << 7 | a2 >>> 25) + b | 0;
d += (a2 & b | ~a2 & c) + k[1] - 389564586 | 0;
d = (d << 12 | d >>> 20) + a2 | 0;
c += (d & a2 | ~d & b) + k[2] + 606105819 | 0;
c = (c << 17 | c >>> 15) + d | 0;
b += (c & d | ~c & a2) + k[3] - 1044525330 | 0;
b = (b << 22 | b >>> 10) + c | 0;
a2 += (b & c | ~b & d) + k[4] - 176418897 | 0;
a2 = (a2 << 7 | a2 >>> 25) + b | 0;
d += (a2 & b | ~a2 & c) + k[5] + 1200080426 | 0;
d = (d << 12 | d >>> 20) + a2 | 0;
c += (d & a2 | ~d & b) + k[6] - 1473231341 | 0;
c = (c << 17 | c >>> 15) + d | 0;
b += (c & d | ~c & a2) + k[7] - 45705983 | 0;
b = (b << 22 | b >>> 10) + c | 0;
a2 += (b & c | ~b & d) + k[8] + 1770035416 | 0;
a2 = (a2 << 7 | a2 >>> 25) + b | 0;
d += (a2 & b | ~a2 & c) + k[9] - 1958414417 | 0;
d = (d << 12 | d >>> 20) + a2 | 0;
c += (d & a2 | ~d & b) + k[10] - 42063 | 0;
c = (c << 17 | c >>> 15) + d | 0;
b += (c & d | ~c & a2) + k[11] - 1990404162 | 0;
b = (b << 22 | b >>> 10) + c | 0;
a2 += (b & c | ~b & d) + k[12] + 1804603682 | 0;
a2 = (a2 << 7 | a2 >>> 25) + b | 0;
d += (a2 & b | ~a2 & c) + k[13] - 40341101 | 0;
d = (d << 12 | d >>> 20) + a2 | 0;
c += (d & a2 | ~d & b) + k[14] - 1502002290 | 0;
c = (c << 17 | c >>> 15) + d | 0;
b += (c & d | ~c & a2) + k[15] + 1236535329 | 0;
b = (b << 22 | b >>> 10) + c | 0;
a2 += (b & d | c & ~d) + k[1] - 165796510 | 0;
a2 = (a2 << 5 | a2 >>> 27) + b | 0;
d += (a2 & c | b & ~c) + k[6] - 1069501632 | 0;
d = (d << 9 | d >>> 23) + a2 | 0;
c += (d & b | a2 & ~b) + k[11] + 643717713 | 0;
c = (c << 14 | c >>> 18) + d | 0;
b += (c & a2 | d & ~a2) + k[0] - 373897302 | 0;
b = (b << 20 | b >>> 12) + c | 0;
a2 += (b & d | c & ~d) + k[5] - 701558691 | 0;
a2 = (a2 << 5 | a2 >>> 27) + b | 0;
d += (a2 & c | b & ~c) + k[10] + 38016083 | 0;
d = (d << 9 | d >>> 23) + a2 | 0;
c += (d & b | a2 & ~b) + k[15] - 660478335 | 0;
c = (c << 14 | c >>> 18) + d | 0;
b += (c & a2 | d & ~a2) + k[4] - 405537848 | 0;
b = (b << 20 | b >>> 12) + c | 0;
a2 += (b & d | c & ~d) + k[9] + 568446438 | 0;
a2 = (a2 << 5 | a2 >>> 27) + b | 0;
d += (a2 & c | b & ~c) + k[14] - 1019803690 | 0;
d = (d << 9 | d >>> 23) + a2 | 0;
c += (d & b | a2 & ~b) + k[3] - 187363961 | 0;
c = (c << 14 | c >>> 18) + d | 0;
b += (c & a2 | d & ~a2) + k[8] + 1163531501 | 0;
b = (b << 20 | b >>> 12) + c | 0;
a2 += (b & d | c & ~d) + k[13] - 1444681467 | 0;
a2 = (a2 << 5 | a2 >>> 27) + b | 0;
d += (a2 & c | b & ~c) + k[2] - 51403784 | 0;
d = (d << 9 | d >>> 23) + a2 | 0;
c += (d & b | a2 & ~b) + k[7] + 1735328473 | 0;
c = (c << 14 | c >>> 18) + d | 0;
b += (c & a2 | d & ~a2) + k[12] - 1926607734 | 0;
b = (b << 20 | b >>> 12) + c | 0;
a2 += (b ^ c ^ d) + k[5] - 378558 | 0;
a2 = (a2 << 4 | a2 >>> 28) + b | 0;
d += (a2 ^ b ^ c) + k[8] - 2022574463 | 0;
d = (d << 11 | d >>> 21) + a2 | 0;
c += (d ^ a2 ^ b) + k[11] + 1839030562 | 0;
c = (c << 16 | c >>> 16) + d | 0;
b += (c ^ d ^ a2) + k[14] - 35309556 | 0;
b = (b << 23 | b >>> 9) + c | 0;
a2 += (b ^ c ^ d) + k[1] - 1530992060 | 0;
a2 = (a2 << 4 | a2 >>> 28) + b | 0;
d += (a2 ^ b ^ c) + k[4] + 1272893353 | 0;
d = (d << 11 | d >>> 21) + a2 | 0;
c += (d ^ a2 ^ b) + k[7] - 155497632 | 0;
c = (c << 16 | c >>> 16) + d | 0;
b += (c ^ d ^ a2) + k[10] - 1094730640 | 0;
b = (b << 23 | b >>> 9) + c | 0;
a2 += (b ^ c ^ d) + k[13] + 681279174 | 0;
a2 = (a2 << 4 | a2 >>> 28) + b | 0;
d += (a2 ^ b ^ c) + k[0] - 358537222 | 0;
d = (d << 11 | d >>> 21) + a2 | 0;
c += (d ^ a2 ^ b) + k[3] - 722521979 | 0;
c = (c << 16 | c >>> 16) + d | 0;
b += (c ^ d ^ a2) + k[6] + 76029189 | 0;
b = (b << 23 | b >>> 9) + c | 0;
a2 += (b ^ c ^ d) + k[9] - 640364487 | 0;
a2 = (a2 << 4 | a2 >>> 28) + b | 0;
d += (a2 ^ b ^ c) + k[12] - 421815835 | 0;
d = (d << 11 | d >>> 21) + a2 | 0;
c += (d ^ a2 ^ b) + k[15] + 530742520 | 0;
c = (c << 16 | c >>> 16) + d | 0;
b += (c ^ d ^ a2) + k[2] - 995338651 | 0;
b = (b << 23 | b >>> 9) + c | 0;
a2 += (c ^ (b | ~d)) + k[0] - 198630844 | 0;
a2 = (a2 << 6 | a2 >>> 26) + b | 0;
d += (b ^ (a2 | ~c)) + k[7] + 1126891415 | 0;
d = (d << 10 | d >>> 22) + a2 | 0;
c += (a2 ^ (d | ~b)) + k[14] - 1416354905 | 0;
c = (c << 15 | c >>> 17) + d | 0;
b += (d ^ (c | ~a2)) + k[5] - 57434055 | 0;
b = (b << 21 | b >>> 11) + c | 0;
a2 += (c ^ (b | ~d)) + k[12] + 1700485571 | 0;
a2 = (a2 << 6 | a2 >>> 26) + b | 0;
d += (b ^ (a2 | ~c)) + k[3] - 1894986606 | 0;
d = (d << 10 | d >>> 22) + a2 | 0;
c += (a2 ^ (d | ~b)) + k[10] - 1051523 | 0;
c = (c << 15 | c >>> 17) + d | 0;
b += (d ^ (c | ~a2)) + k[1] - 2054922799 | 0;
b = (b << 21 | b >>> 11) + c | 0;
a2 += (c ^ (b | ~d)) + k[8] + 1873313359 | 0;
a2 = (a2 << 6 | a2 >>> 26) + b | 0;
d += (b ^ (a2 | ~c)) + k[15] - 30611744 | 0;
d = (d << 10 | d >>> 22) + a2 | 0;
c += (a2 ^ (d | ~b)) + k[6] - 1560198380 | 0;
c = (c << 15 | c >>> 17) + d | 0;
b += (d ^ (c | ~a2)) + k[13] + 1309151649 | 0;
b = (b << 21 | b >>> 11) + c | 0;
a2 += (c ^ (b | ~d)) + k[4] - 145523070 | 0;
a2 = (a2 << 6 | a2 >>> 26) + b | 0;
d += (b ^ (a2 | ~c)) + k[11] - 1120210379 | 0;
d = (d << 10 | d >>> 22) + a2 | 0;
c += (a2 ^ (d | ~b)) + k[2] + 718787259 | 0;
c = (c << 15 | c >>> 17) + d | 0;
b += (d ^ (c | ~a2)) + k[9] - 343485551 | 0;
b = (b << 21 | b >>> 11) + c | 0;
x[0] = a2 + x[0] | 0;
x[1] = b + x[1] | 0;
x[2] = c + x[2] | 0;
x[3] = d + x[3] | 0;
}
function md5blk(s) {
var md5blks = [], i;
for (i = 0; i < 64; i += 4) {
md5blks[i >> 2] = s.charCodeAt(i) + (s.charCodeAt(i + 1) << 8) + (s.charCodeAt(i + 2) << 16) + (s.charCodeAt(i + 3) << 24);
}
return md5blks;
}
function md5blk_array(a2) {
var md5blks = [], i;
for (i = 0; i < 64; i += 4) {
md5blks[i >> 2] = a2[i] + (a2[i + 1] << 8) + (a2[i + 2] << 16) + (a2[i + 3] << 24);
}
return md5blks;
}
function md51(s) {
var n = s.length, state = [1732584193, -271733879, -1732584194, 271733878], i, length, tail, tmp, lo, hi;
for (i = 64; i <= n; i += 64) {
md5cycle(state, md5blk(s.substring(i - 64, i)));
}
s = s.substring(i - 64);
length = s.length;
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
for (i = 0; i < length; i += 1) {
tail[i >> 2] |= s.charCodeAt(i) << (i % 4 << 3);
}
tail[i >> 2] |= 128 << (i % 4 << 3);
if (i > 55) {
md5cycle(state, tail);
for (i = 0; i < 16; i += 1) {
tail[i] = 0;
}
}
tmp = n * 8;
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
lo = parseInt(tmp[2], 16);
hi = parseInt(tmp[1], 16) || 0;
tail[14] = lo;
tail[15] = hi;
md5cycle(state, tail);
return state;
}
function md51_array(a2) {
var n = a2.length, state = [1732584193, -271733879, -1732584194, 271733878], i, length, tail, tmp, lo, hi;
for (i = 64; i <= n; i += 64) {
md5cycle(state, md5blk_array(a2.subarray(i - 64, i)));
}
a2 = i - 64 < n ? a2.subarray(i - 64) : new Uint8Array(0);
length = a2.length;
tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
for (i = 0; i < length; i += 1) {
tail[i >> 2] |= a2[i] << (i % 4 << 3);
}
tail[i >> 2] |= 128 << (i % 4 << 3);
if (i > 55) {
md5cycle(state, tail);
for (i = 0; i < 16; i += 1) {
tail[i] = 0;
}
}
tmp = n * 8;
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
lo = parseInt(tmp[2], 16);
hi = parseInt(tmp[1], 16) || 0;
tail[14] = lo;
tail[15] = hi;
md5cycle(state, tail);
return state;
}
function rhex(n) {
var s = "", j;
for (j = 0; j < 4; j += 1) {
s += hex_chr[n >> j * 8 + 4 & 15] + hex_chr[n >> j * 8 & 15];
}
return s;
}
function hex(x) {
var i;
for (i = 0; i < x.length; i += 1) {
x[i] = rhex(x[i]);
}
return x.join("");
}
if (hex(md51("hello")) !== "5d41402abc4b2a76b9719d911017c592") {
add32 = function(x, y) {
var lsw = (x & 65535) + (y & 65535), msw = (x >> 16) + (y >> 16) + (lsw >> 16);
return msw << 16 | lsw & 65535;
};
}
if (typeof ArrayBuffer !== "undefined" && !ArrayBuffer.prototype.slice) {
(function() {
function clamp(val, length) {
val = val | 0 || 0;
if (val < 0) {
return Math.max(val + length, 0);
}
return Math.min(val, length);
}
ArrayBuffer.prototype.slice = function(from, to) {
var length = this.byteLength, begin = clamp(from, length), end = length, num, target, targetArray, sourceArray;
if (to !== undefined2) {
end = clamp(to, length);
}
if (begin > end) {
return new ArrayBuffer(0);
}
num = end - begin;
target = new ArrayBuffer(num);
targetArray = new Uint8Array(target);
sourceArray = new Uint8Array(this, begin, num);
targetArray.set(sourceArray);
return target;
};
})();
}
function toUtf8(str) {
if (/[\u0080-\uFFFF]/.test(str)) {
str = unescape(encodeURIComponent(str));
}
return str;
}
function utf8Str2ArrayBuffer(str, returnUInt8Array) {
var length = str.length, buff = new ArrayBuffer(length), arr = new Uint8Array(buff), i;
for (i = 0; i < length; i += 1) {
arr[i] = str.charCodeAt(i);
}
return returnUInt8Array ? arr : buff;
}
function arrayBuffer2Utf8Str(buff) {
return String.fromCharCode.apply(null, new Uint8Array(buff));
}
function concatenateArrayBuffers(first2, second, returnUInt8Array) {
var result = new Uint8Array(first2.byteLength + second.byteLength);
result.set(new Uint8Array(first2));
result.set(new Uint8Array(second), first2.byteLength);
return returnUInt8Array ? result : result.buffer;
}
function hexToBinaryString(hex2) {
var bytes = [], length = hex2.length, x;
for (x = 0; x < length - 1; x += 2) {
bytes.push(parseInt(hex2.substr(x, 2), 16));
}
return String.fromCharCode.apply(String, bytes);
}
function SparkMD5() {
this.reset();
}
SparkMD5.prototype.append = function(str) {
this.appendBinary(toUtf8(str));
return this;
};
SparkMD5.prototype.appendBinary = function(contents) {
this._buff += contents;
this._length += contents.length;
var length = this._buff.length, i;
for (i = 64; i <= length; i += 64) {
md5cycle(this._hash, md5blk(this._buff.substring(i - 64, i)));
}
this._buff = this._buff.substring(i - 64);
return this;
};
SparkMD5.prototype.end = function(raw) {
var buff = this._buff, length = buff.length, i, tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], ret;
for (i = 0; i < length; i += 1) {
tail[i >> 2] |= buff.charCodeAt(i) << (i % 4 << 3);
}
this._finish(tail, length);
ret = hex(this._hash);
if (raw) {
ret = hexToBinaryString(ret);
}
this.reset();
return ret;
};
SparkMD5.prototype.reset = function() {
this._buff = "";
this._length = 0;
this._hash = [1732584193, -271733879, -1732584194, 271733878];
return this;
};
SparkMD5.prototype.getState = function() {
return {
buff: this._buff,
length: this._length,
hash: this._hash.slice()
};
};
SparkMD5.prototype.setState = function(state) {
this._buff = state.buff;
this._length = state.length;
this._hash = state.hash;
return this;
};
SparkMD5.prototype.destroy = function() {
delete this._hash;
delete this._buff;
delete this._length;
};
SparkMD5.prototype._finish = function(tail, length) {
var i = length, tmp, lo, hi;
tail[i >> 2] |= 128 << (i % 4 << 3);
if (i > 55) {
md5cycle(this._hash, tail);
for (i = 0; i < 16; i += 1) {
tail[i] = 0;
}
}
tmp = this._length * 8;
tmp = tmp.toString(16).match(/(.*?)(.{0,8})$/);
lo = parseInt(tmp[2], 16);
hi = parseInt(tmp[1], 16) || 0;
tail[14] = lo;
tail[15] = hi;
md5cycle(this._hash, tail);
};
SparkMD5.hash = function(str, raw) {
return SparkMD5.hashBinary(toUtf8(str), raw);
};
SparkMD5.hashBinary = function(content, raw) {
var hash2 = md51(content), ret = hex(hash2);
return raw ? hexToBinaryString(ret) : ret;
};
SparkMD5.ArrayBuffer = function() {
this.reset();
};
SparkMD5.ArrayBuffer.prototype.append = function(arr) {
var buff = concatenateArrayBuffers(this._buff.buffer, arr, true), length = buff.length, i;
this._length += arr.byteLength;
for (i = 64; i <= length; i += 64) {
md5cycle(this._hash, md5blk_array(buff.subarray(i - 64, i)));
}
this._buff = i - 64 < length ? new Uint8Array(buff.buffer.slice(i - 64)) : new Uint8Array(0);
return this;
};
SparkMD5.ArrayBuffer.prototype.end = function(raw) {
var buff = this._buff, length = buff.length, tail = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], i, ret;
for (i = 0; i < length; i += 1) {
tail[i >> 2] |= buff[i] << (i % 4 << 3);
}
this._finish(tail, length);
ret = hex(this._hash);
if (raw) {
ret = hexToBinaryString(ret);
}
this.reset();
return ret;
};
SparkMD5.ArrayBuffer.prototype.reset = function() {
this._buff = new Uint8Array(0);
this._length = 0;
this._hash = [1732584193, -271733879, -1732584194, 271733878];
return this;
};
SparkMD5.ArrayBuffer.prototype.getState = function() {
var state = SparkMD5.prototype.getState.call(this);
state.buff = arrayBuffer2Utf8Str(state.buff);
return state;
};
SparkMD5.ArrayBuffer.prototype.setState = function(state) {
state.buff = utf8Str2ArrayBuffer(state.buff, true);
return SparkMD5.prototype.setState.call(this, state);
};
SparkMD5.ArrayBuffer.prototype.destroy = SparkMD5.prototype.destroy;
SparkMD5.ArrayBuffer.prototype._finish = SparkMD5.prototype._finish;
SparkMD5.ArrayBuffer.hash = function(arr, raw) {
var hash2 = md51_array(new Uint8Array(arr)), ret = hex(hash2);
return raw ? hexToBinaryString(ret) : ret;
};
return SparkMD5;
});
}
});
// node_modules/vuvuzela/index.js
var require_vuvuzela = __commonJS({
"node_modules/vuvuzela/index.js"(exports) {
"use strict";
exports.stringify = function stringify4(input) {
var queue2 = [];
queue2.push({ obj: input });
var res2 = "";
var next, obj, prefix, val, i, arrayPrefix, keys2, k, key, value, objPrefix;
while (next = queue2.pop()) {
obj = next.obj;
prefix = next.prefix || "";
val = next.val || "";
res2 += prefix;
if (val) {
res2 += val;
} else if (typeof obj !== "object") {
res2 += typeof obj === "undefined" ? null : JSON.stringify(obj);
} else if (obj === null) {
res2 += "null";
} else if (Array.isArray(obj)) {
queue2.push({ val: "]" });
for (i = obj.length - 1; i >= 0; i--) {
arrayPrefix = i === 0 ? "" : ",";
queue2.push({ obj: obj[i], prefix: arrayPrefix });
}
queue2.push({ val: "[" });
} else {
keys2 = [];
for (k in obj) {
if (obj.hasOwnProperty(k)) {
keys2.push(k);
}
}
queue2.push({ val: "}" });
for (i = keys2.length - 1; i >= 0; i--) {
key = keys2[i];
value = obj[key];
objPrefix = i > 0 ? "," : "";
objPrefix += JSON.stringify(key) + ":";
queue2.push({ obj: value, prefix: objPrefix });
}
queue2.push({ val: "{" });
}
}
return res2;
};
function pop3(obj, stack, metaStack) {
var lastMetaElement = metaStack[metaStack.length - 1];
if (obj === lastMetaElement.element) {
metaStack.pop();
lastMetaElement = metaStack[metaStack.length - 1];
}
var element = lastMetaElement.element;
var lastElementIndex = lastMetaElement.index;
if (Array.isArray(element)) {
element.push(obj);
} else if (lastElementIndex === stack.length - 2) {
var key = stack.pop();
element[key] = obj;
} else {
stack.push(obj);
}
}
exports.parse = function(str) {
var stack = [];
var metaStack = [];
var i = 0;
var collationIndex3, parsedNum, numChar;
var parsedString, lastCh, numConsecutiveSlashes, ch;
var arrayElement, objElement;
while (true) {
collationIndex3 = str[i++];
if (collationIndex3 === "}" || collationIndex3 === "]" || typeof collationIndex3 === "undefined") {
if (stack.length === 1) {
return stack.pop();
} else {
pop3(stack.pop(), stack, metaStack);
continue;
}
}
switch (collationIndex3) {
case " ":
case " ":
case "\n":
case ":":
case ",":
break;
case "n":
i += 3;
pop3(null, stack, metaStack);
break;
case "t":
i += 3;
pop3(true, stack, metaStack);
break;
case "f":
i += 4;
pop3(false, stack, metaStack);
break;
case "0":
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
case "-":
parsedNum = "";
i--;
while (true) {
numChar = str[i++];
if (/[\d\.\-e\+]/.test(numChar)) {
parsedNum += numChar;
} else {
i--;
break;
}
}
pop3(parseFloat(parsedNum), stack, metaStack);
break;
case '"':
parsedString = "";
lastCh = void 0;
numConsecutiveSlashes = 0;
while (true) {
ch = str[i++];
if (ch !== '"' || lastCh === "\\" && numConsecutiveSlashes % 2 === 1) {
parsedString += ch;
lastCh = ch;
if (lastCh === "\\") {
numConsecutiveSlashes++;
} else {
numConsecutiveSlashes = 0;
}
} else {
break;
}
}
pop3(JSON.parse('"' + parsedString + '"'), stack, metaStack);
break;
case "[":
arrayElement = { element: [], index: stack.length };
stack.push(arrayElement.element);
metaStack.push(arrayElement);
break;
case "{":
objElement = { element: {}, index: stack.length };
stack.push(objElement.element);
metaStack.push(objElement);
break;
default:
throw new Error("unexpectedly reached end of input: " + collationIndex3);
}
}
};
}
});
// node_modules/argsarray/index.js
var require_argsarray = __commonJS({
"node_modules/argsarray/index.js"(exports, module) {
"use strict";
module.exports = argsArray;
function argsArray(fun) {
return function() {
var len = arguments.length;
if (len) {
var args = [];
var i = -1;
while (++i < len) {
args[i] = arguments[i];
}
return fun.call(this, args);
} else {
return fun.call(this, []);
}
};
}
}
});
// node_modules/inherits/inherits_browser.js
var require_inherits_browser = __commonJS({
"node_modules/inherits/inherits_browser.js"(exports, module) {
if (typeof Object.create === "function") {
module.exports = function inherits5(ctor, superCtor) {
if (superCtor) {
ctor.super_ = superCtor;
ctor.prototype = Object.create(superCtor.prototype, {
constructor: {
value: ctor,
enumerable: false,
writable: true,
configurable: true
}
});
}
};
} else {
module.exports = function inherits5(ctor, superCtor) {
if (superCtor) {
ctor.super_ = superCtor;
var TempCtor = function() {
};
TempCtor.prototype = superCtor.prototype;
ctor.prototype = new TempCtor();
ctor.prototype.constructor = ctor;
}
};
}
}
});
// node_modules/events/events.js
var require_events = __commonJS({
"node_modules/events/events.js"(exports, module) {
"use strict";
var R = typeof Reflect === "object" ? Reflect : null;
var ReflectApply = R && typeof R.apply === "function" ? R.apply : function ReflectApply2(target, receiver, args) {
return Function.prototype.apply.call(target, receiver, args);
};
var ReflectOwnKeys;
if (R && typeof R.ownKeys === "function") {
ReflectOwnKeys = R.ownKeys;
} else if (Object.getOwnPropertySymbols) {
ReflectOwnKeys = function ReflectOwnKeys2(target) {
return Object.getOwnPropertyNames(target).concat(Object.getOwnPropertySymbols(target));
};
} else {
ReflectOwnKeys = function ReflectOwnKeys2(target) {
return Object.getOwnPropertyNames(target);
};
}
function ProcessEmitWarning(warning) {
if (console && console.warn)
console.warn(warning);
}
var NumberIsNaN = Number.isNaN || function NumberIsNaN2(value) {
return value !== value;
};
function EventEmitter2() {
EventEmitter2.init.call(this);
}
module.exports = EventEmitter2;
module.exports.once = once3;
EventEmitter2.EventEmitter = EventEmitter2;
EventEmitter2.prototype._events = void 0;
EventEmitter2.prototype._eventsCount = 0;
EventEmitter2.prototype._maxListeners = void 0;
var defaultMaxListeners = 10;
function checkListener(listener) {
if (typeof listener !== "function") {
throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof listener);
}
}
Object.defineProperty(EventEmitter2, "defaultMaxListeners", {
enumerable: true,
get: function() {
return defaultMaxListeners;
},
set: function(arg) {
if (typeof arg !== "number" || arg < 0 || NumberIsNaN(arg)) {
throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + arg + ".");
}
defaultMaxListeners = arg;
}
});
EventEmitter2.init = function() {
if (this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) {
this._events = /* @__PURE__ */ Object.create(null);
this._eventsCount = 0;
}
this._maxListeners = this._maxListeners || void 0;
};
EventEmitter2.prototype.setMaxListeners = function setMaxListeners(n) {
if (typeof n !== "number" || n < 0 || NumberIsNaN(n)) {
throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + n + ".");
}
this._maxListeners = n;
return this;
};
function _getMaxListeners(that) {
if (that._maxListeners === void 0)
return EventEmitter2.defaultMaxListeners;
return that._maxListeners;
}
EventEmitter2.prototype.getMaxListeners = function getMaxListeners() {
return _getMaxListeners(this);
};
EventEmitter2.prototype.emit = function emit2(type) {
var args = [];
for (var i = 1; i < arguments.length; i++)
args.push(arguments[i]);
var doError = type === "error";
var events = this._events;
if (events !== void 0)
doError = doError && events.error === void 0;
else if (!doError)
return false;
if (doError) {
var er;
if (args.length > 0)
er = args[0];
if (er instanceof Error) {
throw er;
}
var err = new Error("Unhandled error." + (er ? " (" + er.message + ")" : ""));
err.context = er;
throw err;
}
var handler = events[type];
if (handler === void 0)
return false;
if (typeof handler === "function") {
ReflectApply(handler, this, args);
} else {
var len = handler.length;
var listeners = arrayClone(handler, len);
for (var i = 0; i < len; ++i)
ReflectApply(listeners[i], this, args);
}
return true;
};
function _addListener(target, type, listener, prepend) {
var m;
var events;
var existing;
checkListener(listener);
events = target._events;
if (events === void 0) {
events = target._events = /* @__PURE__ */ Object.create(null);
target._eventsCount = 0;
} else {
if (events.newListener !== void 0) {
target.emit("newListener", type, listener.listener ? listener.listener : listener);
events = target._events;
}
existing = events[type];
}
if (existing === void 0) {
existing = events[type] = listener;
++target._eventsCount;
} else {
if (typeof existing === "function") {
existing = events[type] = prepend ? [listener, existing] : [existing, listener];
} else if (prepend) {
existing.unshift(listener);
} else {
existing.push(listener);
}
m = _getMaxListeners(target);
if (m > 0 && existing.length > m && !existing.warned) {
existing.warned = true;
var w = new Error("Possible EventEmitter memory leak detected. " + existing.length + " " + String(type) + " listeners added. Use emitter.setMaxListeners() to increase limit");
w.name = "MaxListenersExceededWarning";
w.emitter = target;
w.type = type;
w.count = existing.length;
ProcessEmitWarning(w);
}
}
return target;
}
EventEmitter2.prototype.addListener = function addListener(type, listener) {
return _addListener(this, type, listener, false);
};
EventEmitter2.prototype.on = EventEmitter2.prototype.addListener;
EventEmitter2.prototype.prependListener = function prependListener(type, listener) {
return _addListener(this, type, listener, true);
};
function onceWrapper() {
if (!this.fired) {
this.target.removeListener(this.type, this.wrapFn);
this.fired = true;
if (arguments.length === 0)
return this.listener.call(this.target);
return this.listener.apply(this.target, arguments);
}
}
function _onceWrap(target, type, listener) {
var state = { fired: false, wrapFn: void 0, target, type, listener };
var wrapped = onceWrapper.bind(state);
wrapped.listener = listener;
state.wrapFn = wrapped;
return wrapped;
}
EventEmitter2.prototype.once = function once4(type, listener) {
checkListener(listener);
this.on(type, _onceWrap(this, type, listener));
return this;
};
EventEmitter2.prototype.prependOnceListener = function prependOnceListener(type, listener) {
checkListener(listener);
this.prependListener(type, _onceWrap(this, type, listener));
return this;
};
EventEmitter2.prototype.removeListener = function removeListener(type, listener) {
var list, events, position, i, originalListener;
checkListener(listener);
events = this._events;
if (events === void 0)
return this;
list = events[type];
if (list === void 0)
return this;
if (list === listener || list.listener === listener) {
if (--this._eventsCount === 0)
this._events = /* @__PURE__ */ Object.create(null);
else {
delete events[type];
if (events.removeListener)
this.emit("removeListener", type, list.listener || listener);
}
} else if (typeof list !== "function") {
position = -1;
for (i = list.length - 1; i >= 0; i--) {
if (list[i] === listener || list[i].listener === listener) {
originalListener = list[i].listener;
position = i;
break;
}
}
if (position < 0)
return this;
if (position === 0)
list.shift();
else {
spliceOne(list, position);
}
if (list.length === 1)
events[type] = list[0];
if (events.removeListener !== void 0)
this.emit("removeListener", type, originalListener || listener);
}
return this;
};
EventEmitter2.prototype.off = EventEmitter2.prototype.removeListener;
EventEmitter2.prototype.removeAllListeners = function removeAllListeners(type) {
var listeners, events, i;
events = this._events;
if (events === void 0)
return this;
if (events.removeListener === void 0) {
if (arguments.length === 0) {
this._events = /* @__PURE__ */ Object.create(null);
this._eventsCount = 0;
} else if (events[type] !== void 0) {
if (--this._eventsCount === 0)
this._events = /* @__PURE__ */ Object.create(null);
else
delete events[type];
}
return this;
}
if (arguments.length === 0) {
var keys2 = Object.keys(events);
var key;
for (i = 0; i < keys2.length; ++i) {
key = keys2[i];
if (key === "removeListener")
continue;
this.removeAllListeners(key);
}
this.removeAllListeners("removeListener");
this._events = /* @__PURE__ */ Object.create(null);
this._eventsCount = 0;
return this;
}
listeners = events[type];
if (typeof listeners === "function") {
this.removeListener(type, listeners);
} else if (listeners !== void 0) {
for (i = listeners.length - 1; i >= 0; i--) {
this.removeListener(type, listeners[i]);
}
}
return this;
};
function _listeners(target, type, unwrap3) {
var events = target._events;
if (events === void 0)
return [];
var evlistener = events[type];
if (evlistener === void 0)
return [];
if (typeof evlistener === "function")
return unwrap3 ? [evlistener.listener || evlistener] : [evlistener];
return unwrap3 ? unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);
}
EventEmitter2.prototype.listeners = function listeners(type) {
return _listeners(this, type, true);
};
EventEmitter2.prototype.rawListeners = function rawListeners(type) {
return _listeners(this, type, false);
};
EventEmitter2.listenerCount = function(emitter, type) {
if (typeof emitter.listenerCount === "function") {
return emitter.listenerCount(type);
} else {
return listenerCount2.call(emitter, type);
}
};
EventEmitter2.prototype.listenerCount = listenerCount2;
function listenerCount2(type) {
var events = this._events;
if (events !== void 0) {
var evlistener = events[type];
if (typeof evlistener === "function") {
return 1;
} else if (evlistener !== void 0) {
return evlistener.length;
}
}
return 0;
}
EventEmitter2.prototype.eventNames = function eventNames() {
return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];
};
function arrayClone(arr, n) {
var copy = new Array(n);
for (var i = 0; i < n; ++i)
copy[i] = arr[i];
return copy;
}
function spliceOne(list, index) {
for (; index + 1 < list.length; index++)
list[index] = list[index + 1];
list.pop();
}
function unwrapListeners(arr) {
var ret = new Array(arr.length);
for (var i = 0; i < ret.length; ++i) {
ret[i] = arr[i].listener || arr[i];
}
return ret;
}
function once3(emitter, name) {
return new Promise(function(resolve, reject) {
function errorListener(err) {
emitter.removeListener(name, resolver);
reject(err);
}
function resolver() {
if (typeof emitter.removeListener === "function") {
emitter.removeListener("error", errorListener);
}
resolve([].slice.call(arguments));
}
;
eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });
if (name !== "error") {
addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });
}
});
}
function addErrorHandlerIfEventEmitter(emitter, handler, flags) {
if (typeof emitter.on === "function") {
eventTargetAgnosticAddListener(emitter, "error", handler, flags);
}
}
function eventTargetAgnosticAddListener(emitter, name, listener, flags) {
if (typeof emitter.on === "function") {
if (flags.once) {
emitter.once(name, listener);
} else {
emitter.on(name, listener);
}
} else if (typeof emitter.addEventListener === "function") {
emitter.addEventListener(name, function wrapListener(arg) {
if (flags.once) {
emitter.removeEventListener(name, wrapListener);
}
listener(arg);
});
} else {
throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof emitter);
}
}
}
});
// node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.js
var require_getTimezoneOffsetInMilliseconds = __commonJS({
"node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds/index.js"(exports, module) {
var MILLISECONDS_IN_MINUTE = 6e4;
module.exports = function getTimezoneOffsetInMilliseconds(dirtyDate) {
var date = new Date(dirtyDate.getTime());
var baseTimezoneOffset = date.getTimezoneOffset();
date.setSeconds(0, 0);
var millisecondsPartOfTimezoneOffset = date.getTime() % MILLISECONDS_IN_MINUTE;
return baseTimezoneOffset * MILLISECONDS_IN_MINUTE + millisecondsPartOfTimezoneOffset;
};
}
});
// node_modules/date-fns/is_date/index.js
var require_is_date = __commonJS({
"node_modules/date-fns/is_date/index.js"(exports, module) {
function isDate(argument) {
return argument instanceof Date;
}
module.exports = isDate;
}
});
// node_modules/date-fns/parse/index.js
var require_parse = __commonJS({
"node_modules/date-fns/parse/index.js"(exports, module) {
var getTimezoneOffsetInMilliseconds = require_getTimezoneOffsetInMilliseconds();
var isDate = require_is_date();
var MILLISECONDS_IN_HOUR = 36e5;
var MILLISECONDS_IN_MINUTE = 6e4;
var DEFAULT_ADDITIONAL_DIGITS = 2;
var parseTokenDateTimeDelimeter = /[T ]/;
var parseTokenPlainTime = /:/;
var parseTokenYY = /^(\d{2})$/;
var parseTokensYYY = [
/^([+-]\d{2})$/,
/^([+-]\d{3})$/,
/^([+-]\d{4})$/
];
var parseTokenYYYY = /^(\d{4})/;
var parseTokensYYYYY = [
/^([+-]\d{4})/,
/^([+-]\d{5})/,
/^([+-]\d{6})/
];
var parseTokenMM = /^-(\d{2})$/;
var parseTokenDDD = /^-?(\d{3})$/;
var parseTokenMMDD = /^-?(\d{2})-?(\d{2})$/;
var parseTokenWww = /^-?W(\d{2})$/;
var parseTokenWwwD = /^-?W(\d{2})-?(\d{1})$/;
var parseTokenHH = /^(\d{2}([.,]\d*)?)$/;
var parseTokenHHMM = /^(\d{2}):?(\d{2}([.,]\d*)?)$/;
var parseTokenHHMMSS = /^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/;
var parseTokenTimezone = /([Z+-].*)$/;
var parseTokenTimezoneZ = /^(Z)$/;
var parseTokenTimezoneHH = /^([+-])(\d{2})$/;
var parseTokenTimezoneHHMM = /^([+-])(\d{2}):?(\d{2})$/;
function parse(argument, dirtyOptions) {
if (isDate(argument)) {
return new Date(argument.getTime());
} else if (typeof argument !== "string") {
return new Date(argument);
}
var options = dirtyOptions || {};
var additionalDigits = options.additionalDigits;
if (additionalDigits == null) {
additionalDigits = DEFAULT_ADDITIONAL_DIGITS;
} else {
additionalDigits = Number(additionalDigits);
}
var dateStrings = splitDateString(argument);
var parseYearResult = parseYear(dateStrings.date, additionalDigits);
var year = parseYearResult.year;
var restDateString = parseYearResult.restDateString;
var date = parseDate(restDateString, year);
if (date) {
var timestamp = date.getTime();
var time = 0;
var offset;
if (dateStrings.time) {
time = parseTime(dateStrings.time);
}
if (dateStrings.timezone) {
offset = parseTimezone(dateStrings.timezone) * MILLISECONDS_IN_MINUTE;
} else {
var fullTime = timestamp + time;
var fullTimeDate = new Date(fullTime);
offset = getTimezoneOffsetInMilliseconds(fullTimeDate);
var fullTimeDateNextDay = new Date(fullTime);
fullTimeDateNextDay.setDate(fullTimeDate.getDate() + 1);
var offsetDiff = getTimezoneOffsetInMilliseconds(fullTimeDateNextDay) - getTimezoneOffsetInMilliseconds(fullTimeDate);
if (offsetDiff > 0) {
offset += offsetDiff;
}
}
return new Date(timestamp + time + offset);
} else {
return new Date(argument);
}
}
function splitDateString(dateString) {
var dateStrings = {};
var array = dateString.split(parseTokenDateTimeDelimeter);
var timeString;
if (parseTokenPlainTime.test(array[0])) {
dateStrings.date = null;
timeString = array[0];
} else {
dateStrings.date = array[0];
timeString = array[1];
}
if (timeString) {
var token2 = parseTokenTimezone.exec(timeString);
if (token2) {
dateStrings.time = timeString.replace(token2[1], "");
dateStrings.timezone = token2[1];
} else {
dateStrings.time = timeString;
}
}
return dateStrings;
}
function parseYear(dateString, additionalDigits) {
var parseTokenYYY = parseTokensYYY[additionalDigits];
var parseTokenYYYYY = parseTokensYYYYY[additionalDigits];
var token2;
token2 = parseTokenYYYY.exec(dateString) || parseTokenYYYYY.exec(dateString);
if (token2) {
var yearString = token2[1];
return {
year: parseInt(yearString, 10),
restDateString: dateString.slice(yearString.length)
};
}
token2 = parseTokenYY.exec(dateString) || parseTokenYYY.exec(dateString);
if (token2) {
var centuryString = token2[1];
return {
year: parseInt(centuryString, 10) * 100,
restDateString: dateString.slice(centuryString.length)
};
}
return {
year: null
};
}
function parseDate(dateString, year) {
if (year === null) {
return null;
}
var token2;
var date;
var month;
var week;
if (dateString.length === 0) {
date = new Date(0);
date.setUTCFullYear(year);
return date;
}
token2 = parseTokenMM.exec(dateString);
if (token2) {
date = new Date(0);
month = parseInt(token2[1], 10) - 1;
date.setUTCFullYear(year, month);
return date;
}
token2 = parseTokenDDD.exec(dateString);
if (token2) {
date = new Date(0);
var dayOfYear = parseInt(token2[1], 10);
date.setUTCFullYear(year, 0, dayOfYear);
return date;
}
token2 = parseTokenMMDD.exec(dateString);
if (token2) {
date = new Date(0);
month = parseInt(token2[1], 10) - 1;
var day = parseInt(token2[2], 10);
date.setUTCFullYear(year, month, day);
return date;
}
token2 = parseTokenWww.exec(dateString);
if (token2) {
week = parseIn