From 2d5b7c095e26f46137b920315a7468eab2f1944c Mon Sep 17 00:00:00 2001 From: Hayleigh Thompson Date: Fri, 26 Jan 2024 14:40:00 +0000 Subject: :fire: Remove js support from lustre/try. --- src/http.ffi.mjs | 123 ------------------------------------------------------- 1 file changed, 123 deletions(-) delete mode 100644 src/http.ffi.mjs diff --git a/src/http.ffi.mjs b/src/http.ffi.mjs deleted file mode 100644 index aad5e3d..0000000 --- a/src/http.ffi.mjs +++ /dev/null @@ -1,123 +0,0 @@ -import { readFileSync } from "node:fs"; -import * as Fs from "node:fs/promises"; -import * as Http from "node:http"; -import * as Path from "node:path"; -import * as Process from "node:process"; - -const cwd = Process.cwd(); -const root = Path.join(cwd, "build/dev/javascript"); -const toml = readFileSync(Path.join(cwd, "gleam.toml"), "utf-8"); -const name = toml.match(/name *= *"(.+)"/)[1]; - -let html; - -const server = Http.createServer((req, res) => { - res.setHeader( - "Cache-Control", - "no-store, no-cache, must-revalidate, private" - ); - res.setHeader("Pragma", "no-cache"); - - switch (true) { - case req.url === "/": { - res.setHeader("Content-Type", "text/html"); - res.statusCode = 200; - res.end(html); - - break; - } - - case req.url.endsWith(".js"): - case req.url.endsWith(".mjs"): { - Fs.readFile(Path.join(root, req.url), "utf-8") - .then((src) => { - res.setHeader("Content-Type", "application/javascript"); - res.statusCode = 200; - res.end(src); - }) - .catch((_err) => { - res.statusCode = 404; - res.end(); - }); - - break; - } - - case req.url.endsWith(".css"): { - Fs.readFile(Path.join(root, req.url), "utf-8") - .then((src) => { - res.setHeader("Content-Type", "text/css"); - res.statusCode = 200; - res.end(src); - }) - .catch((_err) => { - res.statusCode = 404; - res.end(); - }); - - break; - } - - default: { - Fs.readFile(Path.join(root, req.url), "utf-8") - .then((src) => { - res.setHeader("Content-Type", "text/plain"); - res.statusCode = 200; - res.end(src); - }) - .catch((_err) => { - res.statusCode = 404; - res.end(); - }); - } - } -}); - -export const serve = ( - { host, port, include_styles }, - on_start, - on_port_taken -) => { - let is_first_try = true; - - html = ` - - - - - Lustre preview server - - ${ - include_styles - ? `` - : "" - } - - - - -
- -`; - - server - .on("error", (error) => { - if (error.code === "EADDRINUSE") { - if (is_first_try) { - on_port_taken(port); - is_first_try = false; - } - - server.listen(++port, host); - } - }) - .listen(port, host, () => { - on_start(port); - }); -}; -- cgit v1.2.3