var __defProp = Object.defineProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/_internal/utils.mjs // @__NO_SIDE_EFFECTS__ function createNotImplementedError(name) { return new Error(`[unenv] ${name} is not implemented yet!`); } __name(createNotImplementedError, "createNotImplementedError"); // @__NO_SIDE_EFFECTS__ function notImplemented(name) { const fn = /* @__PURE__ */ __name(() => { throw /* @__PURE__ */ createNotImplementedError(name); }, "fn"); return Object.assign(fn, { __unenv__: true }); } __name(notImplemented, "notImplemented"); // @__NO_SIDE_EFFECTS__ function notImplementedClass(name) { return class { __unenv__ = true; constructor() { throw new Error(`[unenv] ${name} is not implemented yet!`); } }; } __name(notImplementedClass, "notImplementedClass"); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/perf_hooks/performance.mjs var _timeOrigin = globalThis.performance?.timeOrigin ?? Date.now(); var _performanceNow = globalThis.performance?.now ? globalThis.performance.now.bind(globalThis.performance) : () => Date.now() - _timeOrigin; var nodeTiming = { name: "node", entryType: "node", startTime: 0, duration: 0, nodeStart: 0, v8Start: 0, bootstrapComplete: 0, environment: 0, loopStart: 0, loopExit: 0, idleTime: 0, uvMetricsInfo: { loopCount: 0, events: 0, eventsWaiting: 0 }, detail: void 0, toJSON() { return this; } }; var PerformanceEntry = class { static { __name(this, "PerformanceEntry"); } __unenv__ = true; detail; entryType = "event"; name; startTime; constructor(name, options) { this.name = name; this.startTime = options?.startTime || _performanceNow(); this.detail = options?.detail; } get duration() { return _performanceNow() - this.startTime; } toJSON() { return { name: this.name, entryType: this.entryType, startTime: this.startTime, duration: this.duration, detail: this.detail }; } }; var PerformanceMark = class PerformanceMark2 extends PerformanceEntry { static { __name(this, "PerformanceMark"); } entryType = "mark"; constructor() { super(...arguments); } get duration() { return 0; } }; var PerformanceMeasure = class extends PerformanceEntry { static { __name(this, "PerformanceMeasure"); } entryType = "measure"; }; var PerformanceResourceTiming = class extends PerformanceEntry { static { __name(this, "PerformanceResourceTiming"); } entryType = "resource"; serverTiming = []; connectEnd = 0; connectStart = 0; decodedBodySize = 0; domainLookupEnd = 0; domainLookupStart = 0; encodedBodySize = 0; fetchStart = 0; initiatorType = ""; name = ""; nextHopProtocol = ""; redirectEnd = 0; redirectStart = 0; requestStart = 0; responseEnd = 0; responseStart = 0; secureConnectionStart = 0; startTime = 0; transferSize = 0; workerStart = 0; responseStatus = 0; }; var PerformanceObserverEntryList = class { static { __name(this, "PerformanceObserverEntryList"); } __unenv__ = true; getEntries() { return []; } getEntriesByName(_name, _type) { return []; } getEntriesByType(type) { return []; } }; var Performance = class { static { __name(this, "Performance"); } __unenv__ = true; timeOrigin = _timeOrigin; eventCounts = /* @__PURE__ */ new Map(); _entries = []; _resourceTimingBufferSize = 0; navigation = void 0; timing = void 0; timerify(_fn, _options) { throw createNotImplementedError("Performance.timerify"); } get nodeTiming() { return nodeTiming; } eventLoopUtilization() { return {}; } markResourceTiming() { return new PerformanceResourceTiming(""); } onresourcetimingbufferfull = null; now() { if (this.timeOrigin === _timeOrigin) { return _performanceNow(); } return Date.now() - this.timeOrigin; } clearMarks(markName) { this._entries = markName ? this._entries.filter((e) => e.name !== markName) : this._entries.filter((e) => e.entryType !== "mark"); } clearMeasures(measureName) { this._entries = measureName ? this._entries.filter((e) => e.name !== measureName) : this._entries.filter((e) => e.entryType !== "measure"); } clearResourceTimings() { this._entries = this._entries.filter((e) => e.entryType !== "resource" || e.entryType !== "navigation"); } getEntries() { return this._entries; } getEntriesByName(name, type) { return this._entries.filter((e) => e.name === name && (!type || e.entryType === type)); } getEntriesByType(type) { return this._entries.filter((e) => e.entryType === type); } mark(name, options) { const entry = new PerformanceMark(name, options); this._entries.push(entry); return entry; } measure(measureName, startOrMeasureOptions, endMark) { let start; let end; if (typeof startOrMeasureOptions === "string") { start = this.getEntriesByName(startOrMeasureOptions, "mark")[0]?.startTime; end = this.getEntriesByName(endMark, "mark")[0]?.startTime; } else { start = Number.parseFloat(startOrMeasureOptions?.start) || this.now(); end = Number.parseFloat(startOrMeasureOptions?.end) || this.now(); } const entry = new PerformanceMeasure(measureName, { startTime: start, detail: { start, end } }); this._entries.push(entry); return entry; } setResourceTimingBufferSize(maxSize) { this._resourceTimingBufferSize = maxSize; } addEventListener(type, listener, options) { throw createNotImplementedError("Performance.addEventListener"); } removeEventListener(type, listener, options) { throw createNotImplementedError("Performance.removeEventListener"); } dispatchEvent(event) { throw createNotImplementedError("Performance.dispatchEvent"); } toJSON() { return this; } }; var PerformanceObserver = class { static { __name(this, "PerformanceObserver"); } __unenv__ = true; static supportedEntryTypes = []; _callback = null; constructor(callback) { this._callback = callback; } takeRecords() { return []; } disconnect() { throw createNotImplementedError("PerformanceObserver.disconnect"); } observe(options) { throw createNotImplementedError("PerformanceObserver.observe"); } bind(fn) { return fn; } runInAsyncScope(fn, thisArg, ...args) { return fn.call(thisArg, ...args); } asyncId() { return 0; } triggerAsyncId() { return 0; } emitDestroy() { return this; } }; var performance = globalThis.performance && "addEventListener" in globalThis.performance ? globalThis.performance : new Performance(); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/@cloudflare+unenv-preset@2.16.0_unenv@2.0.0-rc.24_workerd@1.20260415.1/node_modules/@cloudflare/unenv-preset/dist/runtime/polyfill/performance.mjs if (!("__unenv__" in performance)) { const proto = Performance.prototype; for (const key of Object.getOwnPropertyNames(proto)) { if (key !== "constructor" && !(key in performance)) { const desc = Object.getOwnPropertyDescriptor(proto, key); if (desc) { Object.defineProperty(performance, key, desc); } } } } globalThis.performance = performance; globalThis.Performance = Performance; globalThis.PerformanceEntry = PerformanceEntry; globalThis.PerformanceMark = PerformanceMark; globalThis.PerformanceMeasure = PerformanceMeasure; globalThis.PerformanceObserver = PerformanceObserver; globalThis.PerformanceObserverEntryList = PerformanceObserverEntryList; globalThis.PerformanceResourceTiming = PerformanceResourceTiming; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/console.mjs import { Writable } from "node:stream"; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/mock/noop.mjs var noop_default = Object.assign(() => { }, { __unenv__: true }); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/console.mjs var _console = globalThis.console; var _ignoreErrors = true; var _stderr = new Writable(); var _stdout = new Writable(); var log = _console?.log ?? noop_default; var info = _console?.info ?? log; var trace = _console?.trace ?? info; var debug = _console?.debug ?? log; var table = _console?.table ?? log; var error = _console?.error ?? log; var warn = _console?.warn ?? error; var createTask = _console?.createTask ?? /* @__PURE__ */ notImplemented("console.createTask"); var clear = _console?.clear ?? noop_default; var count = _console?.count ?? noop_default; var countReset = _console?.countReset ?? noop_default; var dir = _console?.dir ?? noop_default; var dirxml = _console?.dirxml ?? noop_default; var group = _console?.group ?? noop_default; var groupEnd = _console?.groupEnd ?? noop_default; var groupCollapsed = _console?.groupCollapsed ?? noop_default; var profile = _console?.profile ?? noop_default; var profileEnd = _console?.profileEnd ?? noop_default; var time = _console?.time ?? noop_default; var timeEnd = _console?.timeEnd ?? noop_default; var timeLog = _console?.timeLog ?? noop_default; var timeStamp = _console?.timeStamp ?? noop_default; var Console = _console?.Console ?? /* @__PURE__ */ notImplementedClass("console.Console"); var _times = /* @__PURE__ */ new Map(); var _stdoutErrorHandler = noop_default; var _stderrErrorHandler = noop_default; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/@cloudflare+unenv-preset@2.16.0_unenv@2.0.0-rc.24_workerd@1.20260415.1/node_modules/@cloudflare/unenv-preset/dist/runtime/node/console.mjs var workerdConsole = globalThis["console"]; var { assert, clear: clear2, // @ts-expect-error undocumented public API context, count: count2, countReset: countReset2, // @ts-expect-error undocumented public API createTask: createTask2, debug: debug2, dir: dir2, dirxml: dirxml2, error: error2, group: group2, groupCollapsed: groupCollapsed2, groupEnd: groupEnd2, info: info2, log: log2, profile: profile2, profileEnd: profileEnd2, table: table2, time: time2, timeEnd: timeEnd2, timeLog: timeLog2, timeStamp: timeStamp2, trace: trace2, warn: warn2 } = workerdConsole; Object.assign(workerdConsole, { Console, _ignoreErrors, _stderr, _stderrErrorHandler, _stdout, _stdoutErrorHandler, _times }); var console_default = workerdConsole; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/wrangler@4.83.0_@cloudflare+workers-types@4.20260420.1/node_modules/wrangler/_virtual_unenv_global_polyfill-@cloudflare-unenv-preset-node-console globalThis.console = console_default; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/process/hrtime.mjs var hrtime = /* @__PURE__ */ Object.assign(/* @__PURE__ */ __name(function hrtime2(startTime) { const now = Date.now(); const seconds = Math.trunc(now / 1e3); const nanos = now % 1e3 * 1e6; if (startTime) { let diffSeconds = seconds - startTime[0]; let diffNanos = nanos - startTime[0]; if (diffNanos < 0) { diffSeconds = diffSeconds - 1; diffNanos = 1e9 + diffNanos; } return [diffSeconds, diffNanos]; } return [seconds, nanos]; }, "hrtime"), { bigint: /* @__PURE__ */ __name(function bigint() { return BigInt(Date.now() * 1e6); }, "bigint") }); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/process/process.mjs import { EventEmitter } from "node:events"; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/tty/read-stream.mjs var ReadStream = class { static { __name(this, "ReadStream"); } fd; isRaw = false; isTTY = false; constructor(fd) { this.fd = fd; } setRawMode(mode) { this.isRaw = mode; return this; } }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/tty/write-stream.mjs var WriteStream = class { static { __name(this, "WriteStream"); } fd; columns = 80; rows = 24; isTTY = false; constructor(fd) { this.fd = fd; } clearLine(dir3, callback) { callback && callback(); return false; } clearScreenDown(callback) { callback && callback(); return false; } cursorTo(x, y, callback) { callback && typeof callback === "function" && callback(); return false; } moveCursor(dx, dy, callback) { callback && callback(); return false; } getColorDepth(env2) { return 1; } hasColors(count3, env2) { return false; } getWindowSize() { return [this.columns, this.rows]; } write(str, encoding, cb) { if (str instanceof Uint8Array) { str = new TextDecoder().decode(str); } try { console.log(str); } catch { } cb && typeof cb === "function" && cb(); return false; } }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/process/node-version.mjs var NODE_VERSION = "22.14.0"; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/unenv@2.0.0-rc.24/node_modules/unenv/dist/runtime/node/internal/process/process.mjs var Process = class _Process extends EventEmitter { static { __name(this, "Process"); } env; hrtime; nextTick; constructor(impl) { super(); this.env = impl.env; this.hrtime = impl.hrtime; this.nextTick = impl.nextTick; for (const prop of [...Object.getOwnPropertyNames(_Process.prototype), ...Object.getOwnPropertyNames(EventEmitter.prototype)]) { const value = this[prop]; if (typeof value === "function") { this[prop] = value.bind(this); } } } // --- event emitter --- emitWarning(warning, type, code) { console.warn(`${code ? `[${code}] ` : ""}${type ? `${type}: ` : ""}${warning}`); } emit(...args) { return super.emit(...args); } listeners(eventName) { return super.listeners(eventName); } // --- stdio (lazy initializers) --- #stdin; #stdout; #stderr; get stdin() { return this.#stdin ??= new ReadStream(0); } get stdout() { return this.#stdout ??= new WriteStream(1); } get stderr() { return this.#stderr ??= new WriteStream(2); } // --- cwd --- #cwd = "/"; chdir(cwd2) { this.#cwd = cwd2; } cwd() { return this.#cwd; } // --- dummy props and getters --- arch = ""; platform = ""; argv = []; argv0 = ""; execArgv = []; execPath = ""; title = ""; pid = 200; ppid = 100; get version() { return `v${NODE_VERSION}`; } get versions() { return { node: NODE_VERSION }; } get allowedNodeEnvironmentFlags() { return /* @__PURE__ */ new Set(); } get sourceMapsEnabled() { return false; } get debugPort() { return 0; } get throwDeprecation() { return false; } get traceDeprecation() { return false; } get features() { return {}; } get release() { return {}; } get connected() { return false; } get config() { return {}; } get moduleLoadList() { return []; } constrainedMemory() { return 0; } availableMemory() { return 0; } uptime() { return 0; } resourceUsage() { return {}; } // --- noop methods --- ref() { } unref() { } // --- unimplemented methods --- umask() { throw createNotImplementedError("process.umask"); } getBuiltinModule() { return void 0; } getActiveResourcesInfo() { throw createNotImplementedError("process.getActiveResourcesInfo"); } exit() { throw createNotImplementedError("process.exit"); } reallyExit() { throw createNotImplementedError("process.reallyExit"); } kill() { throw createNotImplementedError("process.kill"); } abort() { throw createNotImplementedError("process.abort"); } dlopen() { throw createNotImplementedError("process.dlopen"); } setSourceMapsEnabled() { throw createNotImplementedError("process.setSourceMapsEnabled"); } loadEnvFile() { throw createNotImplementedError("process.loadEnvFile"); } disconnect() { throw createNotImplementedError("process.disconnect"); } cpuUsage() { throw createNotImplementedError("process.cpuUsage"); } setUncaughtExceptionCaptureCallback() { throw createNotImplementedError("process.setUncaughtExceptionCaptureCallback"); } hasUncaughtExceptionCaptureCallback() { throw createNotImplementedError("process.hasUncaughtExceptionCaptureCallback"); } initgroups() { throw createNotImplementedError("process.initgroups"); } openStdin() { throw createNotImplementedError("process.openStdin"); } assert() { throw createNotImplementedError("process.assert"); } binding() { throw createNotImplementedError("process.binding"); } // --- attached interfaces --- permission = { has: /* @__PURE__ */ notImplemented("process.permission.has") }; report = { directory: "", filename: "", signal: "SIGUSR2", compact: false, reportOnFatalError: false, reportOnSignal: false, reportOnUncaughtException: false, getReport: /* @__PURE__ */ notImplemented("process.report.getReport"), writeReport: /* @__PURE__ */ notImplemented("process.report.writeReport") }; finalization = { register: /* @__PURE__ */ notImplemented("process.finalization.register"), unregister: /* @__PURE__ */ notImplemented("process.finalization.unregister"), registerBeforeExit: /* @__PURE__ */ notImplemented("process.finalization.registerBeforeExit") }; memoryUsage = Object.assign(() => ({ arrayBuffers: 0, rss: 0, external: 0, heapTotal: 0, heapUsed: 0 }), { rss: /* @__PURE__ */ __name(() => 0, "rss") }); // --- undefined props --- mainModule = void 0; domain = void 0; // optional send = void 0; exitCode = void 0; channel = void 0; getegid = void 0; geteuid = void 0; getgid = void 0; getgroups = void 0; getuid = void 0; setegid = void 0; seteuid = void 0; setgid = void 0; setgroups = void 0; setuid = void 0; // internals _events = void 0; _eventsCount = void 0; _exiting = void 0; _maxListeners = void 0; _debugEnd = void 0; _debugProcess = void 0; _fatalException = void 0; _getActiveHandles = void 0; _getActiveRequests = void 0; _kill = void 0; _preload_modules = void 0; _rawDebug = void 0; _startProfilerIdleNotifier = void 0; _stopProfilerIdleNotifier = void 0; _tickCallback = void 0; _disconnect = void 0; _handleQueue = void 0; _pendingMessage = void 0; _channel = void 0; _send = void 0; _linkedBinding = void 0; }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/@cloudflare+unenv-preset@2.16.0_unenv@2.0.0-rc.24_workerd@1.20260415.1/node_modules/@cloudflare/unenv-preset/dist/runtime/node/process.mjs var globalProcess = globalThis["process"]; var getBuiltinModule = globalProcess.getBuiltinModule; var workerdProcess = getBuiltinModule("node:process"); var unenvProcess = new Process({ env: globalProcess.env, hrtime, // `nextTick` is available from workerd process v1 nextTick: workerdProcess.nextTick }); var { exit, features, platform } = workerdProcess; var { _channel, _debugEnd, _debugProcess, _disconnect, _events, _eventsCount, _exiting, _fatalException, _getActiveHandles, _getActiveRequests, _handleQueue, _kill, _linkedBinding, _maxListeners, _pendingMessage, _preload_modules, _rawDebug, _send, _startProfilerIdleNotifier, _stopProfilerIdleNotifier, _tickCallback, abort, addListener, allowedNodeEnvironmentFlags, arch, argv, argv0, assert: assert2, availableMemory, binding, channel, chdir, config, connected, constrainedMemory, cpuUsage, cwd, debugPort, disconnect, dlopen, domain, emit, emitWarning, env, eventNames, execArgv, execPath, exitCode, finalization, getActiveResourcesInfo, getegid, geteuid, getgid, getgroups, getMaxListeners, getuid, hasUncaughtExceptionCaptureCallback, hrtime: hrtime3, initgroups, kill, listenerCount, listeners, loadEnvFile, mainModule, memoryUsage, moduleLoadList, nextTick, off, on, once, openStdin, permission, pid, ppid, prependListener, prependOnceListener, rawListeners, reallyExit, ref, release, removeAllListeners, removeListener, report, resourceUsage, send, setegid, seteuid, setgid, setgroups, setMaxListeners, setSourceMapsEnabled, setuid, setUncaughtExceptionCaptureCallback, sourceMapsEnabled, stderr, stdin, stdout, throwDeprecation, title, traceDeprecation, umask, unref, uptime, version, versions } = unenvProcess; var _process = { abort, addListener, allowedNodeEnvironmentFlags, hasUncaughtExceptionCaptureCallback, setUncaughtExceptionCaptureCallback, loadEnvFile, sourceMapsEnabled, arch, argv, argv0, chdir, config, connected, constrainedMemory, availableMemory, cpuUsage, cwd, debugPort, dlopen, disconnect, emit, emitWarning, env, eventNames, execArgv, execPath, exit, finalization, features, getBuiltinModule, getActiveResourcesInfo, getMaxListeners, hrtime: hrtime3, kill, listeners, listenerCount, memoryUsage, nextTick, on, off, once, pid, platform, ppid, prependListener, prependOnceListener, rawListeners, release, removeAllListeners, removeListener, report, resourceUsage, setMaxListeners, setSourceMapsEnabled, stderr, stdin, stdout, title, throwDeprecation, traceDeprecation, umask, uptime, version, versions, // @ts-expect-error old API domain, initgroups, moduleLoadList, reallyExit, openStdin, assert: assert2, binding, send, exitCode, channel, getegid, geteuid, getgid, getgroups, getuid, setegid, seteuid, setgid, setgroups, setuid, permission, mainModule, _events, _eventsCount, _exiting, _maxListeners, _debugEnd, _debugProcess, _fatalException, _getActiveHandles, _getActiveRequests, _kill, _preload_modules, _rawDebug, _startProfilerIdleNotifier, _stopProfilerIdleNotifier, _tickCallback, _disconnect, _handleQueue, _pendingMessage, _channel, _send, _linkedBinding }; var process_default = _process; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/wrangler@4.83.0_@cloudflare+workers-types@4.20260420.1/node_modules/wrangler/_virtual_unenv_global_polyfill-@cloudflare-unenv-preset-node-process globalThis.process = process_default; // src/index.ts import componentWasm from "./cfef89ca6e0f809fe5774d8e3db5e48222abb7f6-component.wasm"; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/compose.js var compose = /* @__PURE__ */ __name((middleware, onError, onNotFound) => { return (context2, 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]; context2.req.routeIndex = i; } else { handler = i === middleware.length && next || void 0; } if (handler) { try { res = await handler(context2, () => dispatch(i + 1)); } catch (err) { if (err instanceof Error && onError) { context2.error = err; res = await onError(err, context2); isError = true; } else { throw err; } } } else { if (context2.finalized === false && onNotFound) { res = await onNotFound(context2); } } if (res && (context2.finalized === false || isError)) { context2.res = res; } return context2; } __name(dispatch, "dispatch"); }; }, "compose"); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/request/constants.js var GET_MATCH_RESULT = /* @__PURE__ */ Symbol(); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/utils/body.js var parseBody = /* @__PURE__ */ __name(async (request, options = /* @__PURE__ */ Object.create(null)) => { const { all = false, dot = false } = options; const headers = request instanceof 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 {}; }, "parseBody"); async function parseFormData(request, options) { const formData = await request.formData(); if (formData) { return convertFormDataToBodyData(formData, options); } return {}; } __name(parseFormData, "parseFormData"); 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; } __name(convertFormDataToBodyData, "convertFormDataToBodyData"); var handleParsingAllValues = /* @__PURE__ */ __name((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]; } } }, "handleParsingAllValues"); var handleParsingNestedValues = /* @__PURE__ */ __name((form, key, value) => { if (/(?:^|\.)__proto__\./.test(key)) { return; } 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]; } }); }, "handleParsingNestedValues"); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/utils/url.js var splitPath = /* @__PURE__ */ __name((path) => { const paths = path.split("/"); if (paths[0] === "") { paths.shift(); } return paths; }, "splitPath"); var splitRoutingPath = /* @__PURE__ */ __name((routePath) => { const { groups, path } = extractGroupsFromPath(routePath); const paths = splitPath(path); return replaceGroupMarks(paths, groups); }, "splitRoutingPath"); var extractGroupsFromPath = /* @__PURE__ */ __name((path) => { const groups = []; path = path.replace(/\{[^}]+\}/g, (match2, index) => { const mark = `@${index}`; groups.push([mark, match2]); return mark; }); return { groups, path }; }, "extractGroupsFromPath"); var replaceGroupMarks = /* @__PURE__ */ __name((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; }, "replaceGroupMarks"); var patternCache = {}; var getPattern = /* @__PURE__ */ __name((label, next) => { if (label === "*") { return "*"; } const match2 = label.match(/^\:([^\{\}]+)(?:\{(.+)\})?$/); if (match2) { const cacheKey = `${label}#${next}`; if (!patternCache[cacheKey]) { if (match2[2]) { patternCache[cacheKey] = next && next[0] !== ":" && next[0] !== "*" ? [cacheKey, match2[1], new RegExp(`^${match2[2]}(?=/${next})`)] : [label, match2[1], new RegExp(`^${match2[2]}$`)]; } else { patternCache[cacheKey] = [label, match2[1], true]; } } return patternCache[cacheKey]; } return null; }, "getPattern"); var tryDecode = /* @__PURE__ */ __name((str, decoder) => { try { return decoder(str); } catch { return str.replace(/(?:%[0-9A-Fa-f]{2})+/g, (match2) => { try { return decoder(match2); } catch { return match2; } }); } }, "tryDecode"); var tryDecodeURI = /* @__PURE__ */ __name((str) => tryDecode(str, decodeURI), "tryDecodeURI"); var getPath = /* @__PURE__ */ __name((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 hashIndex = url.indexOf("#", i); const end = queryIndex === -1 ? hashIndex === -1 ? void 0 : hashIndex : hashIndex === -1 ? queryIndex : Math.min(queryIndex, hashIndex); const path = url.slice(start, end); return tryDecodeURI(path.includes("%25") ? path.replace(/%25/g, "%2525") : path); } else if (charCode === 63 || charCode === 35) { break; } } return url.slice(start, i); }, "getPath"); var getPathNoStrict = /* @__PURE__ */ __name((request) => { const result = getPath(request); return result.length > 1 && result.at(-1) === "/" ? result.slice(0, -1) : result; }, "getPathNoStrict"); var mergePath = /* @__PURE__ */ __name((base, sub, ...rest) => { if (rest.length) { sub = mergePath(sub, ...rest); } return `${base?.[0] === "/" ? "" : "/"}${base}${sub === "/" ? "" : `${base?.at(-1) === "/" ? "" : "/"}${sub?.[0] === "/" ? sub.slice(1) : sub}`}`; }, "mergePath"); var checkOptionalParameter = /* @__PURE__ */ __name((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); }, "checkOptionalParameter"); var _decodeURI = /* @__PURE__ */ __name((value) => { if (!/[%+]/.test(value)) { return value; } if (value.indexOf("+") !== -1) { value = value.replace(/\+/g, " "); } return value.indexOf("%") !== -1 ? tryDecode(value, decodeURIComponent_) : value; }, "_decodeURI"); var _getQueryParam = /* @__PURE__ */ __name((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; }, "_getQueryParam"); var getQueryParam = _getQueryParam; var getQueryParams = /* @__PURE__ */ __name((url, key) => { return _getQueryParam(url, key, true); }, "getQueryParams"); var decodeURIComponent_ = decodeURIComponent; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/request.js var tryDecodeURIComponent = /* @__PURE__ */ __name((str) => tryDecode(str, decodeURIComponent_), "tryDecodeURIComponent"); var HonoRequest = class { static { __name(this, "HonoRequest"); } /** * `.raw` can get the raw Request object. * * @see {@link https://hono.dev/docs/api/request#raw} * * @example * ```ts * // For Cloudflare Workers * app.post('/', async (c) => { * const metadata = c.req.raw.cf?.hostMetadata? * ... * }) * ``` */ raw; #validatedData; // Short name of validatedData #matchResult; routeIndex = 0; /** * `.path` can get the pathname of the request. * * @see {@link https://hono.dev/docs/api/request#path} * * @example * ```ts * app.get('/about/me', (c) => { * const pathname = c.req.path // `/about/me` * }) * ``` */ 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 getQueryParam(this.url, key); } queries(key) { return 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 parseBody(this, options); } #cachedBody = /* @__PURE__ */ __name((key) => { const { bodyCache, raw: raw2 } = 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] = raw2[key](); }, "#cachedBody"); /** * `.json()` can parse Request body of type `application/json` * * @see {@link https://hono.dev/docs/api/request#json} * * @example * ```ts * app.post('/entry', async (c) => { * const body = await c.req.json() * }) * ``` */ json() { return this.#cachedBody("text").then((text) => JSON.parse(text)); } /** * `.text()` can parse Request body of type `text/plain` * * @see {@link https://hono.dev/docs/api/request#text} * * @example * ```ts * app.post('/entry', async (c) => { * const body = await c.req.text() * }) * ``` */ text() { return this.#cachedBody("text"); } /** * `.arrayBuffer()` parse Request body as an `ArrayBuffer` * * @see {@link https://hono.dev/docs/api/request#arraybuffer} * * @example * ```ts * app.post('/entry', async (c) => { * const body = await c.req.arrayBuffer() * }) * ``` */ arrayBuffer() { return this.#cachedBody("arrayBuffer"); } /** * Parses the request body as a `Blob`. * @example * ```ts * app.post('/entry', async (c) => { * const body = await c.req.blob(); * }); * ``` * @see https://hono.dev/docs/api/request#blob */ blob() { return this.#cachedBody("blob"); } /** * Parses the request body as `FormData`. * @example * ```ts * app.post('/entry', async (c) => { * const body = await c.req.formData(); * }); * ``` * @see https://hono.dev/docs/api/request#formdata */ formData() { return this.#cachedBody("formData"); } /** * Adds validated data to the request. * * @param target - The target of the validation. * @param data - The validated data to add. */ addValidatedData(target, data) { this.#validatedData[target] = data; } valid(target) { return this.#validatedData[target]; } /** * `.url()` can get the request url strings. * * @see {@link https://hono.dev/docs/api/request#url} * * @example * ```ts * app.get('/about/me', (c) => { * const url = c.req.url // `http://localhost:8787/about/me` * ... * }) * ``` */ get url() { return this.raw.url; } /** * `.method()` can get the method name of the request. * * @see {@link https://hono.dev/docs/api/request#method} * * @example * ```ts * app.get('/about/me', (c) => { * const method = c.req.method // `GET` * }) * ``` */ get method() { return this.raw.method; } get [GET_MATCH_RESULT]() { return this.#matchResult; } /** * `.matchedRoutes()` can return a matched route in the handler * * @deprecated * * Use matchedRoutes helper defined in "hono/route" instead. * * @see {@link https://hono.dev/docs/api/request#matchedroutes} * * @example * ```ts * app.use('*', async function logger(c, next) { * await next() * c.req.matchedRoutes.forEach(({ handler, method, path }, i) => { * const name = handler.name || (handler.length < 2 ? '[handler]' : '[middleware]') * console.log( * method, * ' ', * path, * ' '.repeat(Math.max(10 - path.length, 0)), * name, * i === c.req.routeIndex ? '<- respond from here' : '' * ) * }) * }) * ``` */ get matchedRoutes() { return this.#matchResult[0].map(([[, route]]) => route); } /** * `routePath()` can retrieve the path registered within the handler * * @deprecated * * Use routePath helper defined in "hono/route" instead. * * @see {@link https://hono.dev/docs/api/request#routepath} * * @example * ```ts * app.get('/posts/:id', (c) => { * return c.json({ path: c.req.routePath }) * }) * ``` */ get routePath() { return this.#matchResult[0].map(([[, route]]) => route)[this.routeIndex].path; } }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/utils/html.js var HtmlEscapedCallbackPhase = { Stringify: 1, BeforeStream: 2, Stream: 3 }; var raw = /* @__PURE__ */ __name((value, callbacks) => { const escapedString = new String(value); escapedString.isEscaped = true; escapedString.callbacks = callbacks; return escapedString; }, "raw"); var resolveCallback = /* @__PURE__ */ __name(async (str, phase, preserveCallbacks, context2, 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: context2 }))).then( (res) => Promise.all( res.filter(Boolean).map((str2) => resolveCallback(str2, phase, false, context2, buffer)) ).then(() => buffer[0]) ); if (preserveCallbacks) { return raw(await resStr, callbacks); } else { return resStr; } }, "resolveCallback"); // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/context.js var TEXT_PLAIN = "text/plain; charset=UTF-8"; var setDefaultContentType = /* @__PURE__ */ __name((contentType, headers) => { return { "Content-Type": contentType, ...headers }; }, "setDefaultContentType"); var createResponseInstance = /* @__PURE__ */ __name((body, init) => new Response(body, init), "createResponseInstance"); var Context = class { static { __name(this, "Context"); } #rawRequest; #req; /** * `.env` can get bindings (environment variables, secrets, KV namespaces, D1 database, R2 bucket etc.) in Cloudflare Workers. * * @see {@link https://hono.dev/docs/api/context#env} * * @example * ```ts * // Environment object for Cloudflare Workers * app.get('*', async c => { * const counter = c.env.COUNTER * }) * ``` */ env = {}; #var; finalized = false; /** * `.error` can get the error object from the middleware if the Handler throws an error. * * @see {@link https://hono.dev/docs/api/context#error} * * @example * ```ts * app.use('*', async (c, next) => { * await next() * if (c.error) { * // do something... * } * }) * ``` */ error; #status; #executionCtx; #res; #layout; #renderer; #notFoundHandler; #preparedHeaders; #matchResult; #path; /** * Creates an instance of the Context class. * * @param req - The Request object. * @param options - Optional configuration options for the context. */ 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; } } /** * `.req` is the instance of {@link HonoRequest}. */ get req() { this.#req ??= new HonoRequest(this.#rawRequest, this.#path, this.#matchResult); return this.#req; } /** * @see {@link https://hono.dev/docs/api/context#event} * The FetchEvent associated with the current request. * * @throws Will throw an error if the context does not have a FetchEvent. */ get event() { if (this.#executionCtx && "respondWith" in this.#executionCtx) { return this.#executionCtx; } else { throw Error("This context has no FetchEvent"); } } /** * @see {@link https://hono.dev/docs/api/context#executionctx} * The ExecutionContext associated with the current request. * * @throws Will throw an error if the context does not have an ExecutionContext. */ get executionCtx() { if (this.#executionCtx) { return this.#executionCtx; } else { throw Error("This context has no ExecutionContext"); } } /** * @see {@link https://hono.dev/docs/api/context#res} * The Response object for the current request. */ get res() { return this.#res ||= createResponseInstance(null, { headers: this.#preparedHeaders ??= new Headers() }); } /** * Sets the Response object for the current request. * * @param _res - The Response object to set. */ set res(_res) { if (this.#res && _res) { _res = createResponseInstance(_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()` can create a response within a layout. * * @see {@link https://hono.dev/docs/api/context#render-setrenderer} * * @example * ```ts * app.get('/', (c) => { * return c.render('Hello!') * }) * ``` */ render = /* @__PURE__ */ __name((...args) => { this.#renderer ??= (content) => this.html(content); return this.#renderer(...args); }, "render"); /** * Sets the layout for the response. * * @param layout - The layout to set. * @returns The layout function. */ setLayout = /* @__PURE__ */ __name((layout) => this.#layout = layout, "setLayout"); /** * Gets the current layout for the response. * * @returns The current layout function. */ getLayout = /* @__PURE__ */ __name(() => this.#layout, "getLayout"); /** * `.setRenderer()` can set the layout in the custom middleware. * * @see {@link https://hono.dev/docs/api/context#render-setrenderer} * * @example * ```tsx * app.use('*', async (c, next) => { * c.setRenderer((content) => { * return c.html( * *
*{content}
* * * ) * }) * await next() * }) * ``` */ setRenderer = /* @__PURE__ */ __name((renderer) => { this.#renderer = renderer; }, "setRenderer"); /** * `.header()` can set headers. * * @see {@link https://hono.dev/docs/api/context#header} * * @example * ```ts * app.get('/welcome', (c) => { * // Set headers * c.header('X-Message', 'Hello!') * c.header('Content-Type', 'text/plain') * * return c.body('Thank you for coming') * }) * ``` */ header = /* @__PURE__ */ __name((name, value, options) => { if (this.finalized) { this.#res = createResponseInstance(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); } }, "header"); status = /* @__PURE__ */ __name((status) => { this.#status = status; }, "status"); /** * `.set()` can set the value specified by the key. * * @see {@link https://hono.dev/docs/api/context#set-get} * * @example * ```ts * app.use('*', async (c, next) => { * c.set('message', 'Hono is hot!!') * await next() * }) * ``` */ set = /* @__PURE__ */ __name((key, value) => { this.#var ??= /* @__PURE__ */ new Map(); this.#var.set(key, value); }, "set"); /** * `.get()` can use the value specified by the key. * * @see {@link https://hono.dev/docs/api/context#set-get} * * @example * ```ts * app.get('/', (c) => { * const message = c.get('message') * return c.text(`The message is "${message}"`) * }) * ``` */ get = /* @__PURE__ */ __name((key) => { return this.#var ? this.#var.get(key) : void 0; }, "get"); /** * `.var` can access the value of a variable. * * @see {@link https://hono.dev/docs/api/context#var} * * @example * ```ts * const result = c.var.client.oneMethod() * ``` */ // c.var.propName is a read-only 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 createResponseInstance(data, { status, headers: responseHeaders }); } newResponse = /* @__PURE__ */ __name((...args) => this.#newResponse(...args), "newResponse"); /** * `.body()` can return the HTTP response. * You can set headers with `.header()` and set HTTP status code with `.status`. * This can also be set in `.text()`, `.json()` and so on. * * @see {@link https://hono.dev/docs/api/context#body} * * @example * ```ts * app.get('/welcome', (c) => { * // Set headers * c.header('X-Message', 'Hello!') * c.header('Content-Type', 'text/plain') * // Set HTTP status code * c.status(201) * * // Return the response body * return c.body('Thank you for coming') * }) * ``` */ body = /* @__PURE__ */ __name((data, arg, headers) => this.#newResponse(data, arg, headers), "body"); /** * `.text()` can render text as `Content-Type:text/plain`. * * @see {@link https://hono.dev/docs/api/context#text} * * @example * ```ts * app.get('/say', (c) => { * return c.text('Hello!') * }) * ``` */ text = /* @__PURE__ */ __name((text, arg, headers) => { return !this.#preparedHeaders && !this.#status && !arg && !headers && !this.finalized ? new Response(text) : this.#newResponse( text, arg, setDefaultContentType(TEXT_PLAIN, headers) ); }, "text"); /** * `.json()` can render JSON as `Content-Type:application/json`. * * @see {@link https://hono.dev/docs/api/context#json} * * @example * ```ts * app.get('/api', (c) => { * return c.json({ message: 'Hello!' }) * }) * ``` */ json = /* @__PURE__ */ __name((object, arg, headers) => { return this.#newResponse( JSON.stringify(object), arg, setDefaultContentType("application/json", headers) ); }, "json"); html = /* @__PURE__ */ __name((html, arg, headers) => { const res = /* @__PURE__ */ __name((html2) => this.#newResponse(html2, arg, setDefaultContentType("text/html; charset=UTF-8", headers)), "res"); return typeof html === "object" ? resolveCallback(html, HtmlEscapedCallbackPhase.Stringify, false, {}).then(res) : res(html); }, "html"); /** * `.redirect()` can Redirect, default status code is 302. * * @see {@link https://hono.dev/docs/api/context#redirect} * * @example * ```ts * app.get('/redirect', (c) => { * return c.redirect('/') * }) * app.get('/redirect-permanently', (c) => { * return c.redirect('/', 301) * }) * ``` */ redirect = /* @__PURE__ */ __name((location, status) => { const locationString = String(location); this.header( "Location", // Multibyes should be encoded // eslint-disable-next-line no-control-regex !/[^\x00-\xFF]/.test(locationString) ? locationString : encodeURI(locationString) ); return this.newResponse(null, status ?? 302); }, "redirect"); /** * `.notFound()` can return the Not Found Response. * * @see {@link https://hono.dev/docs/api/context#notfound} * * @example * ```ts * app.get('/notfound', (c) => { * return c.notFound() * }) * ``` */ notFound = /* @__PURE__ */ __name(() => { this.#notFoundHandler ??= () => createResponseInstance(); return this.#notFoundHandler(this); }, "notFound"); }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/router.js 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 { static { __name(this, "UnsupportedPathError"); } }; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/utils/constants.js var COMPOSED_HANDLER = "__COMPOSED_HANDLER"; // ../../../../../../../../../Users/youlinhsieh/Documents/tech_projects/InkStoneCo/matrix/arcrun/.component-builds/cron/node_modules/.pnpm/hono@4.12.14/node_modules/hono/dist/hono-base.js var notFoundHandler = /* @__PURE__ */ __name((c) => { return c.text("404 Not Found", 404); }, "notFoundHandler"); var errorHandler = /* @__PURE__ */ __name((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); }, "errorHandler"); var Hono = class _Hono { static { __name(this, "_Hono"); } get; post; put; delete; options; patch; all; on; use; /* This class is like an abstract class and does not have a router. To use it, inherit the class and implement router in the constructor. */ router; getPath; // Cannot use `#` because it requires visibility at JavaScript runtime. _basePath = "/"; #path = "/"; routes = []; constructor(options = {}) { const allMethods = [...METHODS, 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(METHOD_NAME_ALL, this.#path, handler); }); return this; }; const { strict, ...optionsWithoutStrict } = options; Object.assign(this, optionsWithoutStrict); this.getPath = strict ?? true ? options.getPath ?? getPath : 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; // Cannot use `#` because it requires visibility at JavaScript runtime. errorHandler = errorHandler; /** * `.route()` allows grouping other Hono instance in routes. * * @see {@link https://hono.dev/docs/api/routing#grouping} * * @param {string} path - base Path * @param {Hono} app - other Hono instance * @returns {Hono} routed Hono instance * * @example * ```ts * const app = new Hono() * const app2 = new Hono() * * app2.get("/user", (c) => c.text("user")) * app.route("/api", app2) // GET /api/user * ``` */ route(path, app2) { const subApp = this.basePath(path); app2.routes.map((r) => { let handler; if (app2.errorHandler === errorHandler) { handler = r.handler; } else { handler = /* @__PURE__ */ __name(async (c, next) => (await compose([], app2.errorHandler)(c, () => r.handler(c, next))).res, "handler"); handler[COMPOSED_HANDLER] = r.handler; } subApp.#addRoute(r.method, r.path, handler); }); return this; } /** * `.basePath()` allows base paths to be specified. * * @see {@link https://hono.dev/docs/api/routing#base-path} * * @param {string} path - base Path * @returns {Hono} changed Hono instance * * @example * ```ts * const api = new Hono().basePath('/api') * ``` */ basePath(path) { const subApp = this.#clone(); subApp._basePath = mergePath(this._basePath, path); return subApp; } /** * `.onError()` handles an error and returns a customized Response. * * @see {@link https://hono.dev/docs/api/hono#error-handling} * * @param {ErrorHandler} handler - request Handler for error * @returns {Hono} changed Hono instance * * @example * ```ts * app.onError((err, c) => { * console.error(`${err}`) * return c.text('Custom Error Message', 500) * }) * ``` */ onError = /* @__PURE__ */ __name((handler) => { this.errorHandler = handler; return this; }, "onError"); /** * `.notFound()` allows you to customize a Not Found Response. * * @see {@link https://hono.dev/docs/api/hono#not-found} * * @param {NotFoundHandler} handler - request handler for not-found * @returns {Hono} changed Hono instance * * @example * ```ts * app.notFound((c) => { * return c.text('Custom 404 Message', 404) * }) * ``` */ notFound = /* @__PURE__ */ __name((handler) => { this.#notFoundHandler = handler; return this; }, "notFound"); /** * `.mount()` allows you to mount applications built with other frameworks into your Hono application. * * @see {@link https://hono.dev/docs/api/hono#mount} * * @param {string} path - base Path * @param {Function} applicationHandler - other Request Handler * @param {MountOptions} [options] - options of `.mount()` * @returns {Hono} mounted Hono instance * * @example * ```ts * import { Router as IttyRouter } from 'itty-router' * import { Hono } from 'hono' * // Create itty-router application * const ittyRouter = IttyRouter() * // GET /itty-router/hello * ittyRouter.get('/hello', () => new Response('Hello from itty-router')) * * const app = new Hono() * app.mount('/itty-router', ittyRouter.handle) * ``` * * @example * ```ts * const app = new Hono() * // Send the request to another application without modification. * app.mount('/app', anotherApp, { * replaceRequest: (req) => req, * }) * ``` */ 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 = /* @__PURE__ */ __name((request) => request, "replaceRequest"); } 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 = 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 = /* @__PURE__ */ __name(async (c, next) => { const res = await applicationHandler(replaceRequest(c.req.raw), ...getOptions(c)); if (res) { return res; } await next(); }, "handler"); this.#addRoute(METHOD_NAME_ALL, mergePath(path, "*"), handler); return this; } #addRoute(method, path, handler) { method = method.toUpperCase(); path = 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, env2, method) { if (method === "HEAD") { return (async () => new Response(null, await this.#dispatch(request, executionCtx, env2, "GET")))(); } const path = this.getPath(request, { env: env2 }); const matchResult = this.router.match(method, path); const c = new Context(request, { path, matchResult, env: env2, 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 = compose(matchResult[0], this.errorHandler, this.#notFoundHandler); return (async () => { try { const context2 = await composed(c); if (!context2.finalized) { throw new Error( "Context is not finalized. Did you forget to return a Response object or `await next()`?" ); } return context2.res; } catch (err) { return this.#handleError(err, c); } })(); } /** * `.fetch()` will be entry point of your app. * * @see {@link https://hono.dev/docs/api/hono#fetch} * * @param {Request} request - request Object of request * @param {Env} Env - env Object * @param {ExecutionContext} - context of execution * @returns {Response | Promise