import { createServer } from "node:http" import { mkdir, writeFile } from "node:fs/promises" import { dirname, resolve } from "node:path" const output = resolve(process.argv[2] || "artifacts/ai-ppt-export-test/ai-ppt-e2e.pptx") const server = createServer((request, response) => { response.setHeader("Access-Control-Allow-Origin", "*") response.setHeader("Access-Control-Allow-Methods", "POST, OPTIONS") if (request.method === "OPTIONS") { response.writeHead(204).end() return } if (request.method !== "POST" || request.url !== "/pptx") { response.writeHead(404).end() return } const chunks = [] request.on("data", chunk => chunks.push(chunk)) request.on("end", async () => { const buffer = Buffer.concat(chunks) await mkdir(dirname(output), { recursive: true }) await writeFile(output, buffer) response.writeHead(200).end("saved") console.log(JSON.stringify({ output, bytes: buffer.length })) server.close() }) }) server.listen(9540, "127.0.0.1", () => console.log("AI PPT export sink listening on 9540"))