var __defProp = Object.defineProperty; var __export = (target, all2) => { for (var name2 in all2) __defProp(target, name2, { get: all2[name2], enumerable: true }); }; // node_modules/.pnpm/better-promises@1.0.0/node_modules/better-promises/dist/index.js var $ = Object.defineProperty; var q = (r2, e, t2) => e in r2 ? $(r2, e, { enumerable: true, configurable: true, writable: true, value: t2 }) : r2[e] = t2; var w = (r2, e, t2) => q(r2, typeof e != "symbol" ? e + "" : e, t2); var D = Object.defineProperty; var G = (r2, e, t2) => e in r2 ? D(r2, e, { enumerable: true, configurable: true, writable: true, value: t2 }) : r2[e] = t2; var E = (r2, e, t2) => G(r2, typeof e != "symbol" ? e + "" : e, t2); function I(r2) { return (e) => e instanceof r2; } function L(r2, e) { const t2 = class extends Error { constructor(...d2) { const l = typeof e == "function" ? e(...d2) : typeof e == "string" ? [e] : e || []; super(...l), this.name = r2; } }; E(t2, "is", I(t2)); let c = t2; return Object.defineProperty(c, "name", { value: r2 }), c; } function H(r2, e, t2) { const c = class extends L(r2, t2) { constructor(...l) { super(...l), E(this, "data"), this.data = e(...l); } }; E(c, "is", I(c)); let o2 = c; return Object.defineProperty(o2, "name", { value: r2 }), o2; } var J = class extends L("CancelledError", "Promise was canceled") { }; var K = class extends H( "TimeoutError", (e) => ({ timeout: e }), (e, t2) => [`Timeout reached: ${e}ms`, { cause: t2 }] ) { }; var S = /* @__PURE__ */ Symbol("resolved"); function M(r2) { return { tag: S, value: r2 }; } function C(r2, e) { return r2.reject = e.reject, r2.resolve = e.resolve, r2; } var g = class _g extends Promise { constructor(t2, c) { let o2, d2, l, p2; typeof t2 == "function" ? (l = t2, p2 = c || {}) : p2 = t2 || {}; let u3, a2; const x = () => !!a2, O = () => !!u3; let f3 = {}; const b = [], T = () => { b.forEach((m) => m()), b.splice(0, b.length), f3 = {}; }, y = new AbortController(), k = () => O() || x(); super((m, F) => { const { abortOnResolve: P = true, abortOnReject: A = true } = p2; d2 = (n) => { var h2, s2; k() || (m(n), u3 = [n], (h2 = f3.resolved) == null || h2.forEach((i2) => i2(n)), (s2 = f3.finalized) == null || s2.forEach((i2) => i2({ kind: "resolved", result: n })), T(), P && y.abort(M(n))); }, o2 = (n) => { var h2, s2; k() || (F(n), a2 = [n], (h2 = f3.rejected) == null || h2.forEach((i2) => i2(n)), (s2 = f3.finalized) == null || s2.forEach((i2) => i2({ kind: "rejected", reason: n })), T(), A && y.abort(n)); }; const { abortSignal: j } = p2; if (j) { if (j.aborted) return o2(j.reason); const n = () => { o2(j.reason); }; j.addEventListener("abort", n, true), b.push(() => { j.removeEventListener("abort", n, true); }); } const { timeout: R } = p2; if (R) { const n = setTimeout(() => { o2(new K(R)); }, R); b.push(() => { clearTimeout(n); }); } try { const n = () => { }, h2 = l && l(d2, o2, { abortSignal: y.signal, get isRejected() { return x(); }, get isResolved() { return O(); }, on(s2, i2) { if (u3 || a2) { if (s2 === "finalized") { const v = u3 ? { kind: "resolved", result: u3[0] } : { kind: "rejected", reason: a2[0] }; i2(v); } else s2 === "resolved" && u3 ? i2(u3[0]) : s2 === "rejected" && a2 && i2(a2[0]); return n; } return f3[s2] || (f3[s2] = []), f3[s2].push(i2), () => { const v = f3[s2] || [], z = v.indexOf(i2); z >= 0 && v.splice(z, 1); }; }, get result() { return u3 == null ? void 0 : u3[0]; }, get rejectReason() { return a2 == null ? void 0 : a2[0]; }, throwIfRejected() { if (a2) throw a2[0]; } }); h2 instanceof Promise && h2.catch(o2); } catch (n) { o2(n); } }); w(this, "reject"); w(this, "resolve"); this.reject = o2, this.resolve = d2; } static fn(t2, c) { return new _g(async (o2, d2, l) => { try { o2(await t2(l)); } catch (p2) { d2(p2); } }, c); } static resolve(t2) { return this.fn(() => t2); } /** * @see Promise.reject */ static reject(t2) { return new _g((c, o2) => { o2(t2); }); } /** * Rejects the promise with the `CancelledError` error. */ cancel() { this.reject(new J()); } /** * @see Promise.catch */ catch(t2) { return this.then(void 0, t2); } /** * @see Promise.finally */ finally(t2) { return C(super.finally(t2), this); } /** * @see Promise.then */ then(t2, c) { return C( super.then(t2, c), this ); } }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/function.js var function_exports = {}; __export(function_exports, { SK: () => SK, absurd: () => absurd, apply: () => apply, constFalse: () => constFalse, constNull: () => constNull, constTrue: () => constTrue, constUndefined: () => constUndefined, constVoid: () => constVoid, constant: () => constant, decrement: () => decrement, dual: () => dual, flip: () => flip, flow: () => flow, getBooleanAlgebra: () => getBooleanAlgebra, getEndomorphismMonoid: () => getEndomorphismMonoid, getMonoid: () => getMonoid, getRing: () => getRing, getSemigroup: () => getSemigroup, getSemiring: () => getSemiring, hole: () => hole, identity: () => identity, increment: () => increment, not: () => not, pipe: () => pipe, tuple: () => tuple, tupled: () => tupled, unsafeCoerce: () => unsafeCoerce, untupled: () => untupled }); var __spreadArray = function(to, from, pack) { if (pack || arguments.length === 2) for (var i2 = 0, l = from.length, ar; i2 < l; i2++) { if (ar || !(i2 in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i2); ar[i2] = from[i2]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; var getBooleanAlgebra = function(B) { return function() { return { meet: function(x, y) { return function(a2) { return B.meet(x(a2), y(a2)); }; }, join: function(x, y) { return function(a2) { return B.join(x(a2), y(a2)); }; }, zero: function() { return B.zero; }, one: function() { return B.one; }, implies: function(x, y) { return function(a2) { return B.implies(x(a2), y(a2)); }; }, not: function(x) { return function(a2) { return B.not(x(a2)); }; } }; }; }; var getSemigroup = function(S2) { return function() { return { concat: function(f3, g3) { return function(a2) { return S2.concat(f3(a2), g3(a2)); }; } }; }; }; var getMonoid = function(M2) { var getSemigroupM = getSemigroup(M2); return function() { return { concat: getSemigroupM().concat, empty: function() { return M2.empty; } }; }; }; var getSemiring = function(S2) { return { add: function(f3, g3) { return function(x) { return S2.add(f3(x), g3(x)); }; }, zero: function() { return S2.zero; }, mul: function(f3, g3) { return function(x) { return S2.mul(f3(x), g3(x)); }; }, one: function() { return S2.one; } }; }; var getRing = function(R) { var S2 = getSemiring(R); return { add: S2.add, mul: S2.mul, one: S2.one, zero: S2.zero, sub: function(f3, g3) { return function(x) { return R.sub(f3(x), g3(x)); }; } }; }; var apply = function(a2) { return function(f3) { return f3(a2); }; }; function identity(a2) { return a2; } var unsafeCoerce = identity; function constant(a2) { return function() { return a2; }; } var constTrue = /* @__PURE__ */ constant(true); var constFalse = /* @__PURE__ */ constant(false); var constNull = /* @__PURE__ */ constant(null); var constUndefined = /* @__PURE__ */ constant(void 0); var constVoid = constUndefined; function flip(f3) { return function() { var args = []; for (var _i = 0; _i < arguments.length; _i++) { args[_i] = arguments[_i]; } if (args.length > 1) { return f3(args[1], args[0]); } return function(a2) { return f3(a2)(args[0]); }; }; } function flow(ab2, bc, cd, de, ef, fg, gh, hi, ij) { switch (arguments.length) { case 1: return ab2; case 2: return function() { return bc(ab2.apply(this, arguments)); }; case 3: return function() { return cd(bc(ab2.apply(this, arguments))); }; case 4: return function() { return de(cd(bc(ab2.apply(this, arguments)))); }; case 5: return function() { return ef(de(cd(bc(ab2.apply(this, arguments))))); }; case 6: return function() { return fg(ef(de(cd(bc(ab2.apply(this, arguments)))))); }; case 7: return function() { return gh(fg(ef(de(cd(bc(ab2.apply(this, arguments))))))); }; case 8: return function() { return hi(gh(fg(ef(de(cd(bc(ab2.apply(this, arguments)))))))); }; case 9: return function() { return ij(hi(gh(fg(ef(de(cd(bc(ab2.apply(this, arguments))))))))); }; } return; } function tuple() { var t2 = []; for (var _i = 0; _i < arguments.length; _i++) { t2[_i] = arguments[_i]; } return t2; } function increment(n) { return n + 1; } function decrement(n) { return n - 1; } function absurd(_) { throw new Error("Called `absurd` function which should be uncallable"); } function tupled(f3) { return function(a2) { return f3.apply(void 0, a2); }; } function untupled(f3) { return function() { var a2 = []; for (var _i = 0; _i < arguments.length; _i++) { a2[_i] = arguments[_i]; } return f3(a2); }; } function pipe(a2, ab2, bc, cd, de, ef, fg, gh, hi) { switch (arguments.length) { case 1: return a2; case 2: return ab2(a2); case 3: return bc(ab2(a2)); case 4: return cd(bc(ab2(a2))); case 5: return de(cd(bc(ab2(a2)))); case 6: return ef(de(cd(bc(ab2(a2))))); case 7: return fg(ef(de(cd(bc(ab2(a2)))))); case 8: return gh(fg(ef(de(cd(bc(ab2(a2))))))); case 9: return hi(gh(fg(ef(de(cd(bc(ab2(a2)))))))); default: { var ret = arguments[0]; for (var i2 = 1; i2 < arguments.length; i2++) { ret = arguments[i2](ret); } return ret; } } } var hole = absurd; var SK = function(_, b) { return b; }; function not(predicate) { return function(a2) { return !predicate(a2); }; } var getEndomorphismMonoid = function() { return { concat: function(first2, second) { return flow(first2, second); }, empty: identity }; }; var dual = function(arity, body) { var isDataFirst = typeof arity === "number" ? function(args) { return args.length >= arity; } : arity; return function() { var args = Array.from(arguments); if (isDataFirst(arguments)) { return body.apply(this, args); } return function(self) { return body.apply(void 0, __spreadArray([self], args, false)); }; }; }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/internal.js var isNone = function(fa) { return fa._tag === "None"; }; var none = { _tag: "None" }; var some = function(a2) { return { _tag: "Some", value: a2 }; }; var isLeft = function(ma) { return ma._tag === "Left"; }; var isRight = function(ma) { return ma._tag === "Right"; }; var left = function(e) { return { _tag: "Left", left: e }; }; var right = function(a2) { return { _tag: "Right", right: a2 }; }; var singleton = function(a2) { return [a2]; }; var isNonEmpty = function(as6) { return as6.length > 0; }; var head = function(as6) { return as6[0]; }; var tail = function(as6) { return as6.slice(1); }; var emptyReadonlyArray = []; var emptyRecord = {}; var liftNullable = function(F) { return function(f3, onNullable) { return function() { var a2 = []; for (var _i = 0; _i < arguments.length; _i++) { a2[_i] = arguments[_i]; } var o2 = f3.apply(void 0, a2); return F.fromEither(o2 == null ? left(onNullable.apply(void 0, a2)) : right(o2)); }; }; }; var liftOption = function(F) { return function(f3, onNone) { return function() { var a2 = []; for (var _i = 0; _i < arguments.length; _i++) { a2[_i] = arguments[_i]; } var o2 = f3.apply(void 0, a2); return F.fromEither(isNone(o2) ? left(onNone.apply(void 0, a2)) : right(o2.value)); }; }; }; var flatMapNullable = function(F, M2) { return /* @__PURE__ */ dual(3, function(self, f3, onNullable) { return M2.flatMap(self, liftNullable(F)(f3, onNullable)); }); }; var flatMapOption = function(F, M2) { return /* @__PURE__ */ dual(3, function(self, f3, onNone) { return M2.flatMap(self, liftOption(F)(f3, onNone)); }); }; var flatMapEither = function(F, M2) { return /* @__PURE__ */ dual(2, function(self, f3) { return M2.flatMap(self, function(a2) { return F.fromEither(f3(a2)); }); }); }; var flatMapIO = function(F, M2) { return /* @__PURE__ */ dual(2, function(self, f3) { return M2.flatMap(self, function(a2) { return F.fromIO(f3(a2)); }); }); }; var flatMapTask = function(F, M2) { return /* @__PURE__ */ dual(2, function(self, f3) { return M2.flatMap(self, function(a2) { return F.fromTask(f3(a2)); }); }); }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Apply.js function ap(F, G2) { return function(fa) { return function(fab) { return F.ap(F.map(fab, function(gab) { return function(ga) { return G2.ap(gab, ga); }; }), fa); }; }; } function apFirst(A) { return function(second) { return function(first2) { return A.ap(A.map(first2, function(a2) { return function() { return a2; }; }), second); }; }; } function apSecond(A) { return function(second) { return function(first2) { return A.ap(A.map(first2, function() { return function(b) { return b; }; }), second); }; }; } function apS(F) { return function(name2, fb) { return function(fa) { return F.ap(F.map(fa, function(a2) { return function(b) { var _a3; return Object.assign({}, a2, (_a3 = {}, _a3[name2] = b, _a3)); }; }), fb); }; }; } function getApplySemigroup(F) { return function(S2) { return { concat: function(first2, second) { return F.ap(F.map(first2, function(x) { return function(y) { return S2.concat(x, y); }; }), second); } }; }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Functor.js function map(F, G2) { return function(f3) { return function(fa) { return F.map(fa, function(ga) { return G2.map(ga, f3); }); }; }; } function flap(F) { return function(a2) { return function(fab) { return F.map(fab, function(f3) { return f3(a2); }); }; }; } function bindTo(F) { return function(name2) { return function(fa) { return F.map(fa, function(a2) { var _a3; return _a3 = {}, _a3[name2] = a2, _a3; }); }; }; } function let_(F) { return function(name2, f3) { return function(fa) { return F.map(fa, function(a2) { var _a3; return Object.assign({}, a2, (_a3 = {}, _a3[name2] = f3(a2), _a3)); }); }; }; } function as(F) { return function(self, b) { return F.map(self, function() { return b; }); }; } function asUnit(F) { var asM = as(F); return function(self) { return asM(self, void 0); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Applicative.js function getApplicativeMonoid(F) { var f3 = getApplySemigroup(F); return function(M2) { return { concat: f3(M2).concat, empty: F.of(M2.empty) }; }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Chain.js function tap(M2) { return function(first2, f3) { return M2.chain(first2, function(a2) { return M2.map(f3(a2), function() { return a2; }); }); }; } function bind(M2) { return function(name2, f3) { return function(ma) { return M2.chain(ma, function(a2) { return M2.map(f3(a2), function(b) { var _a3; return Object.assign({}, a2, (_a3 = {}, _a3[name2] = b, _a3)); }); }); }; }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/FromEither.js function fromOption(F) { return function(onNone) { return function(ma) { return F.fromEither(isNone(ma) ? left(onNone()) : right(ma.value)); }; }; } function fromPredicate(F) { return function(predicate, onFalse) { return function(a2) { return F.fromEither(predicate(a2) ? right(a2) : left(onFalse(a2))); }; }; } function fromOptionK(F) { var fromOptionF = fromOption(F); return function(onNone) { var from = fromOptionF(onNone); return function(f3) { return flow(f3, from); }; }; } function chainOptionK(F, M2) { var fromOptionKF = fromOptionK(F); return function(onNone) { var from = fromOptionKF(onNone); return function(f3) { return function(ma) { return M2.chain(ma, from(f3)); }; }; }; } function fromEitherK(F) { return function(f3) { return flow(f3, F.fromEither); }; } function filterOrElse(F, M2) { return function(predicate, onFalse) { return function(ma) { return M2.chain(ma, function(a2) { return F.fromEither(predicate(a2) ? right(a2) : left(onFalse(a2))); }); }; }; } function tapEither(F, M2) { var fromEither3 = fromEitherK(F); var tapM = tap(M2); return function(self, f3) { return tapM(self, fromEither3(f3)); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Separated.js var separated = function(left6, right6) { return { left: left6, right: right6 }; }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Witherable.js function wiltDefault(T, C2) { return function(F) { var traverseF = T.traverse(F); return function(wa, f3) { return F.map(traverseF(wa, f3), C2.separate); }; }; } function witherDefault(T, C2) { return function(F) { var traverseF = T.traverse(F); return function(wa, f3) { return F.map(traverseF(wa, f3), C2.compact); }; }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/ChainRec.js var tailRec = function(startWith, f3) { var ab2 = f3(startWith); while (ab2._tag === "Left") { ab2 = f3(ab2.left); } return ab2.right; }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Predicate.js var not2 = function(predicate) { return function(a2) { return !predicate(a2); }; }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Option.js var none2 = none; var some2 = some; var getLeft = function(ma) { return ma._tag === "Right" ? none2 : some2(ma.left); }; var getRight = function(ma) { return ma._tag === "Left" ? none2 : some2(ma.right); }; var _map = function(fa, f3) { return pipe(fa, map2(f3)); }; var _ap = function(fab, fa) { return pipe(fab, ap2(fa)); }; var URI = "Option"; var map2 = function(f3) { return function(fa) { return isNone2(fa) ? none2 : some2(f3(fa.value)); }; }; var Functor = { URI, map: _map }; var as2 = dual(2, as(Functor)); var asUnit2 = asUnit(Functor); var ap2 = function(fa) { return function(fab) { return isNone2(fab) ? none2 : isNone2(fa) ? none2 : some2(fab.value(fa.value)); }; }; var flatMap = /* @__PURE__ */ dual(2, function(ma, f3) { return isNone2(ma) ? none2 : f3(ma.value); }); var Chain = { URI, map: _map, ap: _ap, chain: flatMap }; var orElse = dual(2, function(self, that) { return isNone2(self) ? that() : self; }); var fromEither = getRight; var FromEither = { URI, fromEither }; var isNone2 = function(fa) { return fa._tag === "None"; }; var tap2 = /* @__PURE__ */ dual(2, tap(Chain)); var tapEither2 = /* @__PURE__ */ dual(2, tapEither(FromEither, Chain)); // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Compactable.js function compact(F, G2) { return function(fga) { return F.map(fga, G2.compact); }; } function separate(F, C2, G2) { var _compact = compact(F, C2); var _map5 = map(F, G2); return function(fge) { return separated(_compact(pipe(fge, _map5(getLeft))), _compact(pipe(fge, _map5(getRight)))); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Either.js var Either_exports = {}; __export(Either_exports, { Alt: () => Alt, ApT: () => ApT, Applicative: () => Applicative, Apply: () => Apply, Bifunctor: () => Bifunctor, Chain: () => Chain2, ChainRec: () => ChainRec, Do: () => Do, Extend: () => Extend, Foldable: () => Foldable, FromEither: () => FromEither2, Functor: () => Functor2, Monad: () => Monad, MonadThrow: () => MonadThrow, Pointed: () => Pointed, Traversable: () => Traversable, URI: () => URI2, alt: () => alt, altW: () => altW, ap: () => ap3, apFirst: () => apFirst2, apFirstW: () => apFirstW, apS: () => apS2, apSW: () => apSW, apSecond: () => apSecond2, apSecondW: () => apSecondW, apW: () => apW, as: () => as3, asUnit: () => asUnit3, bimap: () => bimap, bind: () => bind2, bindTo: () => bindTo2, bindW: () => bindW, chain: () => chain, chainFirst: () => chainFirst, chainFirstW: () => chainFirstW, chainNullableK: () => chainNullableK, chainOptionK: () => chainOptionK2, chainOptionKW: () => chainOptionKW, chainW: () => chainW, duplicate: () => duplicate, either: () => either, elem: () => elem, exists: () => exists, extend: () => extend, filterOrElse: () => filterOrElse2, filterOrElseW: () => filterOrElseW, flap: () => flap2, flatMap: () => flatMap2, flatMapNullable: () => flatMapNullable2, flatMapOption: () => flatMapOption2, flatten: () => flatten, flattenW: () => flattenW, fold: () => fold, foldMap: () => foldMap, foldW: () => foldW, fromNullable: () => fromNullable, fromNullableK: () => fromNullableK, fromOption: () => fromOption2, fromOptionK: () => fromOptionK2, fromPredicate: () => fromPredicate2, getAltValidation: () => getAltValidation, getApplicativeValidation: () => getApplicativeValidation, getApplyMonoid: () => getApplyMonoid, getApplySemigroup: () => getApplySemigroup2, getCompactable: () => getCompactable, getEq: () => getEq, getFilterable: () => getFilterable, getOrElse: () => getOrElse, getOrElseW: () => getOrElseW, getSemigroup: () => getSemigroup2, getShow: () => getShow, getValidation: () => getValidation, getValidationMonoid: () => getValidationMonoid, getValidationSemigroup: () => getValidationSemigroup, getWitherable: () => getWitherable, isLeft: () => isLeft2, isRight: () => isRight2, left: () => left2, let: () => let_2, liftNullable: () => liftNullable2, liftOption: () => liftOption2, map: () => map3, mapLeft: () => mapLeft, match: () => match, matchW: () => matchW, of: () => of, orElse: () => orElse2, orElseW: () => orElseW, parseJSON: () => parseJSON, reduce: () => reduce, reduceRight: () => reduceRight, right: () => right2, sequence: () => sequence, sequenceArray: () => sequenceArray, stringifyJSON: () => stringifyJSON, swap: () => swap, tap: () => tap3, throwError: () => throwError, toError: () => toError, toUnion: () => toUnion, traverse: () => traverse, traverseArray: () => traverseArray, traverseArrayWithIndex: () => traverseArrayWithIndex, traverseReadonlyArrayWithIndex: () => traverseReadonlyArrayWithIndex, traverseReadonlyNonEmptyArrayWithIndex: () => traverseReadonlyNonEmptyArrayWithIndex, tryCatch: () => tryCatch, tryCatchK: () => tryCatchK }); var left2 = left; var right2 = right; var flatMap2 = /* @__PURE__ */ dual(2, function(ma, f3) { return isLeft2(ma) ? ma : f3(ma.right); }); var _map2 = function(fa, f3) { return pipe(fa, map3(f3)); }; var _ap2 = function(fab, fa) { return pipe(fab, ap3(fa)); }; var _reduce = function(fa, b, f3) { return pipe(fa, reduce(b, f3)); }; var _foldMap = function(M2) { return function(fa, f3) { var foldMapM = foldMap(M2); return pipe(fa, foldMapM(f3)); }; }; var _reduceRight = function(fa, b, f3) { return pipe(fa, reduceRight(b, f3)); }; var _traverse = function(F) { var traverseF = traverse(F); return function(ta, f3) { return pipe(ta, traverseF(f3)); }; }; var _bimap = function(fa, f3, g3) { return pipe(fa, bimap(f3, g3)); }; var _mapLeft = function(fa, f3) { return pipe(fa, mapLeft(f3)); }; var _alt = function(fa, that) { return pipe(fa, alt(that)); }; var _extend = function(wa, f3) { return pipe(wa, extend(f3)); }; var _chainRec = function(a2, f3) { return tailRec(f3(a2), function(e) { return isLeft2(e) ? right2(left2(e.left)) : isLeft2(e.right) ? left2(f3(e.right.left)) : right2(right2(e.right.right)); }); }; var URI2 = "Either"; var getShow = function(SE, SA) { return { show: function(ma) { return isLeft2(ma) ? "left(".concat(SE.show(ma.left), ")") : "right(".concat(SA.show(ma.right), ")"); } }; }; var getEq = function(EL, EA) { return { equals: function(x, y) { return x === y || (isLeft2(x) ? isLeft2(y) && EL.equals(x.left, y.left) : isRight2(y) && EA.equals(x.right, y.right)); } }; }; var getSemigroup2 = function(S2) { return { concat: function(x, y) { return isLeft2(y) ? x : isLeft2(x) ? y : right2(S2.concat(x.right, y.right)); } }; }; var getCompactable = function(M2) { var empty = left2(M2.empty); return { URI: URI2, _E: void 0, compact: function(ma) { return isLeft2(ma) ? ma : ma.right._tag === "None" ? empty : right2(ma.right.value); }, separate: function(ma) { return isLeft2(ma) ? separated(ma, ma) : isLeft2(ma.right) ? separated(right2(ma.right.left), empty) : separated(empty, right2(ma.right.right)); } }; }; var getFilterable = function(M2) { var empty = left2(M2.empty); var _a3 = getCompactable(M2), compact2 = _a3.compact, separate2 = _a3.separate; var filter4 = function(ma, predicate) { return isLeft2(ma) ? ma : predicate(ma.right) ? ma : empty; }; var partition3 = function(ma, p2) { return isLeft2(ma) ? separated(ma, ma) : p2(ma.right) ? separated(empty, right2(ma.right)) : separated(right2(ma.right), empty); }; return { URI: URI2, _E: void 0, map: _map2, compact: compact2, separate: separate2, filter: filter4, filterMap: function(ma, f3) { if (isLeft2(ma)) { return ma; } var ob = f3(ma.right); return ob._tag === "None" ? empty : right2(ob.value); }, partition: partition3, partitionMap: function(ma, f3) { if (isLeft2(ma)) { return separated(ma, ma); } var e = f3(ma.right); return isLeft2(e) ? separated(right2(e.left), empty) : separated(empty, right2(e.right)); } }; }; var getWitherable = function(M2) { var F_ = getFilterable(M2); var C2 = getCompactable(M2); return { URI: URI2, _E: void 0, map: _map2, compact: F_.compact, separate: F_.separate, filter: F_.filter, filterMap: F_.filterMap, partition: F_.partition, partitionMap: F_.partitionMap, traverse: _traverse, sequence, reduce: _reduce, foldMap: _foldMap, reduceRight: _reduceRight, wither: witherDefault(Traversable, C2), wilt: wiltDefault(Traversable, C2) }; }; var getApplicativeValidation = function(SE) { return { URI: URI2, _E: void 0, map: _map2, ap: function(fab, fa) { return isLeft2(fab) ? isLeft2(fa) ? left2(SE.concat(fab.left, fa.left)) : fab : isLeft2(fa) ? fa : right2(fab.right(fa.right)); }, of }; }; var getAltValidation = function(SE) { return { URI: URI2, _E: void 0, map: _map2, alt: function(me, that) { if (isRight2(me)) { return me; } var ea = that(); return isLeft2(ea) ? left2(SE.concat(me.left, ea.left)) : ea; } }; }; var map3 = function(f3) { return function(fa) { return isLeft2(fa) ? fa : right2(f3(fa.right)); }; }; var Functor2 = { URI: URI2, map: _map2 }; var as3 = dual(2, as(Functor2)); var asUnit3 = asUnit(Functor2); var of = right2; var Pointed = { URI: URI2, of }; var apW = function(fa) { return function(fab) { return isLeft2(fab) ? fab : isLeft2(fa) ? fa : right2(fab.right(fa.right)); }; }; var ap3 = apW; var Apply = { URI: URI2, map: _map2, ap: _ap2 }; var Applicative = { URI: URI2, map: _map2, ap: _ap2, of }; var Chain2 = { URI: URI2, map: _map2, ap: _ap2, chain: flatMap2 }; var Monad = { URI: URI2, map: _map2, ap: _ap2, of, chain: flatMap2 }; var reduce = function(b, f3) { return function(fa) { return isLeft2(fa) ? b : f3(b, fa.right); }; }; var foldMap = function(M2) { return function(f3) { return function(fa) { return isLeft2(fa) ? M2.empty : f3(fa.right); }; }; }; var reduceRight = function(b, f3) { return function(fa) { return isLeft2(fa) ? b : f3(fa.right, b); }; }; var Foldable = { URI: URI2, reduce: _reduce, foldMap: _foldMap, reduceRight: _reduceRight }; var traverse = function(F) { return function(f3) { return function(ta) { return isLeft2(ta) ? F.of(left2(ta.left)) : F.map(f3(ta.right), right2); }; }; }; var sequence = function(F) { return function(ma) { return isLeft2(ma) ? F.of(left2(ma.left)) : F.map(ma.right, right2); }; }; var Traversable = { URI: URI2, map: _map2, reduce: _reduce, foldMap: _foldMap, reduceRight: _reduceRight, traverse: _traverse, sequence }; var bimap = function(f3, g3) { return function(fa) { return isLeft2(fa) ? left2(f3(fa.left)) : right2(g3(fa.right)); }; }; var mapLeft = function(f3) { return function(fa) { return isLeft2(fa) ? left2(f3(fa.left)) : fa; }; }; var Bifunctor = { URI: URI2, bimap: _bimap, mapLeft: _mapLeft }; var altW = function(that) { return function(fa) { return isLeft2(fa) ? that() : fa; }; }; var alt = altW; var Alt = { URI: URI2, map: _map2, alt: _alt }; var extend = function(f3) { return function(wa) { return isLeft2(wa) ? wa : right2(f3(wa)); }; }; var Extend = { URI: URI2, map: _map2, extend: _extend }; var ChainRec = { URI: URI2, map: _map2, ap: _ap2, chain: flatMap2, chainRec: _chainRec }; var throwError = left2; var MonadThrow = { URI: URI2, map: _map2, ap: _ap2, of, chain: flatMap2, throwError }; var FromEither2 = { URI: URI2, fromEither: identity }; var fromPredicate2 = /* @__PURE__ */ fromPredicate(FromEither2); var fromOption2 = /* @__PURE__ */ fromOption(FromEither2); var isLeft2 = isLeft; var isRight2 = isRight; var matchW = function(onLeft, onRight) { return function(ma) { return isLeft2(ma) ? onLeft(ma.left) : onRight(ma.right); }; }; var foldW = matchW; var match = matchW; var fold = match; var getOrElseW = function(onLeft) { return function(ma) { return isLeft2(ma) ? onLeft(ma.left) : ma.right; }; }; var getOrElse = getOrElseW; var flap2 = /* @__PURE__ */ flap(Functor2); var apFirst2 = /* @__PURE__ */ apFirst(Apply); var apFirstW = apFirst2; var apSecond2 = /* @__PURE__ */ apSecond(Apply); var apSecondW = apSecond2; var tap3 = /* @__PURE__ */ dual(2, tap(Chain2)); var flattenW = /* @__PURE__ */ flatMap2(identity); var flatten = flattenW; var duplicate = /* @__PURE__ */ extend(identity); var fromOptionK2 = /* @__PURE__ */ fromOptionK(FromEither2); var chainOptionK2 = /* @__PURE__ */ chainOptionK(FromEither2, Chain2); var chainOptionKW = chainOptionK2; var _FromEither = { fromEither: FromEither2.fromEither }; var liftNullable2 = /* @__PURE__ */ liftNullable(_FromEither); var liftOption2 = /* @__PURE__ */ liftOption(_FromEither); var _FlatMap = { flatMap: flatMap2 }; var flatMapNullable2 = /* @__PURE__ */ flatMapNullable(_FromEither, _FlatMap); var flatMapOption2 = /* @__PURE__ */ flatMapOption(_FromEither, _FlatMap); var filterOrElse2 = /* @__PURE__ */ filterOrElse(FromEither2, Chain2); var filterOrElseW = filterOrElse2; var swap = function(ma) { return isLeft2(ma) ? right2(ma.left) : left2(ma.right); }; var orElseW = function(onLeft) { return function(ma) { return isLeft2(ma) ? onLeft(ma.left) : ma; }; }; var orElse2 = orElseW; var fromNullable = function(e) { return function(a2) { return a2 == null ? left2(e) : right2(a2); }; }; var tryCatch = function(f3, onThrow) { try { return right2(f3()); } catch (e) { return left2(onThrow(e)); } }; var tryCatchK = function(f3, onThrow) { return function() { var a2 = []; for (var _i = 0; _i < arguments.length; _i++) { a2[_i] = arguments[_i]; } return tryCatch(function() { return f3.apply(void 0, a2); }, onThrow); }; }; var fromNullableK = function(e) { var from = fromNullable(e); return function(f3) { return flow(f3, from); }; }; var chainNullableK = function(e) { var from = fromNullableK(e); return function(f3) { return flatMap2(from(f3)); }; }; var toUnion = /* @__PURE__ */ foldW(identity, identity); function toError(e) { try { return e instanceof Error ? e : new Error(String(e)); } catch (error2) { return new Error(); } } function elem(E2) { return function(a2, ma) { if (ma === void 0) { var elemE_1 = elem(E2); return function(ma2) { return elemE_1(a2, ma2); }; } return isLeft2(ma) ? false : E2.equals(a2, ma.right); }; } var exists = function(predicate) { return function(ma) { return isLeft2(ma) ? false : predicate(ma.right); }; }; var Do = /* @__PURE__ */ of(emptyRecord); var bindTo2 = /* @__PURE__ */ bindTo(Functor2); var let_2 = /* @__PURE__ */ let_(Functor2); var bind2 = /* @__PURE__ */ bind(Chain2); var bindW = bind2; var apS2 = /* @__PURE__ */ apS(Apply); var apSW = apS2; var ApT = /* @__PURE__ */ of(emptyReadonlyArray); var traverseReadonlyNonEmptyArrayWithIndex = function(f3) { return function(as6) { var e = f3(0, head(as6)); if (isLeft2(e)) { return e; } var out = [e.right]; for (var i2 = 1; i2 < as6.length; i2++) { var e_1 = f3(i2, as6[i2]); if (isLeft2(e_1)) { return e_1; } out.push(e_1.right); } return right2(out); }; }; var traverseReadonlyArrayWithIndex = function(f3) { var g3 = traverseReadonlyNonEmptyArrayWithIndex(f3); return function(as6) { return isNonEmpty(as6) ? g3(as6) : ApT; }; }; var traverseArrayWithIndex = traverseReadonlyArrayWithIndex; var traverseArray = function(f3) { return traverseReadonlyArrayWithIndex(function(_, a2) { return f3(a2); }); }; var sequenceArray = /* @__PURE__ */ traverseArray(identity); var chainW = flatMap2; var chain = flatMap2; var chainFirst = tap3; var chainFirstW = tap3; function parseJSON(s2, onError) { return tryCatch(function() { return JSON.parse(s2); }, onError); } var stringifyJSON = function(u3, onError) { return tryCatch(function() { var s2 = JSON.stringify(u3); if (typeof s2 !== "string") { throw new Error("Converting unsupported structure to JSON"); } return s2; }, onError); }; var either = { URI: URI2, map: _map2, of, ap: _ap2, chain: flatMap2, reduce: _reduce, foldMap: _foldMap, reduceRight: _reduceRight, traverse: _traverse, sequence, bimap: _bimap, mapLeft: _mapLeft, alt: _alt, extend: _extend, chainRec: _chainRec, throwError }; var getApplySemigroup2 = /* @__PURE__ */ getApplySemigroup(Apply); var getApplyMonoid = /* @__PURE__ */ getApplicativeMonoid(Applicative); var getValidationSemigroup = function(SE, SA) { return getApplySemigroup(getApplicativeValidation(SE))(SA); }; var getValidationMonoid = function(SE, MA) { return getApplicativeMonoid(getApplicativeValidation(SE))(MA); }; function getValidation(SE) { var ap7 = getApplicativeValidation(SE).ap; var alt4 = getAltValidation(SE).alt; return { URI: URI2, _E: void 0, map: _map2, of, chain: flatMap2, bimap: _bimap, mapLeft: _mapLeft, reduce: _reduce, foldMap: _foldMap, reduceRight: _reduceRight, extend: _extend, traverse: _traverse, sequence, chainRec: _chainRec, throwError, ap: ap7, alt: alt4 }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/EitherT.js function right3(F) { return flow(right2, F.of); } function left3(F) { return flow(left2, F.of); } function rightF(F) { return function(fa) { return F.map(fa, right2); }; } function leftF(F) { return function(fe) { return F.map(fe, left2); }; } function fromNullable2(F) { return function(e) { return flow(fromNullable(e), F.of); }; } function fromNullableK2(F) { var fromNullableF = fromNullable2(F); return function(e) { var fromNullableFE = fromNullableF(e); return function(f3) { return flow(f3, fromNullableFE); }; }; } function chainNullableK2(M2) { var chainM = chain2(M2); var fromNullableKM = fromNullableK2(M2); return function(e) { var fromNullableKMe = fromNullableKM(e); return function(f3) { return chainM(fromNullableKMe(f3)); }; }; } function map4(F) { return map(F, Functor2); } function ap4(F) { return ap(F, Apply); } function chain2(M2) { var flatMapM = flatMap3(M2); return function(f3) { return function(ma) { return flatMapM(ma, f3); }; }; } function flatMap3(M2) { return function(ma, f3) { return M2.chain(ma, function(e) { return isLeft2(e) ? M2.of(e) : f3(e.right); }); }; } function alt2(M2) { return function(second) { return function(first2) { return M2.chain(first2, function(e) { return isLeft2(e) ? second() : M2.of(e); }); }; }; } function mapBoth(F) { return function(self, f3, g3) { return F.map(self, bimap(f3, g3)); }; } function mapError(F) { return function(self, f3) { return F.map(self, mapLeft(f3)); }; } function altValidation(M2, S2) { return function(second) { return function(first2) { return M2.chain(first2, match(function(e1) { return M2.map(second(), mapLeft(function(e2) { return S2.concat(e1, e2); })); }, right3(M2))); }; }; } function match2(F) { return function(onLeft, onRight) { return function(ma) { return F.map(ma, match(onLeft, onRight)); }; }; } function matchE(M2) { return function(onLeft, onRight) { return function(ma) { return M2.chain(ma, match(onLeft, onRight)); }; }; } function getOrElse2(M2) { return function(onLeft) { return function(ma) { return M2.chain(ma, match(onLeft, M2.of)); }; }; } function orElse3(M2) { return function(onLeft) { return function(ma) { return M2.chain(ma, function(e) { return isLeft2(e) ? onLeft(e.left) : M2.of(e); }); }; }; } function tapError(M2) { var orElseM = orElse3(M2); return function(ma, onLeft) { return pipe(ma, orElseM(function(e) { return M2.map(onLeft(e), function(eb) { return isLeft2(eb) ? eb : left2(e); }); })); }; } function orLeft(M2) { return function(onLeft) { return function(ma) { return M2.chain(ma, match(function(e) { return M2.map(onLeft(e), left2); }, function(a2) { return M2.of(right2(a2)); })); }; }; } function swap2(F) { return function(ma) { return F.map(ma, swap); }; } function toUnion2(F) { return function(fa) { return F.map(fa, toUnion); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Filterable.js function filter(F, G2) { return function(predicate) { return function(fga) { return F.map(fga, function(ga) { return G2.filter(ga, predicate); }); }; }; } function filterMap(F, G2) { return function(f3) { return function(fga) { return F.map(fga, function(ga) { return G2.filterMap(ga, f3); }); }; }; } function partition(F, G2) { var _filter = filter(F, G2); return function(predicate) { var left6 = _filter(not2(predicate)); var right6 = _filter(predicate); return function(fgb) { return separated(left6(fgb), right6(fgb)); }; }; } function partitionMap(F, G2) { var _filterMap = filterMap(F, G2); return function(f3) { return function(fga) { return separated(pipe(fga, _filterMap(function(a2) { return getLeft(f3(a2)); })), pipe(fga, _filterMap(function(a2) { return getRight(f3(a2)); }))); }; }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/FromIO.js function fromIOK(F) { return function(f3) { return flow(f3, F.fromIO); }; } function tapIO(F, M2) { var chainFirstM = tap(M2); return function(self, f3) { return chainFirstM(self, flow(f3, F.fromIO)); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/FromTask.js function fromTaskK(F) { return function(f3) { return flow(f3, F.fromTask); }; } function tapTask(F, M2) { var tapM = tap(M2); return function(self, f3) { return tapM(self, flow(f3, F.fromTask)); }; } // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/Task.js var fromIO = function(ma) { return function() { return Promise.resolve().then(ma); }; }; var _map3 = function(fa, f3) { return pipe(fa, map5(f3)); }; var _apPar = function(fab, fa) { return pipe(fab, ap5(fa)); }; var _apSeq = function(fab, fa) { return flatMap4(fab, function(f3) { return pipe(fa, map5(f3)); }); }; var map5 = function(f3) { return function(fa) { return function() { return Promise.resolve().then(fa).then(f3); }; }; }; var ap5 = function(fa) { return function(fab) { return function() { return Promise.all([Promise.resolve().then(fab), Promise.resolve().then(fa)]).then(function(_a3) { var f3 = _a3[0], a2 = _a3[1]; return f3(a2); }); }; }; }; var of2 = function(a2) { return function() { return Promise.resolve(a2); }; }; var flatMap4 = /* @__PURE__ */ dual(2, function(ma, f3) { return function() { return Promise.resolve().then(ma).then(function(a2) { return f3(a2)(); }); }; }); var URI3 = "Task"; var Functor3 = { URI: URI3, map: _map3 }; var as4 = dual(2, as(Functor3)); var asUnit4 = asUnit(Functor3); var Pointed2 = { URI: URI3, of: of2 }; var ApplyPar = { URI: URI3, map: _map3, ap: _apPar }; var ApplicativePar = { URI: URI3, map: _map3, ap: _apPar, of: of2 }; var ApplySeq = { URI: URI3, map: _map3, ap: _apSeq }; var Chain3 = { URI: URI3, map: _map3, ap: _apPar, chain: flatMap4 }; var Monad2 = { URI: URI3, map: _map3, of: of2, ap: _apPar, chain: flatMap4 }; var FromIO = { URI: URI3, fromIO }; var _FlatMap2 = { flatMap: flatMap4 }; var _FromIO = { fromIO: FromIO.fromIO }; var flatMapIO2 = flatMapIO(_FromIO, _FlatMap2); var tap4 = /* @__PURE__ */ dual(2, tap(Chain3)); var tapIO2 = /* @__PURE__ */ dual(2, tapIO(FromIO, Chain3)); var traverseReadonlyNonEmptyArrayWithIndex2 = function(f3) { return function(as6) { return function() { return Promise.all(as6.map(function(a2, i2) { return Promise.resolve().then(function() { return f3(i2, a2)(); }); })); }; }; }; // node_modules/.pnpm/fp-ts@2.16.11/node_modules/fp-ts/es6/TaskEither.js var TaskEither_exports = {}; __export(TaskEither_exports, { Alt: () => Alt2, ApT: () => ApT2, ApplicativePar: () => ApplicativePar2, ApplicativeSeq: () => ApplicativeSeq, ApplyPar: () => ApplyPar2, ApplySeq: () => ApplySeq2, Bifunctor: () => Bifunctor2, Chain: () => Chain4, Do: () => Do2, FromEither: () => FromEither3, FromIO: () => FromIO2, FromTask: () => FromTask, Functor: () => Functor4, Monad: () => Monad3, MonadIO: () => MonadIO, MonadTask: () => MonadTask, MonadThrow: () => MonadThrow2, Pointed: () => Pointed3, URI: () => URI4, alt: () => alt3, altW: () => altW2, ap: () => ap6, apFirst: () => apFirst3, apFirstW: () => apFirstW2, apS: () => apS3, apSW: () => apSW2, apSecond: () => apSecond3, apSecondW: () => apSecondW2, apW: () => apW2, as: () => as5, asUnit: () => asUnit5, bimap: () => bimap2, bind: () => bind3, bindTo: () => bindTo3, bindW: () => bindW2, bracket: () => bracket, bracketW: () => bracketW, chain: () => chain3, chainEitherK: () => chainEitherK2, chainEitherKW: () => chainEitherKW, chainFirst: () => chainFirst2, chainFirstEitherK: () => chainFirstEitherK, chainFirstEitherKW: () => chainFirstEitherKW, chainFirstIOK: () => chainFirstIOK, chainFirstTaskK: () => chainFirstTaskK, chainFirstW: () => chainFirstW2, chainIOEitherK: () => chainIOEitherK, chainIOEitherKW: () => chainIOEitherKW, chainIOK: () => chainIOK, chainNullableK: () => chainNullableK3, chainOptionK: () => chainOptionK3, chainOptionKW: () => chainOptionKW2, chainTaskK: () => chainTaskK, chainTaskOptionK: () => chainTaskOptionK, chainTaskOptionKW: () => chainTaskOptionKW, chainW: () => chainW2, filterOrElse: () => filterOrElse3, filterOrElseW: () => filterOrElseW2, flap: () => flap3, flatMap: () => flatMap5, flatMapEither: () => flatMapEither2, flatMapIO: () => flatMapIO3, flatMapIOEither: () => flatMapIOEither, flatMapNullable: () => flatMapNullable3, flatMapOption: () => flatMapOption3, flatMapTask: () => flatMapTask2, flatMapTaskOption: () => flatMapTaskOption, flatten: () => flatten2, flattenW: () => flattenW2, fold: () => fold2, foldW: () => foldW2, fromEither: () => fromEither2, fromEitherK: () => fromEitherK2, fromIO: () => fromIO2, fromIOEither: () => fromIOEither, fromIOEitherK: () => fromIOEitherK, fromIOK: () => fromIOK2, fromNullable: () => fromNullable3, fromNullableK: () => fromNullableK3, fromOption: () => fromOption3, fromOptionK: () => fromOptionK3, fromPredicate: () => fromPredicate3, fromTask: () => fromTask, fromTaskK: () => fromTaskK2, fromTaskOption: () => fromTaskOption, fromTaskOptionK: () => fromTaskOptionK, getAltTaskValidation: () => getAltTaskValidation, getApplicativeTaskValidation: () => getApplicativeTaskValidation, getApplyMonoid: () => getApplyMonoid2, getApplySemigroup: () => getApplySemigroup3, getCompactable: () => getCompactable2, getFilterable: () => getFilterable2, getOrElse: () => getOrElse3, getOrElseW: () => getOrElseW2, getSemigroup: () => getSemigroup3, getTaskValidation: () => getTaskValidation, left: () => left4, leftIO: () => leftIO, leftTask: () => leftTask, let: () => let_3, liftNullable: () => liftNullable3, liftOption: () => liftOption3, map: () => map6, mapBoth: () => mapBoth2, mapError: () => mapError2, mapLeft: () => mapLeft2, match: () => match3, matchE: () => matchE2, matchEW: () => matchEW, matchW: () => matchW2, of: () => of3, orElse: () => orElse4, orElseFirst: () => orElseFirst, orElseFirstIOK: () => orElseFirstIOK, orElseFirstTaskK: () => orElseFirstTaskK, orElseFirstW: () => orElseFirstW, orElseW: () => orElseW2, orLeft: () => orLeft2, right: () => right4, rightIO: () => rightIO, rightTask: () => rightTask, sequenceArray: () => sequenceArray2, sequenceSeqArray: () => sequenceSeqArray, swap: () => swap3, tap: () => tap5, tapEither: () => tapEither3, tapError: () => tapError2, tapIO: () => tapIO3, tapTask: () => tapTask2, taskEither: () => taskEither, taskEitherSeq: () => taskEitherSeq, taskify: () => taskify, throwError: () => throwError2, toUnion: () => toUnion3, traverseArray: () => traverseArray2, traverseArrayWithIndex: () => traverseArrayWithIndex2, traverseReadonlyArrayWithIndex: () => traverseReadonlyArrayWithIndex2, traverseReadonlyArrayWithIndexSeq: () => traverseReadonlyArrayWithIndexSeq, traverseReadonlyNonEmptyArrayWithIndex: () => traverseReadonlyNonEmptyArrayWithIndex3, traverseReadonlyNonEmptyArrayWithIndexSeq: () => traverseReadonlyNonEmptyArrayWithIndexSeq, traverseSeqArray: () => traverseSeqArray, traverseSeqArrayWithIndex: () => traverseSeqArrayWithIndex, tryCatch: () => tryCatch2, tryCatchK: () => tryCatchK2 }); var __awaiter = function(thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function(resolve) { resolve(value); }); } return new (P || (P = Promise))(function(resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = function(thisArg, body) { var _ = { label: 0, sent: function() { if (t2[0] & 1) throw t2[1]; return t2[1]; }, trys: [], ops: [] }, f3, y, t2, g3; return g3 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g3[Symbol.iterator] = function() { return this; }), g3; function verb(n) { return function(v) { return step([n, v]); }; } function step(op) { if (f3) throw new TypeError("Generator is already executing."); while (g3 && (g3 = 0, op[0] && (_ = 0)), _) try { if (f3 = 1, y && (t2 = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t2 = y["return"]) && t2.call(y), 0) : y.next) && !(t2 = t2.call(y, op[1])).done) return t2; if (y = 0, t2) op = [op[0] & 2, t2.value]; switch (op[0]) { case 0: case 1: t2 = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t2 = _.trys, t2 = t2.length > 0 && t2[t2.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t2 || op[1] > t2[0] && op[1] < t2[3])) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t2[1]) { _.label = t2[1]; t2 = op; break; } if (t2 && _.label < t2[2]) { _.label = t2[2]; _.ops.push(op); break; } if (t2[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f3 = t2 = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; var left4 = /* @__PURE__ */ left3(Pointed2); var right4 = /* @__PURE__ */ right3(Pointed2); var rightTask = /* @__PURE__ */ rightF(Functor3); var leftTask = /* @__PURE__ */ leftF(Functor3); var rightIO = /* @__PURE__ */ flow(fromIO, rightTask); var leftIO = /* @__PURE__ */ flow(fromIO, leftTask); var fromIO2 = rightIO; var fromTask = rightTask; var fromEither2 = of2; var fromIOEither = fromIO; var fromTaskOption = function(onNone) { return map5(fromOption2(onNone)); }; var match3 = /* @__PURE__ */ match2(Functor3); var matchW2 = match3; var matchE2 = /* @__PURE__ */ matchE(Monad2); var fold2 = matchE2; var matchEW = matchE2; var foldW2 = matchEW; var getOrElse3 = /* @__PURE__ */ getOrElse2(Monad2); var getOrElseW2 = getOrElse3; var tryCatch2 = function(f3, onRejected) { return function() { return __awaiter(void 0, void 0, void 0, function() { var reason_1; return __generator(this, function(_a3) { switch (_a3.label) { case 0: _a3.trys.push([0, 2, , 3]); return [4, f3().then(right)]; case 1: return [2, _a3.sent()]; case 2: reason_1 = _a3.sent(); return [2, left(onRejected(reason_1))]; case 3: return [ 2 /*return*/ ]; } }); }); }; }; var tryCatchK2 = function(f3, onRejected) { return function() { var a2 = []; for (var _i = 0; _i < arguments.length; _i++) { a2[_i] = arguments[_i]; } return tryCatch2(function() { return f3.apply(void 0, a2); }, onRejected); }; }; var toUnion3 = /* @__PURE__ */ toUnion2(Functor3); var fromNullable3 = /* @__PURE__ */ fromNullable2(Pointed2); var fromNullableK3 = /* @__PURE__ */ fromNullableK2(Pointed2); var chainNullableK3 = /* @__PURE__ */ chainNullableK2(Monad2); var orElse4 = /* @__PURE__ */ orElse3(Monad2); var orElseW2 = orElse4; var tapError2 = /* @__PURE__ */ dual(2, tapError(Monad2)); var orElseFirstIOK = function(onLeft) { return tapError2(fromIOK2(onLeft)); }; var orElseFirstTaskK = function(onLeft) { return tapError2(fromTaskK2(onLeft)); }; var orLeft2 = /* @__PURE__ */ orLeft(Monad2); var swap3 = /* @__PURE__ */ swap2(Functor3); var fromTaskOptionK = function(onNone) { var from = fromTaskOption(onNone); return function(f3) { return flow(f3, from); }; }; var chainTaskOptionKW = function(onNone) { return function(f3) { return function(ma) { return flatMap5(ma, fromTaskOptionK(onNone)(f3)); }; }; }; var chainTaskOptionK = chainTaskOptionKW; var fromIOEitherK = function(f3) { return flow(f3, fromIOEither); }; var _map4 = function(fa, f3) { return pipe(fa, map6(f3)); }; var _apPar2 = function(fab, fa) { return pipe(fab, ap6(fa)); }; var _apSeq2 = function(fab, fa) { return flatMap5(fab, function(f3) { return pipe(fa, map6(f3)); }); }; var _alt2 = function(fa, that) { return pipe(fa, alt3(that)); }; var map6 = /* @__PURE__ */ map4(Functor3); var mapBoth2 = /* @__PURE__ */ dual(3, mapBoth(Functor3)); var bimap2 = mapBoth2; var mapError2 = /* @__PURE__ */ dual(2, mapError(Functor3)); var mapLeft2 = mapError2; var ap6 = /* @__PURE__ */ ap4(ApplyPar); var apW2 = ap6; var flatMap5 = /* @__PURE__ */ dual(2, flatMap3(Monad2)); var flattenW2 = /* @__PURE__ */ flatMap5(identity); var flatten2 = flattenW2; var alt3 = /* @__PURE__ */ alt2(Monad2); var altW2 = alt3; var of3 = right4; var throwError2 = left4; var URI4 = "TaskEither"; function getApplicativeTaskValidation(A, S2) { var ap7 = ap(A, getApplicativeValidation(S2)); return { URI: URI4, _E: void 0, map: _map4, ap: function(fab, fa) { return pipe(fab, ap7(fa)); }, of: of3 }; } function getAltTaskValidation(S2) { var alt4 = altValidation(Monad2, S2); return { URI: URI4, _E: void 0, map: _map4, alt: function(fa, that) { return pipe(fa, alt4(that)); } }; } var getCompactable2 = function(M2) { var C2 = getCompactable(M2); return { URI: URI4, _E: void 0, compact: compact(Functor3, C2), separate: separate(Functor3, C2, Functor2) }; }; function getFilterable2(M2) { var F = getFilterable(M2); var C2 = getCompactable2(M2); var filter4 = filter(Functor3, F); var filterMap2 = filterMap(Functor3, F); var partition3 = partition(Functor3, F); var partitionMap2 = partitionMap(Functor3, F); return { URI: URI4, _E: void 0, map: _map4, compact: C2.compact, separate: C2.separate, filter: function(fa, predicate) { return pipe(fa, filter4(predicate)); }, filterMap: function(fa, f3) { return pipe(fa, filterMap2(f3)); }, partition: function(fa, predicate) { return pipe(fa, partition3(predicate)); }, partitionMap: function(fa, f3) { return pipe(fa, partitionMap2(f3)); } }; } var Functor4 = { URI: URI4, map: _map4 }; var as5 = dual(2, as(Functor4)); var asUnit5 = asUnit(Functor4); var flap3 = /* @__PURE__ */ flap(Functor4); var Pointed3 = { URI: URI4, of: of3 }; var ApplyPar2 = { URI: URI4, map: _map4, ap: _apPar2 }; var apFirst3 = /* @__PURE__ */ apFirst(ApplyPar2); var apFirstW2 = apFirst3; var apSecond3 = /* @__PURE__ */ apSecond(ApplyPar2); var apSecondW2 = apSecond3; var ApplicativePar2 = { URI: URI4, map: _map4, ap: _apPar2, of: of3 }; var ApplySeq2 = { URI: URI4, map: _map4, ap: _apSeq2 }; var ApplicativeSeq = { URI: URI4, map: _map4, ap: _apSeq2, of: of3 }; var Chain4 = { URI: URI4, map: _map4, ap: _apPar2, chain: flatMap5 }; var Monad3 = { URI: URI4, map: _map4, ap: _apPar2, chain: flatMap5, of: of3 }; var MonadIO = { URI: URI4, map: _map4, ap: _apPar2, chain: flatMap5, of: of3, fromIO: fromIO2 }; var MonadTask = { URI: URI4, map: _map4, ap: _apPar2, chain: flatMap5, of: of3, fromIO: fromIO2, fromTask }; var MonadThrow2 = { URI: URI4, map: _map4, ap: _apPar2, chain: flatMap5, of: of3, throwError: throwError2 }; var FromEither3 = { URI: URI4, fromEither: fromEither2 }; var FromIO2 = { URI: URI4, fromIO: fromIO2 }; var FromTask = { URI: URI4, fromIO: fromIO2, fromTask }; var tap5 = /* @__PURE__ */ dual(2, tap(Chain4)); var tapEither3 = /* @__PURE__ */ dual(2, tapEither(FromEither3, Chain4)); var tapIO3 = /* @__PURE__ */ dual(2, tapIO(FromIO2, Chain4)); var tapTask2 = /* @__PURE__ */ dual(2, tapTask(FromTask, Chain4)); var Bifunctor2 = { URI: URI4, bimap: mapBoth2, mapLeft: mapError2 }; var Alt2 = { URI: URI4, map: _map4, alt: _alt2 }; var fromOption3 = /* @__PURE__ */ fromOption(FromEither3); var fromOptionK3 = /* @__PURE__ */ fromOptionK(FromEither3); var chainOptionK3 = /* @__PURE__ */ chainOptionK(FromEither3, Chain4); var chainOptionKW2 = chainOptionK3; var _FromEither2 = { fromEither: FromEither3.fromEither }; var liftNullable3 = /* @__PURE__ */ liftNullable(_FromEither2); var liftOption3 = /* @__PURE__ */ liftOption(_FromEither2); var _FlatMap3 = { flatMap: flatMap5 }; var _FromIO2 = { fromIO: FromIO2.fromIO }; var _FromTask = { fromTask }; var flatMapNullable3 = /* @__PURE__ */ flatMapNullable(_FromEither2, _FlatMap3); var flatMapOption3 = /* @__PURE__ */ flatMapOption(_FromEither2, _FlatMap3); var flatMapEither2 = /* @__PURE__ */ flatMapEither(_FromEither2, _FlatMap3); var flatMapIO3 = /* @__PURE__ */ flatMapIO(_FromIO2, _FlatMap3); var flatMapTask2 = /* @__PURE__ */ flatMapTask(_FromTask, _FlatMap3); var flatMapIOEither = /* @__PURE__ */ dual(2, function(self, f3) { return flatMap5(self, fromIOEitherK(f3)); }); var flatMapTaskOption = /* @__PURE__ */ dual(3, function(self, f3, onNone) { return flatMap5(self, function(a2) { return fromTaskOption(function() { return onNone(a2); })(f3(a2)); }); }); var chainEitherK2 = flatMapEither2; var chainEitherKW = flatMapEither2; var chainFirstEitherK = tapEither3; var chainFirstEitherKW = tapEither3; var fromPredicate3 = /* @__PURE__ */ fromPredicate(FromEither3); var filterOrElse3 = /* @__PURE__ */ filterOrElse(FromEither3, Chain4); var filterOrElseW2 = filterOrElse3; var fromEitherK2 = /* @__PURE__ */ fromEitherK(FromEither3); var fromIOK2 = /* @__PURE__ */ fromIOK(FromIO2); var chainIOK = flatMapIO3; var chainFirstIOK = tapIO3; var fromTaskK2 = /* @__PURE__ */ fromTaskK(FromTask); var chainTaskK = flatMapTask2; var chainFirstTaskK = tapTask2; var chainIOEitherKW = flatMapIOEither; var chainIOEitherK = flatMapIOEither; function taskify(f3) { return function() { var args = Array.prototype.slice.call(arguments); return function() { return new Promise(function(resolve) { var cbResolver = function(e, r2) { return e != null ? resolve(left(e)) : resolve(right(r2)); }; f3.apply(null, args.concat(cbResolver)); }); }; }; } var bracket = function(acquire, use, release) { return bracketW(acquire, use, release); }; var bracketW = function(acquire, use, release) { return flatMap5(acquire, function(a2) { return flatMap4(use(a2), function(e) { return flatMap5(release(a2, e), function() { return of2(e); }); }); }); }; var Do2 = /* @__PURE__ */ of3(emptyRecord); var bindTo3 = /* @__PURE__ */ bindTo(Functor4); var let_3 = /* @__PURE__ */ let_(Functor4); var bind3 = /* @__PURE__ */ bind(Chain4); var bindW2 = bind3; var apS3 = /* @__PURE__ */ apS(ApplyPar2); var apSW2 = apS3; var ApT2 = /* @__PURE__ */ of3(emptyReadonlyArray); var traverseReadonlyNonEmptyArrayWithIndex3 = function(f3) { return flow(traverseReadonlyNonEmptyArrayWithIndex2(f3), map5(traverseReadonlyNonEmptyArrayWithIndex(SK))); }; var traverseReadonlyArrayWithIndex2 = function(f3) { var g3 = traverseReadonlyNonEmptyArrayWithIndex3(f3); return function(as6) { return isNonEmpty(as6) ? g3(as6) : ApT2; }; }; var traverseReadonlyNonEmptyArrayWithIndexSeq = function(f3) { return function(as6) { return function() { return tail(as6).reduce(function(acc, a2, i2) { return acc.then(function(ebs) { return isLeft(ebs) ? acc : f3(i2 + 1, a2)().then(function(eb) { if (isLeft(eb)) { return eb; } ebs.right.push(eb.right); return ebs; }); }); }, f3(0, head(as6))().then(map3(singleton))); }; }; }; var traverseReadonlyArrayWithIndexSeq = function(f3) { var g3 = traverseReadonlyNonEmptyArrayWithIndexSeq(f3); return function(as6) { return isNonEmpty(as6) ? g3(as6) : ApT2; }; }; var traverseArrayWithIndex2 = traverseReadonlyArrayWithIndex2; var traverseArray2 = function(f3) { return traverseReadonlyArrayWithIndex2(function(_, a2) { return f3(a2); }); }; var sequenceArray2 = /* @__PURE__ */ traverseArray2(identity); var traverseSeqArrayWithIndex = traverseReadonlyArrayWithIndexSeq; var traverseSeqArray = function(f3) { return traverseReadonlyArrayWithIndexSeq(function(_, a2) { return f3(a2); }); }; var sequenceSeqArray = /* @__PURE__ */ traverseSeqArray(identity); var chain3 = flatMap5; var chainW2 = flatMap5; var chainFirst2 = tap5; var chainFirstW2 = tap5; var orElseFirst = tapError2; var orElseFirstW = tapError2; var taskEither = { URI: URI4, bimap: mapBoth2, mapLeft: mapError2, map: _map4, of: of3, ap: _apPar2, chain: flatMap5, alt: _alt2, fromIO: fromIO2, fromTask, throwError: throwError2 }; var taskEitherSeq = { URI: URI4, bimap: mapBoth2, mapLeft: mapError2, map: _map4, of: of3, ap: _apSeq2, chain: flatMap5, alt: _alt2, fromIO: fromIO2, fromTask, throwError: throwError2 }; var getApplySemigroup3 = /* @__PURE__ */ getApplySemigroup(ApplySeq2); var getApplyMonoid2 = /* @__PURE__ */ getApplicativeMonoid(ApplicativeSeq); var getSemigroup3 = function(S2) { return getApplySemigroup(ApplySeq)(getSemigroup2(S2)); }; function getTaskValidation(SE) { var applicativeTaskValidation = getApplicativeTaskValidation(ApplicativePar, SE); var altTaskValidation = getAltTaskValidation(SE); return { URI: URI4, _E: void 0, map: _map4, ap: applicativeTaskValidation.ap, of: of3, chain: flatMap5, bimap: mapBoth2, mapLeft: mapError2, alt: altTaskValidation.alt, fromIO: fromIO2, fromTask, throwError: throwError2 }; } // node_modules/.pnpm/error-kid@2.0.0/node_modules/error-kid/dist/index.js var u = Object.defineProperty; var f = (e, t2, r2) => t2 in e ? u(e, t2, { enumerable: true, configurable: true, writable: true, value: r2 }) : e[t2] = r2; var a = (e, t2, r2) => f(e, typeof t2 != "symbol" ? t2 + "" : t2, r2); function s(e) { return (t2) => t2 instanceof e; } function i(e) { const r2 = class r3 extends Error { constructor(...c) { super(...typeof e.super == "function" ? e.super(...c) : typeof e.super == "string" ? [e.super] : e.super || []), this.name = e.name, Object.setPrototypeOf(this, r3.prototype); } }; a(r2, "is", s(r2)); let t2 = r2; return Object.defineProperty(t2, "name", { value: e.name }), t2; } function d(e) { const r2 = class r3 extends i(e) { constructor(...n) { super(...n); a(this, "data"); this.data = e.data(...n), Object.setPrototypeOf(this, r3.prototype); } }; a(r2, "is", s(r2)); let t2 = r2; return Object.defineProperty(t2, "name", { value: e.name }), t2; } // node_modules/.pnpm/@tma.js+init-data-node@2.0.8_typescript@6.0.3/node_modules/@tma.js/init-data-node/dist/entries/parsing-Cn-1lfce.js var AuthDateInvalidError = class extends d({ name: "AuthDateInvalidError", data: (value) => ({ value }), super: (value) => [`"auth_date" is invalid: ${value || "value is missing"}`] }) { }; var SignatureInvalidError = class extends i({ name: "SignatureInvalidError" }) { }; var HexStringLengthInvalidError = class extends i({ name: "HexStringLengthInvalidError" }) { }; var SignatureMissingError = class extends i({ name: "SignatureMissingError", super: (thirdParty) => [`"${thirdParty ? "signature" : "hash"}" parameter is missing`] }) { }; var ExpiredError = class extends d({ name: "ExpiredError", data: (issuedAt, expiresAt) => ({ issuedAt, expiresAt }), super: (issuedAt, expiresAt, now) => [ `Init data expired. Issued at ${issuedAt.toISOString()}, expires at ${expiresAt.toISOString()}, now is ${now.toISOString()}` ] }) { }; function hexToArrayBuffer(hexString) { if (hexString.length % 2 !== 0) { return Either_exports.left(new HexStringLengthInvalidError()); } const buffer = new ArrayBuffer(hexString.length / 2); const uint8Array = new Uint8Array(buffer); for (let i2 = 0; i2 < hexString.length; i2 += 2) { uint8Array[i2 / 2] = parseInt(hexString.substring(i2, i2 + 2), 16); } return Either_exports.right(buffer); } function arrayBufferToHex(arrBuf) { return new Uint8Array(arrBuf).reduce((acc, byte) => { return acc + byte.toString(16).padStart(2, "0"); }, ""); } function hashToken(token2, createHmac2) { return createHmac2(token2, "WebAppData"); } function signDataFp(async, data, key, createHmac2, options = {}) { const keyHmac = options.tokenHashed ? typeof key === "string" ? hexToArrayBuffer(key) : Either_exports.right(key) : function_exports.pipe( Either_exports.right(hashToken(key, createHmac2)), Either_exports.match(() => null, (v) => { return v instanceof Promise ? TaskEither_exports.tryCatch(() => v, (err) => err) : Either_exports.right(v); }) ); if (async || typeof keyHmac === "function") { return function_exports.pipe( typeof keyHmac === "function" ? keyHmac : TaskEither_exports.fromEither(keyHmac), TaskEither_exports.chainW((v) => TaskEither_exports.tryCatch( () => Promise.resolve(createHmac2(data, v)).then(arrayBufferToHex), (err) => err )) ); } return function_exports.pipe( keyHmac, // In this branch createHmac can't be asynchronous. If it is, keyHmac would be Promise and the // result would be returned in the previous "if" statement. Either_exports.chain((v) => Either_exports.right( arrayBufferToHex(createHmac2(data, v)) )) ); } function validateFp(async, value, token2, signData, options = {}) { let authDate; let authDateString; let hash; const pairs = []; (typeof value === "string" ? new URLSearchParams(value) : value).forEach((value2, key) => { if (key === "hash") { hash = value2; return; } if (key === "auth_date") { authDateString = value2; const authDateNum = parseInt(value2, 10); if (!Number.isNaN(authDateNum)) { authDate = new Date(authDateNum * 1e3); } } pairs.push(`${key}=${value2}`); }); if (!hash) { return (async ? TaskEither_exports.left : Either_exports.left)(new SignatureMissingError(false)); } if (!authDate) { return (async ? TaskEither_exports.left : Either_exports.left)(new AuthDateInvalidError(authDateString)); } const { expiresIn = 86400 } = options; if (expiresIn > 0) { const expiresAtTs = authDate.getTime() + expiresIn * 1e3; const nowTs = Date.now(); if (expiresAtTs < nowTs) { return (async ? TaskEither_exports.left : Either_exports.left)( new ExpiredError(authDate, new Date(expiresAtTs), new Date(nowTs)) ); } } pairs.sort(); const eitherSignature = signData(pairs.join("\n"), token2, options); const onLeft = (error2) => Either_exports.left(error2); const onRight = (signature) => signature === hash ? Either_exports.right(void 0) : Either_exports.left(new SignatureInvalidError()); return typeof eitherSignature === "function" ? function_exports.pipe(eitherSignature, TaskEither_exports.matchW(onLeft, onRight)) : function_exports.pipe(eitherSignature, Either_exports.matchW(onLeft, onRight)); } // node_modules/.pnpm/@tma.js+init-data-node@2.0.8_typescript@6.0.3/node_modules/@tma.js/init-data-node/dist/entries/web.js var createHmac = async (data, key) => { const encoder = new TextEncoder(); return crypto.subtle.sign( "HMAC", await crypto.subtle.importKey( "raw", typeof key === "string" ? encoder.encode(key) : key, { name: "HMAC", hash: "SHA-256" }, false, ["sign", "verify"] ), typeof data === "string" ? encoder.encode(data) : data ); }; function signDataFp2(data, key, options) { return signDataFp(true, data, key, createHmac, options); } function validateFp2(value, token2, options) { return validateFp(true, value, token2, signDataFp2, options); } function validate(value, token2, options) { return g.fn(async () => { await function_exports.pipe( validateFp2(value, token2, options), TaskEither_exports.mapLeft((error2) => { throw error2; }) )(); }); } // node_modules/.pnpm/itty-router@5.0.24/node_modules/itty-router/index.mjs var t = ({ base: e = "", routes: t2 = [], ...o2 } = {}) => ({ __proto__: new Proxy({}, { get: (o3, r2, a2, s2) => (o4, ...n) => t2.push([r2.toUpperCase?.(), RegExp(`^${(s2 = (e + o4).replace(/\/+(\/|$)/g, "$1")).replace(/(\/?\.?):(\w+)\+/g, "($1(?<$2>[^]+))").replace(/(\/?\.?):(\w+)/g, "($1(?<$2>[^$1/]+?))").replace(/\./g, "\\.").replace(/(\/?)\*/g, "($1.*)?")}/*$`), n, s2]) && a2 }), routes: t2, ...o2, async fetch(e2, ...r2) { let a2, s2, n = new URL(e2.url), c = e2.query = { __proto__: null }; for (let [e3, t3] of n.searchParams) c[e3] = c[e3] ? [].concat(c[e3], t3) : t3; e: try { for (let t3 of o2.before || []) if (null != (a2 = await t3(e2.proxy ?? e2, ...r2))) break e; t: for (let [o3, c2, l, i2] of t2) if ((o3 == e2.method || "ALL" == o3) && (s2 = n.pathname.match(c2))) { e2.params = s2.groups || {}, e2.route = i2; for (let t3 of l) if (null != (a2 = await t3(e2.proxy ?? e2, ...r2))) break t; } } catch (t3) { if (!o2.catch) throw t3; a2 = await o2.catch(t3, e2.proxy ?? e2, ...r2); } try { for (let t3 of o2.finally || []) a2 = await t3(a2, e2.proxy ?? e2, ...r2) ?? a2; } catch (t3) { if (!o2.catch) throw t3; a2 = await o2.catch(t3, e2.proxy ?? e2, ...r2); } return a2; } }); var o = (e = "text/plain; charset=utf-8", t2) => (o2, r2 = {}) => { if (void 0 === o2 || o2 instanceof Response) return o2; const a2 = new Response(t2?.(o2) ?? o2, r2.url ? void 0 : r2); return a2.headers.set("content-type", e), a2; }; var r = o("application/json; charset=utf-8", JSON.stringify); var p = o("text/plain; charset=utf-8", String); var f2 = o("text/html"); var u2 = o("image/jpeg"); var h = o("image/png"); var g2 = o("image/webp"); // src/db/index.ts var Dao = class { db; constructor(db) { this.db = db; this.loadArrayFromDB = this.loadArrayFromDB.bind(this); this.addAddress = this.addAddress.bind(this); this.removeAddress = this.removeAddress.bind(this); this.loadMailStatus = this.loadMailStatus.bind(this); this.loadMailCache = this.loadMailCache.bind(this); } async loadArrayFromDB(key) { try { const raw = await this.db.get(key); return loadArrayFromRaw(raw); } catch (e) { console.error(e); } return []; } async addAddress(address, type) { const list = await this.loadArrayFromDB(type); list.unshift(address); await this.db.put(type, JSON.stringify(list)); } async removeAddress(address, type) { const list = await this.loadArrayFromDB(type); const result = list.filter((item) => item !== address); await this.db.put(type, JSON.stringify(result)); } async loadMailStatus(id, guardian) { const defaultStatus = { telegram: false, forward: [] }; if (guardian) { try { const raw = await this.db.get(id); if (raw) { return { ...defaultStatus, ...JSON.parse(raw) }; } } catch (e) { console.error(e); } } return defaultStatus; } async saveMailStatus(id, status, ttl) { await this.db.put(id, JSON.stringify(status), { expirationTtl: ttl }); } async loadMailCache(id) { try { const raw = await this.db.get(id); if (raw) { return JSON.parse(raw); } } catch (e) { console.error(e); } return null; } async saveMailCache(id, cache, ttl) { await this.db.put(id, JSON.stringify(cache), { expirationTtl: ttl }); } async telegramIDToMailID(id) { return await this.db.get(`TelegramID2MailID:${id}`); } async saveTelegramIDToMailID(id, mailID, ttl) { await this.db.put(`TelegramID2MailID:${id}`, mailID, { expirationTtl: ttl }); } }; function loadArrayFromRaw(raw) { if (!raw) { return []; } let list = []; try { list = JSON.parse(raw); } catch { return []; } if (!Array.isArray(list)) { return []; } return list; } // src/telegram/tma.html var tma_default = `