aboutsummaryrefslogtreecommitdiffhomepage
path: root/services/blog/nuldoc-src/commands/serve.ts
diff options
context:
space:
mode:
authornsfisis <nsfisis@gmail.com>2025-11-02 17:49:34 +0900
committernsfisis <nsfisis@gmail.com>2025-11-02 17:49:34 +0900
commit57315c52be96d2a2c013f0cfb0de5429980e301a (patch)
tree5d691497772fddfe401cd970ead4e9a74b34ef38 /services/blog/nuldoc-src/commands/serve.ts
parentcf4091a93ed831456e8b30e2a9e1fc2650dcae02 (diff)
downloadnsfisis.dev-57315c52be96d2a2c013f0cfb0de5429980e301a.tar.gz
nsfisis.dev-57315c52be96d2a2c013f0cfb0de5429980e301a.tar.zst
nsfisis.dev-57315c52be96d2a2c013f0cfb0de5429980e301a.zip
refactor(blog): rename directory, services/{blog => nuldoc}/
Diffstat (limited to 'services/blog/nuldoc-src/commands/serve.ts')
-rw-r--r--services/blog/nuldoc-src/commands/serve.ts52
1 files changed, 0 insertions, 52 deletions
diff --git a/services/blog/nuldoc-src/commands/serve.ts b/services/blog/nuldoc-src/commands/serve.ts
deleted file mode 100644
index 6b7d8a0..0000000
--- a/services/blog/nuldoc-src/commands/serve.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-import { parseArgs } from "@std/cli";
-import { serveDir, STATUS_CODE, STATUS_TEXT } from "@std/http";
-import { join } from "@std/path";
-import { Config } from "../config.ts";
-import { runBuildCommand } from "./build.ts";
-
-function isResourcePath(pathname: string): boolean {
- const EXTENSIONS = [
- ".css",
- ".gif",
- ".ico",
- ".jpeg",
- ".jpg",
- ".js",
- ".mjs",
- ".png",
- ".svg",
- ];
- return EXTENSIONS.some((ext) => pathname.endsWith(ext));
-}
-
-export function runServeCommand(config: Config) {
- const parsedArgs = parseArgs(Deno.args, {
- boolean: ["no-rebuild"],
- });
-
- const doRebuild = !parsedArgs["no-rebuild"];
- const rootDir = join(Deno.cwd(), config.locations.destDir);
- Deno.serve({ hostname: "127.0.0.1" }, async (req) => {
- const pathname = new URL(req.url).pathname;
- if (!isResourcePath(pathname) && doRebuild) {
- await runBuildCommand(config);
- console.log("rebuild");
- }
- const res = await serveDir(req, {
- fsRoot: rootDir,
- showIndex: true,
- });
- if (res.status !== STATUS_CODE.NotFound) {
- return res;
- }
-
- const notFoundHtml = await Deno.readTextFile(join(rootDir, "404.html"));
- return new Response(notFoundHtml, {
- status: STATUS_CODE.NotFound,
- statusText: STATUS_TEXT[STATUS_CODE.NotFound],
- headers: {
- "content-type": "text/html",
- },
- });
- });
-}