From 9af1854a7e35785a8e86426c4fb1edd465f164a3 Mon Sep 17 00:00:00 2001 From: Elizabeth Hunt Date: Thu, 1 Jan 2026 18:32:49 -0800 Subject: Massive refactor courtesy of 5 dollars of AI tokens --- .ci/ci.cjs | 10262 +++++++++++++++++++++++++++++++---------------------------- 1 file changed, 5467 insertions(+), 4795 deletions(-) (limited to '.ci/ci.cjs') diff --git a/.ci/ci.cjs b/.ci/ci.cjs index 1665c52..eb192f0 100755 --- a/.ci/ci.cjs +++ b/.ci/ci.cjs @@ -1,5147 +1,5819 @@ #!/usr/bin/env node -"use strict"; +'use strict'; 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 __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; + 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( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); +var __toESM = (mod, isNodeMode, target) => ( + (target = mod != null ? __create(__getProtoOf(mod)) : {}), + __copyProps( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule + ? __defProp(target, 'default', { value: mod, enumerable: true }) + : target, + mod + ) +); // node_modules/@emprespresso/pengueno/dist/leftpadesque/prepend.js var require_prepend = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/leftpadesque/prepend.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.prependWith = void 0; - var prependWith = (arr, prep) => Array(arr.length * 2).fill(0).map((_, i) => i % 2 === 0).map((isPrep, i) => isPrep ? prep : arr[Math.floor(i / 2)]); - exports2.prependWith = prependWith; - } + 'node_modules/@emprespresso/pengueno/dist/leftpadesque/prepend.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.prependWith = void 0; + var prependWith = (arr, prep) => + Array(arr.length * 2) + .fill(0) + .map((_, i) => i % 2 === 0) + .map((isPrep, i) => (isPrep ? prep : arr[Math.floor(i / 2)])); + exports2.prependWith = prependWith; + } }); // node_modules/@emprespresso/pengueno/dist/leftpadesque/debug.js var require_debug = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/leftpadesque/debug.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isDebug = exports2.isProd = void 0; - var _hasEnv = true; - var _env = _hasEnv && (process.env.ENVIRONMENT ?? "").toLowerCase().includes("prod") ? "production" : "development"; - var isProd = () => _env === "production"; - exports2.isProd = isProd; - var _debug = !(0, exports2.isProd)() || _hasEnv && ["y", "t"].some((process.env.DEBUG ?? "").toLowerCase().startsWith); - var isDebug = () => _debug; - exports2.isDebug = isDebug; - } + 'node_modules/@emprespresso/pengueno/dist/leftpadesque/debug.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.isDebug = exports2.isProd = void 0; + var _hasEnv = true; + var _env = + _hasEnv && (process.env.ENVIRONMENT ?? '').toLowerCase().includes('prod') + ? 'production' + : 'development'; + var isProd = () => _env === 'production'; + exports2.isProd = isProd; + var _debug = + !(0, exports2.isProd)() || + (_hasEnv && ['y', 't'].some((process.env.DEBUG ?? '').toLowerCase().startsWith)); + var isDebug = () => _debug; + exports2.isDebug = isDebug; + } }); // node_modules/@emprespresso/pengueno/dist/leftpadesque/memoize.js var require_memoize = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/leftpadesque/memoize.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.memoize = void 0; - var memoize = (fn) => { - const cache = /* @__PURE__ */ new Map(); - return (...args) => { - const key = JSON.stringify(args); - if (cache.has(key)) { - return cache.get(key); - } - const res = fn(...args); - cache.set(key, res); - return res; - }; - }; - exports2.memoize = memoize; - } + 'node_modules/@emprespresso/pengueno/dist/leftpadesque/memoize.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.memoize = void 0; + var memoize = (fn) => { + const cache = /* @__PURE__ */ new Map(); + return (...args) => { + const key = JSON.stringify(args); + if (cache.has(key)) { + return cache.get(key); + } + const res = fn(...args); + cache.set(key, res); + return res; + }; + }; + exports2.memoize = memoize; + } }); // node_modules/@emprespresso/pengueno/dist/leftpadesque/index.js var require_leftpadesque = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/leftpadesque/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_prepend(), exports2); - __exportStar(require_debug(), exports2); - __exportStar(require_memoize(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/leftpadesque/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_prepend(), exports2); + __exportStar(require_debug(), exports2); + __exportStar(require_memoize(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/types/misc.js var require_misc = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/misc.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } + 'node_modules/@emprespresso/pengueno/dist/types/misc.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + } }); // node_modules/@emprespresso/pengueno/dist/types/object.js var require_object = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/object.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isObject = void 0; - var isObject3 = (o) => typeof o === "object" && !Array.isArray(o) && !!o; - exports2.isObject = isObject3; - } + 'node_modules/@emprespresso/pengueno/dist/types/object.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.isObject = void 0; + var isObject3 = (o) => typeof o === 'object' && !Array.isArray(o) && !!o; + exports2.isObject = isObject3; + } }); // node_modules/@emprespresso/pengueno/dist/types/tagged.js var require_tagged = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/tagged.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isTagged = void 0; - var index_1 = require_types(); - var isTagged = (o, tag) => !!((0, index_1.isObject)(o) && "_tag" in o && o._tag === tag); - exports2.isTagged = isTagged; - } + 'node_modules/@emprespresso/pengueno/dist/types/tagged.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.isTagged = void 0; + var index_1 = require_types(); + var isTagged = (o, tag) => !!((0, index_1.isObject)(o) && '_tag' in o && o._tag === tag); + exports2.isTagged = isTagged; + } }); // node_modules/@emprespresso/pengueno/dist/types/fn/callable.js var require_callable = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/fn/callable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } + 'node_modules/@emprespresso/pengueno/dist/types/fn/callable.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + } }); // node_modules/@emprespresso/pengueno/dist/types/fn/optional.js var require_optional = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/fn/optional.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Optional = exports2.IOptionalEmptyError = exports2.isOptional = exports2.IOptionalTag = void 0; - var pengueno_1 = require_dist2(); - exports2.IOptionalTag = "IOptional"; - var isOptional = (o) => (0, pengueno_1.isTagged)(o, exports2.IOptionalTag); - exports2.isOptional = isOptional; - var IOptionalEmptyError = class extends Error { - }; - exports2.IOptionalEmptyError = IOptionalEmptyError; - var OSomeTag = "O.Some"; - var ONoneTag = "O.None"; - var isNone = (o) => (0, pengueno_1.isTagged)(o, ONoneTag); - var isSome = (o) => (0, pengueno_1.isTagged)(o, OSomeTag); - var _Tagged = class { - _tag; - constructor(_tag = exports2.IOptionalTag) { - this._tag = _tag; - } - }; - var Optional = class _Optional extends _Tagged { - self; - constructor(self) { - super(); - this.self = self; - } - move(t) { - return this.map(() => t); - } - orSome(supplier) { - if (isNone(this.self)) - return _Optional.from(supplier()); - return this; - } - get() { - if (isNone(this.self)) - throw new IOptionalEmptyError("called get() on None optional"); - return this.self.value; - } - filter(mapper) { - if (isNone(this.self) || !mapper(this.self.value)) - return _Optional.none(); - return _Optional.some(this.self.value); - } - map(mapper) { - if (isNone(this.self)) - return _Optional.none(); - return _Optional.from(mapper(this.self.value)); - } - flatMap(mapper) { - if (isNone(this.self)) - return _Optional.none(); - return _Optional.from(mapper(this.self.value)).orSome(() => _Optional.none()).get(); - } - present() { - return isSome(this.self); - } - *[Symbol.iterator]() { - if (isSome(this.self)) - yield this.self.value; - } - static some(value) { - return new _Optional({ value, _tag: OSomeTag }); - } - static _none = new _Optional({ _tag: ONoneTag }); - static none() { - return this._none; - } - static from(value) { - if (value === null || value === void 0) - return _Optional.none(); - return _Optional.some(value); - } - }; - exports2.Optional = Optional; - } + 'node_modules/@emprespresso/pengueno/dist/types/fn/optional.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.Optional = + exports2.IOptionalEmptyError = + exports2.isOptional = + exports2.IOptionalTag = + void 0; + var pengueno_1 = require_dist2(); + exports2.IOptionalTag = 'IOptional'; + var isOptional = (o) => (0, pengueno_1.isTagged)(o, exports2.IOptionalTag); + exports2.isOptional = isOptional; + var IOptionalEmptyError = class extends Error {}; + exports2.IOptionalEmptyError = IOptionalEmptyError; + var OSomeTag = 'O.Some'; + var ONoneTag = 'O.None'; + var isNone = (o) => (0, pengueno_1.isTagged)(o, ONoneTag); + var isSome = (o) => (0, pengueno_1.isTagged)(o, OSomeTag); + var _Tagged = class { + _tag; + constructor(_tag = exports2.IOptionalTag) { + this._tag = _tag; + } + }; + var Optional = class _Optional extends _Tagged { + self; + constructor(self) { + super(); + this.self = self; + } + move(t) { + return this.map(() => t); + } + orSome(supplier) { + if (isNone(this.self)) return _Optional.from(supplier()); + return this; + } + get() { + if (isNone(this.self)) throw new IOptionalEmptyError('called get() on None optional'); + return this.self.value; + } + filter(mapper) { + if (isNone(this.self) || !mapper(this.self.value)) return _Optional.none(); + return _Optional.some(this.self.value); + } + map(mapper) { + if (isNone(this.self)) return _Optional.none(); + return _Optional.from(mapper(this.self.value)); + } + flatMap(mapper) { + if (isNone(this.self)) return _Optional.none(); + return _Optional + .from(mapper(this.self.value)) + .orSome(() => _Optional.none()) + .get(); + } + present() { + return isSome(this.self); + } + *[Symbol.iterator]() { + if (isSome(this.self)) yield this.self.value; + } + static some(value) { + return new _Optional({ value, _tag: OSomeTag }); + } + static _none = new _Optional({ _tag: ONoneTag }); + static none() { + return this._none; + } + static from(value) { + if (value === null || value === void 0) return _Optional.none(); + return _Optional.some(value); + } + }; + exports2.Optional = Optional; + } }); // node_modules/@emprespresso/pengueno/dist/types/fn/either.js var require_either = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/fn/either.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Either = exports2.isRight = exports2.isLeft = exports2.isEither = exports2.IEitherTag = void 0; - var pengueno_1 = require_dist2(); - exports2.IEitherTag = "IEither"; - var isEither = (o) => (0, pengueno_1.isTagged)(o, exports2.IEitherTag); - exports2.isEither = isEither; - var ELeftTag = "E.Left"; - var isLeft = (o) => (0, pengueno_1.isTagged)(o, ELeftTag); - exports2.isLeft = isLeft; - var ERightTag = "E.Right"; - var isRight = (o) => (0, pengueno_1.isTagged)(o, ERightTag); - exports2.isRight = isRight; - var _Tagged = class { - _tag; - constructor(_tag = exports2.IEitherTag) { - this._tag = _tag; - } - }; - var Either2 = class _Either extends _Tagged { - self; - constructor(self) { - super(); - this.self = self; - } - moveRight(t) { - return this.mapRight(() => t); - } - mapBoth(errBranch, okBranch) { - if ((0, exports2.isLeft)(this.self)) - return _Either.left(errBranch(this.self.err)); - return _Either.right(okBranch(this.self.ok)); - } - mapRight(mapper) { - if ((0, exports2.isRight)(this.self)) - return _Either.right(mapper(this.self.ok)); - return _Either.left(this.self.err); - } - mapLeft(mapper) { - if ((0, exports2.isLeft)(this.self)) - return _Either.left(mapper(this.self.err)); - return _Either.right(this.self.ok); - } - flatMap(mapper) { - if ((0, exports2.isRight)(this.self)) - return mapper(this.self.ok); - return _Either.left(this.self.err); - } - filter(mapper) { - if ((0, exports2.isLeft)(this.self)) - return _Either.left(this.self.err); - return _Either.fromFailable(() => this.right().filter(mapper).get()); - } - async flatMapAsync(mapper) { - if ((0, exports2.isLeft)(this.self)) - return Promise.resolve(_Either.left(this.self.err)); - return await mapper(this.self.ok).catch((err) => _Either.left(err)); - } - fold(leftFolder, rightFolder) { - if ((0, exports2.isLeft)(this.self)) - return leftFolder(this.self.err); - return rightFolder(this.self.ok); - } - left() { - if ((0, exports2.isLeft)(this.self)) - return pengueno_1.Optional.from(this.self.err); - return pengueno_1.Optional.none(); - } - right() { - if ((0, exports2.isRight)(this.self)) - return pengueno_1.Optional.from(this.self.ok); - return pengueno_1.Optional.none(); - } - joinRight(other, mapper) { - return this.flatMap((t) => other.mapRight((o) => mapper(o, t))); - } - joinRightAsync(other, mapper) { - return this.flatMapAsync(async (t) => { - const o = typeof other === "function" ? other() : other; - return await o.then((other2) => other2.mapRight((o2) => mapper(o2, t))); - }); - } - swap() { - if ((0, exports2.isRight)(this.self)) - return _Either.left(this.self.ok); - return _Either.right(this.self.err); - } - static left(e) { - return new _Either({ err: e, _tag: ELeftTag }); - } - static right(t) { - return new _Either({ ok: t, _tag: ERightTag }); - } - static fromFailable(s) { - try { - return _Either.right(s()); - } catch (e) { - return _Either.left(e); - } - } - static async fromFailableAsync(s) { - return await (typeof s === "function" ? s() : s).then((t) => _Either.right(t)).catch((e) => _Either.left(e)); - } - static async retrying(s, attempts = 3, interval = (attempt) => _Either.attemptWait(attempt)) { - let result = _Either.right(new Error("No attempts made")); - for (let attempt = 0; attempt < attempts && result.right().present(); attempt++) { - await interval(attempt); - const currentAttempt = await s().then((s2) => s2.swap()); - result = await result.joinRightAsync(() => Promise.resolve(currentAttempt), (res, _prevError) => res); - } - return result.swap(); - } - static attemptWait(attempt, backoffFactor = 500, jitter = 300, exponent = 1.3) { - if (attempt === 0) { - return Promise.resolve(); - } - const wait = Math.pow(exponent, attempt) * backoffFactor + jitter * Math.random() * Math.pow(exponent, attempt); - return new Promise((res) => setTimeout(res, wait)); - } - }; - exports2.Either = Either2; - } + 'node_modules/@emprespresso/pengueno/dist/types/fn/either.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.Either = + exports2.isRight = + exports2.isLeft = + exports2.isEither = + exports2.IEitherTag = + void 0; + var pengueno_1 = require_dist2(); + exports2.IEitherTag = 'IEither'; + var isEither = (o) => (0, pengueno_1.isTagged)(o, exports2.IEitherTag); + exports2.isEither = isEither; + var ELeftTag = 'E.Left'; + var isLeft = (o) => (0, pengueno_1.isTagged)(o, ELeftTag); + exports2.isLeft = isLeft; + var ERightTag = 'E.Right'; + var isRight = (o) => (0, pengueno_1.isTagged)(o, ERightTag); + exports2.isRight = isRight; + var _Tagged = class { + _tag; + constructor(_tag = exports2.IEitherTag) { + this._tag = _tag; + } + }; + var Either2 = class _Either extends _Tagged { + self; + constructor(self) { + super(); + this.self = self; + } + moveRight(t) { + return this.mapRight(() => t); + } + mapBoth(errBranch, okBranch) { + if ((0, exports2.isLeft)(this.self)) return _Either.left(errBranch(this.self.err)); + return _Either.right(okBranch(this.self.ok)); + } + mapRight(mapper) { + if ((0, exports2.isRight)(this.self)) return _Either.right(mapper(this.self.ok)); + return _Either.left(this.self.err); + } + mapLeft(mapper) { + if ((0, exports2.isLeft)(this.self)) return _Either.left(mapper(this.self.err)); + return _Either.right(this.self.ok); + } + flatMap(mapper) { + if ((0, exports2.isRight)(this.self)) return mapper(this.self.ok); + return _Either.left(this.self.err); + } + filter(mapper) { + if ((0, exports2.isLeft)(this.self)) return _Either.left(this.self.err); + return _Either.fromFailable(() => this.right().filter(mapper).get()); + } + async flatMapAsync(mapper) { + if ((0, exports2.isLeft)(this.self)) return Promise.resolve(_Either.left(this.self.err)); + return await mapper(this.self.ok).catch((err) => _Either.left(err)); + } + fold(leftFolder, rightFolder) { + if ((0, exports2.isLeft)(this.self)) return leftFolder(this.self.err); + return rightFolder(this.self.ok); + } + left() { + if ((0, exports2.isLeft)(this.self)) return pengueno_1.Optional.from(this.self.err); + return pengueno_1.Optional.none(); + } + right() { + if ((0, exports2.isRight)(this.self)) return pengueno_1.Optional.from(this.self.ok); + return pengueno_1.Optional.none(); + } + joinRight(other, mapper) { + return this.flatMap((t) => other.mapRight((o) => mapper(o, t))); + } + joinRightAsync(other, mapper) { + return this.flatMapAsync(async (t) => { + const o = typeof other === 'function' ? other() : other; + return await o.then((other2) => other2.mapRight((o2) => mapper(o2, t))); + }); + } + swap() { + if ((0, exports2.isRight)(this.self)) return _Either.left(this.self.ok); + return _Either.right(this.self.err); + } + static left(e) { + return new _Either({ err: e, _tag: ELeftTag }); + } + static right(t) { + return new _Either({ ok: t, _tag: ERightTag }); + } + static fromFailable(s) { + try { + return _Either.right(s()); + } catch (e) { + return _Either.left(e); + } + } + static async fromFailableAsync(s) { + return await (typeof s === 'function' ? s() : s) + .then((t) => _Either.right(t)) + .catch((e) => _Either.left(e)); + } + static async retrying(s, attempts = 3, interval = (attempt) => _Either.attemptWait(attempt)) { + let result = _Either.right(new Error('No attempts made')); + for (let attempt = 0; attempt < attempts && result.right().present(); attempt++) { + await interval(attempt); + const currentAttempt = await s().then((s2) => s2.swap()); + result = await result.joinRightAsync( + () => Promise.resolve(currentAttempt), + (res, _prevError) => res + ); + } + return result.swap(); + } + static attemptWait(attempt, backoffFactor = 500, jitter = 300, exponent = 1.3) { + if (attempt === 0) { + return Promise.resolve(); + } + const wait = + Math.pow(exponent, attempt) * backoffFactor + + jitter * Math.random() * Math.pow(exponent, attempt); + return new Promise((res) => setTimeout(res, wait)); + } + }; + exports2.Either = Either2; + } }); // node_modules/@emprespresso/pengueno/dist/types/fn/index.js var require_fn = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/fn/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_callable(), exports2); - __exportStar(require_optional(), exports2); - __exportStar(require_either(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/types/fn/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_callable(), exports2); + __exportStar(require_optional(), exports2); + __exportStar(require_either(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/types/collections/cons.js var require_cons = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/collections/cons.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ListZipper = exports2.Cons = void 0; - var pengueno_1 = require_dist2(); - var Cons = class _Cons { - value; - next; - constructor(value, next = pengueno_1.Optional.none()) { - this.value = value; - this.next = next; - } - before(head) { - return new _Cons(this.value, head); - } - replace(_value) { - return new _Cons(_value, this.next); - } - *[Symbol.iterator]() { - for (let cur = pengueno_1.Optional.some(this); cur.present(); cur = cur.flatMap((cur2) => cur2.next)) { - yield cur.get().value; - } - } - static addOnto(items, tail) { - return Array.from(items).reverse().reduce((cons, value) => pengueno_1.Optional.from(new _Cons(value, cons)), tail); - } - static from(items) { - return _Cons.addOnto(items, pengueno_1.Optional.none()); - } - }; - exports2.Cons = Cons; - var ListZipper = class _ListZipper { - reversedPathToHead; - currentHead; - constructor(reversedPathToHead, currentHead) { - this.reversedPathToHead = reversedPathToHead; - this.currentHead = currentHead; - } - read() { - return this.currentHead.map(({ value }) => value); - } - next() { - return this.currentHead.map((head) => new _ListZipper(pengueno_1.Optional.some(head.before(this.reversedPathToHead)), head.next)); - } - previous() { - return this.reversedPathToHead.map((lastVisited) => new _ListZipper(lastVisited.next, pengueno_1.Optional.some(lastVisited.before(this.currentHead)))); - } - prependChunk(values) { - return new _ListZipper(Cons.addOnto(Array.from(values).reverse(), this.reversedPathToHead), this.currentHead); - } - prepend(value) { - return this.prependChunk([value]); - } - remove() { - const newHead = this.currentHead.flatMap((right) => right.next); - return new _ListZipper(this.reversedPathToHead, newHead); - } - replace(value) { - const newHead = this.currentHead.map((right) => right.replace(value)); - return new _ListZipper(this.reversedPathToHead, newHead); - } - *[Symbol.iterator]() { - let head = this; - for (let prev = head.previous(); prev.present(); prev = prev.flatMap((p) => p.previous())) { - head = prev.get(); - } - if (head.currentHead.present()) - yield* head.currentHead.get(); - } - collection() { - return Array.from(this); - } - static from(iterable) { - return new _ListZipper(pengueno_1.Optional.none(), Cons.from(iterable)); - } - }; - exports2.ListZipper = ListZipper; - } + 'node_modules/@emprespresso/pengueno/dist/types/collections/cons.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.ListZipper = exports2.Cons = void 0; + var pengueno_1 = require_dist2(); + var Cons = class _Cons { + value; + next; + constructor(value, next = pengueno_1.Optional.none()) { + this.value = value; + this.next = next; + } + before(head) { + return new _Cons(this.value, head); + } + replace(_value) { + return new _Cons(_value, this.next); + } + *[Symbol.iterator]() { + for ( + let cur = pengueno_1.Optional.some(this); + cur.present(); + cur = cur.flatMap((cur2) => cur2.next) + ) { + yield cur.get().value; + } + } + static addOnto(items, tail) { + return Array.from(items) + .reverse() + .reduce((cons, value) => pengueno_1.Optional.from(new _Cons(value, cons)), tail); + } + static from(items) { + return _Cons.addOnto(items, pengueno_1.Optional.none()); + } + }; + exports2.Cons = Cons; + var ListZipper = class _ListZipper { + reversedPathToHead; + currentHead; + constructor(reversedPathToHead, currentHead) { + this.reversedPathToHead = reversedPathToHead; + this.currentHead = currentHead; + } + read() { + return this.currentHead.map(({ value }) => value); + } + next() { + return this.currentHead.map( + (head) => + new _ListZipper( + pengueno_1.Optional.some(head.before(this.reversedPathToHead)), + head.next + ) + ); + } + previous() { + return this.reversedPathToHead.map( + (lastVisited) => + new _ListZipper( + lastVisited.next, + pengueno_1.Optional.some(lastVisited.before(this.currentHead)) + ) + ); + } + prependChunk(values) { + return new _ListZipper( + Cons.addOnto(Array.from(values).reverse(), this.reversedPathToHead), + this.currentHead + ); + } + prepend(value) { + return this.prependChunk([value]); + } + remove() { + const newHead = this.currentHead.flatMap((right) => right.next); + return new _ListZipper(this.reversedPathToHead, newHead); + } + replace(value) { + const newHead = this.currentHead.map((right) => right.replace(value)); + return new _ListZipper(this.reversedPathToHead, newHead); + } + *[Symbol.iterator]() { + let head = this; + for (let prev = head.previous(); prev.present(); prev = prev.flatMap((p) => p.previous())) { + head = prev.get(); + } + if (head.currentHead.present()) yield* head.currentHead.get(); + } + collection() { + return Array.from(this); + } + static from(iterable) { + return new _ListZipper(pengueno_1.Optional.none(), Cons.from(iterable)); + } + }; + exports2.ListZipper = ListZipper; + } }); // node_modules/@emprespresso/pengueno/dist/types/collections/jsonds.js var require_jsonds = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/collections/jsonds.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.JSONHashMap = exports2.JSONSet = void 0; - var JSONSet = class { - items; - constructor(items = /* @__PURE__ */ new Set()) { - this.items = items; - } - add(item) { - const itemJson = JSON.stringify(item, Object.keys(item).sort()); - this.items.add(itemJson); - } - has(item) { - const itemJson = JSON.stringify(item, Object.keys(item).sort()); - return this.items.has(itemJson); - } - delete(item) { - const itemJson = JSON.stringify(item, Object.keys(item).sort()); - return this.items.delete(itemJson); - } - clear() { - this.items.clear(); - } - size() { - return this.items.size; - } - }; - exports2.JSONSet = JSONSet; - var JSONHashMap = class { - map; - constructor(map = /* @__PURE__ */ new Map()) { - this.map = map; - } - set(key, value) { - const keyJson = JSON.stringify(key, Object.keys(key).sort()); - this.map.set(keyJson, value); - } - get(key) { - const keyJson = JSON.stringify(key, Object.keys(key).sort()); - return this.map.get(keyJson); - } - has(key) { - const keyJson = JSON.stringify(key, Object.keys(key).sort()); - return this.map.has(keyJson); - } - keys() { - return Array.from(this.map.keys()).map((x) => JSON.parse(x)); - } - delete(key) { - const keyJson = JSON.stringify(key, Object.keys(key).sort()); - return this.map.delete(keyJson); - } - clear() { - this.map.clear(); - } - size() { - return this.map.size; - } - }; - exports2.JSONHashMap = JSONHashMap; - } + 'node_modules/@emprespresso/pengueno/dist/types/collections/jsonds.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.JSONHashMap = exports2.JSONSet = void 0; + var JSONSet = class { + items; + constructor(items = /* @__PURE__ */ new Set()) { + this.items = items; + } + add(item) { + const itemJson = JSON.stringify(item, Object.keys(item).sort()); + this.items.add(itemJson); + } + has(item) { + const itemJson = JSON.stringify(item, Object.keys(item).sort()); + return this.items.has(itemJson); + } + delete(item) { + const itemJson = JSON.stringify(item, Object.keys(item).sort()); + return this.items.delete(itemJson); + } + clear() { + this.items.clear(); + } + size() { + return this.items.size; + } + }; + exports2.JSONSet = JSONSet; + var JSONHashMap = class { + map; + constructor(map = /* @__PURE__ */ new Map()) { + this.map = map; + } + set(key, value) { + const keyJson = JSON.stringify(key, Object.keys(key).sort()); + this.map.set(keyJson, value); + } + get(key) { + const keyJson = JSON.stringify(key, Object.keys(key).sort()); + return this.map.get(keyJson); + } + has(key) { + const keyJson = JSON.stringify(key, Object.keys(key).sort()); + return this.map.has(keyJson); + } + keys() { + return Array.from(this.map.keys()).map((x) => JSON.parse(x)); + } + delete(key) { + const keyJson = JSON.stringify(key, Object.keys(key).sort()); + return this.map.delete(keyJson); + } + clear() { + this.map.clear(); + } + size() { + return this.map.size; + } + }; + exports2.JSONHashMap = JSONHashMap; + } }); // node_modules/@emprespresso/pengueno/dist/types/collections/index.js var require_collections = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/collections/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_cons(), exports2); - __exportStar(require_jsonds(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/types/collections/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_cons(), exports2); + __exportStar(require_jsonds(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/types/index.js var require_types = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/types/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_misc(), exports2); - __exportStar(require_object(), exports2); - __exportStar(require_tagged(), exports2); - __exportStar(require_fn(), exports2); - __exportStar(require_collections(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/types/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_misc(), exports2); + __exportStar(require_object(), exports2); + __exportStar(require_tagged(), exports2); + __exportStar(require_fn(), exports2); + __exportStar(require_collections(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/trace/itrace.js var require_itrace = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/itrace.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.TraceableImpl = void 0; - var TraceableImpl = class _TraceableImpl { - item; - trace; - constructor(item, trace) { - this.item = item; - this.trace = trace; - } - map(mapper) { - const result = mapper(this); - return new _TraceableImpl(result, this.trace); - } - coExtend(mapper) { - const results = mapper(this); - return Array.from(results).map((result) => this.move(result)); - } - flatMap(mapper) { - return mapper(this); - } - flatMapAsync(mapper) { - return new _TraceableImpl(mapper(this).then((t) => t.get()), this.trace); - } - traceScope(mapper) { - return new _TraceableImpl(this.get(), this.trace.traceScope(mapper(this))); - } - peek(peek) { - peek(this); - return this; - } - move(t) { - return this.map(() => t); - } - bimap(mapper) { - const { item, trace: _trace } = mapper(this); - return this.move(item).traceScope(() => _trace); - } - get() { - return this.item; - } - }; - exports2.TraceableImpl = TraceableImpl; - } + 'node_modules/@emprespresso/pengueno/dist/trace/itrace.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.TraceableImpl = void 0; + var TraceableImpl = class _TraceableImpl { + item; + trace; + constructor(item, trace) { + this.item = item; + this.trace = trace; + } + map(mapper) { + const result = mapper(this); + return new _TraceableImpl(result, this.trace); + } + coExtend(mapper) { + const results = mapper(this); + return Array.from(results).map((result) => this.move(result)); + } + flatMap(mapper) { + return mapper(this); + } + flatMapAsync(mapper) { + return new _TraceableImpl( + mapper(this).then((t) => t.get()), + this.trace + ); + } + traceScope(mapper) { + return new _TraceableImpl(this.get(), this.trace.traceScope(mapper(this))); + } + peek(peek) { + peek(this); + return this; + } + move(t) { + return this.map(() => t); + } + bimap(mapper) { + const { item, trace: _trace } = mapper(this); + return this.move(item).traceScope(() => _trace); + } + get() { + return this.item; + } + }; + exports2.TraceableImpl = TraceableImpl; + } }); // node_modules/@emprespresso/pengueno/dist/trace/metric/emittable.js var require_emittable = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/metric/emittable.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.EmittableMetric = void 0; - var index_1 = require_metric2(); - var EmittableMetric = class { - name; - unit; - constructor(name, unit) { - this.name = name; - this.unit = unit; - } - withValue(value) { - return { - name: this.name, - unit: this.unit, - emissionTimestamp: Date.now(), - value, - _tag: index_1.MetricValueTag - }; - } - }; - exports2.EmittableMetric = EmittableMetric; - } + 'node_modules/@emprespresso/pengueno/dist/trace/metric/emittable.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.EmittableMetric = void 0; + var index_1 = require_metric2(); + var EmittableMetric = class { + name; + unit; + constructor(name, unit) { + this.name = name; + this.unit = unit; + } + withValue(value) { + return { + name: this.name, + unit: this.unit, + emissionTimestamp: Date.now(), + value, + _tag: index_1.MetricValueTag + }; + } + }; + exports2.EmittableMetric = EmittableMetric; + } }); // node_modules/@emprespresso/pengueno/dist/trace/metric/metric.js var require_metric = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/metric/metric.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ResultMetric = exports2.Metric = void 0; - var index_1 = require_metric2(); - var _Tagged = class { - _tag; - constructor(_tag = index_1.IMetricTag) { - this._tag = _tag; - } - }; - var Metric = class _Metric extends _Tagged { - name; - parent; - count; - time; - static DELIM = "."; - constructor(name, parent = void 0, count = new index_1.EmittableMetric(_Metric.join(name, "count"), index_1.Unit.COUNT), time = new index_1.EmittableMetric(_Metric.join(name, "time"), index_1.Unit.MILLISECONDS)) { - super(); - this.name = name; - this.parent = parent; - this.count = count; - this.time = time; - } - child(_name) { - const childName = _Metric.join(this.name, _name); - return new _Metric(childName, this); - } - asResult() { - return ResultMetric.from(this); - } - static join(...name) { - return name.join(_Metric.DELIM); - } - static fromName(name) { - return new _Metric(name); - } - }; - exports2.Metric = Metric; - var ResultMetric = class _ResultMetric extends Metric { - name; - parent; - failure; - success; - warn; - constructor(name, parent = void 0, failure, success, warn) { - super(name, parent); - this.name = name; - this.parent = parent; - this.failure = failure; - this.success = success; - this.warn = warn; - } - static from(metric) { - const failure = metric.child("failure"); - const success = metric.child("success"); - const warn = metric.child("warn"); - return new _ResultMetric(metric.name, metric.parent, failure, success, warn); - } - }; - exports2.ResultMetric = ResultMetric; - } + 'node_modules/@emprespresso/pengueno/dist/trace/metric/metric.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.ResultMetric = exports2.Metric = void 0; + var index_1 = require_metric2(); + var _Tagged = class { + _tag; + constructor(_tag = index_1.IMetricTag) { + this._tag = _tag; + } + }; + var Metric = class _Metric extends _Tagged { + name; + parent; + count; + time; + static DELIM = '.'; + constructor( + name, + parent = void 0, + count = new index_1.EmittableMetric(_Metric.join(name, 'count'), index_1.Unit.COUNT), + time = new index_1.EmittableMetric(_Metric.join(name, 'time'), index_1.Unit.MILLISECONDS) + ) { + super(); + this.name = name; + this.parent = parent; + this.count = count; + this.time = time; + } + child(_name) { + const childName = _Metric.join(this.name, _name); + return new _Metric(childName, this); + } + asResult() { + return ResultMetric.from(this); + } + static join(...name) { + return name.join(_Metric.DELIM); + } + static fromName(name) { + return new _Metric(name); + } + }; + exports2.Metric = Metric; + var ResultMetric = class _ResultMetric extends Metric { + name; + parent; + failure; + success; + warn; + constructor(name, parent = void 0, failure, success, warn) { + super(name, parent); + this.name = name; + this.parent = parent; + this.failure = failure; + this.success = success; + this.warn = warn; + } + static from(metric) { + const failure = metric.child('failure'); + const success = metric.child('success'); + const warn = metric.child('warn'); + return new _ResultMetric(metric.name, metric.parent, failure, success, warn); + } + }; + exports2.ResultMetric = ResultMetric; + } }); // node_modules/@emprespresso/pengueno/dist/trace/metric/trace.js var require_trace = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/metric/trace.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.MetricsTrace = exports2.isMetricsTraceSupplier = void 0; - var pengueno_1 = require_dist2(); - var isMetricsTraceSupplier = (t) => (0, pengueno_1.isMetricValue)(t) || (0, pengueno_1.isIMetric)(t) || Array.isArray(t) && t.every((_m) => (0, pengueno_1.isMetricValue)(_m) || (0, pengueno_1.isIMetric)(_m)); - exports2.isMetricsTraceSupplier = isMetricsTraceSupplier; - var MetricsTrace = class _MetricsTrace { - metricConsumer; - activeTraces; - completedTraces; - constructor(metricConsumer, activeTraces = /* @__PURE__ */ new Map(), completedTraces = /* @__PURE__ */ new Set()) { - this.metricConsumer = metricConsumer; - this.activeTraces = activeTraces; - this.completedTraces = completedTraces; - } - traceScope(trace) { - const now = Date.now(); - const metricsToTrace = (Array.isArray(trace) ? trace : [trace]).filter(pengueno_1.isIMetric); - const initialTraces = new Map(metricsToTrace.map((metric) => [metric.name, now])); - return new _MetricsTrace(this.metricConsumer, initialTraces, this.completedTraces); - } - trace(metrics) { - if (!metrics || typeof metrics === "string") { - return this; - } - const now = Date.now(); - const allMetrics = Array.isArray(metrics) ? metrics : [metrics]; - const valuesToEmit = allMetrics.filter(pengueno_1.isMetricValue); - const traceableMetrics = allMetrics.filter(pengueno_1.isIMetric); - const metricsToStart = traceableMetrics.filter((m) => !this.activeTraces.has(m.name)); - const metricsToEnd = traceableMetrics.filter((m) => this.activeTraces.has(m.name) && !this.completedTraces.has(m.name)); - const endedMetricValues = metricsToEnd.flatMap((metric) => [ - metric.count.withValue(1), - metric.time.withValue(now - this.activeTraces.get(metric.name)) - ]); - const parentBasedMetrics = metricsToStart.filter((metric) => { - const parent = metric.parent; - return parent && this.activeTraces.has(parent.name); - }); - const parentBasedValues = parentBasedMetrics.flatMap((metric) => { - const parentStart = this.activeTraces.get(metric.parent.name); - return [metric.count.withValue(1), metric.time.withValue(now - parentStart)]; - }); - const allMetricsToEmit = [...valuesToEmit, ...endedMetricValues, ...parentBasedValues]; - if (allMetricsToEmit.length > 0) { - this.metricConsumer(allMetricsToEmit); - } - const nextActiveTraces = new Map([ - ...this.activeTraces, - ...metricsToStart.map((m) => [m.name, now]) - ]); - const nextCompletedTraces = /* @__PURE__ */ new Set([ - ...this.completedTraces, - ...metricsToEnd.map((m) => m.name), - ...parentBasedMetrics.map((m) => m.name) - ]); - return new _MetricsTrace(this.metricConsumer, nextActiveTraces, nextCompletedTraces); - } - }; - exports2.MetricsTrace = MetricsTrace; - } + 'node_modules/@emprespresso/pengueno/dist/trace/metric/trace.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.MetricsTrace = exports2.isMetricsTraceSupplier = void 0; + var pengueno_1 = require_dist2(); + var isMetricsTraceSupplier = (t) => + (0, pengueno_1.isMetricValue)(t) || + (0, pengueno_1.isIMetric)(t) || + (Array.isArray(t) && + t.every((_m) => (0, pengueno_1.isMetricValue)(_m) || (0, pengueno_1.isIMetric)(_m))); + exports2.isMetricsTraceSupplier = isMetricsTraceSupplier; + var MetricsTrace = class _MetricsTrace { + metricConsumer; + activeTraces; + completedTraces; + constructor( + metricConsumer, + activeTraces = /* @__PURE__ */ new Map(), + completedTraces = /* @__PURE__ */ new Set() + ) { + this.metricConsumer = metricConsumer; + this.activeTraces = activeTraces; + this.completedTraces = completedTraces; + } + traceScope(trace) { + const now = Date.now(); + const metricsToTrace = (Array.isArray(trace) ? trace : [trace]).filter( + pengueno_1.isIMetric + ); + const initialTraces = new Map(metricsToTrace.map((metric) => [metric.name, now])); + return new _MetricsTrace(this.metricConsumer, initialTraces, this.completedTraces); + } + trace(metrics) { + if (!metrics || typeof metrics === 'string') { + return this; + } + const now = Date.now(); + const allMetrics = Array.isArray(metrics) ? metrics : [metrics]; + const valuesToEmit = allMetrics.filter(pengueno_1.isMetricValue); + const traceableMetrics = allMetrics.filter(pengueno_1.isIMetric); + const metricsToStart = traceableMetrics.filter((m) => !this.activeTraces.has(m.name)); + const metricsToEnd = traceableMetrics.filter( + (m) => this.activeTraces.has(m.name) && !this.completedTraces.has(m.name) + ); + const endedMetricValues = metricsToEnd.flatMap((metric) => [ + metric.count.withValue(1), + metric.time.withValue(now - this.activeTraces.get(metric.name)) + ]); + const parentBasedMetrics = metricsToStart.filter((metric) => { + const parent = metric.parent; + return parent && this.activeTraces.has(parent.name); + }); + const parentBasedValues = parentBasedMetrics.flatMap((metric) => { + const parentStart = this.activeTraces.get(metric.parent.name); + return [metric.count.withValue(1), metric.time.withValue(now - parentStart)]; + }); + const allMetricsToEmit = [...valuesToEmit, ...endedMetricValues, ...parentBasedValues]; + if (allMetricsToEmit.length > 0) { + this.metricConsumer(allMetricsToEmit); + } + const nextActiveTraces = new Map([ + ...this.activeTraces, + ...metricsToStart.map((m) => [m.name, now]) + ]); + const nextCompletedTraces = /* @__PURE__ */ new Set([ + ...this.completedTraces, + ...metricsToEnd.map((m) => m.name), + ...parentBasedMetrics.map((m) => m.name) + ]); + return new _MetricsTrace(this.metricConsumer, nextActiveTraces, nextCompletedTraces); + } + }; + exports2.MetricsTrace = MetricsTrace; + } }); // node_modules/@emprespresso/pengueno/dist/trace/metric/index.js var require_metric2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/metric/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isIMetric = exports2.IMetricTag = exports2.isMetricValue = exports2.MetricValueTag = exports2.Unit = void 0; - var pengueno_1 = require_dist2(); - var Unit; - (function(Unit2) { - Unit2["COUNT"] = "COUNT"; - Unit2["MILLISECONDS"] = "MILLISECONDS"; - })(Unit || (exports2.Unit = Unit = {})); - exports2.MetricValueTag = "MetricValue"; - var isMetricValue = (t) => (0, pengueno_1.isTagged)(t, exports2.MetricValueTag); - exports2.isMetricValue = isMetricValue; - exports2.IMetricTag = "IMetric"; - var isIMetric = (t) => (0, pengueno_1.isTagged)(t, exports2.IMetricTag); - exports2.isIMetric = isIMetric; - __exportStar(require_emittable(), exports2); - __exportStar(require_metric(), exports2); - __exportStar(require_trace(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/trace/metric/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.isIMetric = + exports2.IMetricTag = + exports2.isMetricValue = + exports2.MetricValueTag = + exports2.Unit = + void 0; + var pengueno_1 = require_dist2(); + var Unit; + (function (Unit2) { + Unit2['COUNT'] = 'COUNT'; + Unit2['MILLISECONDS'] = 'MILLISECONDS'; + })(Unit || (exports2.Unit = Unit = {})); + exports2.MetricValueTag = 'MetricValue'; + var isMetricValue = (t) => (0, pengueno_1.isTagged)(t, exports2.MetricValueTag); + exports2.isMetricValue = isMetricValue; + exports2.IMetricTag = 'IMetric'; + var isIMetric = (t) => (0, pengueno_1.isTagged)(t, exports2.IMetricTag); + exports2.isIMetric = isIMetric; + __exportStar(require_emittable(), exports2); + __exportStar(require_metric(), exports2); + __exportStar(require_trace(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/ansi.js var require_ansi = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/ansi.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.ANSI = void 0; - exports2.ANSI = { - RESET: "\x1B[0m", - BOLD: "\x1B[1m", - DIM: "\x1B[2m", - RED: "\x1B[31m", - GREEN: "\x1B[32m", - YELLOW: "\x1B[33m", - BLUE: "\x1B[34m", - MAGENTA: "\x1B[35m", - CYAN: "\x1B[36m", - WHITE: "\x1B[37m", - BRIGHT_RED: "\x1B[91m", - BRIGHT_YELLOW: "\x1B[93m", - GRAY: "\x1B[90m" - }; - } + 'node_modules/@emprespresso/pengueno/dist/trace/log/ansi.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.ANSI = void 0; + exports2.ANSI = { + RESET: '\x1B[0m', + BOLD: '\x1B[1m', + DIM: '\x1B[2m', + RED: '\x1B[31m', + GREEN: '\x1B[32m', + YELLOW: '\x1B[33m', + BLUE: '\x1B[34m', + MAGENTA: '\x1B[35m', + CYAN: '\x1B[36m', + WHITE: '\x1B[37m', + BRIGHT_RED: '\x1B[91m', + BRIGHT_YELLOW: '\x1B[93m', + GRAY: '\x1B[90m' + }; + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/level.js var require_level = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/level.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.isLogLevel = exports2.logLevelOrder = exports2.LogLevel = void 0; - var LogLevel; - (function(LogLevel2) { - LogLevel2["UNKNOWN"] = "UNKNOWN"; - LogLevel2["INFO"] = "INFO"; - LogLevel2["WARN"] = "WARN"; - LogLevel2["DEBUG"] = "DEBUG"; - LogLevel2["ERROR"] = "ERROR"; - LogLevel2["SYS"] = "SYS"; - })(LogLevel || (exports2.LogLevel = LogLevel = {})); - exports2.logLevelOrder = [ - LogLevel.DEBUG, - LogLevel.INFO, - LogLevel.WARN, - LogLevel.ERROR, - LogLevel.SYS - ]; - var isLogLevel = (l) => typeof l === "string" && exports2.logLevelOrder.some((level) => level === l); - exports2.isLogLevel = isLogLevel; - } + 'node_modules/@emprespresso/pengueno/dist/trace/log/level.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.isLogLevel = exports2.logLevelOrder = exports2.LogLevel = void 0; + var LogLevel; + (function (LogLevel2) { + LogLevel2['UNKNOWN'] = 'UNKNOWN'; + LogLevel2['INFO'] = 'INFO'; + LogLevel2['WARN'] = 'WARN'; + LogLevel2['DEBUG'] = 'DEBUG'; + LogLevel2['ERROR'] = 'ERROR'; + LogLevel2['SYS'] = 'SYS'; + })(LogLevel || (exports2.LogLevel = LogLevel = {})); + exports2.logLevelOrder = [ + LogLevel.DEBUG, + LogLevel.INFO, + LogLevel.WARN, + LogLevel.ERROR, + LogLevel.SYS + ]; + var isLogLevel = (l) => + typeof l === 'string' && exports2.logLevelOrder.some((level) => level === l); + exports2.isLogLevel = isLogLevel; + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/logger.js var require_logger = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/logger.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } + 'node_modules/@emprespresso/pengueno/dist/trace/log/logger.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/pretty_json_console.js var require_pretty_json_console = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/pretty_json_console.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PrettyJsonConsoleLogger = void 0; - var index_1 = require_log(); - var PrettyJsonConsoleLogger = class { - log(level, ...trace) { - const message = JSON.stringify({ - level, - trace - }, null, 4); - const styled = `${this.getStyle(level)}${message}${index_1.ANSI.RESET} + 'node_modules/@emprespresso/pengueno/dist/trace/log/pretty_json_console.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.PrettyJsonConsoleLogger = void 0; + var index_1 = require_log(); + var PrettyJsonConsoleLogger = class { + log(level, ...trace) { + const message = JSON.stringify( + { + level, + trace + }, + null, + 4 + ); + const styled = `${this.getStyle(level)}${message}${index_1.ANSI.RESET} `; - this.getStream(level)(styled); - } - getStream(level) { - if (level === index_1.LogLevel.ERROR) { - return console.error; - } - return console.log; - } - getStyle(level) { - switch (level) { - case index_1.LogLevel.UNKNOWN: - case index_1.LogLevel.INFO: - return `${index_1.ANSI.MAGENTA}`; - case index_1.LogLevel.DEBUG: - return `${index_1.ANSI.CYAN}`; - case index_1.LogLevel.WARN: - return `${index_1.ANSI.BRIGHT_YELLOW}`; - case index_1.LogLevel.ERROR: - return `${index_1.ANSI.BRIGHT_RED}`; - case index_1.LogLevel.SYS: - return `${index_1.ANSI.DIM}${index_1.ANSI.BLUE}`; - } - } - }; - exports2.PrettyJsonConsoleLogger = PrettyJsonConsoleLogger; - } + this.getStream(level)(styled); + } + getStream(level) { + if (level === index_1.LogLevel.ERROR) { + return console.error; + } + return console.log; + } + getStyle(level) { + switch (level) { + case index_1.LogLevel.UNKNOWN: + case index_1.LogLevel.INFO: + return `${index_1.ANSI.MAGENTA}`; + case index_1.LogLevel.DEBUG: + return `${index_1.ANSI.CYAN}`; + case index_1.LogLevel.WARN: + return `${index_1.ANSI.BRIGHT_YELLOW}`; + case index_1.LogLevel.ERROR: + return `${index_1.ANSI.BRIGHT_RED}`; + case index_1.LogLevel.SYS: + return `${index_1.ANSI.DIM}${index_1.ANSI.BLUE}`; + } + } + }; + exports2.PrettyJsonConsoleLogger = PrettyJsonConsoleLogger; + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/trace.js var require_trace2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/trace.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LogTrace = void 0; - var pengueno_1 = require_dist2(); - var index_1 = require_log(); - var LogTrace = class _LogTrace { - logger; - traces; - defaultLevel; - allowedLevels; - constructor(logger = new index_1.PrettyJsonConsoleLogger(), traces = [defaultTrace], defaultLevel = index_1.LogLevel.INFO, allowedLevels = defaultAllowedLevelsSupplier) { - this.logger = logger; - this.traces = traces; - this.defaultLevel = defaultLevel; - this.allowedLevels = allowedLevels; - } - traceScope(trace) { - return new _LogTrace(this.logger, this.traces.concat(trace), this.defaultLevel, this.allowedLevels); - } - trace(trace) { - const { traces, level: _level } = this.foldTraces(this.traces.concat(trace)); - if (!this.allowedLevels().has(_level)) - return; - const level = _level === index_1.LogLevel.UNKNOWN ? this.defaultLevel : _level; - this.logger.log(level, ...traces); - } - foldTraces(_traces) { - const _logTraces = _traces.map((trace) => typeof trace === "function" ? trace() : trace); - const _level = _logTraces.filter((trace) => (0, index_1.isLogLevel)(trace)).reduce((acc, level2) => Math.max(index_1.logLevelOrder.indexOf(level2), acc), -1); - const level = index_1.logLevelOrder[_level] ?? index_1.LogLevel.UNKNOWN; - const traces = _logTraces.filter((trace) => !(0, index_1.isLogLevel)(trace)).map((trace) => { - if (typeof trace === "object") { - return `TracedException.Name = ${trace.name}, TracedException.Message = ${trace.message}, TracedException.Stack = ${trace.stack}`; - } - return trace; - }); - return { - level, - traces - }; - } - }; - exports2.LogTrace = LogTrace; - var defaultTrace = () => `TimeStamp = ${(/* @__PURE__ */ new Date()).toISOString()}`; - var defaultAllowedLevels = (0, pengueno_1.memoize)((isDebug) => /* @__PURE__ */ new Set([ - index_1.LogLevel.UNKNOWN, - ...isDebug ? [index_1.LogLevel.DEBUG] : [], - index_1.LogLevel.INFO, - index_1.LogLevel.WARN, - index_1.LogLevel.ERROR, - index_1.LogLevel.SYS - ])); - var defaultAllowedLevelsSupplier = () => defaultAllowedLevels((0, pengueno_1.isDebug)()); - } + 'node_modules/@emprespresso/pengueno/dist/trace/log/trace.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.LogTrace = void 0; + var pengueno_1 = require_dist2(); + var index_1 = require_log(); + var LogTrace = class _LogTrace { + logger; + traces; + defaultLevel; + allowedLevels; + constructor( + logger = new index_1.PrettyJsonConsoleLogger(), + traces = [defaultTrace], + defaultLevel = index_1.LogLevel.INFO, + allowedLevels = defaultAllowedLevelsSupplier + ) { + this.logger = logger; + this.traces = traces; + this.defaultLevel = defaultLevel; + this.allowedLevels = allowedLevels; + } + traceScope(trace) { + return new _LogTrace( + this.logger, + this.traces.concat(trace), + this.defaultLevel, + this.allowedLevels + ); + } + trace(trace) { + const { traces, level: _level } = this.foldTraces(this.traces.concat(trace)); + if (!this.allowedLevels().has(_level)) return; + const level = _level === index_1.LogLevel.UNKNOWN ? this.defaultLevel : _level; + this.logger.log(level, ...traces); + } + foldTraces(_traces) { + const _logTraces = _traces.map((trace) => (typeof trace === 'function' ? trace() : trace)); + const _level = _logTraces + .filter((trace) => (0, index_1.isLogLevel)(trace)) + .reduce((acc, level2) => Math.max(index_1.logLevelOrder.indexOf(level2), acc), -1); + const level = index_1.logLevelOrder[_level] ?? index_1.LogLevel.UNKNOWN; + const traces = _logTraces + .filter((trace) => !(0, index_1.isLogLevel)(trace)) + .map((trace) => { + if (typeof trace === 'object') { + return `TracedException.Name = ${trace.name}, TracedException.Message = ${trace.message}, TracedException.Stack = ${trace.stack}`; + } + return trace; + }); + return { + level, + traces + }; + } + }; + exports2.LogTrace = LogTrace; + var defaultTrace = () => `TimeStamp = ${/* @__PURE__ */ new Date().toISOString()}`; + var defaultAllowedLevels = (0, pengueno_1.memoize)( + (isDebug) => + /* @__PURE__ */ new Set([ + index_1.LogLevel.UNKNOWN, + ...(isDebug ? [index_1.LogLevel.DEBUG] : []), + index_1.LogLevel.INFO, + index_1.LogLevel.WARN, + index_1.LogLevel.ERROR, + index_1.LogLevel.SYS + ]) + ); + var defaultAllowedLevelsSupplier = () => defaultAllowedLevels((0, pengueno_1.isDebug)()); + } }); // node_modules/@emprespresso/pengueno/dist/trace/log/index.js var require_log = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/log/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_ansi(), exports2); - __exportStar(require_level(), exports2); - __exportStar(require_logger(), exports2); - __exportStar(require_pretty_json_console(), exports2); - __exportStar(require_trace2(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/trace/log/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_ansi(), exports2); + __exportStar(require_level(), exports2); + __exportStar(require_logger(), exports2); + __exportStar(require_pretty_json_console(), exports2); + __exportStar(require_trace2(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/trace/trace.js var require_trace3 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/trace.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.LogMetricTraceable = exports2.LogMetricTrace = exports2.EmbeddedMetricsTraceable = exports2.LogTraceable = void 0; - var _1 = require_trace4(); - var LogTraceable = class _LogTraceable extends _1.TraceableImpl { - static LogTrace = new _1.LogTrace(); - static of(t) { - return new _LogTraceable(t, _LogTraceable.LogTrace); - } - }; - exports2.LogTraceable = LogTraceable; - var getEmbeddedMetricConsumer = (logTrace) => (metrics) => { - if (metrics.length === 0) - return; - logTrace.traceScope(_1.LogLevel.SYS).trace(`Metrics = ${JSON.stringify(metrics)}`); - }; - var EmbeddedMetricsTraceable = class _EmbeddedMetricsTraceable extends _1.TraceableImpl { - static MetricsTrace = new _1.MetricsTrace(getEmbeddedMetricConsumer(LogTraceable.LogTrace)); - static of(t, metricsTrace = _EmbeddedMetricsTraceable.MetricsTrace) { - return new _EmbeddedMetricsTraceable(t, metricsTrace); - } - }; - exports2.EmbeddedMetricsTraceable = EmbeddedMetricsTraceable; - var LogMetricTrace = class _LogMetricTrace { - logTrace; - metricsTrace; - constructor(logTrace, metricsTrace) { - this.logTrace = logTrace; - this.metricsTrace = metricsTrace; - } - traceScope(trace) { - if ((0, _1.isMetricsTraceSupplier)(trace)) { - return new _LogMetricTrace(this.logTrace, this.metricsTrace.traceScope(trace)); - } - return new _LogMetricTrace(this.logTrace.traceScope(trace), this.metricsTrace); - } - trace(trace) { - if ((0, _1.isMetricsTraceSupplier)(trace)) { - this.metricsTrace.trace(trace); - return this; - } - this.logTrace.trace(trace); - return this; - } - }; - exports2.LogMetricTrace = LogMetricTrace; - var LogMetricTraceable = class _LogMetricTraceable extends _1.TraceableImpl { - static ofLogTraceable(t) { - const metricsTrace = new _1.MetricsTrace(getEmbeddedMetricConsumer(t.trace)); - return new _LogMetricTraceable(t.get(), new LogMetricTrace(t.trace, metricsTrace)); - } - static of(t) { - const logTrace = LogTraceable.of(t); - return _LogMetricTraceable.ofLogTraceable(logTrace); - } - }; - exports2.LogMetricTraceable = LogMetricTraceable; - } + 'node_modules/@emprespresso/pengueno/dist/trace/trace.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.LogMetricTraceable = + exports2.LogMetricTrace = + exports2.EmbeddedMetricsTraceable = + exports2.LogTraceable = + void 0; + var _1 = require_trace4(); + var LogTraceable = class _LogTraceable extends _1.TraceableImpl { + static LogTrace = new _1.LogTrace(); + static of(t) { + return new _LogTraceable(t, _LogTraceable.LogTrace); + } + }; + exports2.LogTraceable = LogTraceable; + var getEmbeddedMetricConsumer = (logTrace) => (metrics) => { + if (metrics.length === 0) return; + logTrace + .traceScope(_1.LogLevel.SYS) + .trace(`Metrics = ${JSON.stringify(metrics)}`); + }; + var EmbeddedMetricsTraceable = class _EmbeddedMetricsTraceable extends _1.TraceableImpl { + static MetricsTrace = new _1.MetricsTrace(getEmbeddedMetricConsumer(LogTraceable.LogTrace)); + static of(t, metricsTrace = _EmbeddedMetricsTraceable.MetricsTrace) { + return new _EmbeddedMetricsTraceable(t, metricsTrace); + } + }; + exports2.EmbeddedMetricsTraceable = EmbeddedMetricsTraceable; + var LogMetricTrace = class _LogMetricTrace { + logTrace; + metricsTrace; + constructor(logTrace, metricsTrace) { + this.logTrace = logTrace; + this.metricsTrace = metricsTrace; + } + traceScope(trace) { + if ((0, _1.isMetricsTraceSupplier)(trace)) { + return new _LogMetricTrace(this.logTrace, this.metricsTrace.traceScope(trace)); + } + return new _LogMetricTrace(this.logTrace.traceScope(trace), this.metricsTrace); + } + trace(trace) { + if ((0, _1.isMetricsTraceSupplier)(trace)) { + this.metricsTrace.trace(trace); + return this; + } + this.logTrace.trace(trace); + return this; + } + }; + exports2.LogMetricTrace = LogMetricTrace; + var LogMetricTraceable = class _LogMetricTraceable extends _1.TraceableImpl { + static ofLogTraceable(t) { + const metricsTrace = new _1.MetricsTrace(getEmbeddedMetricConsumer(t.trace)); + return new _LogMetricTraceable(t.get(), new LogMetricTrace(t.trace, metricsTrace)); + } + static of(t) { + const logTrace = LogTraceable.of(t); + return _LogMetricTraceable.ofLogTraceable(logTrace); + } + }; + exports2.LogMetricTraceable = LogMetricTraceable; + } }); // node_modules/@emprespresso/pengueno/dist/trace/util.js var require_util = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/util.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.TraceUtil = void 0; - var pengueno_1 = require_dist2(); - var TraceUtil = class _TraceUtil { - static promiseify(mapper) { - return (traceablePromise) => traceablePromise.flatMapAsync(async (t) => t.move(await t.get()).map(mapper)).get(); - } - static traceResultingEither(metric, warnOnFailure = false) { - return (t) => { - if (metric) - t.trace.trace(t.get().fold((_err) => warnOnFailure ? metric.warn : metric.failure, (_ok) => metric.success)); - return t.traceScope((_t) => _t.get().fold((_err) => warnOnFailure ? pengueno_1.LogLevel.WARN : pengueno_1.LogLevel.ERROR, (_ok) => pengueno_1.LogLevel.INFO)); - }; - } - static withTrace(trace) { - return (t) => t.traceScope(() => trace); - } - static withMetricTrace(metric) { - return _TraceUtil.withTrace(metric); - } - static withFunctionTrace(f) { - return _TraceUtil.withTrace(`fn.${f.name}`); - } - static withClassTrace(c) { - return _TraceUtil.withTrace(`class.${c.constructor.name}`); - } - }; - exports2.TraceUtil = TraceUtil; - } + 'node_modules/@emprespresso/pengueno/dist/trace/util.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.TraceUtil = void 0; + var pengueno_1 = require_dist2(); + var TraceUtil = class _TraceUtil { + static promiseify(mapper) { + return (traceablePromise) => + traceablePromise.flatMapAsync(async (t) => t.move(await t.get()).map(mapper)).get(); + } + static traceResultingEither(metric, warnOnFailure = false) { + return (t) => { + if (metric) + t.trace.trace( + t.get().fold( + (_err) => (warnOnFailure ? metric.warn : metric.failure), + (_ok) => metric.success + ) + ); + return t.traceScope((_t) => + _t.get().fold( + (_err) => (warnOnFailure ? pengueno_1.LogLevel.WARN : pengueno_1.LogLevel.ERROR), + (_ok) => pengueno_1.LogLevel.INFO + ) + ); + }; + } + static withTrace(trace) { + return (t) => t.traceScope(() => trace); + } + static withMetricTrace(metric) { + return _TraceUtil.withTrace(metric); + } + static withFunctionTrace(f) { + return _TraceUtil.withTrace(`fn.${f.name}`); + } + static withClassTrace(c) { + return _TraceUtil.withTrace(`class.${c.constructor.name}`); + } + }; + exports2.TraceUtil = TraceUtil; + } }); // node_modules/@emprespresso/pengueno/dist/trace/index.js var require_trace4 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/trace/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_itrace(), exports2); - __exportStar(require_metric2(), exports2); - __exportStar(require_log(), exports2); - __exportStar(require_trace3(), exports2); - __exportStar(require_util(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/trace/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_itrace(), exports2); + __exportStar(require_metric2(), exports2); + __exportStar(require_log(), exports2); + __exportStar(require_trace3(), exports2); + __exportStar(require_util(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/process/exec.js var require_exec = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/exec.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getStdoutMany = exports2.getStdout = exports2.CmdMetric = void 0; - var pengueno_1 = require_dist2(); - var node_child_process_1 = require("node:child_process"); - exports2.CmdMetric = pengueno_1.Metric.fromName("Exec").asResult(); - var getStdout = (cmd, options = { streamTraceable: [] }) => cmd.flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.getStdout)).flatMap((tCmd) => tCmd.traceScope(() => `Command = ${tCmd.get()}`)).map((tCmd) => { - const cmd2 = tCmd.get(); - const _exec = typeof cmd2 === "string" ? cmd2 : cmd2.join(" "); - const env = options.clearEnv ? options.env : { ...process.env, ...options.env }; - return pengueno_1.Either.fromFailableAsync(new Promise((res, rej) => { - const proc = (0, node_child_process_1.exec)(_exec, { env }); - let stdout = ""; - proc.stdout?.on("data", (d) => { - const s = d.toString(); - stdout += s; - if (options.streamTraceable?.includes("stdout")) { - tCmd.trace.trace(s); - } - }); - const stderr = ""; - proc.stderr?.on("data", (d) => { - const s = d.toString(); - stdout += s; - if (options.streamTraceable?.includes("stderr")) { - tCmd.trace.trace(s); - } - }); - proc.on("exit", (code) => { - const streams = { stdout, stderr }; - if (code === 0) { - res(streams); - } else { - rej(new Error(`exited with non-zero code: ${code}. ${stderr}`)); - } - }); - })); - }).map(pengueno_1.TraceUtil.promiseify((tEitherStdStreams) => tEitherStdStreams.get().mapRight(({ stderr, stdout }) => { - if (stderr) - tEitherStdStreams.trace.traceScope(pengueno_1.LogLevel.DEBUG).trace(`StdErr = ${stderr}`); - return stdout; - }))).peek(pengueno_1.TraceUtil.promiseify(pengueno_1.TraceUtil.traceResultingEither(exports2.CmdMetric))).get(); - exports2.getStdout = getStdout; - var getStdoutMany = (cmds, options = { streamTraceable: [] }) => cmds.coExtend((t) => t.get()).reduce(async (_result, tCmd) => { - const result = await _result; - return result.joinRightAsync(() => tCmd.map((cmd) => (0, exports2.getStdout)(cmd, options)).get(), (stdout, pre) => pre.concat(stdout)); - }, Promise.resolve(pengueno_1.Either.right([]))); - exports2.getStdoutMany = getStdoutMany; - } + 'node_modules/@emprespresso/pengueno/dist/process/exec.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.getStdoutMany = exports2.getStdout = exports2.CmdMetric = void 0; + var pengueno_1 = require_dist2(); + var node_child_process_1 = require('node:child_process'); + exports2.CmdMetric = pengueno_1.Metric.fromName('Exec').asResult(); + var getStdout = (cmd, options = { streamTraceable: [] }) => + cmd + .flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.getStdout)) + .flatMap((tCmd) => tCmd.traceScope(() => `Command = ${tCmd.get()}`)) + .map((tCmd) => { + const cmd2 = tCmd.get(); + const _exec = typeof cmd2 === 'string' ? cmd2 : cmd2.join(' '); + const env = options.clearEnv ? options.env : { ...process.env, ...options.env }; + return pengueno_1.Either.fromFailableAsync( + new Promise((res, rej) => { + const proc = (0, node_child_process_1.exec)(_exec, { env }); + let stdout = ''; + proc.stdout?.on('data', (d) => { + const s = d.toString(); + stdout += s; + if (options.streamTraceable?.includes('stdout')) { + tCmd.trace.trace(s); + } + }); + const stderr = ''; + proc.stderr?.on('data', (d) => { + const s = d.toString(); + stdout += s; + if (options.streamTraceable?.includes('stderr')) { + tCmd.trace.trace(s); + } + }); + proc.on('exit', (code) => { + const streams = { stdout, stderr }; + if (code === 0) { + res(streams); + } else { + rej(new Error(`exited with non-zero code: ${code}. ${stderr}`)); + } + }); + }) + ); + }) + .map( + pengueno_1.TraceUtil.promiseify((tEitherStdStreams) => + tEitherStdStreams.get().mapRight(({ stderr, stdout }) => { + if (stderr) + tEitherStdStreams.trace + .traceScope(pengueno_1.LogLevel.DEBUG) + .trace(`StdErr = ${stderr}`); + return stdout; + }) + ) + ) + .peek( + pengueno_1.TraceUtil.promiseify( + pengueno_1.TraceUtil.traceResultingEither(exports2.CmdMetric) + ) + ) + .get(); + exports2.getStdout = getStdout; + var getStdoutMany = (cmds, options = { streamTraceable: [] }) => + cmds + .coExtend((t) => t.get()) + .reduce( + async (_result, tCmd) => { + const result = await _result; + return result.joinRightAsync( + () => tCmd.map((cmd) => (0, exports2.getStdout)(cmd, options)).get(), + (stdout, pre) => pre.concat(stdout) + ); + }, + Promise.resolve(pengueno_1.Either.right([])) + ); + exports2.getStdoutMany = getStdoutMany; + } }); // node_modules/@emprespresso/pengueno/dist/process/env.js var require_env = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/env.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.getRequiredEnvVars = exports2.getRequiredEnv = exports2.getEnv = void 0; - var pengueno_1 = require_dist2(); - var getEnv = (name) => pengueno_1.Optional.from(process.env[name]); - exports2.getEnv = getEnv; - var getRequiredEnv = (name) => pengueno_1.Either.fromFailable(() => (0, exports2.getEnv)(name).get()).mapLeft(() => new Error(`environment variable "${name}" is required D:`)); - exports2.getRequiredEnv = getRequiredEnv; - var getRequiredEnvVars = (vars) => { - const emptyEnvironment = pengueno_1.Either.right({}); - const addTo = (env, key, val) => ({ - ...env, - [key]: val - }); - return vars.reduce((environment, key) => environment.joinRight((0, exports2.getRequiredEnv)(key), (value, environment2) => addTo(environment2, key, value)), emptyEnvironment); - }; - exports2.getRequiredEnvVars = getRequiredEnvVars; - } + 'node_modules/@emprespresso/pengueno/dist/process/env.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.getRequiredEnvVars = exports2.getRequiredEnv = exports2.getEnv = void 0; + var pengueno_1 = require_dist2(); + var getEnv = (name) => pengueno_1.Optional.from(process.env[name]); + exports2.getEnv = getEnv; + var getRequiredEnv = (name) => + pengueno_1.Either.fromFailable(() => (0, exports2.getEnv)(name).get()).mapLeft( + () => new Error(`environment variable "${name}" is required D:`) + ); + exports2.getRequiredEnv = getRequiredEnv; + var getRequiredEnvVars = (vars) => { + const emptyEnvironment = pengueno_1.Either.right({}); + const addTo = (env, key, val) => ({ + ...env, + [key]: val + }); + return vars.reduce( + (environment, key) => + environment.joinRight((0, exports2.getRequiredEnv)(key), (value, environment2) => + addTo(environment2, key, value) + ), + emptyEnvironment + ); + }; + exports2.getRequiredEnvVars = getRequiredEnvVars; + } }); // node_modules/@emprespresso/pengueno/dist/process/validate_identifier.js var require_validate_identifier = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/validate_identifier.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.validateExecutionEntries = exports2.validateIdentifier = void 0; - var pengueno_1 = require_dist2(); - var validateIdentifier = (token) => { - return /^[a-zA-Z0-9_\?\&\=\-:. \/]+$/.test(token) && !token.includes(".."); - }; - exports2.validateIdentifier = validateIdentifier; - var validateExecutionEntries = (obj) => { - const invalidEntries = Object.entries(obj).filter((e) => !e.every((x) => typeof x === "string" && (0, exports2.validateIdentifier)(x))); - if (invalidEntries.length > 0) - return pengueno_1.Either.left(invalidEntries); - return pengueno_1.Either.right(obj); - }; - exports2.validateExecutionEntries = validateExecutionEntries; - } + 'node_modules/@emprespresso/pengueno/dist/process/validate_identifier.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.validateExecutionEntries = exports2.validateIdentifier = void 0; + var pengueno_1 = require_dist2(); + var validateIdentifier = (token) => { + return /^[a-zA-Z0-9_\?\&\=\-:. \/]+$/.test(token) && !token.includes('..'); + }; + exports2.validateIdentifier = validateIdentifier; + var validateExecutionEntries = (obj) => { + const invalidEntries = Object.entries(obj).filter( + (e) => !e.every((x) => typeof x === 'string' && (0, exports2.validateIdentifier)(x)) + ); + if (invalidEntries.length > 0) return pengueno_1.Either.left(invalidEntries); + return pengueno_1.Either.right(obj); + }; + exports2.validateExecutionEntries = validateExecutionEntries; + } }); // node_modules/@emprespresso/pengueno/dist/process/argv.js var require_argv = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/argv.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.argv = exports2.getArg = exports2.isArgKey = void 0; - var pengueno_1 = require_dist2(); - var isArgKey = (k) => k.startsWith("--"); - exports2.isArgKey = isArgKey; - var getArg = (arg, argv2, whenValue) => { - const argIndex = pengueno_1.Optional.from(argv2.findIndex((_argv) => (0, exports2.isArgKey)(_argv) && _argv.split("=")[0] === arg)).filter((index) => index >= 0 && index < argv2.length); - if (!argIndex.present()) { - return pengueno_1.Optional.from(whenValue.absent).map((v) => pengueno_1.Either.right(v)).orSome(() => pengueno_1.Either.left(new Error(`arg ${arg} is not present in arguments list and does not have an 'absent' value`))).get(); - } - return argIndex.flatMap((idx) => pengueno_1.Optional.from(argv2.at(idx)).map((_argv) => _argv.includes("=") ? _argv.split("=")[1] : argv2.at(idx + 1))).filter((next) => !(0, exports2.isArgKey)(next)).map((next) => whenValue.present(next)).orSome(() => whenValue.unspecified).map((v) => pengueno_1.Either.right(v)).get(); - }; - exports2.getArg = getArg; - var argv = (args, handlers, argv2 = process.argv.slice(2)) => { - const defaultHandler = { present: (value) => value }; - const processArg = (arg) => { - const handler = handlers?.[arg] ?? defaultHandler; - return (0, exports2.getArg)(arg, argv2, handler).mapRight((value) => [arg, value]); - }; - const res = args.map(processArg).reduce((acc, current) => acc.flatMap((accValue) => current.mapRight(([key, value]) => ({ - ...accValue, - [key]: value - }))), pengueno_1.Either.right({})).mapRight((result) => result); - return res; - }; - exports2.argv = argv; - } + 'node_modules/@emprespresso/pengueno/dist/process/argv.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.argv = exports2.getArg = exports2.isArgKey = void 0; + var pengueno_1 = require_dist2(); + var isArgKey = (k) => k.startsWith('--'); + exports2.isArgKey = isArgKey; + var getArg = (arg, argv2, whenValue) => { + const argIndex = pengueno_1.Optional.from( + argv2.findIndex((_argv) => (0, exports2.isArgKey)(_argv) && _argv.split('=')[0] === arg) + ).filter((index) => index >= 0 && index < argv2.length); + if (!argIndex.present()) { + return pengueno_1.Optional.from(whenValue.absent) + .map((v) => pengueno_1.Either.right(v)) + .orSome(() => + pengueno_1.Either.left( + new Error( + `arg ${arg} is not present in arguments list and does not have an 'absent' value` + ) + ) + ) + .get(); + } + return argIndex + .flatMap((idx) => + pengueno_1.Optional.from(argv2.at(idx)).map((_argv) => + _argv.includes('=') ? _argv.split('=')[1] : argv2.at(idx + 1) + ) + ) + .filter((next) => !(0, exports2.isArgKey)(next)) + .map((next) => whenValue.present(next)) + .orSome(() => whenValue.unspecified) + .map((v) => pengueno_1.Either.right(v)) + .get(); + }; + exports2.getArg = getArg; + var argv = (args, handlers, argv2 = process.argv.slice(2)) => { + const defaultHandler = { present: (value) => value }; + const processArg = (arg) => { + const handler = handlers?.[arg] ?? defaultHandler; + return (0, exports2.getArg)(arg, argv2, handler).mapRight((value) => [arg, value]); + }; + const res = args + .map(processArg) + .reduce( + (acc, current) => + acc.flatMap((accValue) => + current.mapRight(([key, value]) => ({ + ...accValue, + [key]: value + })) + ), + pengueno_1.Either.right({}) + ) + .mapRight((result) => result); + return res; + }; + exports2.argv = argv; + } }); // node_modules/@emprespresso/pengueno/dist/process/signals.js var require_signals = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/signals.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.Signals = exports2.SigTermMetric = exports2.SigIntMetric = void 0; - var pengueno_1 = require_dist2(); - exports2.SigIntMetric = pengueno_1.Metric.fromName("SigInt").asResult(); - exports2.SigTermMetric = pengueno_1.Metric.fromName("SigTerm").asResult(); - var Signals = class { - static async awaitClose(t) { - const success = pengueno_1.Either.right(void 0); - return new Promise((res) => { - const metricizedInterruptHandler = (metric) => (err) => t.flatMap(pengueno_1.TraceUtil.withMetricTrace(metric)).peek((_t) => _t.trace.trace("closing")).move(pengueno_1.Optional.from(err).map((e) => pengueno_1.Either.left(e)).orSome(() => success).get()).flatMap(pengueno_1.TraceUtil.traceResultingEither(metric)).map((e) => res(e.get())).peek((_t) => _t.trace.trace("finished")).get(); - const sigintCloser = metricizedInterruptHandler(exports2.SigIntMetric); - const sigtermCloser = metricizedInterruptHandler(exports2.SigTermMetric); - process.on("SIGINT", () => t.flatMap(pengueno_1.TraceUtil.withTrace("SIGINT")).get().close(sigintCloser)); - process.on("SIGTERM", () => t.flatMap(pengueno_1.TraceUtil.withTrace("SIGTERM")).get().close(sigtermCloser)); - }); - } - }; - exports2.Signals = Signals; - } + 'node_modules/@emprespresso/pengueno/dist/process/signals.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.Signals = exports2.SigTermMetric = exports2.SigIntMetric = void 0; + var pengueno_1 = require_dist2(); + exports2.SigIntMetric = pengueno_1.Metric.fromName('SigInt').asResult(); + exports2.SigTermMetric = pengueno_1.Metric.fromName('SigTerm').asResult(); + var Signals = class { + static async awaitClose(t) { + const success = pengueno_1.Either.right(void 0); + return new Promise((res) => { + const metricizedInterruptHandler = (metric) => (err) => + t + .flatMap(pengueno_1.TraceUtil.withMetricTrace(metric)) + .peek((_t) => _t.trace.trace('closing')) + .move( + pengueno_1.Optional.from(err) + .map((e) => pengueno_1.Either.left(e)) + .orSome(() => success) + .get() + ) + .flatMap(pengueno_1.TraceUtil.traceResultingEither(metric)) + .map((e) => res(e.get())) + .peek((_t) => _t.trace.trace('finished')) + .get(); + const sigintCloser = metricizedInterruptHandler(exports2.SigIntMetric); + const sigtermCloser = metricizedInterruptHandler(exports2.SigTermMetric); + process.on('SIGINT', () => + t.flatMap(pengueno_1.TraceUtil.withTrace('SIGINT')).get().close(sigintCloser) + ); + process.on('SIGTERM', () => + t.flatMap(pengueno_1.TraceUtil.withTrace('SIGTERM')).get().close(sigtermCloser) + ); + }); + } + }; + exports2.Signals = Signals; + } }); // node_modules/@emprespresso/pengueno/dist/process/index.js var require_process = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/process/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_exec(), exports2); - __exportStar(require_env(), exports2); - __exportStar(require_validate_identifier(), exports2); - __exportStar(require_argv(), exports2); - __exportStar(require_signals(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/process/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_exec(), exports2); + __exportStar(require_env(), exports2); + __exportStar(require_validate_identifier(), exports2); + __exportStar(require_argv(), exports2); + __exportStar(require_signals(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/http/body.js var require_body = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/http/body.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } + 'node_modules/@emprespresso/pengueno/dist/server/http/body.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + } }); // node_modules/@emprespresso/pengueno/dist/server/http/status.js var require_status = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/http/status.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HttpStatusCodes = void 0; - exports2.HttpStatusCodes = { - 100: "Continue", - 101: "Switching Protocols", - 102: "Processing (WebDAV)", - 200: "OK", - 201: "Created", - 202: "Accepted", - 203: "Non-Authoritative Information", - 204: "No Content", - 205: "Reset Content", - 206: "Partial Content", - 207: "Multi-Status (WebDAV)", - 208: "Already Reported (WebDAV)", - 226: "IM Used", - 300: "Multiple Choices", - 301: "Moved Permanently", - 302: "Found", - 303: "See Other", - 304: "Not Modified", - 305: "Use Proxy", - 306: "(Unused)", - 307: "Temporary Redirect", - 308: "Permanent Redirect (experimental)", - 400: "Bad Request", - 401: "Unauthorized", - 402: "Payment Required", - 403: "Forbidden", - 404: "Not Found", - 405: "Method Not Allowed", - 406: "Not Acceptable", - 407: "Proxy Authentication Required", - 408: "Request Timeout", - 409: "Conflict", - 410: "Gone", - 411: "Length Required", - 412: "Precondition Failed", - 413: "Request Entity Too Large", - 414: "Request-URI Too Long", - 415: "Unsupported Media Type", - 416: "Requested Range Not Satisfiable", - 417: "Expectation Failed", - 418: "I'm a teapot (RFC 2324)", - 420: "Enhance Your Calm (Twitter)", - 422: "Unprocessable Entity (WebDAV)", - 423: "Locked (WebDAV)", - 424: "Failed Dependency (WebDAV)", - 425: "Reserved for WebDAV", - 426: "Upgrade Required", - 428: "Precondition Required", - 429: "Too Many Requests", - 431: "Request Header Fields Too Large", - 444: "No Response (Nginx)", - 449: "Retry With (Microsoft)", - 450: "Blocked by Windows Parental Controls (Microsoft)", - 451: "Unavailable For Legal Reasons", - 499: "Client Closed Request (Nginx)", - 500: "Internal Server Error", - 501: "Not Implemented", - 502: "Bad Gateway", - 503: "Service Unavailable", - 504: "Gateway Timeout", - 505: "HTTP Version Not Supported", - 506: "Variant Also Negotiates (Experimental)", - 507: "Insufficient Storage (WebDAV)", - 508: "Loop Detected (WebDAV)", - 509: "Bandwidth Limit Exceeded (Apache)", - 510: "Not Extended", - 511: "Network Authentication Required", - 598: "Network read timeout error", - 599: "Network connect timeout error" - }; - } + 'node_modules/@emprespresso/pengueno/dist/server/http/status.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.HttpStatusCodes = void 0; + exports2.HttpStatusCodes = { + 100: 'Continue', + 101: 'Switching Protocols', + 102: 'Processing (WebDAV)', + 200: 'OK', + 201: 'Created', + 202: 'Accepted', + 203: 'Non-Authoritative Information', + 204: 'No Content', + 205: 'Reset Content', + 206: 'Partial Content', + 207: 'Multi-Status (WebDAV)', + 208: 'Already Reported (WebDAV)', + 226: 'IM Used', + 300: 'Multiple Choices', + 301: 'Moved Permanently', + 302: 'Found', + 303: 'See Other', + 304: 'Not Modified', + 305: 'Use Proxy', + 306: '(Unused)', + 307: 'Temporary Redirect', + 308: 'Permanent Redirect (experimental)', + 400: 'Bad Request', + 401: 'Unauthorized', + 402: 'Payment Required', + 403: 'Forbidden', + 404: 'Not Found', + 405: 'Method Not Allowed', + 406: 'Not Acceptable', + 407: 'Proxy Authentication Required', + 408: 'Request Timeout', + 409: 'Conflict', + 410: 'Gone', + 411: 'Length Required', + 412: 'Precondition Failed', + 413: 'Request Entity Too Large', + 414: 'Request-URI Too Long', + 415: 'Unsupported Media Type', + 416: 'Requested Range Not Satisfiable', + 417: 'Expectation Failed', + 418: "I'm a teapot (RFC 2324)", + 420: 'Enhance Your Calm (Twitter)', + 422: 'Unprocessable Entity (WebDAV)', + 423: 'Locked (WebDAV)', + 424: 'Failed Dependency (WebDAV)', + 425: 'Reserved for WebDAV', + 426: 'Upgrade Required', + 428: 'Precondition Required', + 429: 'Too Many Requests', + 431: 'Request Header Fields Too Large', + 444: 'No Response (Nginx)', + 449: 'Retry With (Microsoft)', + 450: 'Blocked by Windows Parental Controls (Microsoft)', + 451: 'Unavailable For Legal Reasons', + 499: 'Client Closed Request (Nginx)', + 500: 'Internal Server Error', + 501: 'Not Implemented', + 502: 'Bad Gateway', + 503: 'Service Unavailable', + 504: 'Gateway Timeout', + 505: 'HTTP Version Not Supported', + 506: 'Variant Also Negotiates (Experimental)', + 507: 'Insufficient Storage (WebDAV)', + 508: 'Loop Detected (WebDAV)', + 509: 'Bandwidth Limit Exceeded (Apache)', + 510: 'Not Extended', + 511: 'Network Authentication Required', + 598: 'Network read timeout error', + 599: 'Network connect timeout error' + }; + } }); // node_modules/@emprespresso/pengueno/dist/server/http/method.js var require_method = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/http/method.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - } + 'node_modules/@emprespresso/pengueno/dist/server/http/method.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + } }); // node_modules/@emprespresso/pengueno/dist/server/http/index.js var require_http = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/http/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_body(), exports2); - __exportStar(require_status(), exports2); - __exportStar(require_method(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/http/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_body(), exports2); + __exportStar(require_status(), exports2); + __exportStar(require_method(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/response/pengueno.js var require_pengueno = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/response/pengueno.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.JsonResponse = exports2.PenguenoResponse = exports2.getResponseMetrics = void 0; - var pengueno_1 = require_dist2(); - var getHeaders = (req, extraHeaders) => { - const optHeaders = { - ...req.getResponseHeaders(), - ...extraHeaders - }; - optHeaders["Content-Type"] = (optHeaders["Content-Type"] ?? "text/plain") + "; charset=utf-8"; - return optHeaders; - }; - var ResponseCodeMetrics = [0, 1, 2, 3, 4, 5].map((x) => pengueno_1.Metric.fromName(`response.${x}xx`).asResult()); - var getResponseMetrics = (status, elapsedMs) => { - const index = Math.floor(status / 100); - return ResponseCodeMetrics.flatMap((metric, i) => pengueno_1.Optional.from(i).filter((i2) => i2 === index).map(() => [metric.count.withValue(1)]).flatMap((metricValues) => pengueno_1.Optional.from(elapsedMs).map((ms) => metricValues.concat(metric.time.withValue(ms))).orSome(() => metricValues)).orSome(() => [metric.count.withValue(0)]).get()); - }; - exports2.getResponseMetrics = getResponseMetrics; - var PenguenoResponse = class { - _body; - statusText; - status; - headers; - constructor(req, _body, opts) { - this._body = _body; - this.headers = getHeaders(req.get(), opts?.headers ?? {}); - this.status = opts.status; - this.statusText = opts.statusText ?? pengueno_1.HttpStatusCodes[this.status]; - req.trace.trace((0, exports2.getResponseMetrics)(opts.status, req.get().elapsedTimeMs())); - } - body() { - return this._body; - } - }; - exports2.PenguenoResponse = PenguenoResponse; - var JsonResponse = class extends PenguenoResponse { - constructor(req, e, _opts) { - const opts = { ..._opts, headers: { ..._opts.headers, "Content-Type": "application/json" } }; - if ((0, pengueno_1.isEither)(e)) { - super(req, JSON.stringify(e.fold((error) => ({ error, ok: void 0 }), (ok) => ({ ok }))), opts); - return; - } - super(req, JSON.stringify(Math.floor(opts.status / 100) > 4 ? { error: e } : { ok: e }), opts); - } - }; - exports2.JsonResponse = JsonResponse; - } + 'node_modules/@emprespresso/pengueno/dist/server/response/pengueno.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.JsonResponse = exports2.PenguenoResponse = exports2.getResponseMetrics = void 0; + var pengueno_1 = require_dist2(); + var getHeaders = (req, extraHeaders) => { + const optHeaders = { + ...req.getResponseHeaders(), + ...extraHeaders + }; + optHeaders['Content-Type'] = (optHeaders['Content-Type'] ?? 'text/plain') + '; charset=utf-8'; + return optHeaders; + }; + var ResponseCodeMetrics = [0, 1, 2, 3, 4, 5].map((x) => + pengueno_1.Metric.fromName(`response.${x}xx`).asResult() + ); + var getResponseMetrics = (status, elapsedMs) => { + const index = Math.floor(status / 100); + return ResponseCodeMetrics.flatMap((metric, i) => + pengueno_1.Optional.from(i) + .filter((i2) => i2 === index) + .map(() => [metric.count.withValue(1)]) + .flatMap((metricValues) => + pengueno_1.Optional.from(elapsedMs) + .map((ms) => metricValues.concat(metric.time.withValue(ms))) + .orSome(() => metricValues) + ) + .orSome(() => [metric.count.withValue(0)]) + .get() + ); + }; + exports2.getResponseMetrics = getResponseMetrics; + var PenguenoResponse = class { + _body; + statusText; + status; + headers; + constructor(req, _body, opts) { + this._body = _body; + this.headers = getHeaders(req.get(), opts?.headers ?? {}); + this.status = opts.status; + this.statusText = opts.statusText ?? pengueno_1.HttpStatusCodes[this.status]; + req.trace.trace((0, exports2.getResponseMetrics)(opts.status, req.get().elapsedTimeMs())); + } + body() { + return this._body; + } + }; + exports2.PenguenoResponse = PenguenoResponse; + var JsonResponse = class extends PenguenoResponse { + constructor(req, e, _opts) { + const opts = { + ..._opts, + headers: { ..._opts.headers, 'Content-Type': 'application/json' } + }; + if ((0, pengueno_1.isEither)(e)) { + super( + req, + JSON.stringify( + e.fold( + (error) => ({ error, ok: void 0 }), + (ok) => ({ ok }) + ) + ), + opts + ); + return; + } + super( + req, + JSON.stringify(Math.floor(opts.status / 100) > 4 ? { error: e } : { ok: e }), + opts + ); + } + }; + exports2.JsonResponse = JsonResponse; + } }); // node_modules/@emprespresso/pengueno/dist/server/response/index.js var require_response = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/response/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_pengueno(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/response/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_pengueno(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/request/pengueno.js var require_pengueno2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/request/pengueno.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PenguenoRequest = void 0; - var greetings = ["hewwo :D", "hiya cutie", "boop!", "sending virtual hugs!", "stay pawsitive"]; - var penguenoGreeting = () => greetings[Math.floor(Math.random() * greetings.length)]; - var PenguenoRequest = class _PenguenoRequest { - req; - id; - at; - constructor(req, id, at) { - this.req = req; - this.id = id; - this.at = at; - } - elapsedTimeMs(after = () => Date.now()) { - return after() - this.at.getTime(); - } - getResponseHeaders() { - const RequestId = this.id; - const RequestReceivedUnix = this.at.getTime(); - const RequestHandleUnix = Date.now(); - const DeltaUnix = this.elapsedTimeMs(() => RequestHandleUnix); - const Hai = penguenoGreeting(); - return Object.entries({ - RequestId, - RequestReceivedUnix, - RequestHandleUnix, - DeltaUnix, - Hai - }).reduce((acc, [key, val]) => ({ ...acc, [key]: val.toString() }), {}); - } - static from(request) { - const id = crypto.randomUUID(); - return request.bimap((tRequest) => { - const request2 = tRequest.get(); - const url = new URL(request2.url); - const { pathname } = url; - const trace = `RequestId = ${id}, Method = ${request2.method}, Path = ${pathname}`; - return { item: new _PenguenoRequest(request2, id, /* @__PURE__ */ new Date()), trace }; - }); - } - }; - exports2.PenguenoRequest = PenguenoRequest; - } + 'node_modules/@emprespresso/pengueno/dist/server/request/pengueno.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.PenguenoRequest = void 0; + var greetings = ['hewwo :D', 'hiya cutie', 'boop!', 'sending virtual hugs!', 'stay pawsitive']; + var penguenoGreeting = () => greetings[Math.floor(Math.random() * greetings.length)]; + var PenguenoRequest = class _PenguenoRequest { + req; + id; + at; + constructor(req, id, at) { + this.req = req; + this.id = id; + this.at = at; + } + elapsedTimeMs(after = () => Date.now()) { + return after() - this.at.getTime(); + } + getResponseHeaders() { + const RequestId = this.id; + const RequestReceivedUnix = this.at.getTime(); + const RequestHandleUnix = Date.now(); + const DeltaUnix = this.elapsedTimeMs(() => RequestHandleUnix); + const Hai = penguenoGreeting(); + return Object.entries({ + RequestId, + RequestReceivedUnix, + RequestHandleUnix, + DeltaUnix, + Hai + }).reduce((acc, [key, val]) => ({ ...acc, [key]: val.toString() }), {}); + } + static from(request) { + const id = crypto.randomUUID(); + return request.bimap((tRequest) => { + const request2 = tRequest.get(); + const url = new URL(request2.url); + const { pathname } = url; + const trace = `RequestId = ${id}, Method = ${request2.method}, Path = ${pathname}`; + return { item: new _PenguenoRequest(request2, id, /* @__PURE__ */ new Date()), trace }; + }); + } + }; + exports2.PenguenoRequest = PenguenoRequest; + } }); // node_modules/@emprespresso/pengueno/dist/server/request/index.js var require_request = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/request/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_pengueno2(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/request/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_pengueno2(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/activity/health.js var require_health = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/activity/health.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HealthCheckActivityImpl = exports2.HealthCheckOutput = exports2.HealthCheckInput = void 0; - var pengueno_1 = require_dist2(); - var HealthCheckInput; - (function(HealthCheckInput2) { - HealthCheckInput2[HealthCheckInput2["CHECK"] = 0] = "CHECK"; - })(HealthCheckInput || (exports2.HealthCheckInput = HealthCheckInput = {})); - var HealthCheckOutput; - (function(HealthCheckOutput2) { - HealthCheckOutput2[HealthCheckOutput2["YAASSSLAYQUEEN"] = 0] = "YAASSSLAYQUEEN"; - })(HealthCheckOutput || (exports2.HealthCheckOutput = HealthCheckOutput = {})); - var healthCheckMetric = pengueno_1.Metric.fromName("Health").asResult(); - var HealthCheckActivityImpl = class { - check; - constructor(check) { - this.check = check; - } - checkHealth(req) { - return req.flatMap(pengueno_1.TraceUtil.withFunctionTrace(this.checkHealth)).flatMap(pengueno_1.TraceUtil.withMetricTrace(healthCheckMetric)).flatMap((r) => r.move(HealthCheckInput.CHECK).map((input) => this.check(input))).peek(pengueno_1.TraceUtil.promiseify(pengueno_1.TraceUtil.traceResultingEither(healthCheckMetric))).map(pengueno_1.TraceUtil.promiseify((h) => { - const { status, message } = h.get().fold(() => ({ status: 500, message: "err" }), () => ({ status: 200, message: "ok" })); - return new pengueno_1.JsonResponse(req, message, { status }); - })).get(); - } - }; - exports2.HealthCheckActivityImpl = HealthCheckActivityImpl; - } + 'node_modules/@emprespresso/pengueno/dist/server/activity/health.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.HealthCheckActivityImpl = + exports2.HealthCheckOutput = + exports2.HealthCheckInput = + void 0; + var pengueno_1 = require_dist2(); + var HealthCheckInput; + (function (HealthCheckInput2) { + HealthCheckInput2[(HealthCheckInput2['CHECK'] = 0)] = 'CHECK'; + })(HealthCheckInput || (exports2.HealthCheckInput = HealthCheckInput = {})); + var HealthCheckOutput; + (function (HealthCheckOutput2) { + HealthCheckOutput2[(HealthCheckOutput2['YAASSSLAYQUEEN'] = 0)] = 'YAASSSLAYQUEEN'; + })(HealthCheckOutput || (exports2.HealthCheckOutput = HealthCheckOutput = {})); + var healthCheckMetric = pengueno_1.Metric.fromName('Health').asResult(); + var HealthCheckActivityImpl = class { + check; + constructor(check) { + this.check = check; + } + checkHealth(req) { + return req + .flatMap(pengueno_1.TraceUtil.withFunctionTrace(this.checkHealth)) + .flatMap(pengueno_1.TraceUtil.withMetricTrace(healthCheckMetric)) + .flatMap((r) => r.move(HealthCheckInput.CHECK).map((input) => this.check(input))) + .peek( + pengueno_1.TraceUtil.promiseify( + pengueno_1.TraceUtil.traceResultingEither(healthCheckMetric) + ) + ) + .map( + pengueno_1.TraceUtil.promiseify((h) => { + const { status, message } = h.get().fold( + () => ({ status: 500, message: 'err' }), + () => ({ status: 200, message: 'ok' }) + ); + return new pengueno_1.JsonResponse(req, message, { status }); + }) + ) + .get(); + } + }; + exports2.HealthCheckActivityImpl = HealthCheckActivityImpl; + } }); // node_modules/@emprespresso/pengueno/dist/server/activity/fourohfour.js var require_fourohfour = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/activity/fourohfour.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.FourOhFourActivityImpl = void 0; - var pengueno_1 = require_dist2(); - var messages = [ - "D: meow-t found! your api call ran away!", - "404-bidden! but like...in a cute way >:3 !", - ":< your data went on a paw-sible vacation!", - "uwu~ not found, but found our hearts instead!" - ]; - var randomFourOhFour = () => messages[Math.floor(Math.random() * messages.length)]; - var FourOhFourActivityImpl = class { - fourOhFour(req) { - return req.move(new pengueno_1.JsonResponse(req, randomFourOhFour(), { status: 404 })).map((resp) => Promise.resolve(resp.get())).get(); - } - }; - exports2.FourOhFourActivityImpl = FourOhFourActivityImpl; - } + 'node_modules/@emprespresso/pengueno/dist/server/activity/fourohfour.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.FourOhFourActivityImpl = void 0; + var pengueno_1 = require_dist2(); + var messages = [ + 'D: meow-t found! your api call ran away!', + '404-bidden! but like...in a cute way >:3 !', + ':< your data went on a paw-sible vacation!', + 'uwu~ not found, but found our hearts instead!' + ]; + var randomFourOhFour = () => messages[Math.floor(Math.random() * messages.length)]; + var FourOhFourActivityImpl = class { + fourOhFour(req) { + return req + .move(new pengueno_1.JsonResponse(req, randomFourOhFour(), { status: 404 })) + .map((resp) => Promise.resolve(resp.get())) + .get(); + } + }; + exports2.FourOhFourActivityImpl = FourOhFourActivityImpl; + } }); // node_modules/@emprespresso/pengueno/dist/server/activity/index.js var require_activity = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/activity/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_health(), exports2); - __exportStar(require_fourohfour(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/activity/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_health(), exports2); + __exportStar(require_fourohfour(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/filter/method.js var require_method2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/filter/method.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.requireMethod = void 0; - var pengueno_1 = require_dist2(); - var requireMethod = (methods) => (req) => req.flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.requireMethod)).map((t) => { - const { req: { method } } = t.get(); - if (!methods.includes(method)) { - const msg = "that's not how you pet me (\u22DF\uFE4F\u22DE)~"; - t.trace.traceScope(pengueno_1.LogLevel.WARN).trace(msg); - return pengueno_1.Either.left(new pengueno_1.PenguenoError(msg, 405)); - } - return pengueno_1.Either.right(method); - }).get(); - exports2.requireMethod = requireMethod; - } + 'node_modules/@emprespresso/pengueno/dist/server/filter/method.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.requireMethod = void 0; + var pengueno_1 = require_dist2(); + var requireMethod = (methods) => (req) => + req + .flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.requireMethod)) + .map((t) => { + const { + req: { method } + } = t.get(); + if (!methods.includes(method)) { + const msg = "that's not how you pet me (\u22DF\uFE4F\u22DE)~"; + t.trace.traceScope(pengueno_1.LogLevel.WARN).trace(msg); + return pengueno_1.Either.left(new pengueno_1.PenguenoError(msg, 405)); + } + return pengueno_1.Either.right(method); + }) + .get(); + exports2.requireMethod = requireMethod; + } }); // node_modules/@emprespresso/pengueno/dist/server/filter/json.js var require_json = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/filter/json.js"(exports2) { - "use strict"; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.jsonModel = void 0; - var pengueno_1 = require_dist2(); - var ParseJsonMetric = pengueno_1.Metric.fromName("JsonParse").asResult(); - var jsonModel = (jsonTransformer) => (r) => r.flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.jsonModel)).flatMap(pengueno_1.TraceUtil.withMetricTrace(ParseJsonMetric)).map((j) => pengueno_1.Either.fromFailableAsync(j.get().req.json()).then((either) => either.mapLeft((errReason) => { - j.trace.traceScope(pengueno_1.LogLevel.WARN).trace(errReason); - return new pengueno_1.PenguenoError("seems to be invalid JSON (>//<) can you fix?", 400); - }))).flatMapAsync(pengueno_1.TraceUtil.promiseify(pengueno_1.TraceUtil.traceResultingEither(ParseJsonMetric))).map(pengueno_1.TraceUtil.promiseify((traceableEitherJson) => traceableEitherJson.get().mapRight((j) => traceableEitherJson.move(j)).flatMap(jsonTransformer))).get(); - exports2.jsonModel = jsonModel; - } + 'node_modules/@emprespresso/pengueno/dist/server/filter/json.js'(exports2) { + 'use strict'; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.jsonModel = void 0; + var pengueno_1 = require_dist2(); + var ParseJsonMetric = pengueno_1.Metric.fromName('JsonParse').asResult(); + var jsonModel = (jsonTransformer) => (r) => + r + .flatMap(pengueno_1.TraceUtil.withFunctionTrace(exports2.jsonModel)) + .flatMap(pengueno_1.TraceUtil.withMetricTrace(ParseJsonMetric)) + .map((j) => + pengueno_1.Either.fromFailableAsync(j.get().req.json()).then((either) => + either.mapLeft((errReason) => { + j.trace.traceScope(pengueno_1.LogLevel.WARN).trace(errReason); + return new pengueno_1.PenguenoError( + 'seems to be invalid JSON (>//<) can you fix?', + 400 + ); + }) + ) + ) + .flatMapAsync( + pengueno_1.TraceUtil.promiseify( + pengueno_1.TraceUtil.traceResultingEither(ParseJsonMetric) + ) + ) + .map( + pengueno_1.TraceUtil.promiseify((traceableEitherJson) => + traceableEitherJson + .get() + .mapRight((j) => traceableEitherJson.move(j)) + .flatMap(jsonTransformer) + ) + ) + .get(); + exports2.jsonModel = jsonModel; + } }); // node_modules/@emprespresso/pengueno/dist/server/filter/index.js var require_filter = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/filter/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.PenguenoError = exports2.ErrorSource = void 0; - var pengueno_1 = require_dist2(); - var ErrorSource; - (function(ErrorSource2) { - ErrorSource2["USER"] = "WARN"; - ErrorSource2["SYSTEM"] = "ERROR"; - })(ErrorSource || (exports2.ErrorSource = ErrorSource = {})); - var PenguenoError = class extends Error { - message; - status; - source; - constructor(message, status) { - super(message); - this.message = message; - this.status = status; - this.source = Math.floor(status / 100) === 4 ? ErrorSource.USER : ErrorSource.SYSTEM; - } - }; - exports2.PenguenoError = PenguenoError; - __exportStar(require_method2(), exports2); - __exportStar(require_json(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/filter/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.PenguenoError = exports2.ErrorSource = void 0; + var pengueno_1 = require_dist2(); + var ErrorSource; + (function (ErrorSource2) { + ErrorSource2['USER'] = 'WARN'; + ErrorSource2['SYSTEM'] = 'ERROR'; + })(ErrorSource || (exports2.ErrorSource = ErrorSource = {})); + var PenguenoError = class extends Error { + message; + status; + source; + constructor(message, status) { + super(message); + this.message = message; + this.status = status; + this.source = Math.floor(status / 100) === 4 ? ErrorSource.USER : ErrorSource.SYSTEM; + } + }; + exports2.PenguenoError = PenguenoError; + __exportStar(require_method2(), exports2); + __exportStar(require_json(), exports2); + } }); // node_modules/hono/dist/cjs/compose.js var require_compose = __commonJS({ - "node_modules/hono/dist/cjs/compose.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var compose_exports = {}; - __export(compose_exports, { - compose: () => compose - }); - module2.exports = __toCommonJS(compose_exports); - var compose = (middleware, onError, onNotFound) => { - return (context, next) => { - let index = -1; - return dispatch(0); - async function dispatch(i) { - if (i <= index) { - throw new Error("next() called multiple times"); - } - index = i; - let res; - let isError = false; - let handler; - if (middleware[i]) { - handler = middleware[i][0][0]; - context.req.routeIndex = i; - } else { - handler = i === middleware.length && next || void 0; - } - if (handler) { - try { - res = await handler(context, () => dispatch(i + 1)); - } catch (err) { - if (err instanceof Error && onError) { - context.error = err; - res = await onError(err, context); - isError = true; - } else { - throw err; - } - } - } else { - if (context.finalized === false && onNotFound) { - res = await onNotFound(context); - } - } - if (res && (context.finalized === false || isError)) { - context.res = res; - } - return context; - } - }; - }; - } + 'node_modules/hono/dist/cjs/compose.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var compose_exports = {}; + __export(compose_exports, { + compose: () => compose + }); + module2.exports = __toCommonJS(compose_exports); + var compose = (middleware, onError, onNotFound) => { + return (context, next) => { + let index = -1; + return dispatch(0); + async function dispatch(i) { + if (i <= index) { + throw new Error('next() called multiple times'); + } + index = i; + let res; + let isError = false; + let handler; + if (middleware[i]) { + handler = middleware[i][0][0]; + context.req.routeIndex = i; + } else { + handler = (i === middleware.length && next) || void 0; + } + if (handler) { + try { + res = await handler(context, () => dispatch(i + 1)); + } catch (err) { + if (err instanceof Error && onError) { + context.error = err; + res = await onError(err, context); + isError = true; + } else { + throw err; + } + } + } else { + if (context.finalized === false && onNotFound) { + res = await onNotFound(context); + } + } + if (res && (context.finalized === false || isError)) { + context.res = res; + } + return context; + } + }; + }; + } }); // node_modules/hono/dist/cjs/http-exception.js var require_http_exception = __commonJS({ - "node_modules/hono/dist/cjs/http-exception.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var http_exception_exports = {}; - __export(http_exception_exports, { - HTTPException: () => HTTPException - }); - module2.exports = __toCommonJS(http_exception_exports); - var HTTPException = class extends Error { - res; - status; - constructor(status = 500, options) { - super(options?.message, { cause: options?.cause }); - this.res = options?.res; - this.status = status; - } - getResponse() { - if (this.res) { - const newResponse = new Response(this.res.body, { - status: this.status, - headers: this.res.headers - }); - return newResponse; - } - return new Response(this.message, { - status: this.status - }); - } - }; - } + 'node_modules/hono/dist/cjs/http-exception.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var http_exception_exports = {}; + __export(http_exception_exports, { + HTTPException: () => HTTPException + }); + module2.exports = __toCommonJS(http_exception_exports); + var HTTPException = class extends Error { + res; + status; + constructor(status = 500, options) { + super(options?.message, { cause: options?.cause }); + this.res = options?.res; + this.status = status; + } + getResponse() { + if (this.res) { + const newResponse = new Response(this.res.body, { + status: this.status, + headers: this.res.headers + }); + return newResponse; + } + return new Response(this.message, { + status: this.status + }); + } + }; + } }); // node_modules/hono/dist/cjs/request/constants.js var require_constants = __commonJS({ - "node_modules/hono/dist/cjs/request/constants.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var constants_exports = {}; - __export(constants_exports, { - GET_MATCH_RESULT: () => GET_MATCH_RESULT - }); - module2.exports = __toCommonJS(constants_exports); - var GET_MATCH_RESULT = Symbol(); - } + 'node_modules/hono/dist/cjs/request/constants.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var constants_exports = {}; + __export(constants_exports, { + GET_MATCH_RESULT: () => GET_MATCH_RESULT + }); + module2.exports = __toCommonJS(constants_exports); + var GET_MATCH_RESULT = Symbol(); + } }); // node_modules/hono/dist/cjs/utils/body.js var require_body2 = __commonJS({ - "node_modules/hono/dist/cjs/utils/body.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var body_exports = {}; - __export(body_exports, { - parseBody: () => parseBody - }); - module2.exports = __toCommonJS(body_exports); - var import_request = require_request2(); - var parseBody = async (request, options = /* @__PURE__ */ Object.create(null)) => { - const { all = false, dot = false } = options; - const headers = request instanceof import_request.HonoRequest ? request.raw.headers : request.headers; - const contentType = headers.get("Content-Type"); - if (contentType?.startsWith("multipart/form-data") || contentType?.startsWith("application/x-www-form-urlencoded")) { - return parseFormData(request, { all, dot }); - } - return {}; - }; - async function parseFormData(request, options) { - const formData = await request.formData(); - if (formData) { - return convertFormDataToBodyData(formData, options); - } - return {}; - } - function convertFormDataToBodyData(formData, options) { - const form = /* @__PURE__ */ Object.create(null); - formData.forEach((value, key) => { - const shouldParseAllValues = options.all || key.endsWith("[]"); - if (!shouldParseAllValues) { - form[key] = value; - } else { - handleParsingAllValues(form, key, value); - } - }); - if (options.dot) { - Object.entries(form).forEach(([key, value]) => { - const shouldParseDotValues = key.includes("."); - if (shouldParseDotValues) { - handleParsingNestedValues(form, key, value); - delete form[key]; - } - }); - } - return form; - } - var handleParsingAllValues = (form, key, value) => { - if (form[key] !== void 0) { - if (Array.isArray(form[key])) { - ; - form[key].push(value); - } else { - form[key] = [form[key], value]; - } - } else { - if (!key.endsWith("[]")) { - form[key] = value; - } else { - form[key] = [value]; - } - } - }; - var handleParsingNestedValues = (form, key, value) => { - let nestedForm = form; - const keys = key.split("."); - keys.forEach((key2, index) => { - if (index === keys.length - 1) { - nestedForm[key2] = value; - } else { - if (!nestedForm[key2] || typeof nestedForm[key2] !== "object" || Array.isArray(nestedForm[key2]) || nestedForm[key2] instanceof File) { - nestedForm[key2] = /* @__PURE__ */ Object.create(null); - } - nestedForm = nestedForm[key2]; - } - }); - }; - } + 'node_modules/hono/dist/cjs/utils/body.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var body_exports = {}; + __export(body_exports, { + parseBody: () => parseBody + }); + module2.exports = __toCommonJS(body_exports); + var import_request = require_request2(); + var parseBody = async (request, options = /* @__PURE__ */ Object.create(null)) => { + const { all = false, dot = false } = options; + const headers = + request instanceof import_request.HonoRequest ? request.raw.headers : request.headers; + const contentType = headers.get('Content-Type'); + if ( + contentType?.startsWith('multipart/form-data') || + contentType?.startsWith('application/x-www-form-urlencoded') + ) { + return parseFormData(request, { all, dot }); + } + return {}; + }; + async function parseFormData(request, options) { + const formData = await request.formData(); + if (formData) { + return convertFormDataToBodyData(formData, options); + } + return {}; + } + function convertFormDataToBodyData(formData, options) { + const form = /* @__PURE__ */ Object.create(null); + formData.forEach((value, key) => { + const shouldParseAllValues = options.all || key.endsWith('[]'); + if (!shouldParseAllValues) { + form[key] = value; + } else { + handleParsingAllValues(form, key, value); + } + }); + if (options.dot) { + Object.entries(form).forEach(([key, value]) => { + const shouldParseDotValues = key.includes('.'); + if (shouldParseDotValues) { + handleParsingNestedValues(form, key, value); + delete form[key]; + } + }); + } + return form; + } + var handleParsingAllValues = (form, key, value) => { + if (form[key] !== void 0) { + if (Array.isArray(form[key])) { + form[key].push(value); + } else { + form[key] = [form[key], value]; + } + } else { + if (!key.endsWith('[]')) { + form[key] = value; + } else { + form[key] = [value]; + } + } + }; + var handleParsingNestedValues = (form, key, value) => { + let nestedForm = form; + const keys = key.split('.'); + keys.forEach((key2, index) => { + if (index === keys.length - 1) { + nestedForm[key2] = value; + } else { + if ( + !nestedForm[key2] || + typeof nestedForm[key2] !== 'object' || + Array.isArray(nestedForm[key2]) || + nestedForm[key2] instanceof File + ) { + nestedForm[key2] = /* @__PURE__ */ Object.create(null); + } + nestedForm = nestedForm[key2]; + } + }); + }; + } }); // node_modules/hono/dist/cjs/utils/url.js var require_url = __commonJS({ - "node_modules/hono/dist/cjs/utils/url.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var url_exports = {}; - __export(url_exports, { - checkOptionalParameter: () => checkOptionalParameter, - decodeURIComponent_: () => decodeURIComponent_, - getPath: () => getPath, - getPathNoStrict: () => getPathNoStrict, - getPattern: () => getPattern, - getQueryParam: () => getQueryParam, - getQueryParams: () => getQueryParams, - getQueryStrings: () => getQueryStrings, - mergePath: () => mergePath, - splitPath: () => splitPath, - splitRoutingPath: () => splitRoutingPath, - tryDecode: () => tryDecode - }); - module2.exports = __toCommonJS(url_exports); - var splitPath = (path) => { - const paths = path.split("/"); - if (paths[0] === "") { - paths.shift(); - } - return paths; - }; - var splitRoutingPath = (routePath) => { - const { groups, path } = extractGroupsFromPath(routePath); - const paths = splitPath(path); - return replaceGroupMarks(paths, groups); - }; - var extractGroupsFromPath = (path) => { - const groups = []; - path = path.replace(/\{[^}]+\}/g, (match, index) => { - const mark = `@${index}`; - groups.push([mark, match]); - return mark; - }); - return { groups, path }; - }; - var replaceGroupMarks = (paths, groups) => { - for (let i = groups.length - 1; i >= 0; i--) { - const [mark] = groups[i]; - for (let j = paths.length - 1; j >= 0; j--) { - if (paths[j].includes(mark)) { - paths[j] = paths[j].replace(mark, groups[i][1]); - break; - } - } - } - return paths; - }; - var patternCache = {}; - var getPattern = (label, next) => { - if (label === "*") { - return "*"; - } - const match = label.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/); - if (match) { - const cacheKey = `${label}#${next}`; - if (!patternCache[cacheKey]) { - if (match[2]) { - patternCache[cacheKey] = next && next[0] !== ":" && next[0] !== "*" ? [cacheKey, match[1], new RegExp(`^${match[2]}(?=/${next})`)] : [label, match[1], new RegExp(`^${match[2]}$`)]; - } else { - patternCache[cacheKey] = [label, match[1], true]; - } - } - return patternCache[cacheKey]; - } - return null; - }; - var tryDecode = (str, decoder) => { - try { - return decoder(str); - } catch { - return str.replace(/(?:%[0-9A-Fa-f]{2})+/g, (match) => { - try { - return decoder(match); - } catch { - return match; - } - }); - } - }; - var tryDecodeURI = (str) => tryDecode(str, decodeURI); - var getPath = (request) => { - const url = request.url; - const start = url.indexOf("/", url.indexOf(":") + 4); - let i = start; - for (; i < url.length; i++) { - const charCode = url.charCodeAt(i); - if (charCode === 37) { - const queryIndex = url.indexOf("?", i); - const path = url.slice(start, queryIndex === -1 ? void 0 : queryIndex); - return tryDecodeURI(path.includes("%25") ? path.replace(/%25/g, "%2525") : path); - } else if (charCode === 63) { - break; - } - } - return url.slice(start, i); - }; - var getQueryStrings = (url) => { - const queryIndex = url.indexOf("?", 8); - return queryIndex === -1 ? "" : "?" + url.slice(queryIndex + 1); - }; - var getPathNoStrict = (request) => { - const result = getPath(request); - return result.length > 1 && result.at(-1) === "/" ? result.slice(0, -1) : result; - }; - var mergePath = (base, sub, ...rest) => { - if (rest.length) { - sub = mergePath(sub, ...rest); - } - return `${base?.[0] === "/" ? "" : "/"}${base}${sub === "/" ? "" : `${base?.at(-1) === "/" ? "" : "/"}${sub?.[0] === "/" ? sub.slice(1) : sub}`}`; - }; - var checkOptionalParameter = (path) => { - if (path.charCodeAt(path.length - 1) !== 63 || !path.includes(":")) { - return null; - } - const segments = path.split("/"); - const results = []; - let basePath = ""; - segments.forEach((segment) => { - if (segment !== "" && !/\:/.test(segment)) { - basePath += "/" + segment; - } else if (/\:/.test(segment)) { - if (/\?/.test(segment)) { - if (results.length === 0 && basePath === "") { - results.push("/"); - } else { - results.push(basePath); - } - const optionalSegment = segment.replace("?", ""); - basePath += "/" + optionalSegment; - results.push(basePath); - } else { - basePath += "/" + segment; - } - } - }); - return results.filter((v, i, a) => a.indexOf(v) === i); - }; - var _decodeURI = (value) => { - if (!/[%+]/.test(value)) { - return value; - } - if (value.indexOf("+") !== -1) { - value = value.replace(/\+/g, " "); - } - return value.indexOf("%") !== -1 ? tryDecode(value, decodeURIComponent_) : value; - }; - var _getQueryParam = (url, key, multiple) => { - let encoded; - if (!multiple && key && !/[%+]/.test(key)) { - let keyIndex2 = url.indexOf("?", 8); - if (keyIndex2 === -1) { - return void 0; - } - if (!url.startsWith(key, keyIndex2 + 1)) { - keyIndex2 = url.indexOf(`&${key}`, keyIndex2 + 1); - } - while (keyIndex2 !== -1) { - const trailingKeyCode = url.charCodeAt(keyIndex2 + key.length + 1); - if (trailingKeyCode === 61) { - const valueIndex = keyIndex2 + key.length + 2; - const endIndex = url.indexOf("&", valueIndex); - return _decodeURI(url.slice(valueIndex, endIndex === -1 ? void 0 : endIndex)); - } else if (trailingKeyCode == 38 || isNaN(trailingKeyCode)) { - return ""; - } - keyIndex2 = url.indexOf(`&${key}`, keyIndex2 + 1); - } - encoded = /[%+]/.test(url); - if (!encoded) { - return void 0; - } - } - const results = {}; - encoded ??= /[%+]/.test(url); - let keyIndex = url.indexOf("?", 8); - while (keyIndex !== -1) { - const nextKeyIndex = url.indexOf("&", keyIndex + 1); - let valueIndex = url.indexOf("=", keyIndex); - if (valueIndex > nextKeyIndex && nextKeyIndex !== -1) { - valueIndex = -1; - } - let name = url.slice( - keyIndex + 1, - valueIndex === -1 ? nextKeyIndex === -1 ? void 0 : nextKeyIndex : valueIndex - ); - if (encoded) { - name = _decodeURI(name); - } - keyIndex = nextKeyIndex; - if (name === "") { - continue; - } - let value; - if (valueIndex === -1) { - value = ""; - } else { - value = url.slice(valueIndex + 1, nextKeyIndex === -1 ? void 0 : nextKeyIndex); - if (encoded) { - value = _decodeURI(value); - } - } - if (multiple) { - if (!(results[name] && Array.isArray(results[name]))) { - results[name] = []; - } - ; - results[name].push(value); - } else { - results[name] ??= value; - } - } - return key ? results[key] : results; - }; - var getQueryParam = _getQueryParam; - var getQueryParams = (url, key) => { - return _getQueryParam(url, key, true); - }; - var decodeURIComponent_ = decodeURIComponent; - } + 'node_modules/hono/dist/cjs/utils/url.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var url_exports = {}; + __export(url_exports, { + checkOptionalParameter: () => checkOptionalParameter, + decodeURIComponent_: () => decodeURIComponent_, + getPath: () => getPath, + getPathNoStrict: () => getPathNoStrict, + getPattern: () => getPattern, + getQueryParam: () => getQueryParam, + getQueryParams: () => getQueryParams, + getQueryStrings: () => getQueryStrings, + mergePath: () => mergePath, + splitPath: () => splitPath, + splitRoutingPath: () => splitRoutingPath, + tryDecode: () => tryDecode + }); + module2.exports = __toCommonJS(url_exports); + var splitPath = (path) => { + const paths = path.split('/'); + if (paths[0] === '') { + paths.shift(); + } + return paths; + }; + var splitRoutingPath = (routePath) => { + const { groups, path } = extractGroupsFromPath(routePath); + const paths = splitPath(path); + return replaceGroupMarks(paths, groups); + }; + var extractGroupsFromPath = (path) => { + const groups = []; + path = path.replace(/\{[^}]+\}/g, (match, index) => { + const mark = `@${index}`; + groups.push([mark, match]); + return mark; + }); + return { groups, path }; + }; + var replaceGroupMarks = (paths, groups) => { + for (let i = groups.length - 1; i >= 0; i--) { + const [mark] = groups[i]; + for (let j = paths.length - 1; j >= 0; j--) { + if (paths[j].includes(mark)) { + paths[j] = paths[j].replace(mark, groups[i][1]); + break; + } + } + } + return paths; + }; + var patternCache = {}; + var getPattern = (label, next) => { + if (label === '*') { + return '*'; + } + const match = label.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/); + if (match) { + const cacheKey = `${label}#${next}`; + if (!patternCache[cacheKey]) { + if (match[2]) { + patternCache[cacheKey] = + next && next[0] !== ':' && next[0] !== '*' + ? [cacheKey, match[1], new RegExp(`^${match[2]}(?=/${next})`)] + : [label, match[1], new RegExp(`^${match[2]}$`)]; + } else { + patternCache[cacheKey] = [label, match[1], true]; + } + } + return patternCache[cacheKey]; + } + return null; + }; + var tryDecode = (str, decoder) => { + try { + return decoder(str); + } catch { + return str.replace(/(?:%[0-9A-Fa-f]{2})+/g, (match) => { + try { + return decoder(match); + } catch { + return match; + } + }); + } + }; + var tryDecodeURI = (str) => tryDecode(str, decodeURI); + var getPath = (request) => { + const url = request.url; + const start = url.indexOf('/', url.indexOf(':') + 4); + let i = start; + for (; i < url.length; i++) { + const charCode = url.charCodeAt(i); + if (charCode === 37) { + const queryIndex = url.indexOf('?', i); + const path = url.slice(start, queryIndex === -1 ? void 0 : queryIndex); + return tryDecodeURI(path.includes('%25') ? path.replace(/%25/g, '%2525') : path); + } else if (charCode === 63) { + break; + } + } + return url.slice(start, i); + }; + var getQueryStrings = (url) => { + const queryIndex = url.indexOf('?', 8); + return queryIndex === -1 ? '' : '?' + url.slice(queryIndex + 1); + }; + var getPathNoStrict = (request) => { + const result = getPath(request); + return result.length > 1 && result.at(-1) === '/' ? result.slice(0, -1) : result; + }; + var mergePath = (base, sub, ...rest) => { + if (rest.length) { + sub = mergePath(sub, ...rest); + } + return `${base?.[0] === '/' ? '' : '/'}${base}${sub === '/' ? '' : `${base?.at(-1) === '/' ? '' : '/'}${sub?.[0] === '/' ? sub.slice(1) : sub}`}`; + }; + var checkOptionalParameter = (path) => { + if (path.charCodeAt(path.length - 1) !== 63 || !path.includes(':')) { + return null; + } + const segments = path.split('/'); + const results = []; + let basePath = ''; + segments.forEach((segment) => { + if (segment !== '' && !/\:/.test(segment)) { + basePath += '/' + segment; + } else if (/\:/.test(segment)) { + if (/\?/.test(segment)) { + if (results.length === 0 && basePath === '') { + results.push('/'); + } else { + results.push(basePath); + } + const optionalSegment = segment.replace('?', ''); + basePath += '/' + optionalSegment; + results.push(basePath); + } else { + basePath += '/' + segment; + } + } + }); + return results.filter((v, i, a) => a.indexOf(v) === i); + }; + var _decodeURI = (value) => { + if (!/[%+]/.test(value)) { + return value; + } + if (value.indexOf('+') !== -1) { + value = value.replace(/\+/g, ' '); + } + return value.indexOf('%') !== -1 ? tryDecode(value, decodeURIComponent_) : value; + }; + var _getQueryParam = (url, key, multiple) => { + let encoded; + if (!multiple && key && !/[%+]/.test(key)) { + let keyIndex2 = url.indexOf('?', 8); + if (keyIndex2 === -1) { + return void 0; + } + if (!url.startsWith(key, keyIndex2 + 1)) { + keyIndex2 = url.indexOf(`&${key}`, keyIndex2 + 1); + } + while (keyIndex2 !== -1) { + const trailingKeyCode = url.charCodeAt(keyIndex2 + key.length + 1); + if (trailingKeyCode === 61) { + const valueIndex = keyIndex2 + key.length + 2; + const endIndex = url.indexOf('&', valueIndex); + return _decodeURI(url.slice(valueIndex, endIndex === -1 ? void 0 : endIndex)); + } else if (trailingKeyCode == 38 || isNaN(trailingKeyCode)) { + return ''; + } + keyIndex2 = url.indexOf(`&${key}`, keyIndex2 + 1); + } + encoded = /[%+]/.test(url); + if (!encoded) { + return void 0; + } + } + const results = {}; + encoded ??= /[%+]/.test(url); + let keyIndex = url.indexOf('?', 8); + while (keyIndex !== -1) { + const nextKeyIndex = url.indexOf('&', keyIndex + 1); + let valueIndex = url.indexOf('=', keyIndex); + if (valueIndex > nextKeyIndex && nextKeyIndex !== -1) { + valueIndex = -1; + } + let name = url.slice( + keyIndex + 1, + valueIndex === -1 ? (nextKeyIndex === -1 ? void 0 : nextKeyIndex) : valueIndex + ); + if (encoded) { + name = _decodeURI(name); + } + keyIndex = nextKeyIndex; + if (name === '') { + continue; + } + let value; + if (valueIndex === -1) { + value = ''; + } else { + value = url.slice(valueIndex + 1, nextKeyIndex === -1 ? void 0 : nextKeyIndex); + if (encoded) { + value = _decodeURI(value); + } + } + if (multiple) { + if (!(results[name] && Array.isArray(results[name]))) { + results[name] = []; + } + results[name].push(value); + } else { + results[name] ??= value; + } + } + return key ? results[key] : results; + }; + var getQueryParam = _getQueryParam; + var getQueryParams = (url, key) => { + return _getQueryParam(url, key, true); + }; + var decodeURIComponent_ = decodeURIComponent; + } }); // node_modules/hono/dist/cjs/request.js var require_request2 = __commonJS({ - "node_modules/hono/dist/cjs/request.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var request_exports = {}; - __export(request_exports, { - HonoRequest: () => HonoRequest, - cloneRawRequest: () => cloneRawRequest - }); - module2.exports = __toCommonJS(request_exports); - var import_http_exception = require_http_exception(); - var import_constants = require_constants(); - var import_body = require_body2(); - var import_url = require_url(); - var tryDecodeURIComponent = (str) => (0, import_url.tryDecode)(str, import_url.decodeURIComponent_); - var HonoRequest = class { - raw; - #validatedData; - #matchResult; - routeIndex = 0; - path; - bodyCache = {}; - constructor(request, path = "/", matchResult = [[]]) { - this.raw = request; - this.path = path; - this.#matchResult = matchResult; - this.#validatedData = {}; - } - param(key) { - return key ? this.#getDecodedParam(key) : this.#getAllDecodedParams(); - } - #getDecodedParam(key) { - const paramKey = this.#matchResult[0][this.routeIndex][1][key]; - const param = this.#getParamValue(paramKey); - return param && /\%/.test(param) ? tryDecodeURIComponent(param) : param; - } - #getAllDecodedParams() { - const decoded = {}; - const keys = Object.keys(this.#matchResult[0][this.routeIndex][1]); - for (const key of keys) { - const value = this.#getParamValue(this.#matchResult[0][this.routeIndex][1][key]); - if (value !== void 0) { - decoded[key] = /\%/.test(value) ? tryDecodeURIComponent(value) : value; - } - } - return decoded; - } - #getParamValue(paramKey) { - return this.#matchResult[1] ? this.#matchResult[1][paramKey] : paramKey; - } - query(key) { - return (0, import_url.getQueryParam)(this.url, key); - } - queries(key) { - return (0, import_url.getQueryParams)(this.url, key); - } - header(name) { - if (name) { - return this.raw.headers.get(name) ?? void 0; - } - const headerData = {}; - this.raw.headers.forEach((value, key) => { - headerData[key] = value; - }); - return headerData; - } - async parseBody(options) { - return this.bodyCache.parsedBody ??= await (0, import_body.parseBody)(this, options); - } - #cachedBody = (key) => { - const { bodyCache, raw } = this; - const cachedBody = bodyCache[key]; - if (cachedBody) { - return cachedBody; - } - const anyCachedKey = Object.keys(bodyCache)[0]; - if (anyCachedKey) { - return bodyCache[anyCachedKey].then((body) => { - if (anyCachedKey === "json") { - body = JSON.stringify(body); - } - return new Response(body)[key](); - }); - } - return bodyCache[key] = raw[key](); - }; - json() { - return this.#cachedBody("text").then((text) => JSON.parse(text)); - } - text() { - return this.#cachedBody("text"); - } - arrayBuffer() { - return this.#cachedBody("arrayBuffer"); - } - blob() { - return this.#cachedBody("blob"); - } - formData() { - return this.#cachedBody("formData"); - } - addValidatedData(target, data) { - this.#validatedData[target] = data; - } - valid(target) { - return this.#validatedData[target]; - } - get url() { - return this.raw.url; - } - get method() { - return this.raw.method; - } - get [import_constants.GET_MATCH_RESULT]() { - return this.#matchResult; - } - get matchedRoutes() { - return this.#matchResult[0].map(([[, route]]) => route); - } - get routePath() { - return this.#matchResult[0].map(([[, route]]) => route)[this.routeIndex].path; - } - }; - var cloneRawRequest = async (req) => { - if (!req.raw.bodyUsed) { - return req.raw.clone(); - } - const cacheKey = Object.keys(req.bodyCache)[0]; - if (!cacheKey) { - throw new import_http_exception.HTTPException(500, { - message: "Cannot clone request: body was already consumed and not cached. Please use HonoRequest methods (e.g., req.json(), req.text()) instead of consuming req.raw directly." - }); - } - const requestInit = { - body: await req[cacheKey](), - cache: req.raw.cache, - credentials: req.raw.credentials, - headers: req.header(), - integrity: req.raw.integrity, - keepalive: req.raw.keepalive, - method: req.method, - mode: req.raw.mode, - redirect: req.raw.redirect, - referrer: req.raw.referrer, - referrerPolicy: req.raw.referrerPolicy, - signal: req.raw.signal - }; - return new Request(req.url, requestInit); - }; - } + 'node_modules/hono/dist/cjs/request.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var request_exports = {}; + __export(request_exports, { + HonoRequest: () => HonoRequest, + cloneRawRequest: () => cloneRawRequest + }); + module2.exports = __toCommonJS(request_exports); + var import_http_exception = require_http_exception(); + var import_constants = require_constants(); + var import_body = require_body2(); + var import_url = require_url(); + var tryDecodeURIComponent = (str) => + (0, import_url.tryDecode)(str, import_url.decodeURIComponent_); + var HonoRequest = class { + raw; + #validatedData; + #matchResult; + routeIndex = 0; + path; + bodyCache = {}; + constructor(request, path = '/', matchResult = [[]]) { + this.raw = request; + this.path = path; + this.#matchResult = matchResult; + this.#validatedData = {}; + } + param(key) { + return key ? this.#getDecodedParam(key) : this.#getAllDecodedParams(); + } + #getDecodedParam(key) { + const paramKey = this.#matchResult[0][this.routeIndex][1][key]; + const param = this.#getParamValue(paramKey); + return param && /\%/.test(param) ? tryDecodeURIComponent(param) : param; + } + #getAllDecodedParams() { + const decoded = {}; + const keys = Object.keys(this.#matchResult[0][this.routeIndex][1]); + for (const key of keys) { + const value = this.#getParamValue(this.#matchResult[0][this.routeIndex][1][key]); + if (value !== void 0) { + decoded[key] = /\%/.test(value) ? tryDecodeURIComponent(value) : value; + } + } + return decoded; + } + #getParamValue(paramKey) { + return this.#matchResult[1] ? this.#matchResult[1][paramKey] : paramKey; + } + query(key) { + return (0, import_url.getQueryParam)(this.url, key); + } + queries(key) { + return (0, import_url.getQueryParams)(this.url, key); + } + header(name) { + if (name) { + return this.raw.headers.get(name) ?? void 0; + } + const headerData = {}; + this.raw.headers.forEach((value, key) => { + headerData[key] = value; + }); + return headerData; + } + async parseBody(options) { + return (this.bodyCache.parsedBody ??= await (0, import_body.parseBody)(this, options)); + } + #cachedBody = (key) => { + const { bodyCache, raw } = this; + const cachedBody = bodyCache[key]; + if (cachedBody) { + return cachedBody; + } + const anyCachedKey = Object.keys(bodyCache)[0]; + if (anyCachedKey) { + return bodyCache[anyCachedKey].then((body) => { + if (anyCachedKey === 'json') { + body = JSON.stringify(body); + } + return new Response(body)[key](); + }); + } + return (bodyCache[key] = raw[key]()); + }; + json() { + return this.#cachedBody('text').then((text) => JSON.parse(text)); + } + text() { + return this.#cachedBody('text'); + } + arrayBuffer() { + return this.#cachedBody('arrayBuffer'); + } + blob() { + return this.#cachedBody('blob'); + } + formData() { + return this.#cachedBody('formData'); + } + addValidatedData(target, data) { + this.#validatedData[target] = data; + } + valid(target) { + return this.#validatedData[target]; + } + get url() { + return this.raw.url; + } + get method() { + return this.raw.method; + } + get [import_constants.GET_MATCH_RESULT]() { + return this.#matchResult; + } + get matchedRoutes() { + return this.#matchResult[0].map(([[, route]]) => route); + } + get routePath() { + return this.#matchResult[0].map(([[, route]]) => route)[this.routeIndex].path; + } + }; + var cloneRawRequest = async (req) => { + if (!req.raw.bodyUsed) { + return req.raw.clone(); + } + const cacheKey = Object.keys(req.bodyCache)[0]; + if (!cacheKey) { + throw new import_http_exception.HTTPException(500, { + message: + 'Cannot clone request: body was already consumed and not cached. Please use HonoRequest methods (e.g., req.json(), req.text()) instead of consuming req.raw directly.' + }); + } + const requestInit = { + body: await req[cacheKey](), + cache: req.raw.cache, + credentials: req.raw.credentials, + headers: req.header(), + integrity: req.raw.integrity, + keepalive: req.raw.keepalive, + method: req.method, + mode: req.raw.mode, + redirect: req.raw.redirect, + referrer: req.raw.referrer, + referrerPolicy: req.raw.referrerPolicy, + signal: req.raw.signal + }; + return new Request(req.url, requestInit); + }; + } }); // node_modules/hono/dist/cjs/utils/html.js var require_html = __commonJS({ - "node_modules/hono/dist/cjs/utils/html.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var html_exports = {}; - __export(html_exports, { - HtmlEscapedCallbackPhase: () => HtmlEscapedCallbackPhase, - escapeToBuffer: () => escapeToBuffer, - raw: () => raw, - resolveCallback: () => resolveCallback, - resolveCallbackSync: () => resolveCallbackSync, - stringBufferToString: () => stringBufferToString - }); - module2.exports = __toCommonJS(html_exports); - var HtmlEscapedCallbackPhase = { - Stringify: 1, - BeforeStream: 2, - Stream: 3 - }; - var raw = (value, callbacks) => { - const escapedString = new String(value); - escapedString.isEscaped = true; - escapedString.callbacks = callbacks; - return escapedString; - }; - var escapeRe = /[&<>'"]/; - var stringBufferToString = async (buffer, callbacks) => { - let str = ""; - callbacks ||= []; - const resolvedBuffer = await Promise.all(buffer); - for (let i = resolvedBuffer.length - 1; ; i--) { - str += resolvedBuffer[i]; - i--; - if (i < 0) { - break; - } - let r = resolvedBuffer[i]; - if (typeof r === "object") { - callbacks.push(...r.callbacks || []); - } - const isEscaped = r.isEscaped; - r = await (typeof r === "object" ? r.toString() : r); - if (typeof r === "object") { - callbacks.push(...r.callbacks || []); - } - if (r.isEscaped ?? isEscaped) { - str += r; - } else { - const buf = [str]; - escapeToBuffer(r, buf); - str = buf[0]; - } - } - return raw(str, callbacks); - }; - var escapeToBuffer = (str, buffer) => { - const match = str.search(escapeRe); - if (match === -1) { - buffer[0] += str; - return; - } - let escape; - let index; - let lastIndex = 0; - for (index = match; index < str.length; index++) { - switch (str.charCodeAt(index)) { - case 34: - escape = """; - break; - case 39: - escape = "'"; - break; - case 38: - escape = "&"; - break; - case 60: - escape = "<"; - break; - case 62: - escape = ">"; - break; - default: - continue; - } - buffer[0] += str.substring(lastIndex, index) + escape; - lastIndex = index + 1; - } - buffer[0] += str.substring(lastIndex, index); - }; - var resolveCallbackSync = (str) => { - const callbacks = str.callbacks; - if (!callbacks?.length) { - return str; - } - const buffer = [str]; - const context = {}; - callbacks.forEach((c) => c({ phase: HtmlEscapedCallbackPhase.Stringify, buffer, context })); - return buffer[0]; - }; - var resolveCallback = async (str, phase, preserveCallbacks, context, buffer) => { - if (typeof str === "object" && !(str instanceof String)) { - if (!(str instanceof Promise)) { - str = str.toString(); - } - if (str instanceof Promise) { - str = await str; - } - } - const callbacks = str.callbacks; - if (!callbacks?.length) { - return Promise.resolve(str); - } - if (buffer) { - buffer[0] += str; - } else { - buffer = [str]; - } - const resStr = Promise.all(callbacks.map((c) => c({ phase, buffer, context }))).then( - (res) => Promise.all( - res.filter(Boolean).map((str2) => resolveCallback(str2, phase, false, context, buffer)) - ).then(() => buffer[0]) - ); - if (preserveCallbacks) { - return raw(await resStr, callbacks); - } else { - return resStr; - } - }; - } + 'node_modules/hono/dist/cjs/utils/html.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var html_exports = {}; + __export(html_exports, { + HtmlEscapedCallbackPhase: () => HtmlEscapedCallbackPhase, + escapeToBuffer: () => escapeToBuffer, + raw: () => raw, + resolveCallback: () => resolveCallback, + resolveCallbackSync: () => resolveCallbackSync, + stringBufferToString: () => stringBufferToString + }); + module2.exports = __toCommonJS(html_exports); + var HtmlEscapedCallbackPhase = { + Stringify: 1, + BeforeStream: 2, + Stream: 3 + }; + var raw = (value, callbacks) => { + const escapedString = new String(value); + escapedString.isEscaped = true; + escapedString.callbacks = callbacks; + return escapedString; + }; + var escapeRe = /[&<>'"]/; + var stringBufferToString = async (buffer, callbacks) => { + let str = ''; + callbacks ||= []; + const resolvedBuffer = await Promise.all(buffer); + for (let i = resolvedBuffer.length - 1; ; i--) { + str += resolvedBuffer[i]; + i--; + if (i < 0) { + break; + } + let r = resolvedBuffer[i]; + if (typeof r === 'object') { + callbacks.push(...(r.callbacks || [])); + } + const isEscaped = r.isEscaped; + r = await (typeof r === 'object' ? r.toString() : r); + if (typeof r === 'object') { + callbacks.push(...(r.callbacks || [])); + } + if (r.isEscaped ?? isEscaped) { + str += r; + } else { + const buf = [str]; + escapeToBuffer(r, buf); + str = buf[0]; + } + } + return raw(str, callbacks); + }; + var escapeToBuffer = (str, buffer) => { + const match = str.search(escapeRe); + if (match === -1) { + buffer[0] += str; + return; + } + let escape; + let index; + let lastIndex = 0; + for (index = match; index < str.length; index++) { + switch (str.charCodeAt(index)) { + case 34: + escape = '"'; + break; + case 39: + escape = '''; + break; + case 38: + escape = '&'; + break; + case 60: + escape = '<'; + break; + case 62: + escape = '>'; + break; + default: + continue; + } + buffer[0] += str.substring(lastIndex, index) + escape; + lastIndex = index + 1; + } + buffer[0] += str.substring(lastIndex, index); + }; + var resolveCallbackSync = (str) => { + const callbacks = str.callbacks; + if (!callbacks?.length) { + return str; + } + const buffer = [str]; + const context = {}; + callbacks.forEach((c) => c({ phase: HtmlEscapedCallbackPhase.Stringify, buffer, context })); + return buffer[0]; + }; + var resolveCallback = async (str, phase, preserveCallbacks, context, buffer) => { + if (typeof str === 'object' && !(str instanceof String)) { + if (!(str instanceof Promise)) { + str = str.toString(); + } + if (str instanceof Promise) { + str = await str; + } + } + const callbacks = str.callbacks; + if (!callbacks?.length) { + return Promise.resolve(str); + } + if (buffer) { + buffer[0] += str; + } else { + buffer = [str]; + } + const resStr = Promise.all(callbacks.map((c) => c({ phase, buffer, context }))).then((res) => + Promise.all( + res.filter(Boolean).map((str2) => resolveCallback(str2, phase, false, context, buffer)) + ).then(() => buffer[0]) + ); + if (preserveCallbacks) { + return raw(await resStr, callbacks); + } else { + return resStr; + } + }; + } }); // node_modules/hono/dist/cjs/context.js var require_context = __commonJS({ - "node_modules/hono/dist/cjs/context.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var context_exports = {}; - __export(context_exports, { - Context: () => Context, - TEXT_PLAIN: () => TEXT_PLAIN - }); - module2.exports = __toCommonJS(context_exports); - var import_request = require_request2(); - var import_html = require_html(); - var TEXT_PLAIN = "text/plain; charset=UTF-8"; - var setDefaultContentType = (contentType, headers) => { - return { - "Content-Type": contentType, - ...headers - }; - }; - var Context = class { - #rawRequest; - #req; - env = {}; - #var; - finalized = false; - error; - #status; - #executionCtx; - #res; - #layout; - #renderer; - #notFoundHandler; - #preparedHeaders; - #matchResult; - #path; - constructor(req, options) { - this.#rawRequest = req; - if (options) { - this.#executionCtx = options.executionCtx; - this.env = options.env; - this.#notFoundHandler = options.notFoundHandler; - this.#path = options.path; - this.#matchResult = options.matchResult; - } - } - get req() { - this.#req ??= new import_request.HonoRequest(this.#rawRequest, this.#path, this.#matchResult); - return this.#req; - } - get event() { - if (this.#executionCtx && "respondWith" in this.#executionCtx) { - return this.#executionCtx; - } else { - throw Error("This context has no FetchEvent"); - } - } - get executionCtx() { - if (this.#executionCtx) { - return this.#executionCtx; - } else { - throw Error("This context has no ExecutionContext"); - } - } - get res() { - return this.#res ||= new Response(null, { - headers: this.#preparedHeaders ??= new Headers() - }); - } - set res(_res) { - if (this.#res && _res) { - _res = new Response(_res.body, _res); - for (const [k, v] of this.#res.headers.entries()) { - if (k === "content-type") { - continue; - } - if (k === "set-cookie") { - const cookies = this.#res.headers.getSetCookie(); - _res.headers.delete("set-cookie"); - for (const cookie of cookies) { - _res.headers.append("set-cookie", cookie); - } - } else { - _res.headers.set(k, v); - } - } - } - this.#res = _res; - this.finalized = true; - } - render = (...args) => { - this.#renderer ??= (content) => this.html(content); - return this.#renderer(...args); - }; - setLayout = (layout) => this.#layout = layout; - getLayout = () => this.#layout; - setRenderer = (renderer) => { - this.#renderer = renderer; - }; - header = (name, value, options) => { - if (this.finalized) { - this.#res = new Response(this.#res.body, this.#res); - } - const headers = this.#res ? this.#res.headers : this.#preparedHeaders ??= new Headers(); - if (value === void 0) { - headers.delete(name); - } else if (options?.append) { - headers.append(name, value); - } else { - headers.set(name, value); - } - }; - status = (status) => { - this.#status = status; - }; - set = (key, value) => { - this.#var ??= /* @__PURE__ */ new Map(); - this.#var.set(key, value); - }; - get = (key) => { - return this.#var ? this.#var.get(key) : void 0; - }; - get var() { - if (!this.#var) { - return {}; - } - return Object.fromEntries(this.#var); - } - #newResponse(data, arg, headers) { - const responseHeaders = this.#res ? new Headers(this.#res.headers) : this.#preparedHeaders ?? new Headers(); - if (typeof arg === "object" && "headers" in arg) { - const argHeaders = arg.headers instanceof Headers ? arg.headers : new Headers(arg.headers); - for (const [key, value] of argHeaders) { - if (key.toLowerCase() === "set-cookie") { - responseHeaders.append(key, value); - } else { - responseHeaders.set(key, value); - } - } - } - if (headers) { - for (const [k, v] of Object.entries(headers)) { - if (typeof v === "string") { - responseHeaders.set(k, v); - } else { - responseHeaders.delete(k); - for (const v2 of v) { - responseHeaders.append(k, v2); - } - } - } - } - const status = typeof arg === "number" ? arg : arg?.status ?? this.#status; - return new Response(data, { status, headers: responseHeaders }); - } - newResponse = (...args) => this.#newResponse(...args); - body = (data, arg, headers) => this.#newResponse(data, arg, headers); - text = (text, arg, headers) => { - return !this.#preparedHeaders && !this.#status && !arg && !headers && !this.finalized ? new Response(text) : this.#newResponse( - text, - arg, - setDefaultContentType(TEXT_PLAIN, headers) - ); - }; - json = (object, arg, headers) => { - return this.#newResponse( - JSON.stringify(object), - arg, - setDefaultContentType("application/json", headers) - ); - }; - html = (html, arg, headers) => { - const res = (html2) => this.#newResponse(html2, arg, setDefaultContentType("text/html; charset=UTF-8", headers)); - return typeof html === "object" ? (0, import_html.resolveCallback)(html, import_html.HtmlEscapedCallbackPhase.Stringify, false, {}).then(res) : res(html); - }; - redirect = (location, status) => { - const locationString = String(location); - this.header( - "Location", - !/[^\x00-\xFF]/.test(locationString) ? locationString : encodeURI(locationString) - ); - return this.newResponse(null, status ?? 302); - }; - notFound = () => { - this.#notFoundHandler ??= () => new Response(); - return this.#notFoundHandler(this); - }; - }; - } + 'node_modules/hono/dist/cjs/context.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var context_exports = {}; + __export(context_exports, { + Context: () => Context, + TEXT_PLAIN: () => TEXT_PLAIN + }); + module2.exports = __toCommonJS(context_exports); + var import_request = require_request2(); + var import_html = require_html(); + var TEXT_PLAIN = 'text/plain; charset=UTF-8'; + var setDefaultContentType = (contentType, headers) => { + return { + 'Content-Type': contentType, + ...headers + }; + }; + var Context = class { + #rawRequest; + #req; + env = {}; + #var; + finalized = false; + error; + #status; + #executionCtx; + #res; + #layout; + #renderer; + #notFoundHandler; + #preparedHeaders; + #matchResult; + #path; + constructor(req, options) { + this.#rawRequest = req; + if (options) { + this.#executionCtx = options.executionCtx; + this.env = options.env; + this.#notFoundHandler = options.notFoundHandler; + this.#path = options.path; + this.#matchResult = options.matchResult; + } + } + get req() { + this.#req ??= new import_request.HonoRequest( + this.#rawRequest, + this.#path, + this.#matchResult + ); + return this.#req; + } + get event() { + if (this.#executionCtx && 'respondWith' in this.#executionCtx) { + return this.#executionCtx; + } else { + throw Error('This context has no FetchEvent'); + } + } + get executionCtx() { + if (this.#executionCtx) { + return this.#executionCtx; + } else { + throw Error('This context has no ExecutionContext'); + } + } + get res() { + return (this.#res ||= new Response(null, { + headers: (this.#preparedHeaders ??= new Headers()) + })); + } + set res(_res) { + if (this.#res && _res) { + _res = new Response(_res.body, _res); + for (const [k, v] of this.#res.headers.entries()) { + if (k === 'content-type') { + continue; + } + if (k === 'set-cookie') { + const cookies = this.#res.headers.getSetCookie(); + _res.headers.delete('set-cookie'); + for (const cookie of cookies) { + _res.headers.append('set-cookie', cookie); + } + } else { + _res.headers.set(k, v); + } + } + } + this.#res = _res; + this.finalized = true; + } + render = (...args) => { + this.#renderer ??= (content) => this.html(content); + return this.#renderer(...args); + }; + setLayout = (layout) => (this.#layout = layout); + getLayout = () => this.#layout; + setRenderer = (renderer) => { + this.#renderer = renderer; + }; + header = (name, value, options) => { + if (this.finalized) { + this.#res = new Response(this.#res.body, this.#res); + } + const headers = this.#res ? this.#res.headers : (this.#preparedHeaders ??= new Headers()); + if (value === void 0) { + headers.delete(name); + } else if (options?.append) { + headers.append(name, value); + } else { + headers.set(name, value); + } + }; + status = (status) => { + this.#status = status; + }; + set = (key, value) => { + this.#var ??= /* @__PURE__ */ new Map(); + this.#var.set(key, value); + }; + get = (key) => { + return this.#var ? this.#var.get(key) : void 0; + }; + get var() { + if (!this.#var) { + return {}; + } + return Object.fromEntries(this.#var); + } + #newResponse(data, arg, headers) { + const responseHeaders = this.#res + ? new Headers(this.#res.headers) + : (this.#preparedHeaders ?? new Headers()); + if (typeof arg === 'object' && 'headers' in arg) { + const argHeaders = + arg.headers instanceof Headers ? arg.headers : new Headers(arg.headers); + for (const [key, value] of argHeaders) { + if (key.toLowerCase() === 'set-cookie') { + responseHeaders.append(key, value); + } else { + responseHeaders.set(key, value); + } + } + } + if (headers) { + for (const [k, v] of Object.entries(headers)) { + if (typeof v === 'string') { + responseHeaders.set(k, v); + } else { + responseHeaders.delete(k); + for (const v2 of v) { + responseHeaders.append(k, v2); + } + } + } + } + const status = typeof arg === 'number' ? arg : (arg?.status ?? this.#status); + return new Response(data, { status, headers: responseHeaders }); + } + newResponse = (...args) => this.#newResponse(...args); + body = (data, arg, headers) => this.#newResponse(data, arg, headers); + text = (text, arg, headers) => { + return !this.#preparedHeaders && !this.#status && !arg && !headers && !this.finalized + ? new Response(text) + : this.#newResponse(text, arg, setDefaultContentType(TEXT_PLAIN, headers)); + }; + json = (object, arg, headers) => { + return this.#newResponse( + JSON.stringify(object), + arg, + setDefaultContentType('application/json', headers) + ); + }; + html = (html, arg, headers) => { + const res = (html2) => + this.#newResponse(html2, arg, setDefaultContentType('text/html; charset=UTF-8', headers)); + return typeof html === 'object' + ? (0, import_html.resolveCallback)( + html, + import_html.HtmlEscapedCallbackPhase.Stringify, + false, + {} + ).then(res) + : res(html); + }; + redirect = (location, status) => { + const locationString = String(location); + this.header( + 'Location', + !/[^\x00-\xFF]/.test(locationString) ? locationString : encodeURI(locationString) + ); + return this.newResponse(null, status ?? 302); + }; + notFound = () => { + this.#notFoundHandler ??= () => new Response(); + return this.#notFoundHandler(this); + }; + }; + } }); // node_modules/hono/dist/cjs/router.js var require_router = __commonJS({ - "node_modules/hono/dist/cjs/router.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var router_exports = {}; - __export(router_exports, { - MESSAGE_MATCHER_IS_ALREADY_BUILT: () => MESSAGE_MATCHER_IS_ALREADY_BUILT, - METHODS: () => METHODS, - METHOD_NAME_ALL: () => METHOD_NAME_ALL, - METHOD_NAME_ALL_LOWERCASE: () => METHOD_NAME_ALL_LOWERCASE, - UnsupportedPathError: () => UnsupportedPathError - }); - module2.exports = __toCommonJS(router_exports); - var METHOD_NAME_ALL = "ALL"; - var METHOD_NAME_ALL_LOWERCASE = "all"; - var METHODS = ["get", "post", "put", "delete", "options", "patch"]; - var MESSAGE_MATCHER_IS_ALREADY_BUILT = "Can not add a route since the matcher is already built."; - var UnsupportedPathError = class extends Error { - }; - } + 'node_modules/hono/dist/cjs/router.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var router_exports = {}; + __export(router_exports, { + MESSAGE_MATCHER_IS_ALREADY_BUILT: () => MESSAGE_MATCHER_IS_ALREADY_BUILT, + METHODS: () => METHODS, + METHOD_NAME_ALL: () => METHOD_NAME_ALL, + METHOD_NAME_ALL_LOWERCASE: () => METHOD_NAME_ALL_LOWERCASE, + UnsupportedPathError: () => UnsupportedPathError + }); + module2.exports = __toCommonJS(router_exports); + var METHOD_NAME_ALL = 'ALL'; + var METHOD_NAME_ALL_LOWERCASE = 'all'; + var METHODS = ['get', 'post', 'put', 'delete', 'options', 'patch']; + var MESSAGE_MATCHER_IS_ALREADY_BUILT = + 'Can not add a route since the matcher is already built.'; + var UnsupportedPathError = class extends Error {}; + } }); // node_modules/hono/dist/cjs/utils/constants.js var require_constants2 = __commonJS({ - "node_modules/hono/dist/cjs/utils/constants.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var constants_exports = {}; - __export(constants_exports, { - COMPOSED_HANDLER: () => COMPOSED_HANDLER - }); - module2.exports = __toCommonJS(constants_exports); - var COMPOSED_HANDLER = "__COMPOSED_HANDLER"; - } + 'node_modules/hono/dist/cjs/utils/constants.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var constants_exports = {}; + __export(constants_exports, { + COMPOSED_HANDLER: () => COMPOSED_HANDLER + }); + module2.exports = __toCommonJS(constants_exports); + var COMPOSED_HANDLER = '__COMPOSED_HANDLER'; + } }); // node_modules/hono/dist/cjs/hono-base.js var require_hono_base = __commonJS({ - "node_modules/hono/dist/cjs/hono-base.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var hono_base_exports = {}; - __export(hono_base_exports, { - HonoBase: () => Hono2 - }); - module2.exports = __toCommonJS(hono_base_exports); - var import_compose = require_compose(); - var import_context = require_context(); - var import_router = require_router(); - var import_constants = require_constants2(); - var import_url = require_url(); - var notFoundHandler = (c) => { - return c.text("404 Not Found", 404); - }; - var errorHandler = (err, c) => { - if ("getResponse" in err) { - const res = err.getResponse(); - return c.newResponse(res.body, res); - } - console.error(err); - return c.text("Internal Server Error", 500); - }; - var Hono2 = class _Hono { - get; - post; - put; - delete; - options; - patch; - all; - on; - use; - router; - getPath; - _basePath = "/"; - #path = "/"; - routes = []; - constructor(options = {}) { - const allMethods = [...import_router.METHODS, import_router.METHOD_NAME_ALL_LOWERCASE]; - allMethods.forEach((method) => { - this[method] = (args1, ...args) => { - if (typeof args1 === "string") { - this.#path = args1; - } else { - this.#addRoute(method, this.#path, args1); - } - args.forEach((handler) => { - this.#addRoute(method, this.#path, handler); - }); - return this; - }; - }); - this.on = (method, path, ...handlers) => { - for (const p of [path].flat()) { - this.#path = p; - for (const m of [method].flat()) { - handlers.map((handler) => { - this.#addRoute(m.toUpperCase(), this.#path, handler); - }); - } - } - return this; - }; - this.use = (arg1, ...handlers) => { - if (typeof arg1 === "string") { - this.#path = arg1; - } else { - this.#path = "*"; - handlers.unshift(arg1); - } - handlers.forEach((handler) => { - this.#addRoute(import_router.METHOD_NAME_ALL, this.#path, handler); - }); - return this; - }; - const { strict, ...optionsWithoutStrict } = options; - Object.assign(this, optionsWithoutStrict); - this.getPath = strict ?? true ? options.getPath ?? import_url.getPath : import_url.getPathNoStrict; - } - #clone() { - const clone = new _Hono({ - router: this.router, - getPath: this.getPath - }); - clone.errorHandler = this.errorHandler; - clone.#notFoundHandler = this.#notFoundHandler; - clone.routes = this.routes; - return clone; - } - #notFoundHandler = notFoundHandler; - errorHandler = errorHandler; - route(path, app) { - const subApp = this.basePath(path); - app.routes.map((r) => { - let handler; - if (app.errorHandler === errorHandler) { - handler = r.handler; - } else { - handler = async (c, next) => (await (0, import_compose.compose)([], app.errorHandler)(c, () => r.handler(c, next))).res; - handler[import_constants.COMPOSED_HANDLER] = r.handler; - } - subApp.#addRoute(r.method, r.path, handler); - }); - return this; - } - basePath(path) { - const subApp = this.#clone(); - subApp._basePath = (0, import_url.mergePath)(this._basePath, path); - return subApp; - } - onError = (handler) => { - this.errorHandler = handler; - return this; - }; - notFound = (handler) => { - this.#notFoundHandler = handler; - return this; - }; - mount(path, applicationHandler, options) { - let replaceRequest; - let optionHandler; - if (options) { - if (typeof options === "function") { - optionHandler = options; - } else { - optionHandler = options.optionHandler; - if (options.replaceRequest === false) { - replaceRequest = (request) => request; - } else { - replaceRequest = options.replaceRequest; - } - } - } - const getOptions = optionHandler ? (c) => { - const options2 = optionHandler(c); - return Array.isArray(options2) ? options2 : [options2]; - } : (c) => { - let executionContext = void 0; - try { - executionContext = c.executionCtx; - } catch { - } - return [c.env, executionContext]; - }; - replaceRequest ||= (() => { - const mergedPath = (0, import_url.mergePath)(this._basePath, path); - const pathPrefixLength = mergedPath === "/" ? 0 : mergedPath.length; - return (request) => { - const url = new URL(request.url); - url.pathname = url.pathname.slice(pathPrefixLength) || "/"; - return new Request(url, request); - }; - })(); - const handler = async (c, next) => { - const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c)); - if (res) { - return res; - } - await next(); - }; - this.#addRoute(import_router.METHOD_NAME_ALL, (0, import_url.mergePath)(path, "*"), handler); - return this; - } - #addRoute(method, path, handler) { - method = method.toUpperCase(); - path = (0, import_url.mergePath)(this._basePath, path); - const r = { basePath: this._basePath, path, method, handler }; - this.router.add(method, path, [handler, r]); - this.routes.push(r); - } - #handleError(err, c) { - if (err instanceof Error) { - return this.errorHandler(err, c); - } - throw err; - } - #dispatch(request, executionCtx, env, method) { - if (method === "HEAD") { - return (async () => new Response(null, await this.#dispatch(request, executionCtx, env, "GET")))(); - } - const path = this.getPath(request, { env }); - const matchResult = this.router.match(method, path); - const c = new import_context.Context(request, { - path, - matchResult, - env, - executionCtx, - notFoundHandler: this.#notFoundHandler - }); - if (matchResult[0].length === 1) { - let res; - try { - res = matchResult[0][0][0][0](c, async () => { - c.res = await this.#notFoundHandler(c); - }); - } catch (err) { - return this.#handleError(err, c); - } - return res instanceof Promise ? res.then( - (resolved) => resolved || (c.finalized ? c.res : this.#notFoundHandler(c)) - ).catch((err) => this.#handleError(err, c)) : res ?? this.#notFoundHandler(c); - } - const composed = (0, import_compose.compose)(matchResult[0], this.errorHandler, this.#notFoundHandler); - return (async () => { - try { - const context = await composed(c); - if (!context.finalized) { - throw new Error( - "Context is not finalized. Did you forget to return a Response object or `await next()`?" - ); - } - return context.res; - } catch (err) { - return this.#handleError(err, c); - } - })(); - } - fetch = (request, ...rest) => { - return this.#dispatch(request, rest[1], rest[0], request.method); - }; - request = (input, requestInit, Env, executionCtx) => { - if (input instanceof Request) { - return this.fetch(requestInit ? new Request(input, requestInit) : input, Env, executionCtx); - } - input = input.toString(); - return this.fetch( - new Request( - /^https?:\/\//.test(input) ? input : `http://localhost${(0, import_url.mergePath)("/", input)}`, - requestInit - ), - Env, - executionCtx - ); - }; - fire = () => { - addEventListener("fetch", (event) => { - event.respondWith(this.#dispatch(event.request, event, void 0, event.request.method)); - }); - }; - }; - } + 'node_modules/hono/dist/cjs/hono-base.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var hono_base_exports = {}; + __export(hono_base_exports, { + HonoBase: () => Hono2 + }); + module2.exports = __toCommonJS(hono_base_exports); + var import_compose = require_compose(); + var import_context = require_context(); + var import_router = require_router(); + var import_constants = require_constants2(); + var import_url = require_url(); + var notFoundHandler = (c) => { + return c.text('404 Not Found', 404); + }; + var errorHandler = (err, c) => { + if ('getResponse' in err) { + const res = err.getResponse(); + return c.newResponse(res.body, res); + } + console.error(err); + return c.text('Internal Server Error', 500); + }; + var Hono2 = class _Hono { + get; + post; + put; + delete; + options; + patch; + all; + on; + use; + router; + getPath; + _basePath = '/'; + #path = '/'; + routes = []; + constructor(options = {}) { + const allMethods = [...import_router.METHODS, import_router.METHOD_NAME_ALL_LOWERCASE]; + allMethods.forEach((method) => { + this[method] = (args1, ...args) => { + if (typeof args1 === 'string') { + this.#path = args1; + } else { + this.#addRoute(method, this.#path, args1); + } + args.forEach((handler) => { + this.#addRoute(method, this.#path, handler); + }); + return this; + }; + }); + this.on = (method, path, ...handlers) => { + for (const p of [path].flat()) { + this.#path = p; + for (const m of [method].flat()) { + handlers.map((handler) => { + this.#addRoute(m.toUpperCase(), this.#path, handler); + }); + } + } + return this; + }; + this.use = (arg1, ...handlers) => { + if (typeof arg1 === 'string') { + this.#path = arg1; + } else { + this.#path = '*'; + handlers.unshift(arg1); + } + handlers.forEach((handler) => { + this.#addRoute(import_router.METHOD_NAME_ALL, this.#path, handler); + }); + return this; + }; + const { strict, ...optionsWithoutStrict } = options; + Object.assign(this, optionsWithoutStrict); + this.getPath = + (strict ?? true) ? (options.getPath ?? import_url.getPath) : import_url.getPathNoStrict; + } + #clone() { + const clone = new _Hono({ + router: this.router, + getPath: this.getPath + }); + clone.errorHandler = this.errorHandler; + clone.#notFoundHandler = this.#notFoundHandler; + clone.routes = this.routes; + return clone; + } + #notFoundHandler = notFoundHandler; + errorHandler = errorHandler; + route(path, app) { + const subApp = this.basePath(path); + app.routes.map((r) => { + let handler; + if (app.errorHandler === errorHandler) { + handler = r.handler; + } else { + handler = async (c, next) => + (await (0, import_compose.compose)([], app.errorHandler)(c, () => r.handler(c, next))) + .res; + handler[import_constants.COMPOSED_HANDLER] = r.handler; + } + subApp.#addRoute(r.method, r.path, handler); + }); + return this; + } + basePath(path) { + const subApp = this.#clone(); + subApp._basePath = (0, import_url.mergePath)(this._basePath, path); + return subApp; + } + onError = (handler) => { + this.errorHandler = handler; + return this; + }; + notFound = (handler) => { + this.#notFoundHandler = handler; + return this; + }; + mount(path, applicationHandler, options) { + let replaceRequest; + let optionHandler; + if (options) { + if (typeof options === 'function') { + optionHandler = options; + } else { + optionHandler = options.optionHandler; + if (options.replaceRequest === false) { + replaceRequest = (request) => request; + } else { + replaceRequest = options.replaceRequest; + } + } + } + const getOptions = optionHandler + ? (c) => { + const options2 = optionHandler(c); + return Array.isArray(options2) ? options2 : [options2]; + } + : (c) => { + let executionContext = void 0; + try { + executionContext = c.executionCtx; + } catch {} + return [c.env, executionContext]; + }; + replaceRequest ||= (() => { + const mergedPath = (0, import_url.mergePath)(this._basePath, path); + const pathPrefixLength = mergedPath === '/' ? 0 : mergedPath.length; + return (request) => { + const url = new URL(request.url); + url.pathname = url.pathname.slice(pathPrefixLength) || '/'; + return new Request(url, request); + }; + })(); + const handler = async (c, next) => { + const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c)); + if (res) { + return res; + } + await next(); + }; + this.#addRoute( + import_router.METHOD_NAME_ALL, + (0, import_url.mergePath)(path, '*'), + handler + ); + return this; + } + #addRoute(method, path, handler) { + method = method.toUpperCase(); + path = (0, import_url.mergePath)(this._basePath, path); + const r = { basePath: this._basePath, path, method, handler }; + this.router.add(method, path, [handler, r]); + this.routes.push(r); + } + #handleError(err, c) { + if (err instanceof Error) { + return this.errorHandler(err, c); + } + throw err; + } + #dispatch(request, executionCtx, env, method) { + if (method === 'HEAD') { + return (async () => + new Response(null, await this.#dispatch(request, executionCtx, env, 'GET')))(); + } + const path = this.getPath(request, { env }); + const matchResult = this.router.match(method, path); + const c = new import_context.Context(request, { + path, + matchResult, + env, + executionCtx, + notFoundHandler: this.#notFoundHandler + }); + if (matchResult[0].length === 1) { + let res; + try { + res = matchResult[0][0][0][0](c, async () => { + c.res = await this.#notFoundHandler(c); + }); + } catch (err) { + return this.#handleError(err, c); + } + return res instanceof Promise + ? res + .then((resolved) => resolved || (c.finalized ? c.res : this.#notFoundHandler(c))) + .catch((err) => this.#handleError(err, c)) + : (res ?? this.#notFoundHandler(c)); + } + const composed = (0, import_compose.compose)( + matchResult[0], + this.errorHandler, + this.#notFoundHandler + ); + return (async () => { + try { + const context = await composed(c); + if (!context.finalized) { + throw new Error( + 'Context is not finalized. Did you forget to return a Response object or `await next()`?' + ); + } + return context.res; + } catch (err) { + return this.#handleError(err, c); + } + })(); + } + fetch = (request, ...rest) => { + return this.#dispatch(request, rest[1], rest[0], request.method); + }; + request = (input, requestInit, Env, executionCtx) => { + if (input instanceof Request) { + return this.fetch( + requestInit ? new Request(input, requestInit) : input, + Env, + executionCtx + ); + } + input = input.toString(); + return this.fetch( + new Request( + /^https?:\/\//.test(input) + ? input + : `http://localhost${(0, import_url.mergePath)('/', input)}`, + requestInit + ), + Env, + executionCtx + ); + }; + fire = () => { + addEventListener('fetch', (event) => { + event.respondWith(this.#dispatch(event.request, event, void 0, event.request.method)); + }); + }; + }; + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/matcher.js var require_matcher = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/matcher.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var matcher_exports = {}; - __export(matcher_exports, { - emptyParam: () => emptyParam, - match: () => match - }); - module2.exports = __toCommonJS(matcher_exports); - var import_router = require_router(); - var emptyParam = []; - function match(method, path) { - const matchers = this.buildAllMatchers(); - const match2 = (method2, path2) => { - const matcher = matchers[method2] || matchers[import_router.METHOD_NAME_ALL]; - const staticMatch = matcher[2][path2]; - if (staticMatch) { - return staticMatch; - } - const match3 = path2.match(matcher[0]); - if (!match3) { - return [[], emptyParam]; - } - const index = match3.indexOf("", 1); - return [matcher[1][index], match3]; - }; - this.match = match2; - return match2(method, path); - } - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/matcher.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var matcher_exports = {}; + __export(matcher_exports, { + emptyParam: () => emptyParam, + match: () => match + }); + module2.exports = __toCommonJS(matcher_exports); + var import_router = require_router(); + var emptyParam = []; + function match(method, path) { + const matchers = this.buildAllMatchers(); + const match2 = (method2, path2) => { + const matcher = matchers[method2] || matchers[import_router.METHOD_NAME_ALL]; + const staticMatch = matcher[2][path2]; + if (staticMatch) { + return staticMatch; + } + const match3 = path2.match(matcher[0]); + if (!match3) { + return [[], emptyParam]; + } + const index = match3.indexOf('', 1); + return [matcher[1][index], match3]; + }; + this.match = match2; + return match2(method, path); + } + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/node.js var require_node = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/node.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var node_exports = {}; - __export(node_exports, { - Node: () => Node, - PATH_ERROR: () => PATH_ERROR - }); - module2.exports = __toCommonJS(node_exports); - var LABEL_REG_EXP_STR = "[^/]+"; - var ONLY_WILDCARD_REG_EXP_STR = ".*"; - var TAIL_WILDCARD_REG_EXP_STR = "(?:|/.*)"; - var PATH_ERROR = Symbol(); - var regExpMetaChars = new Set(".\\+*[^]$()"); - function compareKey(a, b) { - if (a.length === 1) { - return b.length === 1 ? a < b ? -1 : 1 : -1; - } - if (b.length === 1) { - return 1; - } - if (a === ONLY_WILDCARD_REG_EXP_STR || a === TAIL_WILDCARD_REG_EXP_STR) { - return 1; - } else if (b === ONLY_WILDCARD_REG_EXP_STR || b === TAIL_WILDCARD_REG_EXP_STR) { - return -1; - } - if (a === LABEL_REG_EXP_STR) { - return 1; - } else if (b === LABEL_REG_EXP_STR) { - return -1; - } - return a.length === b.length ? a < b ? -1 : 1 : b.length - a.length; - } - var Node = class _Node { - #index; - #varIndex; - #children = /* @__PURE__ */ Object.create(null); - insert(tokens, index, paramMap, context, pathErrorCheckOnly) { - if (tokens.length === 0) { - if (this.#index !== void 0) { - throw PATH_ERROR; - } - if (pathErrorCheckOnly) { - return; - } - this.#index = index; - return; - } - const [token, ...restTokens] = tokens; - const pattern = token === "*" ? restTokens.length === 0 ? ["", "", ONLY_WILDCARD_REG_EXP_STR] : ["", "", LABEL_REG_EXP_STR] : token === "/*" ? ["", "", TAIL_WILDCARD_REG_EXP_STR] : token.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/); - let node; - if (pattern) { - const name = pattern[1]; - let regexpStr = pattern[2] || LABEL_REG_EXP_STR; - if (name && pattern[2]) { - if (regexpStr === ".*") { - throw PATH_ERROR; - } - regexpStr = regexpStr.replace(/^\((?!\?:)(?=[^)]+\)$)/, "(?:"); - if (/\((?!\?:)/.test(regexpStr)) { - throw PATH_ERROR; - } - } - node = this.#children[regexpStr]; - if (!node) { - if (Object.keys(this.#children).some( - (k) => k !== ONLY_WILDCARD_REG_EXP_STR && k !== TAIL_WILDCARD_REG_EXP_STR - )) { - throw PATH_ERROR; - } - if (pathErrorCheckOnly) { - return; - } - node = this.#children[regexpStr] = new _Node(); - if (name !== "") { - node.#varIndex = context.varIndex++; - } - } - if (!pathErrorCheckOnly && name !== "") { - paramMap.push([name, node.#varIndex]); - } - } else { - node = this.#children[token]; - if (!node) { - if (Object.keys(this.#children).some( - (k) => k.length > 1 && k !== ONLY_WILDCARD_REG_EXP_STR && k !== TAIL_WILDCARD_REG_EXP_STR - )) { - throw PATH_ERROR; - } - if (pathErrorCheckOnly) { - return; - } - node = this.#children[token] = new _Node(); - } - } - node.insert(restTokens, index, paramMap, context, pathErrorCheckOnly); - } - buildRegExpStr() { - const childKeys = Object.keys(this.#children).sort(compareKey); - const strList = childKeys.map((k) => { - const c = this.#children[k]; - return (typeof c.#varIndex === "number" ? `(${k})@${c.#varIndex}` : regExpMetaChars.has(k) ? `\\${k}` : k) + c.buildRegExpStr(); - }); - if (typeof this.#index === "number") { - strList.unshift(`#${this.#index}`); - } - if (strList.length === 0) { - return ""; - } - if (strList.length === 1) { - return strList[0]; - } - return "(?:" + strList.join("|") + ")"; - } - }; - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/node.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var node_exports = {}; + __export(node_exports, { + Node: () => Node, + PATH_ERROR: () => PATH_ERROR + }); + module2.exports = __toCommonJS(node_exports); + var LABEL_REG_EXP_STR = '[^/]+'; + var ONLY_WILDCARD_REG_EXP_STR = '.*'; + var TAIL_WILDCARD_REG_EXP_STR = '(?:|/.*)'; + var PATH_ERROR = Symbol(); + var regExpMetaChars = new Set('.\\+*[^]$()'); + function compareKey(a, b) { + if (a.length === 1) { + return b.length === 1 ? (a < b ? -1 : 1) : -1; + } + if (b.length === 1) { + return 1; + } + if (a === ONLY_WILDCARD_REG_EXP_STR || a === TAIL_WILDCARD_REG_EXP_STR) { + return 1; + } else if (b === ONLY_WILDCARD_REG_EXP_STR || b === TAIL_WILDCARD_REG_EXP_STR) { + return -1; + } + if (a === LABEL_REG_EXP_STR) { + return 1; + } else if (b === LABEL_REG_EXP_STR) { + return -1; + } + return a.length === b.length ? (a < b ? -1 : 1) : b.length - a.length; + } + var Node = class _Node { + #index; + #varIndex; + #children = /* @__PURE__ */ Object.create(null); + insert(tokens, index, paramMap, context, pathErrorCheckOnly) { + if (tokens.length === 0) { + if (this.#index !== void 0) { + throw PATH_ERROR; + } + if (pathErrorCheckOnly) { + return; + } + this.#index = index; + return; + } + const [token, ...restTokens] = tokens; + const pattern = + token === '*' + ? restTokens.length === 0 + ? ['', '', ONLY_WILDCARD_REG_EXP_STR] + : ['', '', LABEL_REG_EXP_STR] + : token === '/*' + ? ['', '', TAIL_WILDCARD_REG_EXP_STR] + : token.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/); + let node; + if (pattern) { + const name = pattern[1]; + let regexpStr = pattern[2] || LABEL_REG_EXP_STR; + if (name && pattern[2]) { + if (regexpStr === '.*') { + throw PATH_ERROR; + } + regexpStr = regexpStr.replace(/^\((?!\?:)(?=[^)]+\)$)/, '(?:'); + if (/\((?!\?:)/.test(regexpStr)) { + throw PATH_ERROR; + } + } + node = this.#children[regexpStr]; + if (!node) { + if ( + Object.keys(this.#children).some( + (k) => k !== ONLY_WILDCARD_REG_EXP_STR && k !== TAIL_WILDCARD_REG_EXP_STR + ) + ) { + throw PATH_ERROR; + } + if (pathErrorCheckOnly) { + return; + } + node = this.#children[regexpStr] = new _Node(); + if (name !== '') { + node.#varIndex = context.varIndex++; + } + } + if (!pathErrorCheckOnly && name !== '') { + paramMap.push([name, node.#varIndex]); + } + } else { + node = this.#children[token]; + if (!node) { + if ( + Object.keys(this.#children).some( + (k) => + k.length > 1 && k !== ONLY_WILDCARD_REG_EXP_STR && k !== TAIL_WILDCARD_REG_EXP_STR + ) + ) { + throw PATH_ERROR; + } + if (pathErrorCheckOnly) { + return; + } + node = this.#children[token] = new _Node(); + } + } + node.insert(restTokens, index, paramMap, context, pathErrorCheckOnly); + } + buildRegExpStr() { + const childKeys = Object.keys(this.#children).sort(compareKey); + const strList = childKeys.map((k) => { + const c = this.#children[k]; + return ( + (typeof c.#varIndex === 'number' + ? `(${k})@${c.#varIndex}` + : regExpMetaChars.has(k) + ? `\\${k}` + : k) + c.buildRegExpStr() + ); + }); + if (typeof this.#index === 'number') { + strList.unshift(`#${this.#index}`); + } + if (strList.length === 0) { + return ''; + } + if (strList.length === 1) { + return strList[0]; + } + return '(?:' + strList.join('|') + ')'; + } + }; + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/trie.js var require_trie = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/trie.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var trie_exports = {}; - __export(trie_exports, { - Trie: () => Trie - }); - module2.exports = __toCommonJS(trie_exports); - var import_node = require_node(); - var Trie = class { - #context = { varIndex: 0 }; - #root = new import_node.Node(); - insert(path, index, pathErrorCheckOnly) { - const paramAssoc = []; - const groups = []; - for (let i = 0; ; ) { - let replaced = false; - path = path.replace(/\{[^}]+\}/g, (m) => { - const mark = `@\\${i}`; - groups[i] = [mark, m]; - i++; - replaced = true; - return mark; - }); - if (!replaced) { - break; - } - } - const tokens = path.match(/(?::[^\/]+)|(?:\/\*$)|./g) || []; - for (let i = groups.length - 1; i >= 0; i--) { - const [mark] = groups[i]; - for (let j = tokens.length - 1; j >= 0; j--) { - if (tokens[j].indexOf(mark) !== -1) { - tokens[j] = tokens[j].replace(mark, groups[i][1]); - break; - } - } - } - this.#root.insert(tokens, index, paramAssoc, this.#context, pathErrorCheckOnly); - return paramAssoc; - } - buildRegExp() { - let regexp = this.#root.buildRegExpStr(); - if (regexp === "") { - return [/^$/, [], []]; - } - let captureIndex = 0; - const indexReplacementMap = []; - const paramReplacementMap = []; - regexp = regexp.replace(/#(\d+)|@(\d+)|\.\*\$/g, (_, handlerIndex, paramIndex) => { - if (handlerIndex !== void 0) { - indexReplacementMap[++captureIndex] = Number(handlerIndex); - return "$()"; - } - if (paramIndex !== void 0) { - paramReplacementMap[Number(paramIndex)] = ++captureIndex; - return ""; - } - return ""; - }); - return [new RegExp(`^${regexp}`), indexReplacementMap, paramReplacementMap]; - } - }; - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/trie.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var trie_exports = {}; + __export(trie_exports, { + Trie: () => Trie + }); + module2.exports = __toCommonJS(trie_exports); + var import_node = require_node(); + var Trie = class { + #context = { varIndex: 0 }; + #root = new import_node.Node(); + insert(path, index, pathErrorCheckOnly) { + const paramAssoc = []; + const groups = []; + for (let i = 0; ; ) { + let replaced = false; + path = path.replace(/\{[^}]+\}/g, (m) => { + const mark = `@\\${i}`; + groups[i] = [mark, m]; + i++; + replaced = true; + return mark; + }); + if (!replaced) { + break; + } + } + const tokens = path.match(/(?::[^\/]+)|(?:\/\*$)|./g) || []; + for (let i = groups.length - 1; i >= 0; i--) { + const [mark] = groups[i]; + for (let j = tokens.length - 1; j >= 0; j--) { + if (tokens[j].indexOf(mark) !== -1) { + tokens[j] = tokens[j].replace(mark, groups[i][1]); + break; + } + } + } + this.#root.insert(tokens, index, paramAssoc, this.#context, pathErrorCheckOnly); + return paramAssoc; + } + buildRegExp() { + let regexp = this.#root.buildRegExpStr(); + if (regexp === '') { + return [/^$/, [], []]; + } + let captureIndex = 0; + const indexReplacementMap = []; + const paramReplacementMap = []; + regexp = regexp.replace(/#(\d+)|@(\d+)|\.\*\$/g, (_, handlerIndex, paramIndex) => { + if (handlerIndex !== void 0) { + indexReplacementMap[++captureIndex] = Number(handlerIndex); + return '$()'; + } + if (paramIndex !== void 0) { + paramReplacementMap[Number(paramIndex)] = ++captureIndex; + return ''; + } + return ''; + }); + return [new RegExp(`^${regexp}`), indexReplacementMap, paramReplacementMap]; + } + }; + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/router.js var require_router2 = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/router.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var router_exports = {}; - __export(router_exports, { - RegExpRouter: () => RegExpRouter2 - }); - module2.exports = __toCommonJS(router_exports); - var import_router = require_router(); - var import_url = require_url(); - var import_matcher = require_matcher(); - var import_node = require_node(); - var import_trie = require_trie(); - var nullMatcher = [/^$/, [], /* @__PURE__ */ Object.create(null)]; - var wildcardRegExpCache = /* @__PURE__ */ Object.create(null); - function buildWildcardRegExp(path) { - return wildcardRegExpCache[path] ??= new RegExp( - path === "*" ? "" : `^${path.replace( - /\/\*$|([.\\+*[^\]$()])/g, - (_, metaChar) => metaChar ? `\\${metaChar}` : "(?:|/.*)" - )}$` - ); - } - function clearWildcardRegExpCache() { - wildcardRegExpCache = /* @__PURE__ */ Object.create(null); - } - function buildMatcherFromPreprocessedRoutes(routes) { - const trie = new import_trie.Trie(); - const handlerData = []; - if (routes.length === 0) { - return nullMatcher; - } - const routesWithStaticPathFlag = routes.map( - (route) => [!/\*|\/:/.test(route[0]), ...route] - ).sort( - ([isStaticA, pathA], [isStaticB, pathB]) => isStaticA ? 1 : isStaticB ? -1 : pathA.length - pathB.length - ); - const staticMap = /* @__PURE__ */ Object.create(null); - for (let i = 0, j = -1, len = routesWithStaticPathFlag.length; i < len; i++) { - const [pathErrorCheckOnly, path, handlers] = routesWithStaticPathFlag[i]; - if (pathErrorCheckOnly) { - staticMap[path] = [handlers.map(([h]) => [h, /* @__PURE__ */ Object.create(null)]), import_matcher.emptyParam]; - } else { - j++; - } - let paramAssoc; - try { - paramAssoc = trie.insert(path, j, pathErrorCheckOnly); - } catch (e) { - throw e === import_node.PATH_ERROR ? new import_router.UnsupportedPathError(path) : e; - } - if (pathErrorCheckOnly) { - continue; - } - handlerData[j] = handlers.map(([h, paramCount]) => { - const paramIndexMap = /* @__PURE__ */ Object.create(null); - paramCount -= 1; - for (; paramCount >= 0; paramCount--) { - const [key, value] = paramAssoc[paramCount]; - paramIndexMap[key] = value; - } - return [h, paramIndexMap]; - }); - } - const [regexp, indexReplacementMap, paramReplacementMap] = trie.buildRegExp(); - for (let i = 0, len = handlerData.length; i < len; i++) { - for (let j = 0, len2 = handlerData[i].length; j < len2; j++) { - const map = handlerData[i][j]?.[1]; - if (!map) { - continue; - } - const keys = Object.keys(map); - for (let k = 0, len3 = keys.length; k < len3; k++) { - map[keys[k]] = paramReplacementMap[map[keys[k]]]; - } - } - } - const handlerMap = []; - for (const i in indexReplacementMap) { - handlerMap[i] = handlerData[indexReplacementMap[i]]; - } - return [regexp, handlerMap, staticMap]; - } - function findMiddleware(middleware, path) { - if (!middleware) { - return void 0; - } - for (const k of Object.keys(middleware).sort((a, b) => b.length - a.length)) { - if (buildWildcardRegExp(k).test(path)) { - return [...middleware[k]]; - } - } - return void 0; - } - var RegExpRouter2 = class { - name = "RegExpRouter"; - #middleware; - #routes; - constructor() { - this.#middleware = { [import_router.METHOD_NAME_ALL]: /* @__PURE__ */ Object.create(null) }; - this.#routes = { [import_router.METHOD_NAME_ALL]: /* @__PURE__ */ Object.create(null) }; - } - add(method, path, handler) { - const middleware = this.#middleware; - const routes = this.#routes; - if (!middleware || !routes) { - throw new Error(import_router.MESSAGE_MATCHER_IS_ALREADY_BUILT); - } - if (!middleware[method]) { - ; - [middleware, routes].forEach((handlerMap) => { - handlerMap[method] = /* @__PURE__ */ Object.create(null); - Object.keys(handlerMap[import_router.METHOD_NAME_ALL]).forEach((p) => { - handlerMap[method][p] = [...handlerMap[import_router.METHOD_NAME_ALL][p]]; - }); - }); - } - if (path === "/*") { - path = "*"; - } - const paramCount = (path.match(/\/:/g) || []).length; - if (/\*$/.test(path)) { - const re = buildWildcardRegExp(path); - if (method === import_router.METHOD_NAME_ALL) { - Object.keys(middleware).forEach((m) => { - middleware[m][path] ||= findMiddleware(middleware[m], path) || findMiddleware(middleware[import_router.METHOD_NAME_ALL], path) || []; - }); - } else { - middleware[method][path] ||= findMiddleware(middleware[method], path) || findMiddleware(middleware[import_router.METHOD_NAME_ALL], path) || []; - } - Object.keys(middleware).forEach((m) => { - if (method === import_router.METHOD_NAME_ALL || method === m) { - Object.keys(middleware[m]).forEach((p) => { - re.test(p) && middleware[m][p].push([handler, paramCount]); - }); - } - }); - Object.keys(routes).forEach((m) => { - if (method === import_router.METHOD_NAME_ALL || method === m) { - Object.keys(routes[m]).forEach( - (p) => re.test(p) && routes[m][p].push([handler, paramCount]) - ); - } - }); - return; - } - const paths = (0, import_url.checkOptionalParameter)(path) || [path]; - for (let i = 0, len = paths.length; i < len; i++) { - const path2 = paths[i]; - Object.keys(routes).forEach((m) => { - if (method === import_router.METHOD_NAME_ALL || method === m) { - routes[m][path2] ||= [ - ...findMiddleware(middleware[m], path2) || findMiddleware(middleware[import_router.METHOD_NAME_ALL], path2) || [] - ]; - routes[m][path2].push([handler, paramCount - len + i + 1]); - } - }); - } - } - match = import_matcher.match; - buildAllMatchers() { - const matchers = /* @__PURE__ */ Object.create(null); - Object.keys(this.#routes).concat(Object.keys(this.#middleware)).forEach((method) => { - matchers[method] ||= this.#buildMatcher(method); - }); - this.#middleware = this.#routes = void 0; - clearWildcardRegExpCache(); - return matchers; - } - #buildMatcher(method) { - const routes = []; - let hasOwnRoute = method === import_router.METHOD_NAME_ALL; - [this.#middleware, this.#routes].forEach((r) => { - const ownRoute = r[method] ? Object.keys(r[method]).map((path) => [path, r[method][path]]) : []; - if (ownRoute.length !== 0) { - hasOwnRoute ||= true; - routes.push(...ownRoute); - } else if (method !== import_router.METHOD_NAME_ALL) { - routes.push( - ...Object.keys(r[import_router.METHOD_NAME_ALL]).map((path) => [path, r[import_router.METHOD_NAME_ALL][path]]) - ); - } - }); - if (!hasOwnRoute) { - return null; - } else { - return buildMatcherFromPreprocessedRoutes(routes); - } - } - }; - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/router.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var router_exports = {}; + __export(router_exports, { + RegExpRouter: () => RegExpRouter2 + }); + module2.exports = __toCommonJS(router_exports); + var import_router = require_router(); + var import_url = require_url(); + var import_matcher = require_matcher(); + var import_node = require_node(); + var import_trie = require_trie(); + var nullMatcher = [/^$/, [], /* @__PURE__ */ Object.create(null)]; + var wildcardRegExpCache = /* @__PURE__ */ Object.create(null); + function buildWildcardRegExp(path) { + return (wildcardRegExpCache[path] ??= new RegExp( + path === '*' + ? '' + : `^${path.replace(/\/\*$|([.\\+*[^\]$()])/g, (_, metaChar) => + metaChar ? `\\${metaChar}` : '(?:|/.*)' + )}$` + )); + } + function clearWildcardRegExpCache() { + wildcardRegExpCache = /* @__PURE__ */ Object.create(null); + } + function buildMatcherFromPreprocessedRoutes(routes) { + const trie = new import_trie.Trie(); + const handlerData = []; + if (routes.length === 0) { + return nullMatcher; + } + const routesWithStaticPathFlag = routes + .map((route) => [!/\*|\/:/.test(route[0]), ...route]) + .sort(([isStaticA, pathA], [isStaticB, pathB]) => + isStaticA ? 1 : isStaticB ? -1 : pathA.length - pathB.length + ); + const staticMap = /* @__PURE__ */ Object.create(null); + for (let i = 0, j = -1, len = routesWithStaticPathFlag.length; i < len; i++) { + const [pathErrorCheckOnly, path, handlers] = routesWithStaticPathFlag[i]; + if (pathErrorCheckOnly) { + staticMap[path] = [ + handlers.map(([h]) => [h, /* @__PURE__ */ Object.create(null)]), + import_matcher.emptyParam + ]; + } else { + j++; + } + let paramAssoc; + try { + paramAssoc = trie.insert(path, j, pathErrorCheckOnly); + } catch (e) { + throw e === import_node.PATH_ERROR ? new import_router.UnsupportedPathError(path) : e; + } + if (pathErrorCheckOnly) { + continue; + } + handlerData[j] = handlers.map(([h, paramCount]) => { + const paramIndexMap = /* @__PURE__ */ Object.create(null); + paramCount -= 1; + for (; paramCount >= 0; paramCount--) { + const [key, value] = paramAssoc[paramCount]; + paramIndexMap[key] = value; + } + return [h, paramIndexMap]; + }); + } + const [regexp, indexReplacementMap, paramReplacementMap] = trie.buildRegExp(); + for (let i = 0, len = handlerData.length; i < len; i++) { + for (let j = 0, len2 = handlerData[i].length; j < len2; j++) { + const map = handlerData[i][j]?.[1]; + if (!map) { + continue; + } + const keys = Object.keys(map); + for (let k = 0, len3 = keys.length; k < len3; k++) { + map[keys[k]] = paramReplacementMap[map[keys[k]]]; + } + } + } + const handlerMap = []; + for (const i in indexReplacementMap) { + handlerMap[i] = handlerData[indexReplacementMap[i]]; + } + return [regexp, handlerMap, staticMap]; + } + function findMiddleware(middleware, path) { + if (!middleware) { + return void 0; + } + for (const k of Object.keys(middleware).sort((a, b) => b.length - a.length)) { + if (buildWildcardRegExp(k).test(path)) { + return [...middleware[k]]; + } + } + return void 0; + } + var RegExpRouter2 = class { + name = 'RegExpRouter'; + #middleware; + #routes; + constructor() { + this.#middleware = { [import_router.METHOD_NAME_ALL]: /* @__PURE__ */ Object.create(null) }; + this.#routes = { [import_router.METHOD_NAME_ALL]: /* @__PURE__ */ Object.create(null) }; + } + add(method, path, handler) { + const middleware = this.#middleware; + const routes = this.#routes; + if (!middleware || !routes) { + throw new Error(import_router.MESSAGE_MATCHER_IS_ALREADY_BUILT); + } + if (!middleware[method]) { + [middleware, routes].forEach((handlerMap) => { + handlerMap[method] = /* @__PURE__ */ Object.create(null); + Object.keys(handlerMap[import_router.METHOD_NAME_ALL]).forEach((p) => { + handlerMap[method][p] = [...handlerMap[import_router.METHOD_NAME_ALL][p]]; + }); + }); + } + if (path === '/*') { + path = '*'; + } + const paramCount = (path.match(/\/:/g) || []).length; + if (/\*$/.test(path)) { + const re = buildWildcardRegExp(path); + if (method === import_router.METHOD_NAME_ALL) { + Object.keys(middleware).forEach((m) => { + middleware[m][path] ||= + findMiddleware(middleware[m], path) || + findMiddleware(middleware[import_router.METHOD_NAME_ALL], path) || + []; + }); + } else { + middleware[method][path] ||= + findMiddleware(middleware[method], path) || + findMiddleware(middleware[import_router.METHOD_NAME_ALL], path) || + []; + } + Object.keys(middleware).forEach((m) => { + if (method === import_router.METHOD_NAME_ALL || method === m) { + Object.keys(middleware[m]).forEach((p) => { + re.test(p) && middleware[m][p].push([handler, paramCount]); + }); + } + }); + Object.keys(routes).forEach((m) => { + if (method === import_router.METHOD_NAME_ALL || method === m) { + Object.keys(routes[m]).forEach( + (p) => re.test(p) && routes[m][p].push([handler, paramCount]) + ); + } + }); + return; + } + const paths = (0, import_url.checkOptionalParameter)(path) || [path]; + for (let i = 0, len = paths.length; i < len; i++) { + const path2 = paths[i]; + Object.keys(routes).forEach((m) => { + if (method === import_router.METHOD_NAME_ALL || method === m) { + routes[m][path2] ||= [ + ...(findMiddleware(middleware[m], path2) || + findMiddleware(middleware[import_router.METHOD_NAME_ALL], path2) || + []) + ]; + routes[m][path2].push([handler, paramCount - len + i + 1]); + } + }); + } + } + match = import_matcher.match; + buildAllMatchers() { + const matchers = /* @__PURE__ */ Object.create(null); + Object.keys(this.#routes) + .concat(Object.keys(this.#middleware)) + .forEach((method) => { + matchers[method] ||= this.#buildMatcher(method); + }); + this.#middleware = this.#routes = void 0; + clearWildcardRegExpCache(); + return matchers; + } + #buildMatcher(method) { + const routes = []; + let hasOwnRoute = method === import_router.METHOD_NAME_ALL; + [this.#middleware, this.#routes].forEach((r) => { + const ownRoute = r[method] + ? Object.keys(r[method]).map((path) => [path, r[method][path]]) + : []; + if (ownRoute.length !== 0) { + hasOwnRoute ||= true; + routes.push(...ownRoute); + } else if (method !== import_router.METHOD_NAME_ALL) { + routes.push( + ...Object.keys(r[import_router.METHOD_NAME_ALL]).map((path) => [ + path, + r[import_router.METHOD_NAME_ALL][path] + ]) + ); + } + }); + if (!hasOwnRoute) { + return null; + } else { + return buildMatcherFromPreprocessedRoutes(routes); + } + } + }; + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/prepared-router.js var require_prepared_router = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/prepared-router.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var prepared_router_exports = {}; - __export(prepared_router_exports, { - PreparedRegExpRouter: () => PreparedRegExpRouter2, - buildInitParams: () => buildInitParams2, - serializeInitParams: () => serializeInitParams2 - }); - module2.exports = __toCommonJS(prepared_router_exports); - var import_router = require_router(); - var import_matcher = require_matcher(); - var import_router2 = require_router2(); - var PreparedRegExpRouter2 = class { - name = "PreparedRegExpRouter"; - #matchers; - #relocateMap; - constructor(matchers, relocateMap) { - this.#matchers = matchers; - this.#relocateMap = relocateMap; - } - #addWildcard(method, handlerData) { - const matcher = this.#matchers[method]; - matcher[1].forEach((list) => list && list.push(handlerData)); - Object.values(matcher[2]).forEach((list) => list[0].push(handlerData)); - } - #addPath(method, path, handler, indexes, map) { - const matcher = this.#matchers[method]; - if (!map) { - matcher[2][path][0].push([handler, {}]); - } else { - indexes.forEach((index) => { - if (typeof index === "number") { - matcher[1][index].push([handler, map]); - } else { - ; - matcher[2][index || path][0].push([handler, map]); - } - }); - } - } - add(method, path, handler) { - if (!this.#matchers[method]) { - const all = this.#matchers[import_router.METHOD_NAME_ALL]; - const staticMap = {}; - for (const key in all[2]) { - staticMap[key] = [all[2][key][0].slice(), import_matcher.emptyParam]; - } - this.#matchers[method] = [ - all[0], - all[1].map((list) => Array.isArray(list) ? list.slice() : 0), - staticMap - ]; - } - if (path === "/*" || path === "*") { - const handlerData = [handler, {}]; - if (method === import_router.METHOD_NAME_ALL) { - for (const m in this.#matchers) { - this.#addWildcard(m, handlerData); - } - } else { - this.#addWildcard(method, handlerData); - } - return; - } - const data = this.#relocateMap[path]; - if (!data) { - throw new Error(`Path ${path} is not registered`); - } - for (const [indexes, map] of data) { - if (method === import_router.METHOD_NAME_ALL) { - for (const m in this.#matchers) { - this.#addPath(m, path, handler, indexes, map); - } - } else { - this.#addPath(method, path, handler, indexes, map); - } - } - } - buildAllMatchers() { - return this.#matchers; - } - match = import_matcher.match; - }; - var buildInitParams2 = ({ paths }) => { - const RegExpRouterWithMatcherExport = class extends import_router2.RegExpRouter { - buildAndExportAllMatchers() { - return this.buildAllMatchers(); - } - }; - const router = new RegExpRouterWithMatcherExport(); - for (const path of paths) { - router.add(import_router.METHOD_NAME_ALL, path, path); - } - const matchers = router.buildAndExportAllMatchers(); - const all = matchers[import_router.METHOD_NAME_ALL]; - const relocateMap = {}; - for (const path of paths) { - if (path === "/*" || path === "*") { - continue; - } - all[1].forEach((list, i) => { - list.forEach(([p, map]) => { - if (p === path) { - if (relocateMap[path]) { - relocateMap[path][0][1] = { - ...relocateMap[path][0][1], - ...map - }; - } else { - relocateMap[path] = [[[], map]]; - } - if (relocateMap[path][0][0].findIndex((j) => j === i) === -1) { - relocateMap[path][0][0].push(i); - } - } - }); - }); - for (const path2 in all[2]) { - all[2][path2][0].forEach(([p]) => { - if (p === path) { - relocateMap[path] ||= [[[]]]; - const value = path2 === path ? "" : path2; - if (relocateMap[path][0][0].findIndex((v) => v === value) === -1) { - relocateMap[path][0][0].push(value); - } - } - }); - } - } - for (let i = 0, len = all[1].length; i < len; i++) { - all[1][i] = all[1][i] ? [] : 0; - } - for (const path in all[2]) { - all[2][path][0] = []; - } - return [matchers, relocateMap]; - }; - var serializeInitParams2 = ([matchers, relocateMap]) => { - const matchersStr = JSON.stringify( - matchers, - (_, value) => value instanceof RegExp ? `##${value.toString()}##` : value - ).replace(/"##(.+?)##"/g, (_, str) => str.replace(/\\\\/g, "\\")); - const relocateMapStr = JSON.stringify(relocateMap); - return `[${matchersStr},${relocateMapStr}]`; - }; - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/prepared-router.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var prepared_router_exports = {}; + __export(prepared_router_exports, { + PreparedRegExpRouter: () => PreparedRegExpRouter2, + buildInitParams: () => buildInitParams2, + serializeInitParams: () => serializeInitParams2 + }); + module2.exports = __toCommonJS(prepared_router_exports); + var import_router = require_router(); + var import_matcher = require_matcher(); + var import_router2 = require_router2(); + var PreparedRegExpRouter2 = class { + name = 'PreparedRegExpRouter'; + #matchers; + #relocateMap; + constructor(matchers, relocateMap) { + this.#matchers = matchers; + this.#relocateMap = relocateMap; + } + #addWildcard(method, handlerData) { + const matcher = this.#matchers[method]; + matcher[1].forEach((list) => list && list.push(handlerData)); + Object.values(matcher[2]).forEach((list) => list[0].push(handlerData)); + } + #addPath(method, path, handler, indexes, map) { + const matcher = this.#matchers[method]; + if (!map) { + matcher[2][path][0].push([handler, {}]); + } else { + indexes.forEach((index) => { + if (typeof index === 'number') { + matcher[1][index].push([handler, map]); + } else { + matcher[2][index || path][0].push([handler, map]); + } + }); + } + } + add(method, path, handler) { + if (!this.#matchers[method]) { + const all = this.#matchers[import_router.METHOD_NAME_ALL]; + const staticMap = {}; + for (const key in all[2]) { + staticMap[key] = [all[2][key][0].slice(), import_matcher.emptyParam]; + } + this.#matchers[method] = [ + all[0], + all[1].map((list) => (Array.isArray(list) ? list.slice() : 0)), + staticMap + ]; + } + if (path === '/*' || path === '*') { + const handlerData = [handler, {}]; + if (method === import_router.METHOD_NAME_ALL) { + for (const m in this.#matchers) { + this.#addWildcard(m, handlerData); + } + } else { + this.#addWildcard(method, handlerData); + } + return; + } + const data = this.#relocateMap[path]; + if (!data) { + throw new Error(`Path ${path} is not registered`); + } + for (const [indexes, map] of data) { + if (method === import_router.METHOD_NAME_ALL) { + for (const m in this.#matchers) { + this.#addPath(m, path, handler, indexes, map); + } + } else { + this.#addPath(method, path, handler, indexes, map); + } + } + } + buildAllMatchers() { + return this.#matchers; + } + match = import_matcher.match; + }; + var buildInitParams2 = ({ paths }) => { + const RegExpRouterWithMatcherExport = class extends import_router2.RegExpRouter { + buildAndExportAllMatchers() { + return this.buildAllMatchers(); + } + }; + const router = new RegExpRouterWithMatcherExport(); + for (const path of paths) { + router.add(import_router.METHOD_NAME_ALL, path, path); + } + const matchers = router.buildAndExportAllMatchers(); + const all = matchers[import_router.METHOD_NAME_ALL]; + const relocateMap = {}; + for (const path of paths) { + if (path === '/*' || path === '*') { + continue; + } + all[1].forEach((list, i) => { + list.forEach(([p, map]) => { + if (p === path) { + if (relocateMap[path]) { + relocateMap[path][0][1] = { + ...relocateMap[path][0][1], + ...map + }; + } else { + relocateMap[path] = [[[], map]]; + } + if (relocateMap[path][0][0].findIndex((j) => j === i) === -1) { + relocateMap[path][0][0].push(i); + } + } + }); + }); + for (const path2 in all[2]) { + all[2][path2][0].forEach(([p]) => { + if (p === path) { + relocateMap[path] ||= [[[]]]; + const value = path2 === path ? '' : path2; + if (relocateMap[path][0][0].findIndex((v) => v === value) === -1) { + relocateMap[path][0][0].push(value); + } + } + }); + } + } + for (let i = 0, len = all[1].length; i < len; i++) { + all[1][i] = all[1][i] ? [] : 0; + } + for (const path in all[2]) { + all[2][path][0] = []; + } + return [matchers, relocateMap]; + }; + var serializeInitParams2 = ([matchers, relocateMap]) => { + const matchersStr = JSON.stringify(matchers, (_, value) => + value instanceof RegExp ? `##${value.toString()}##` : value + ).replace(/"##(.+?)##"/g, (_, str) => str.replace(/\\\\/g, '\\')); + const relocateMapStr = JSON.stringify(relocateMap); + return `[${matchersStr},${relocateMapStr}]`; + }; + } }); // node_modules/hono/dist/cjs/router/reg-exp-router/index.js var require_reg_exp_router = __commonJS({ - "node_modules/hono/dist/cjs/router/reg-exp-router/index.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var reg_exp_router_exports = {}; - __export(reg_exp_router_exports, { - PreparedRegExpRouter: () => import_prepared_router.PreparedRegExpRouter, - RegExpRouter: () => import_router.RegExpRouter, - buildInitParams: () => import_prepared_router.buildInitParams, - serializeInitParams: () => import_prepared_router.serializeInitParams - }); - module2.exports = __toCommonJS(reg_exp_router_exports); - var import_router = require_router2(); - var import_prepared_router = require_prepared_router(); - } + 'node_modules/hono/dist/cjs/router/reg-exp-router/index.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var reg_exp_router_exports = {}; + __export(reg_exp_router_exports, { + PreparedRegExpRouter: () => import_prepared_router.PreparedRegExpRouter, + RegExpRouter: () => import_router.RegExpRouter, + buildInitParams: () => import_prepared_router.buildInitParams, + serializeInitParams: () => import_prepared_router.serializeInitParams + }); + module2.exports = __toCommonJS(reg_exp_router_exports); + var import_router = require_router2(); + var import_prepared_router = require_prepared_router(); + } }); // node_modules/hono/dist/cjs/router/smart-router/router.js var require_router3 = __commonJS({ - "node_modules/hono/dist/cjs/router/smart-router/router.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var router_exports = {}; - __export(router_exports, { - SmartRouter: () => SmartRouter2 - }); - module2.exports = __toCommonJS(router_exports); - var import_router = require_router(); - var SmartRouter2 = class { - name = "SmartRouter"; - #routers = []; - #routes = []; - constructor(init) { - this.#routers = init.routers; - } - add(method, path, handler) { - if (!this.#routes) { - throw new Error(import_router.MESSAGE_MATCHER_IS_ALREADY_BUILT); - } - this.#routes.push([method, path, handler]); - } - match(method, path) { - if (!this.#routes) { - throw new Error("Fatal error"); - } - const routers = this.#routers; - const routes = this.#routes; - const len = routers.length; - let i = 0; - let res; - for (; i < len; i++) { - const router = routers[i]; - try { - for (let i2 = 0, len2 = routes.length; i2 < len2; i2++) { - router.add(...routes[i2]); - } - res = router.match(method, path); - } catch (e) { - if (e instanceof import_router.UnsupportedPathError) { - continue; - } - throw e; - } - this.match = router.match.bind(router); - this.#routers = [router]; - this.#routes = void 0; - break; - } - if (i === len) { - throw new Error("Fatal error"); - } - this.name = `SmartRouter + ${this.activeRouter.name}`; - return res; - } - get activeRouter() { - if (this.#routes || this.#routers.length !== 1) { - throw new Error("No active router has been determined yet."); - } - return this.#routers[0]; - } - }; - } + 'node_modules/hono/dist/cjs/router/smart-router/router.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var router_exports = {}; + __export(router_exports, { + SmartRouter: () => SmartRouter2 + }); + module2.exports = __toCommonJS(router_exports); + var import_router = require_router(); + var SmartRouter2 = class { + name = 'SmartRouter'; + #routers = []; + #routes = []; + constructor(init) { + this.#routers = init.routers; + } + add(method, path, handler) { + if (!this.#routes) { + throw new Error(import_router.MESSAGE_MATCHER_IS_ALREADY_BUILT); + } + this.#routes.push([method, path, handler]); + } + match(method, path) { + if (!this.#routes) { + throw new Error('Fatal error'); + } + const routers = this.#routers; + const routes = this.#routes; + const len = routers.length; + let i = 0; + let res; + for (; i < len; i++) { + const router = routers[i]; + try { + for (let i2 = 0, len2 = routes.length; i2 < len2; i2++) { + router.add(...routes[i2]); + } + res = router.match(method, path); + } catch (e) { + if (e instanceof import_router.UnsupportedPathError) { + continue; + } + throw e; + } + this.match = router.match.bind(router); + this.#routers = [router]; + this.#routes = void 0; + break; + } + if (i === len) { + throw new Error('Fatal error'); + } + this.name = `SmartRouter + ${this.activeRouter.name}`; + return res; + } + get activeRouter() { + if (this.#routes || this.#routers.length !== 1) { + throw new Error('No active router has been determined yet.'); + } + return this.#routers[0]; + } + }; + } }); // node_modules/hono/dist/cjs/router/smart-router/index.js var require_smart_router = __commonJS({ - "node_modules/hono/dist/cjs/router/smart-router/index.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var smart_router_exports = {}; - __export(smart_router_exports, { - SmartRouter: () => import_router.SmartRouter - }); - module2.exports = __toCommonJS(smart_router_exports); - var import_router = require_router3(); - } + 'node_modules/hono/dist/cjs/router/smart-router/index.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var smart_router_exports = {}; + __export(smart_router_exports, { + SmartRouter: () => import_router.SmartRouter + }); + module2.exports = __toCommonJS(smart_router_exports); + var import_router = require_router3(); + } }); // node_modules/hono/dist/cjs/router/trie-router/node.js var require_node2 = __commonJS({ - "node_modules/hono/dist/cjs/router/trie-router/node.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var node_exports = {}; - __export(node_exports, { - Node: () => Node - }); - module2.exports = __toCommonJS(node_exports); - var import_router = require_router(); - var import_url = require_url(); - var emptyParams = /* @__PURE__ */ Object.create(null); - var Node = class _Node { - #methods; - #children; - #patterns; - #order = 0; - #params = emptyParams; - constructor(method, handler, children) { - this.#children = children || /* @__PURE__ */ Object.create(null); - this.#methods = []; - if (method && handler) { - const m = /* @__PURE__ */ Object.create(null); - m[method] = { handler, possibleKeys: [], score: 0 }; - this.#methods = [m]; - } - this.#patterns = []; - } - insert(method, path, handler) { - this.#order = ++this.#order; - let curNode = this; - const parts = (0, import_url.splitRoutingPath)(path); - const possibleKeys = []; - for (let i = 0, len = parts.length; i < len; i++) { - const p = parts[i]; - const nextP = parts[i + 1]; - const pattern = (0, import_url.getPattern)(p, nextP); - const key = Array.isArray(pattern) ? pattern[0] : p; - if (key in curNode.#children) { - curNode = curNode.#children[key]; - if (pattern) { - possibleKeys.push(pattern[1]); - } - continue; - } - curNode.#children[key] = new _Node(); - if (pattern) { - curNode.#patterns.push(pattern); - possibleKeys.push(pattern[1]); - } - curNode = curNode.#children[key]; - } - curNode.#methods.push({ - [method]: { - handler, - possibleKeys: possibleKeys.filter((v, i, a) => a.indexOf(v) === i), - score: this.#order - } - }); - return curNode; - } - #getHandlerSets(node, method, nodeParams, params) { - const handlerSets = []; - for (let i = 0, len = node.#methods.length; i < len; i++) { - const m = node.#methods[i]; - const handlerSet = m[method] || m[import_router.METHOD_NAME_ALL]; - const processedSet = {}; - if (handlerSet !== void 0) { - handlerSet.params = /* @__PURE__ */ Object.create(null); - handlerSets.push(handlerSet); - if (nodeParams !== emptyParams || params && params !== emptyParams) { - for (let i2 = 0, len2 = handlerSet.possibleKeys.length; i2 < len2; i2++) { - const key = handlerSet.possibleKeys[i2]; - const processed = processedSet[handlerSet.score]; - handlerSet.params[key] = params?.[key] && !processed ? params[key] : nodeParams[key] ?? params?.[key]; - processedSet[handlerSet.score] = true; - } - } - } - } - return handlerSets; - } - search(method, path) { - const handlerSets = []; - this.#params = emptyParams; - const curNode = this; - let curNodes = [curNode]; - const parts = (0, import_url.splitPath)(path); - const curNodesQueue = []; - for (let i = 0, len = parts.length; i < len; i++) { - const part = parts[i]; - const isLast = i === len - 1; - const tempNodes = []; - for (let j = 0, len2 = curNodes.length; j < len2; j++) { - const node = curNodes[j]; - const nextNode = node.#children[part]; - if (nextNode) { - nextNode.#params = node.#params; - if (isLast) { - if (nextNode.#children["*"]) { - handlerSets.push( - ...this.#getHandlerSets(nextNode.#children["*"], method, node.#params) - ); - } - handlerSets.push(...this.#getHandlerSets(nextNode, method, node.#params)); - } else { - tempNodes.push(nextNode); - } - } - for (let k = 0, len3 = node.#patterns.length; k < len3; k++) { - const pattern = node.#patterns[k]; - const params = node.#params === emptyParams ? {} : { ...node.#params }; - if (pattern === "*") { - const astNode = node.#children["*"]; - if (astNode) { - handlerSets.push(...this.#getHandlerSets(astNode, method, node.#params)); - astNode.#params = params; - tempNodes.push(astNode); - } - continue; - } - const [key, name, matcher] = pattern; - if (!part && !(matcher instanceof RegExp)) { - continue; - } - const child = node.#children[key]; - const restPathString = parts.slice(i).join("/"); - if (matcher instanceof RegExp) { - const m = matcher.exec(restPathString); - if (m) { - params[name] = m[0]; - handlerSets.push(...this.#getHandlerSets(child, method, node.#params, params)); - if (Object.keys(child.#children).length) { - child.#params = params; - const componentCount = m[0].match(/\//)?.length ?? 0; - const targetCurNodes = curNodesQueue[componentCount] ||= []; - targetCurNodes.push(child); - } - continue; - } - } - if (matcher === true || matcher.test(part)) { - params[name] = part; - if (isLast) { - handlerSets.push(...this.#getHandlerSets(child, method, params, node.#params)); - if (child.#children["*"]) { - handlerSets.push( - ...this.#getHandlerSets(child.#children["*"], method, params, node.#params) - ); - } - } else { - child.#params = params; - tempNodes.push(child); - } - } - } - } - curNodes = tempNodes.concat(curNodesQueue.shift() ?? []); - } - if (handlerSets.length > 1) { - handlerSets.sort((a, b) => { - return a.score - b.score; - }); - } - return [handlerSets.map(({ handler, params }) => [handler, params])]; - } - }; - } + 'node_modules/hono/dist/cjs/router/trie-router/node.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var node_exports = {}; + __export(node_exports, { + Node: () => Node + }); + module2.exports = __toCommonJS(node_exports); + var import_router = require_router(); + var import_url = require_url(); + var emptyParams = /* @__PURE__ */ Object.create(null); + var Node = class _Node { + #methods; + #children; + #patterns; + #order = 0; + #params = emptyParams; + constructor(method, handler, children) { + this.#children = children || /* @__PURE__ */ Object.create(null); + this.#methods = []; + if (method && handler) { + const m = /* @__PURE__ */ Object.create(null); + m[method] = { handler, possibleKeys: [], score: 0 }; + this.#methods = [m]; + } + this.#patterns = []; + } + insert(method, path, handler) { + this.#order = ++this.#order; + let curNode = this; + const parts = (0, import_url.splitRoutingPath)(path); + const possibleKeys = []; + for (let i = 0, len = parts.length; i < len; i++) { + const p = parts[i]; + const nextP = parts[i + 1]; + const pattern = (0, import_url.getPattern)(p, nextP); + const key = Array.isArray(pattern) ? pattern[0] : p; + if (key in curNode.#children) { + curNode = curNode.#children[key]; + if (pattern) { + possibleKeys.push(pattern[1]); + } + continue; + } + curNode.#children[key] = new _Node(); + if (pattern) { + curNode.#patterns.push(pattern); + possibleKeys.push(pattern[1]); + } + curNode = curNode.#children[key]; + } + curNode.#methods.push({ + [method]: { + handler, + possibleKeys: possibleKeys.filter((v, i, a) => a.indexOf(v) === i), + score: this.#order + } + }); + return curNode; + } + #getHandlerSets(node, method, nodeParams, params) { + const handlerSets = []; + for (let i = 0, len = node.#methods.length; i < len; i++) { + const m = node.#methods[i]; + const handlerSet = m[method] || m[import_router.METHOD_NAME_ALL]; + const processedSet = {}; + if (handlerSet !== void 0) { + handlerSet.params = /* @__PURE__ */ Object.create(null); + handlerSets.push(handlerSet); + if (nodeParams !== emptyParams || (params && params !== emptyParams)) { + for (let i2 = 0, len2 = handlerSet.possibleKeys.length; i2 < len2; i2++) { + const key = handlerSet.possibleKeys[i2]; + const processed = processedSet[handlerSet.score]; + handlerSet.params[key] = + params?.[key] && !processed ? params[key] : (nodeParams[key] ?? params?.[key]); + processedSet[handlerSet.score] = true; + } + } + } + } + return handlerSets; + } + search(method, path) { + const handlerSets = []; + this.#params = emptyParams; + const curNode = this; + let curNodes = [curNode]; + const parts = (0, import_url.splitPath)(path); + const curNodesQueue = []; + for (let i = 0, len = parts.length; i < len; i++) { + const part = parts[i]; + const isLast = i === len - 1; + const tempNodes = []; + for (let j = 0, len2 = curNodes.length; j < len2; j++) { + const node = curNodes[j]; + const nextNode = node.#children[part]; + if (nextNode) { + nextNode.#params = node.#params; + if (isLast) { + if (nextNode.#children['*']) { + handlerSets.push( + ...this.#getHandlerSets(nextNode.#children['*'], method, node.#params) + ); + } + handlerSets.push(...this.#getHandlerSets(nextNode, method, node.#params)); + } else { + tempNodes.push(nextNode); + } + } + for (let k = 0, len3 = node.#patterns.length; k < len3; k++) { + const pattern = node.#patterns[k]; + const params = node.#params === emptyParams ? {} : { ...node.#params }; + if (pattern === '*') { + const astNode = node.#children['*']; + if (astNode) { + handlerSets.push(...this.#getHandlerSets(astNode, method, node.#params)); + astNode.#params = params; + tempNodes.push(astNode); + } + continue; + } + const [key, name, matcher] = pattern; + if (!part && !(matcher instanceof RegExp)) { + continue; + } + const child = node.#children[key]; + const restPathString = parts.slice(i).join('/'); + if (matcher instanceof RegExp) { + const m = matcher.exec(restPathString); + if (m) { + params[name] = m[0]; + handlerSets.push(...this.#getHandlerSets(child, method, node.#params, params)); + if (Object.keys(child.#children).length) { + child.#params = params; + const componentCount = m[0].match(/\//)?.length ?? 0; + const targetCurNodes = (curNodesQueue[componentCount] ||= []); + targetCurNodes.push(child); + } + continue; + } + } + if (matcher === true || matcher.test(part)) { + params[name] = part; + if (isLast) { + handlerSets.push(...this.#getHandlerSets(child, method, params, node.#params)); + if (child.#children['*']) { + handlerSets.push( + ...this.#getHandlerSets(child.#children['*'], method, params, node.#params) + ); + } + } else { + child.#params = params; + tempNodes.push(child); + } + } + } + } + curNodes = tempNodes.concat(curNodesQueue.shift() ?? []); + } + if (handlerSets.length > 1) { + handlerSets.sort((a, b) => { + return a.score - b.score; + }); + } + return [handlerSets.map(({ handler, params }) => [handler, params])]; + } + }; + } }); // node_modules/hono/dist/cjs/router/trie-router/router.js var require_router4 = __commonJS({ - "node_modules/hono/dist/cjs/router/trie-router/router.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var router_exports = {}; - __export(router_exports, { - TrieRouter: () => TrieRouter2 - }); - module2.exports = __toCommonJS(router_exports); - var import_url = require_url(); - var import_node = require_node2(); - var TrieRouter2 = class { - name = "TrieRouter"; - #node; - constructor() { - this.#node = new import_node.Node(); - } - add(method, path, handler) { - const results = (0, import_url.checkOptionalParameter)(path); - if (results) { - for (let i = 0, len = results.length; i < len; i++) { - this.#node.insert(method, results[i], handler); - } - return; - } - this.#node.insert(method, path, handler); - } - match(method, path) { - return this.#node.search(method, path); - } - }; - } + 'node_modules/hono/dist/cjs/router/trie-router/router.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var router_exports = {}; + __export(router_exports, { + TrieRouter: () => TrieRouter2 + }); + module2.exports = __toCommonJS(router_exports); + var import_url = require_url(); + var import_node = require_node2(); + var TrieRouter2 = class { + name = 'TrieRouter'; + #node; + constructor() { + this.#node = new import_node.Node(); + } + add(method, path, handler) { + const results = (0, import_url.checkOptionalParameter)(path); + if (results) { + for (let i = 0, len = results.length; i < len; i++) { + this.#node.insert(method, results[i], handler); + } + return; + } + this.#node.insert(method, path, handler); + } + match(method, path) { + return this.#node.search(method, path); + } + }; + } }); // node_modules/hono/dist/cjs/router/trie-router/index.js var require_trie_router = __commonJS({ - "node_modules/hono/dist/cjs/router/trie-router/index.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var trie_router_exports = {}; - __export(trie_router_exports, { - TrieRouter: () => import_router.TrieRouter - }); - module2.exports = __toCommonJS(trie_router_exports); - var import_router = require_router4(); - } + 'node_modules/hono/dist/cjs/router/trie-router/index.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var trie_router_exports = {}; + __export(trie_router_exports, { + TrieRouter: () => import_router.TrieRouter + }); + module2.exports = __toCommonJS(trie_router_exports); + var import_router = require_router4(); + } }); // node_modules/hono/dist/cjs/hono.js var require_hono = __commonJS({ - "node_modules/hono/dist/cjs/hono.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var hono_exports = {}; - __export(hono_exports, { - Hono: () => Hono2 - }); - module2.exports = __toCommonJS(hono_exports); - var import_hono_base = require_hono_base(); - var import_reg_exp_router = require_reg_exp_router(); - var import_smart_router = require_smart_router(); - var import_trie_router = require_trie_router(); - var Hono2 = class extends import_hono_base.HonoBase { - constructor(options = {}) { - super(options); - this.router = options.router ?? new import_smart_router.SmartRouter({ - routers: [new import_reg_exp_router.RegExpRouter(), new import_trie_router.TrieRouter()] - }); - } - }; - } + 'node_modules/hono/dist/cjs/hono.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var hono_exports = {}; + __export(hono_exports, { + Hono: () => Hono2 + }); + module2.exports = __toCommonJS(hono_exports); + var import_hono_base = require_hono_base(); + var import_reg_exp_router = require_reg_exp_router(); + var import_smart_router = require_smart_router(); + var import_trie_router = require_trie_router(); + var Hono2 = class extends import_hono_base.HonoBase { + constructor(options = {}) { + super(options); + this.router = + options.router ?? + new import_smart_router.SmartRouter({ + routers: [new import_reg_exp_router.RegExpRouter(), new import_trie_router.TrieRouter()] + }); + } + }; + } }); // node_modules/hono/dist/cjs/index.js var require_cjs = __commonJS({ - "node_modules/hono/dist/cjs/index.js"(exports2, module2) { - "use strict"; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export(src_exports, { - Hono: () => import_hono.Hono - }); - module2.exports = __toCommonJS(src_exports); - var import_hono = require_hono(); - } + 'node_modules/hono/dist/cjs/index.js'(exports2, module2) { + 'use strict'; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var src_exports = {}; + __export(src_exports, { + Hono: () => import_hono.Hono + }); + module2.exports = __toCommonJS(src_exports); + var import_hono = require_hono(); + } }); // node_modules/@hono/node-server/dist/index.js var require_dist = __commonJS({ - "node_modules/@hono/node-server/dist/index.js"(exports2, module2) { - "use strict"; - var __create2 = Object.create; - var __defProp2 = Object.defineProperty; - var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; - var __getOwnPropNames2 = Object.getOwnPropertyNames; - var __getProtoOf2 = Object.getPrototypeOf; - var __hasOwnProp2 = Object.prototype.hasOwnProperty; - var __export = (target, all) => { - for (var name in all) - __defProp2(target, name, { get: all[name], enumerable: true }); - }; - var __copyProps2 = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames2(from)) - if (!__hasOwnProp2.call(to, key) && key !== except) - __defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable }); - } - return to; - }; - var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target, - mod - )); - var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod); - var src_exports = {}; - __export(src_exports, { - RequestError: () => RequestError, - createAdaptorServer: () => createAdaptorServer, - getRequestListener: () => getRequestListener, - serve: () => serve - }); - module2.exports = __toCommonJS(src_exports); - var import_node_http = require("http"); - var import_node_http22 = require("http2"); - var import_node_http2 = require("http2"); - var import_node_stream = require("stream"); - var RequestError = class extends Error { - constructor(message, options) { - super(message, options); - this.name = "RequestError"; - } - }; - var toRequestError = (e) => { - if (e instanceof RequestError) { - return e; - } - return new RequestError(e.message, { cause: e }); - }; - var GlobalRequest = global.Request; - var Request2 = class extends GlobalRequest { - constructor(input, options) { - if (typeof input === "object" && getRequestCache in input) { - input = input[getRequestCache](); - } - if (typeof options?.body?.getReader !== "undefined") { - ; - options.duplex ??= "half"; - } - super(input, options); - } - }; - var newHeadersFromIncoming = (incoming) => { - const headerRecord = []; - const rawHeaders = incoming.rawHeaders; - for (let i = 0; i < rawHeaders.length; i += 2) { - const { [i]: key, [i + 1]: value } = rawHeaders; - if (key.charCodeAt(0) !== /*:*/ - 58) { - headerRecord.push([key, value]); - } - } - return new Headers(headerRecord); - }; - var wrapBodyStream = Symbol("wrapBodyStream"); - var newRequestFromIncoming = (method, url, headers, incoming, abortController) => { - const init = { - method, - headers, - signal: abortController.signal - }; - if (method === "TRACE") { - init.method = "GET"; - const req = new Request2(url, init); - Object.defineProperty(req, "method", { - get() { - return "TRACE"; - } - }); - return req; - } - if (!(method === "GET" || method === "HEAD")) { - if ("rawBody" in incoming && incoming.rawBody instanceof Buffer) { - init.body = new ReadableStream({ - start(controller) { - controller.enqueue(incoming.rawBody); - controller.close(); - } - }); - } else if (incoming[wrapBodyStream]) { - let reader; - init.body = new ReadableStream({ - async pull(controller) { - try { - reader ||= import_node_stream.Readable.toWeb(incoming).getReader(); - const { done, value } = await reader.read(); - if (done) { - controller.close(); - } else { - controller.enqueue(value); - } - } catch (error) { - controller.error(error); - } - } - }); - } else { - init.body = import_node_stream.Readable.toWeb(incoming); - } - } - return new Request2(url, init); - }; - var getRequestCache = Symbol("getRequestCache"); - var requestCache = Symbol("requestCache"); - var incomingKey = Symbol("incomingKey"); - var urlKey = Symbol("urlKey"); - var headersKey = Symbol("headersKey"); - var abortControllerKey = Symbol("abortControllerKey"); - var getAbortController = Symbol("getAbortController"); - var requestPrototype = { - get method() { - return this[incomingKey].method || "GET"; - }, - get url() { - return this[urlKey]; - }, - get headers() { - return this[headersKey] ||= newHeadersFromIncoming(this[incomingKey]); - }, - [getAbortController]() { - this[getRequestCache](); - return this[abortControllerKey]; - }, - [getRequestCache]() { - this[abortControllerKey] ||= new AbortController(); - return this[requestCache] ||= newRequestFromIncoming( - this.method, - this[urlKey], - this.headers, - this[incomingKey], - this[abortControllerKey] - ); - } - }; - [ - "body", - "bodyUsed", - "cache", - "credentials", - "destination", - "integrity", - "mode", - "redirect", - "referrer", - "referrerPolicy", - "signal", - "keepalive" - ].forEach((k) => { - Object.defineProperty(requestPrototype, k, { - get() { - return this[getRequestCache]()[k]; - } - }); - }); - ["arrayBuffer", "blob", "clone", "formData", "json", "text"].forEach((k) => { - Object.defineProperty(requestPrototype, k, { - value: function() { - return this[getRequestCache]()[k](); - } - }); - }); - Object.setPrototypeOf(requestPrototype, Request2.prototype); - var newRequest = (incoming, defaultHostname) => { - const req = Object.create(requestPrototype); - req[incomingKey] = incoming; - const incomingUrl = incoming.url || ""; - if (incomingUrl[0] !== "/" && // short-circuit for performance. most requests are relative URL. - (incomingUrl.startsWith("http://") || incomingUrl.startsWith("https://"))) { - if (incoming instanceof import_node_http2.Http2ServerRequest) { - throw new RequestError("Absolute URL for :path is not allowed in HTTP/2"); - } - try { - const url2 = new URL(incomingUrl); - req[urlKey] = url2.href; - } catch (e) { - throw new RequestError("Invalid absolute URL", { cause: e }); - } - return req; - } - const host = (incoming instanceof import_node_http2.Http2ServerRequest ? incoming.authority : incoming.headers.host) || defaultHostname; - if (!host) { - throw new RequestError("Missing host header"); - } - let scheme; - if (incoming instanceof import_node_http2.Http2ServerRequest) { - scheme = incoming.scheme; - if (!(scheme === "http" || scheme === "https")) { - throw new RequestError("Unsupported scheme"); - } - } else { - scheme = incoming.socket && incoming.socket.encrypted ? "https" : "http"; - } - const url = new URL(`${scheme}://${host}${incomingUrl}`); - if (url.hostname.length !== host.length && url.hostname !== host.replace(/:\d+$/, "")) { - throw new RequestError("Invalid host header"); - } - req[urlKey] = url.href; - return req; - }; - var responseCache = Symbol("responseCache"); - var getResponseCache = Symbol("getResponseCache"); - var cacheKey = Symbol("cache"); - var GlobalResponse = global.Response; - var Response2 = class _Response { - #body; - #init; - [getResponseCache]() { - delete this[cacheKey]; - return this[responseCache] ||= new GlobalResponse(this.#body, this.#init); - } - constructor(body, init) { - let headers; - this.#body = body; - if (init instanceof _Response) { - const cachedGlobalResponse = init[responseCache]; - if (cachedGlobalResponse) { - this.#init = cachedGlobalResponse; - this[getResponseCache](); - return; - } else { - this.#init = init.#init; - headers = new Headers(init.#init.headers); - } - } else { - this.#init = init; - } - if (typeof body === "string" || typeof body?.getReader !== "undefined" || body instanceof Blob || body instanceof Uint8Array) { - headers ||= init?.headers || { "content-type": "text/plain; charset=UTF-8" }; - this[cacheKey] = [init?.status || 200, body, headers]; - } - } - get headers() { - const cache = this[cacheKey]; - if (cache) { - if (!(cache[2] instanceof Headers)) { - cache[2] = new Headers(cache[2]); - } - return cache[2]; - } - return this[getResponseCache]().headers; - } - get status() { - return this[cacheKey]?.[0] ?? this[getResponseCache]().status; - } - get ok() { - const status = this.status; - return status >= 200 && status < 300; - } - }; - ["body", "bodyUsed", "redirected", "statusText", "trailers", "type", "url"].forEach((k) => { - Object.defineProperty(Response2.prototype, k, { - get() { - return this[getResponseCache]()[k]; - } - }); - }); - ["arrayBuffer", "blob", "clone", "formData", "json", "text"].forEach((k) => { - Object.defineProperty(Response2.prototype, k, { - value: function() { - return this[getResponseCache]()[k](); - } - }); - }); - Object.setPrototypeOf(Response2, GlobalResponse); - Object.setPrototypeOf(Response2.prototype, GlobalResponse.prototype); - async function readWithoutBlocking(readPromise) { - return Promise.race([readPromise, Promise.resolve().then(() => Promise.resolve(void 0))]); - } - function writeFromReadableStreamDefaultReader(reader, writable, currentReadPromise) { - const cancel = (error) => { - reader.cancel(error).catch(() => { - }); - }; - writable.on("close", cancel); - writable.on("error", cancel); - (currentReadPromise ?? reader.read()).then(flow, handleStreamError); - return reader.closed.finally(() => { - writable.off("close", cancel); - writable.off("error", cancel); - }); - function handleStreamError(error) { - if (error) { - writable.destroy(error); - } - } - function onDrain() { - reader.read().then(flow, handleStreamError); - } - function flow({ done, value }) { - try { - if (done) { - writable.end(); - } else if (!writable.write(value)) { - writable.once("drain", onDrain); - } else { - return reader.read().then(flow, handleStreamError); - } - } catch (e) { - handleStreamError(e); - } - } - } - function writeFromReadableStream(stream, writable) { - if (stream.locked) { - throw new TypeError("ReadableStream is locked."); - } else if (writable.destroyed) { - return; - } - return writeFromReadableStreamDefaultReader(stream.getReader(), writable); - } - var buildOutgoingHttpHeaders = (headers) => { - const res = {}; - if (!(headers instanceof Headers)) { - headers = new Headers(headers ?? void 0); - } - const cookies = []; - for (const [k, v] of headers) { - if (k === "set-cookie") { - cookies.push(v); - } else { - res[k] = v; - } - } - if (cookies.length > 0) { - res["set-cookie"] = cookies; - } - res["content-type"] ??= "text/plain; charset=UTF-8"; - return res; - }; - var X_ALREADY_SENT = "x-hono-already-sent"; - var import_node_crypto = __toESM2(require("crypto")); - var webFetch = global.fetch; - if (typeof global.crypto === "undefined") { - global.crypto = import_node_crypto.default; - } - global.fetch = (info, init) => { - init = { - // Disable compression handling so people can return the result of a fetch - // directly in the loader without messing with the Content-Encoding header. - compress: false, - ...init - }; - return webFetch(info, init); - }; - var outgoingEnded = Symbol("outgoingEnded"); - var handleRequestError = () => new Response(null, { - status: 400 - }); - var handleFetchError = (e) => new Response(null, { - status: e instanceof Error && (e.name === "TimeoutError" || e.constructor.name === "TimeoutError") ? 504 : 500 - }); - var handleResponseError = (e, outgoing) => { - const err = e instanceof Error ? e : new Error("unknown error", { cause: e }); - if (err.code === "ERR_STREAM_PREMATURE_CLOSE") { - console.info("The user aborted a request."); - } else { - console.error(e); - if (!outgoing.headersSent) { - outgoing.writeHead(500, { "Content-Type": "text/plain" }); - } - outgoing.end(`Error: ${err.message}`); - outgoing.destroy(err); - } - }; - var flushHeaders = (outgoing) => { - if ("flushHeaders" in outgoing && outgoing.writable) { - outgoing.flushHeaders(); - } - }; - var responseViaCache = async (res, outgoing) => { - let [status, body, header] = res[cacheKey]; - if (header instanceof Headers) { - header = buildOutgoingHttpHeaders(header); - } - if (typeof body === "string") { - header["Content-Length"] = Buffer.byteLength(body); - } else if (body instanceof Uint8Array) { - header["Content-Length"] = body.byteLength; - } else if (body instanceof Blob) { - header["Content-Length"] = body.size; - } - outgoing.writeHead(status, header); - if (typeof body === "string" || body instanceof Uint8Array) { - outgoing.end(body); - } else if (body instanceof Blob) { - outgoing.end(new Uint8Array(await body.arrayBuffer())); - } else { - flushHeaders(outgoing); - await writeFromReadableStream(body, outgoing)?.catch( - (e) => handleResponseError(e, outgoing) - ); - } - ; - outgoing[outgoingEnded]?.(); - }; - var isPromise = (res) => typeof res.then === "function"; - var responseViaResponseObject = async (res, outgoing, options = {}) => { - if (isPromise(res)) { - if (options.errorHandler) { - try { - res = await res; - } catch (err) { - const errRes = await options.errorHandler(err); - if (!errRes) { - return; - } - res = errRes; - } - } else { - res = await res.catch(handleFetchError); - } - } - if (cacheKey in res) { - return responseViaCache(res, outgoing); - } - const resHeaderRecord = buildOutgoingHttpHeaders(res.headers); - if (res.body) { - const reader = res.body.getReader(); - const values = []; - let done = false; - let currentReadPromise = void 0; - if (resHeaderRecord["transfer-encoding"] !== "chunked") { - let maxReadCount = 2; - for (let i = 0; i < maxReadCount; i++) { - currentReadPromise ||= reader.read(); - const chunk = await readWithoutBlocking(currentReadPromise).catch((e) => { - console.error(e); - done = true; - }); - if (!chunk) { - if (i === 1) { - await new Promise((resolve) => setTimeout(resolve)); - maxReadCount = 3; - continue; - } - break; - } - currentReadPromise = void 0; - if (chunk.value) { - values.push(chunk.value); - } - if (chunk.done) { - done = true; - break; - } - } - if (done && !("content-length" in resHeaderRecord)) { - resHeaderRecord["content-length"] = values.reduce((acc, value) => acc + value.length, 0); - } - } - outgoing.writeHead(res.status, resHeaderRecord); - values.forEach((value) => { - ; - outgoing.write(value); - }); - if (done) { - outgoing.end(); - } else { - if (values.length === 0) { - flushHeaders(outgoing); - } - await writeFromReadableStreamDefaultReader(reader, outgoing, currentReadPromise); - } - } else if (resHeaderRecord[X_ALREADY_SENT]) { - } else { - outgoing.writeHead(res.status, resHeaderRecord); - outgoing.end(); - } - ; - outgoing[outgoingEnded]?.(); - }; - var getRequestListener = (fetchCallback, options = {}) => { - const autoCleanupIncoming = options.autoCleanupIncoming ?? true; - if (options.overrideGlobalObjects !== false && global.Request !== Request2) { - Object.defineProperty(global, "Request", { - value: Request2 - }); - Object.defineProperty(global, "Response", { - value: Response2 - }); - } - return async (incoming, outgoing) => { - let res, req; - try { - req = newRequest(incoming, options.hostname); - let incomingEnded = !autoCleanupIncoming || incoming.method === "GET" || incoming.method === "HEAD"; - if (!incomingEnded) { - ; - incoming[wrapBodyStream] = true; - incoming.on("end", () => { - incomingEnded = true; - }); - if (incoming instanceof import_node_http22.Http2ServerRequest) { - ; - outgoing[outgoingEnded] = () => { - if (!incomingEnded) { - setTimeout(() => { - if (!incomingEnded) { - setTimeout(() => { - incoming.destroy(); - outgoing.destroy(); - }); - } - }); - } - }; - } - } - outgoing.on("close", () => { - const abortController = req[abortControllerKey]; - if (abortController) { - if (incoming.errored) { - req[abortControllerKey].abort(incoming.errored.toString()); - } else if (!outgoing.writableFinished) { - req[abortControllerKey].abort("Client connection prematurely closed."); - } - } - if (!incomingEnded) { - setTimeout(() => { - if (!incomingEnded) { - setTimeout(() => { - incoming.destroy(); - }); - } - }); - } - }); - res = fetchCallback(req, { incoming, outgoing }); - if (cacheKey in res) { - return responseViaCache(res, outgoing); - } - } catch (e) { - if (!res) { - if (options.errorHandler) { - res = await options.errorHandler(req ? e : toRequestError(e)); - if (!res) { - return; - } - } else if (!req) { - res = handleRequestError(); - } else { - res = handleFetchError(e); - } - } else { - return handleResponseError(e, outgoing); - } - } - try { - return await responseViaResponseObject(res, outgoing, options); - } catch (e) { - return handleResponseError(e, outgoing); - } - }; - }; - var createAdaptorServer = (options) => { - const fetchCallback = options.fetch; - const requestListener = getRequestListener(fetchCallback, { - hostname: options.hostname, - overrideGlobalObjects: options.overrideGlobalObjects, - autoCleanupIncoming: options.autoCleanupIncoming - }); - const createServer = options.createServer || import_node_http.createServer; - const server = createServer(options.serverOptions || {}, requestListener); - return server; - }; - var serve = (options, listeningListener) => { - const server = createAdaptorServer(options); - server.listen(options?.port ?? 3e3, options.hostname, () => { - const serverInfo = server.address(); - listeningListener && listeningListener(serverInfo); - }); - return server; - }; - } + 'node_modules/@hono/node-server/dist/index.js'(exports2, module2) { + 'use strict'; + var __create2 = Object.create; + var __defProp2 = Object.defineProperty; + var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor; + var __getOwnPropNames2 = Object.getOwnPropertyNames; + var __getProtoOf2 = Object.getPrototypeOf; + var __hasOwnProp2 = Object.prototype.hasOwnProperty; + var __export = (target, all) => { + for (var name in all) __defProp2(target, name, { get: all[name], enumerable: true }); + }; + var __copyProps2 = (to, from, except, desc) => { + if ((from && typeof from === 'object') || typeof from === 'function') { + for (let key of __getOwnPropNames2(from)) + if (!__hasOwnProp2.call(to, key) && key !== except) + __defProp2(to, key, { + get: () => from[key], + enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable + }); + } + return to; + }; + var __toESM2 = (mod, isNodeMode, target) => ( + (target = mod != null ? __create2(__getProtoOf2(mod)) : {}), + __copyProps2( + // If the importer is in node compatibility mode or this is not an ESM + // file that has been converted to a CommonJS file using a Babel- + // compatible transform (i.e. "__esModule" has not been set), then set + // "default" to the CommonJS "module.exports" for node compatibility. + isNodeMode || !mod || !mod.__esModule + ? __defProp2(target, 'default', { value: mod, enumerable: true }) + : target, + mod + ) + ); + var __toCommonJS = (mod) => __copyProps2(__defProp2({}, '__esModule', { value: true }), mod); + var src_exports = {}; + __export(src_exports, { + RequestError: () => RequestError, + createAdaptorServer: () => createAdaptorServer, + getRequestListener: () => getRequestListener, + serve: () => serve + }); + module2.exports = __toCommonJS(src_exports); + var import_node_http = require('http'); + var import_node_http22 = require('http2'); + var import_node_http2 = require('http2'); + var import_node_stream = require('stream'); + var RequestError = class extends Error { + constructor(message, options) { + super(message, options); + this.name = 'RequestError'; + } + }; + var toRequestError = (e) => { + if (e instanceof RequestError) { + return e; + } + return new RequestError(e.message, { cause: e }); + }; + var GlobalRequest = global.Request; + var Request2 = class extends GlobalRequest { + constructor(input, options) { + if (typeof input === 'object' && getRequestCache in input) { + input = input[getRequestCache](); + } + if (typeof options?.body?.getReader !== 'undefined') { + options.duplex ??= 'half'; + } + super(input, options); + } + }; + var newHeadersFromIncoming = (incoming) => { + const headerRecord = []; + const rawHeaders = incoming.rawHeaders; + for (let i = 0; i < rawHeaders.length; i += 2) { + const { [i]: key, [i + 1]: value } = rawHeaders; + if (key.charCodeAt(0) /*:*/ !== 58) { + headerRecord.push([key, value]); + } + } + return new Headers(headerRecord); + }; + var wrapBodyStream = Symbol('wrapBodyStream'); + var newRequestFromIncoming = (method, url, headers, incoming, abortController) => { + const init = { + method, + headers, + signal: abortController.signal + }; + if (method === 'TRACE') { + init.method = 'GET'; + const req = new Request2(url, init); + Object.defineProperty(req, 'method', { + get() { + return 'TRACE'; + } + }); + return req; + } + if (!(method === 'GET' || method === 'HEAD')) { + if ('rawBody' in incoming && incoming.rawBody instanceof Buffer) { + init.body = new ReadableStream({ + start(controller) { + controller.enqueue(incoming.rawBody); + controller.close(); + } + }); + } else if (incoming[wrapBodyStream]) { + let reader; + init.body = new ReadableStream({ + async pull(controller) { + try { + reader ||= import_node_stream.Readable.toWeb(incoming).getReader(); + const { done, value } = await reader.read(); + if (done) { + controller.close(); + } else { + controller.enqueue(value); + } + } catch (error) { + controller.error(error); + } + } + }); + } else { + init.body = import_node_stream.Readable.toWeb(incoming); + } + } + return new Request2(url, init); + }; + var getRequestCache = Symbol('getRequestCache'); + var requestCache = Symbol('requestCache'); + var incomingKey = Symbol('incomingKey'); + var urlKey = Symbol('urlKey'); + var headersKey = Symbol('headersKey'); + var abortControllerKey = Symbol('abortControllerKey'); + var getAbortController = Symbol('getAbortController'); + var requestPrototype = { + get method() { + return this[incomingKey].method || 'GET'; + }, + get url() { + return this[urlKey]; + }, + get headers() { + return (this[headersKey] ||= newHeadersFromIncoming(this[incomingKey])); + }, + [getAbortController]() { + this[getRequestCache](); + return this[abortControllerKey]; + }, + [getRequestCache]() { + this[abortControllerKey] ||= new AbortController(); + return (this[requestCache] ||= newRequestFromIncoming( + this.method, + this[urlKey], + this.headers, + this[incomingKey], + this[abortControllerKey] + )); + } + }; + [ + 'body', + 'bodyUsed', + 'cache', + 'credentials', + 'destination', + 'integrity', + 'mode', + 'redirect', + 'referrer', + 'referrerPolicy', + 'signal', + 'keepalive' + ].forEach((k) => { + Object.defineProperty(requestPrototype, k, { + get() { + return this[getRequestCache]()[k]; + } + }); + }); + ['arrayBuffer', 'blob', 'clone', 'formData', 'json', 'text'].forEach((k) => { + Object.defineProperty(requestPrototype, k, { + value: function () { + return this[getRequestCache]()[k](); + } + }); + }); + Object.setPrototypeOf(requestPrototype, Request2.prototype); + var newRequest = (incoming, defaultHostname) => { + const req = Object.create(requestPrototype); + req[incomingKey] = incoming; + const incomingUrl = incoming.url || ''; + if ( + incomingUrl[0] !== '/' && // short-circuit for performance. most requests are relative URL. + (incomingUrl.startsWith('http://') || incomingUrl.startsWith('https://')) + ) { + if (incoming instanceof import_node_http2.Http2ServerRequest) { + throw new RequestError('Absolute URL for :path is not allowed in HTTP/2'); + } + try { + const url2 = new URL(incomingUrl); + req[urlKey] = url2.href; + } catch (e) { + throw new RequestError('Invalid absolute URL', { cause: e }); + } + return req; + } + const host = + (incoming instanceof import_node_http2.Http2ServerRequest + ? incoming.authority + : incoming.headers.host) || defaultHostname; + if (!host) { + throw new RequestError('Missing host header'); + } + let scheme; + if (incoming instanceof import_node_http2.Http2ServerRequest) { + scheme = incoming.scheme; + if (!(scheme === 'http' || scheme === 'https')) { + throw new RequestError('Unsupported scheme'); + } + } else { + scheme = incoming.socket && incoming.socket.encrypted ? 'https' : 'http'; + } + const url = new URL(`${scheme}://${host}${incomingUrl}`); + if (url.hostname.length !== host.length && url.hostname !== host.replace(/:\d+$/, '')) { + throw new RequestError('Invalid host header'); + } + req[urlKey] = url.href; + return req; + }; + var responseCache = Symbol('responseCache'); + var getResponseCache = Symbol('getResponseCache'); + var cacheKey = Symbol('cache'); + var GlobalResponse = global.Response; + var Response2 = class _Response { + #body; + #init; + [getResponseCache]() { + delete this[cacheKey]; + return (this[responseCache] ||= new GlobalResponse(this.#body, this.#init)); + } + constructor(body, init) { + let headers; + this.#body = body; + if (init instanceof _Response) { + const cachedGlobalResponse = init[responseCache]; + if (cachedGlobalResponse) { + this.#init = cachedGlobalResponse; + this[getResponseCache](); + return; + } else { + this.#init = init.#init; + headers = new Headers(init.#init.headers); + } + } else { + this.#init = init; + } + if ( + typeof body === 'string' || + typeof body?.getReader !== 'undefined' || + body instanceof Blob || + body instanceof Uint8Array + ) { + headers ||= init?.headers || { 'content-type': 'text/plain; charset=UTF-8' }; + this[cacheKey] = [init?.status || 200, body, headers]; + } + } + get headers() { + const cache = this[cacheKey]; + if (cache) { + if (!(cache[2] instanceof Headers)) { + cache[2] = new Headers(cache[2]); + } + return cache[2]; + } + return this[getResponseCache]().headers; + } + get status() { + return this[cacheKey]?.[0] ?? this[getResponseCache]().status; + } + get ok() { + const status = this.status; + return status >= 200 && status < 300; + } + }; + ['body', 'bodyUsed', 'redirected', 'statusText', 'trailers', 'type', 'url'].forEach((k) => { + Object.defineProperty(Response2.prototype, k, { + get() { + return this[getResponseCache]()[k]; + } + }); + }); + ['arrayBuffer', 'blob', 'clone', 'formData', 'json', 'text'].forEach((k) => { + Object.defineProperty(Response2.prototype, k, { + value: function () { + return this[getResponseCache]()[k](); + } + }); + }); + Object.setPrototypeOf(Response2, GlobalResponse); + Object.setPrototypeOf(Response2.prototype, GlobalResponse.prototype); + async function readWithoutBlocking(readPromise) { + return Promise.race([readPromise, Promise.resolve().then(() => Promise.resolve(void 0))]); + } + function writeFromReadableStreamDefaultReader(reader, writable, currentReadPromise) { + const cancel = (error) => { + reader.cancel(error).catch(() => {}); + }; + writable.on('close', cancel); + writable.on('error', cancel); + (currentReadPromise ?? reader.read()).then(flow, handleStreamError); + return reader.closed.finally(() => { + writable.off('close', cancel); + writable.off('error', cancel); + }); + function handleStreamError(error) { + if (error) { + writable.destroy(error); + } + } + function onDrain() { + reader.read().then(flow, handleStreamError); + } + function flow({ done, value }) { + try { + if (done) { + writable.end(); + } else if (!writable.write(value)) { + writable.once('drain', onDrain); + } else { + return reader.read().then(flow, handleStreamError); + } + } catch (e) { + handleStreamError(e); + } + } + } + function writeFromReadableStream(stream, writable) { + if (stream.locked) { + throw new TypeError('ReadableStream is locked.'); + } else if (writable.destroyed) { + return; + } + return writeFromReadableStreamDefaultReader(stream.getReader(), writable); + } + var buildOutgoingHttpHeaders = (headers) => { + const res = {}; + if (!(headers instanceof Headers)) { + headers = new Headers(headers ?? void 0); + } + const cookies = []; + for (const [k, v] of headers) { + if (k === 'set-cookie') { + cookies.push(v); + } else { + res[k] = v; + } + } + if (cookies.length > 0) { + res['set-cookie'] = cookies; + } + res['content-type'] ??= 'text/plain; charset=UTF-8'; + return res; + }; + var X_ALREADY_SENT = 'x-hono-already-sent'; + var import_node_crypto = __toESM2(require('crypto')); + var webFetch = global.fetch; + if (typeof global.crypto === 'undefined') { + global.crypto = import_node_crypto.default; + } + global.fetch = (info, init) => { + init = { + // Disable compression handling so people can return the result of a fetch + // directly in the loader without messing with the Content-Encoding header. + compress: false, + ...init + }; + return webFetch(info, init); + }; + var outgoingEnded = Symbol('outgoingEnded'); + var handleRequestError = () => + new Response(null, { + status: 400 + }); + var handleFetchError = (e) => + new Response(null, { + status: + e instanceof Error && (e.name === 'TimeoutError' || e.constructor.name === 'TimeoutError') + ? 504 + : 500 + }); + var handleResponseError = (e, outgoing) => { + const err = e instanceof Error ? e : new Error('unknown error', { cause: e }); + if (err.code === 'ERR_STREAM_PREMATURE_CLOSE') { + console.info('The user aborted a request.'); + } else { + console.error(e); + if (!outgoing.headersSent) { + outgoing.writeHead(500, { 'Content-Type': 'text/plain' }); + } + outgoing.end(`Error: ${err.message}`); + outgoing.destroy(err); + } + }; + var flushHeaders = (outgoing) => { + if ('flushHeaders' in outgoing && outgoing.writable) { + outgoing.flushHeaders(); + } + }; + var responseViaCache = async (res, outgoing) => { + let [status, body, header] = res[cacheKey]; + if (header instanceof Headers) { + header = buildOutgoingHttpHeaders(header); + } + if (typeof body === 'string') { + header['Content-Length'] = Buffer.byteLength(body); + } else if (body instanceof Uint8Array) { + header['Content-Length'] = body.byteLength; + } else if (body instanceof Blob) { + header['Content-Length'] = body.size; + } + outgoing.writeHead(status, header); + if (typeof body === 'string' || body instanceof Uint8Array) { + outgoing.end(body); + } else if (body instanceof Blob) { + outgoing.end(new Uint8Array(await body.arrayBuffer())); + } else { + flushHeaders(outgoing); + await writeFromReadableStream(body, outgoing)?.catch((e) => + handleResponseError(e, outgoing) + ); + } + outgoing[outgoingEnded]?.(); + }; + var isPromise = (res) => typeof res.then === 'function'; + var responseViaResponseObject = async (res, outgoing, options = {}) => { + if (isPromise(res)) { + if (options.errorHandler) { + try { + res = await res; + } catch (err) { + const errRes = await options.errorHandler(err); + if (!errRes) { + return; + } + res = errRes; + } + } else { + res = await res.catch(handleFetchError); + } + } + if (cacheKey in res) { + return responseViaCache(res, outgoing); + } + const resHeaderRecord = buildOutgoingHttpHeaders(res.headers); + if (res.body) { + const reader = res.body.getReader(); + const values = []; + let done = false; + let currentReadPromise = void 0; + if (resHeaderRecord['transfer-encoding'] !== 'chunked') { + let maxReadCount = 2; + for (let i = 0; i < maxReadCount; i++) { + currentReadPromise ||= reader.read(); + const chunk = await readWithoutBlocking(currentReadPromise).catch((e) => { + console.error(e); + done = true; + }); + if (!chunk) { + if (i === 1) { + await new Promise((resolve) => setTimeout(resolve)); + maxReadCount = 3; + continue; + } + break; + } + currentReadPromise = void 0; + if (chunk.value) { + values.push(chunk.value); + } + if (chunk.done) { + done = true; + break; + } + } + if (done && !('content-length' in resHeaderRecord)) { + resHeaderRecord['content-length'] = values.reduce( + (acc, value) => acc + value.length, + 0 + ); + } + } + outgoing.writeHead(res.status, resHeaderRecord); + values.forEach((value) => { + outgoing.write(value); + }); + if (done) { + outgoing.end(); + } else { + if (values.length === 0) { + flushHeaders(outgoing); + } + await writeFromReadableStreamDefaultReader(reader, outgoing, currentReadPromise); + } + } else if (resHeaderRecord[X_ALREADY_SENT]) { + } else { + outgoing.writeHead(res.status, resHeaderRecord); + outgoing.end(); + } + outgoing[outgoingEnded]?.(); + }; + var getRequestListener = (fetchCallback, options = {}) => { + const autoCleanupIncoming = options.autoCleanupIncoming ?? true; + if (options.overrideGlobalObjects !== false && global.Request !== Request2) { + Object.defineProperty(global, 'Request', { + value: Request2 + }); + Object.defineProperty(global, 'Response', { + value: Response2 + }); + } + return async (incoming, outgoing) => { + let res, req; + try { + req = newRequest(incoming, options.hostname); + let incomingEnded = + !autoCleanupIncoming || incoming.method === 'GET' || incoming.method === 'HEAD'; + if (!incomingEnded) { + incoming[wrapBodyStream] = true; + incoming.on('end', () => { + incomingEnded = true; + }); + if (incoming instanceof import_node_http22.Http2ServerRequest) { + outgoing[outgoingEnded] = () => { + if (!incomingEnded) { + setTimeout(() => { + if (!incomingEnded) { + setTimeout(() => { + incoming.destroy(); + outgoing.destroy(); + }); + } + }); + } + }; + } + } + outgoing.on('close', () => { + const abortController = req[abortControllerKey]; + if (abortController) { + if (incoming.errored) { + req[abortControllerKey].abort(incoming.errored.toString()); + } else if (!outgoing.writableFinished) { + req[abortControllerKey].abort('Client connection prematurely closed.'); + } + } + if (!incomingEnded) { + setTimeout(() => { + if (!incomingEnded) { + setTimeout(() => { + incoming.destroy(); + }); + } + }); + } + }); + res = fetchCallback(req, { incoming, outgoing }); + if (cacheKey in res) { + return responseViaCache(res, outgoing); + } + } catch (e) { + if (!res) { + if (options.errorHandler) { + res = await options.errorHandler(req ? e : toRequestError(e)); + if (!res) { + return; + } + } else if (!req) { + res = handleRequestError(); + } else { + res = handleFetchError(e); + } + } else { + return handleResponseError(e, outgoing); + } + } + try { + return await responseViaResponseObject(res, outgoing, options); + } catch (e) { + return handleResponseError(e, outgoing); + } + }; + }; + var createAdaptorServer = (options) => { + const fetchCallback = options.fetch; + const requestListener = getRequestListener(fetchCallback, { + hostname: options.hostname, + overrideGlobalObjects: options.overrideGlobalObjects, + autoCleanupIncoming: options.autoCleanupIncoming + }); + const createServer = options.createServer || import_node_http.createServer; + const server = createServer(options.serverOptions || {}, requestListener); + return server; + }; + var serve = (options, listeningListener) => { + const server = createAdaptorServer(options); + server.listen(options?.port ?? 3e3, options.hostname, () => { + const serverInfo = server.address(); + listeningListener && listeningListener(serverInfo); + }); + return server; + }; + } }); // node_modules/@emprespresso/pengueno/dist/server/hono/proxy.js var require_proxy = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/hono/proxy.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __setModuleDefault = exports2 && exports2.__setModuleDefault || (Object.create ? function(o, v) { - Object.defineProperty(o, "default", { enumerable: true, value: v }); - } : function(o, v) { - o["default"] = v; - }); - var __importStar = exports2 && exports2.__importStar || /* @__PURE__ */ function() { - var ownKeys = function(o) { - ownKeys = Object.getOwnPropertyNames || function(o2) { - var ar = []; - for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k; - return ar; - }; - return ownKeys(o); - }; - return function(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) { - for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); - } - __setModuleDefault(result, mod); - return result; - }; - }(); - Object.defineProperty(exports2, "__esModule", { value: true }); - exports2.HonoProxy = void 0; - var pengueno_1 = require_dist2(); - var AppLifetimeMetric = pengueno_1.Metric.fromName("HonoAppLifetime").asResult(); - var AppRequestMetric = pengueno_1.Metric.fromName("HonoAppRequest"); - var HonoProxy = class { - server; - app; - constructor(server) { - this.server = server; - } - async initializeApp() { - if (this.app) - return this.app; - const { Hono: Hono2 } = await Promise.resolve().then(() => __importStar(require_cjs())); - this.app = pengueno_1.LogMetricTraceable.of(new Hono2()).flatMap(pengueno_1.TraceUtil.withTrace(`AppId = ${crypto.randomUUID()}`)).flatMap(pengueno_1.TraceUtil.withMetricTrace(AppLifetimeMetric)); - return this.app; - } - async serve(port, hostname) { - const { serve } = await Promise.resolve().then(() => __importStar(require_dist())); - const app = await this.initializeApp(); - return app.map((tApp) => pengueno_1.Either.fromFailable(() => { - const app2 = tApp.get(); - app2.all("*", async (c) => tApp.flatMap(pengueno_1.TraceUtil.withMetricTrace(AppRequestMetric)).move(c.req).flatMap((tRequest) => pengueno_1.PenguenoRequest.from(tRequest)).map((req) => this.server.serve(req)).map(pengueno_1.TraceUtil.promiseify((tResponse) => { - tResponse.trace.trace(AppRequestMetric.count.withValue(1)); - return new Response(tResponse.get().body(), tResponse.get()); - })).get()); - return serve({ - fetch: (_r) => app2.fetch(_r), - port, - hostname - }); - })).peek(pengueno_1.TraceUtil.traceResultingEither()).peek((tServe) => tServe.get().mapRight(() => tServe.trace.trace(`haii im still listening at http://${hostname}:${port} ~uwu dont think i forgot`))).map((tEitherServer) => tEitherServer.get().mapRight((server) => tEitherServer.move(server)).flatMapAsync((tServer) => pengueno_1.Signals.awaitClose(tServer))).peek(pengueno_1.TraceUtil.promiseify(pengueno_1.TraceUtil.traceResultingEither(AppLifetimeMetric))).get(); - } - }; - exports2.HonoProxy = HonoProxy; - } + 'node_modules/@emprespresso/pengueno/dist/server/hono/proxy.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __setModuleDefault = + (exports2 && exports2.__setModuleDefault) || + (Object.create + ? function (o, v) { + Object.defineProperty(o, 'default', { enumerable: true, value: v }); + } + : function (o, v) { + o['default'] = v; + }); + var __importStar = + (exports2 && exports2.__importStar) || + /* @__PURE__ */ (function () { + var ownKeys = function (o) { + ownKeys = + Object.getOwnPropertyNames || + function (o2) { + var ar = []; + for (var k in o2) if (Object.prototype.hasOwnProperty.call(o2, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); + }; + return function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) { + for (var k = ownKeys(mod), i = 0; i < k.length; i++) + if (k[i] !== 'default') __createBinding(result, mod, k[i]); + } + __setModuleDefault(result, mod); + return result; + }; + })(); + Object.defineProperty(exports2, '__esModule', { value: true }); + exports2.HonoProxy = void 0; + var pengueno_1 = require_dist2(); + var AppLifetimeMetric = pengueno_1.Metric.fromName('HonoAppLifetime').asResult(); + var AppRequestMetric = pengueno_1.Metric.fromName('HonoAppRequest'); + var HonoProxy = class { + server; + app; + constructor(server) { + this.server = server; + } + async initializeApp() { + if (this.app) return this.app; + const { Hono: Hono2 } = await Promise.resolve().then(() => __importStar(require_cjs())); + this.app = pengueno_1.LogMetricTraceable.of(new Hono2()) + .flatMap(pengueno_1.TraceUtil.withTrace(`AppId = ${crypto.randomUUID()}`)) + .flatMap(pengueno_1.TraceUtil.withMetricTrace(AppLifetimeMetric)); + return this.app; + } + async serve(port, hostname) { + const { serve } = await Promise.resolve().then(() => __importStar(require_dist())); + const app = await this.initializeApp(); + return app + .map((tApp) => + pengueno_1.Either.fromFailable(() => { + const app2 = tApp.get(); + app2.all('*', async (c) => + tApp + .flatMap(pengueno_1.TraceUtil.withMetricTrace(AppRequestMetric)) + .move(c.req) + .flatMap((tRequest) => pengueno_1.PenguenoRequest.from(tRequest)) + .map((req) => this.server.serve(req)) + .map( + pengueno_1.TraceUtil.promiseify((tResponse) => { + tResponse.trace.trace(AppRequestMetric.count.withValue(1)); + return new Response(tResponse.get().body(), tResponse.get()); + }) + ) + .get() + ); + return serve({ + fetch: (_r) => app2.fetch(_r), + port, + hostname + }); + }) + ) + .peek(pengueno_1.TraceUtil.traceResultingEither()) + .peek((tServe) => + tServe + .get() + .mapRight(() => + tServe.trace.trace( + `haii im still listening at http://${hostname}:${port} ~uwu dont think i forgot` + ) + ) + ) + .map((tEitherServer) => + tEitherServer + .get() + .mapRight((server) => tEitherServer.move(server)) + .flatMapAsync((tServer) => pengueno_1.Signals.awaitClose(tServer)) + ) + .peek( + pengueno_1.TraceUtil.promiseify( + pengueno_1.TraceUtil.traceResultingEither(AppLifetimeMetric) + ) + ) + .get(); + } + }; + exports2.HonoProxy = HonoProxy; + } }); // node_modules/@emprespresso/pengueno/dist/server/hono/index.js var require_hono2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/hono/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_proxy(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/hono/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_proxy(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/server/index.js var require_server = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/server/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_http(), exports2); - __exportStar(require_response(), exports2); - __exportStar(require_request(), exports2); - __exportStar(require_activity(), exports2); - __exportStar(require_filter(), exports2); - __exportStar(require_hono2(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/server/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_http(), exports2); + __exportStar(require_response(), exports2); + __exportStar(require_request(), exports2); + __exportStar(require_activity(), exports2); + __exportStar(require_filter(), exports2); + __exportStar(require_hono2(), exports2); + } }); // node_modules/@emprespresso/pengueno/dist/index.js var require_dist2 = __commonJS({ - "node_modules/@emprespresso/pengueno/dist/index.js"(exports2) { - "use strict"; - var __createBinding = exports2 && exports2.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports2 && exports2.__exportStar || function(m, exports3) { - for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports3, p)) __createBinding(exports3, m, p); - }; - Object.defineProperty(exports2, "__esModule", { value: true }); - __exportStar(require_leftpadesque(), exports2); - __exportStar(require_types(), exports2); - __exportStar(require_trace4(), exports2); - __exportStar(require_process(), exports2); - __exportStar(require_server(), exports2); - } + 'node_modules/@emprespresso/pengueno/dist/index.js'(exports2) { + 'use strict'; + var __createBinding = + (exports2 && exports2.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ('get' in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + } + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === void 0) k2 = k; + o[k2] = m[k]; + }); + var __exportStar = + (exports2 && exports2.__exportStar) || + function (m, exports3) { + for (var p in m) + if (p !== 'default' && !Object.prototype.hasOwnProperty.call(exports3, p)) + __createBinding(exports3, m, p); + }; + Object.defineProperty(exports2, '__esModule', { value: true }); + __exportStar(require_leftpadesque(), exports2); + __exportStar(require_types(), exports2); + __exportStar(require_trace4(), exports2); + __exportStar(require_process(), exports2); + __exportStar(require_server(), exports2); + } }); // node_modules/@emprespresso/ci_model/dist/job/index.js var import_pengueno = __toESM(require_dist2(), 1); var JobTypes = [ - "fetch_code", - "ci_pipeline", - "build_docker_image.js", - "ansible_playbook.js", - "checkout_ci.js", - "npm_publish.js", - "coolify_webhook.js" + 'fetch_code', + 'ci_pipeline', + 'build_docker_image.js', + 'ansible_playbook.js', + 'checkout_ci.js', + 'npm_publish.js', + 'coolify_webhook.js' ]; -var isJobType = (j) => typeof j === "string" && JobTypes.includes(j); -var isJob = (j) => !!((0, import_pengueno.isObject)(j) && "arguments" in j && (0, import_pengueno.isObject)(j.arguments) && "type" in j && isJobType(j.type) && j); +var isJobType = (j) => typeof j === 'string' && JobTypes.includes(j); +var isJob = (j) => + !!( + (0, import_pengueno.isObject)(j) && + 'arguments' in j && + (0, import_pengueno.isObject)(j.arguments) && + 'type' in j && + isJobType(j.type) && + j + ); // node_modules/@emprespresso/ci_model/dist/pipeline/index.js var import_pengueno3 = __toESM(require_dist2(), 1); // node_modules/@emprespresso/ci_model/dist/pipeline/builder.js var BasePipelineBuilder = class { - stages = []; - addStage(stage) { - this.stages.push(stage); - return this; - } - build() { - return new PipelineImpl(this.stages); - } + stages = []; + addStage(stage) { + this.stages.push(stage); + return this; + } + build() { + return new PipelineImpl(this.stages); + } }; var DefaultGitHookPipelineBuilder = class extends BasePipelineBuilder { - remoteUrl; - refname; - constructor(remoteUrl = process.env.remote, rev = process.env.rev, refname = process.env.refname) { - super(); - this.remoteUrl = remoteUrl; - this.refname = refname; - this.addStage({ - parallelJobs: [ - { - type: "fetch_code", - arguments: { - remoteUrl, - checkout: rev, - path: this.getSourceDestination() - } - } - ] - }); - } - getSourceDestination() { - return this.remoteUrl.replace(".git", "").split("/").at(-1) ?? "src"; - } - getBranch() { - const branchRefPrefix = "refs/heads/"; - return this.refname.split(branchRefPrefix).at(1); - } + remoteUrl; + refname; + constructor( + remoteUrl = process.env.remote, + rev = process.env.rev, + refname = process.env.refname + ) { + super(); + this.remoteUrl = remoteUrl; + this.refname = refname; + this.addStage({ + parallelJobs: [ + { + type: 'fetch_code', + arguments: { + remoteUrl, + checkout: rev, + path: this.getSourceDestination() + } + } + ] + }); + } + getSourceDestination() { + return this.remoteUrl.replace('.git', '').split('/').at(-1) ?? 'src'; + } + getBranch() { + const branchRefPrefix = 'refs/heads/'; + return this.refname.split(branchRefPrefix).at(1); + } }; // node_modules/@emprespresso/ci_model/dist/pipeline/impl.js var import_pengueno2 = __toESM(require_dist2(), 1); var PipelineImpl = class _PipelineImpl { - serialJobs; - constructor(serialJobs) { - this.serialJobs = serialJobs; - } - serialize() { - return JSON.stringify({ serialJobs: this.serialJobs }); - } - static from(s) { - return import_pengueno2.Either.fromFailable(() => JSON.parse(s)).flatMap((eitherPipelineJson) => isPipeline(eitherPipelineJson) ? import_pengueno2.Either.right(eitherPipelineJson) : import_pengueno2.Either.left(new Error("oh noes D: its a bad pipewine :(("))).mapRight((pipeline) => new _PipelineImpl(pipeline.serialJobs)); - } + serialJobs; + constructor(serialJobs) { + this.serialJobs = serialJobs; + } + serialize() { + return JSON.stringify({ serialJobs: this.serialJobs }); + } + static from(s) { + return import_pengueno2.Either.fromFailable(() => JSON.parse(s)) + .flatMap((eitherPipelineJson) => + isPipeline(eitherPipelineJson) + ? import_pengueno2.Either.right(eitherPipelineJson) + : import_pengueno2.Either.left(new Error('oh noes D: its a bad pipewine :((')) + ) + .mapRight((pipeline) => new _PipelineImpl(pipeline.serialJobs)); + } }; // node_modules/@emprespresso/ci_model/dist/pipeline/index.js -var isPipelineStage = (t) => (0, import_pengueno3.isObject)(t) && "parallelJobs" in t && Array.isArray(t.parallelJobs) && t.parallelJobs.every((j) => isJob(j)); -var isPipeline = (t) => (0, import_pengueno3.isObject)(t) && "serialJobs" in t && Array.isArray(t.serialJobs) && t.serialJobs.every((p) => isPipelineStage(p)); +var isPipelineStage = (t) => + (0, import_pengueno3.isObject)(t) && + 'parallelJobs' in t && + Array.isArray(t.parallelJobs) && + t.parallelJobs.every((j) => isJob(j)); +var isPipeline = (t) => + (0, import_pengueno3.isObject)(t) && + 'serialJobs' in t && + Array.isArray(t.serialJobs) && + t.serialJobs.every((p) => isPipelineStage(p)); // dist/ci.js -var REGISTRY = "img.liz.coffee"; -var NAMESPACE = "emprespresso"; -var IMG = "mmt"; +var REGISTRY = 'img.liz.coffee'; +var NAMESPACE = 'emprespresso'; +var IMG = 'mmt'; var getPipeline = () => { - const gitHookPipeline = new DefaultGitHookPipelineBuilder(); - const branch = gitHookPipeline.getBranch(); - if (!branch) - return gitHookPipeline.build(); - const commonBuildArgs = { - context: gitHookPipeline.getSourceDestination(), - registry: REGISTRY, - namespace: NAMESPACE, - imageTag: branch - }; - const mmtPackageBuild = { - type: "build_docker_image.js", - arguments: { - ...commonBuildArgs, - repository: IMG, - buildTarget: IMG, - dockerfile: "Dockerfile" - } - }; - gitHookPipeline.addStage({ - parallelJobs: [mmtPackageBuild] - }); - const webhookUrl = getReleaseDeployment(branch); - if (webhookUrl === null) { - return gitHookPipeline.build(); - } - const release = { - type: "coolify_webhook.js", - arguments: { - webhookUrl - } - }; - gitHookPipeline.addStage({ parallelJobs: [release] }); - return gitHookPipeline.build(); + const gitHookPipeline = new DefaultGitHookPipelineBuilder(); + const branch = gitHookPipeline.getBranch(); + if (!branch) return gitHookPipeline.build(); + const commonBuildArgs = { + context: gitHookPipeline.getSourceDestination(), + registry: REGISTRY, + namespace: NAMESPACE, + imageTag: branch + }; + const mmtPackageBuild = { + type: 'build_docker_image.js', + arguments: { + ...commonBuildArgs, + repository: IMG, + buildTarget: IMG, + dockerfile: 'Dockerfile' + } + }; + gitHookPipeline.addStage({ + parallelJobs: [mmtPackageBuild] + }); + const webhookUrl = getReleaseDeployment(branch); + if (webhookUrl === null) { + return gitHookPipeline.build(); + } + const release = { + type: 'coolify_webhook.js', + arguments: { + webhookUrl + } + }; + gitHookPipeline.addStage({ parallelJobs: [release] }); + return gitHookPipeline.build(); }; var getReleaseDeployment = (branch) => { - switch (branch) { - case "release": - return "https://plane.liz.coffee/api/v1/deploy?uuid=f40gwg0gg4s4c000ws0s08s8&force=false"; - case "main": - return "https://plane.liz.coffee/api/v1/deploy?uuid=gcw80ssgwg80ogs0sc4k0ww0&force=false"; - default: - return null; - } + switch (branch) { + case 'release': + return 'https://plane.liz.coffee/api/v1/deploy?uuid=f40gwg0gg4s4c000ws0s08s8&force=false'; + case 'main': + return 'https://plane.liz.coffee/api/v1/deploy?uuid=gcw80ssgwg80ogs0sc4k0ww0&force=false'; + default: + return null; + } }; var main = () => { - const data = getPipeline().serialize(); - process.stdout.write(data); + const data = getPipeline().serialize(); + process.stdout.write(data); }; main(); -- cgit v1.2.3-70-g09d2