UNPKG

autumn-js

Version:
67 lines (65 loc) 1.77 kB
import { secretKeyCheck } from "./chunk-UNZHJTEY.mjs"; import { createRouterWithOptions } from "./chunk-OFKRGNWA.mjs"; import "./chunk-HGB236VV.mjs"; import "./chunk-ZGI3AYWD.mjs"; import "./chunk-S46FBNO3.mjs"; import "./chunk-NCJ2TKEX.mjs"; import "./chunk-TUGNGQW2.mjs"; import "./chunk-UJBSJTAV.mjs"; import { Autumn } from "./chunk-UJN5NVTZ.mjs"; import "./chunk-SGEUXFOF.mjs"; import { autumnApiUrl } from "./chunk-KSG3E4Q2.mjs"; // src/libraries/backend/hono.ts import { findRoute } from "rou3"; var autumnHandler = (options) => { const autumn = new Autumn({ url: options.url || autumnApiUrl, version: options.version, secretKey: options.secretKey }); const router = createRouterWithOptions(); const { found, error: resError } = secretKeyCheck(options?.secretKey); return async (c, next) => { if (!found && !options.secretKey) { return c.json(resError, 500); } const request = new URL(c.req.url); const path = request.pathname; const searchParams = Object.fromEntries(request.searchParams); const match = findRoute(router, c.req.method, path); if (match) { const { data, params: pathParams } = match; const { handler } = data; let body = null; if (c.req.method === "POST" || c.req.method === "PUT" || c.req.method === "PATCH") { try { body = await c.req.json(); } catch (error) { } } const result = await handler({ autumn, body, path: c.req.path, getCustomer: async () => { return await options.identify(c); }, pathParams, searchParams }); return c.json(result.body, result.statusCode); } await next(); }; }; export { autumnHandler };