Reformat; fix some problems

This commit is contained in:
Michael Wolf
2025-03-07 15:24:32 -06:00
parent 5a08baab5e
commit 8d494cdf3b

View File

@@ -1,45 +1,48 @@
// app.ts import { services } from "./services.ts";
import {
import { services } from "./services"; DenoRequest,
import{DenoRequest, Method, ProcessedRoute, Request, Route} from './types' massageMethod,DenoResponse,
Method,
import {routes} from './routes' ProcessedRoute,
Request,
services.logging.log({ foo: 1 }); Route,
const processedRoutes: ProcessedRoute[] = routes.map( } from "./types.ts";
(route: Route, idx: number, allRoutes: Route[]) => {
const pattern: URLPattern = new URLPattern({ pathname: route.path }); import { routes } from "./routes.ts";
const method: Method = route.method;
const handler = async (denoRequest: DenoRequest) => { services.logging.log({ source: "logging", text: ["1"] });
const req: Request = { const processedRoutes: ProcessedRoute[] = routes.map(
pattern: route.pattern, (route: Route, _idx: number, _allRoutes: Route[]) => {
path: denoRequest.path, const pattern: URLPattern = new URLPattern({ pathname: route.path });
method: denoRequest.method, const method: Method = route.method;
parameters: { one: 1, two: 2 }, const handler = async (denoRequest: DenoRequest) => {
denoRequest, const req: Request = {
}; pattern: route.pattern,
return route.handler(req); path: denoRequest.path,
}; method: massageMethod(denoRequest.method),
parameters: { one: 1, two: 2 },
const retval: ProcessedRoute = { pattern, method, handler }; denoRequest,
};
return retval return route.handler(req);
}, };
);
const retval: ProcessedRoute = { pattern, method, handler };
async function handler(req: globalThis.Request): globalThis.Response { return retval;
for (const [idx, pr] of processedRoutes.entries()) { },
const match = pr.pattern.exec(req.url); );
if (match) {
const resp = await pr.handler(req); async function handler(req: DenoRequest): Promise<DenoResponse> {
for (const [idx, pr] of processedRoutes.entries()) {
return new globalThis.Response(resp.result); const match = pr.pattern.exec(req.url);
} if (match) {
} const resp = await pr.handler(req);
return new globalThis.Response("not found", { status: 404 }); return new globalThis.Response(resp.result);
} }
}
Deno.serve(handler);
return new globalThis.Response("not found", { status: 404 });
}
Deno.serve(handler);