MCPcopy
hub / github.com/unpkg/unpkg / readInlineTransformRequest

Function readInlineTransformRequest

packages/unpkg-files/src/lib/request-handler.ts:213–243  ·  view source on GitHub ↗
(request: Request)

Source from the content-addressed store, hash-verified

211}
212
213async function readInlineTransformRequest(request: Request): Promise<
214 | {
215 filename: string;
216 source: string;
217 }
218 | { response: Response }
219> {
220 let value: unknown;
221 try {
222 value = await request.json();
223 } catch {
224 return { response: new Response("Invalid JSON request body", { status: 400 }) };
225 }
226
227 if (typeof value !== "object" || value == null) {
228 return { response: new Response("Invalid transform request body", { status: 400 }) };
229 }
230
231 let body = value as Record<string, unknown>;
232 if (typeof body.source !== "string") {
233 return { response: new Response("Missing source in transform request body", { status: 400 }) };
234 }
235 if (body.filename != null && typeof body.filename !== "string") {
236 return { response: new Response("Invalid filename in transform request body", { status: 400 }) };
237 }
238
239 return {
240 filename: body.filename ?? "/inline.tsx",
241 source: body.source,
242 };
243}
244
245function notFound(message?: string, init?: ResponseInit): Response {
246 return new Response(message ?? "Not Found", { status: 404, ...init });

Callers 1

handleRequest_Function · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected