diff --git a/app.js b/app.js deleted file mode 100644 index 4fba34d..0000000 --- a/app.js +++ /dev/null @@ -1,38 +0,0 @@ -import createError from "http-errors"; -import express, { json, urlencoded, static as serveStatic } from "express"; -import { join } from "path"; -import cookieParser from "cookie-parser"; -import logger from "morgan"; - -import indexRouter from "./routes/index.js"; -import usersRouter from "./routes/users.js"; - -const __dirname = import.meta.dirname; - -const app = express(); - -app.set("views", join(__dirname, "views")); -app.set("view engine", "pug"); - -app.use(logger("dev")); -app.use(json()); -app.use(urlencoded({ extended: false })); -app.use(cookieParser()); -app.use(serveStatic(join(__dirname, "public"))); - -app.use("/", indexRouter); -app.use("/users", usersRouter); - -app.use(function (req, res, next) { - next(createError(404)); -}); - -app.use(function (err, req, res, next) { - res.locals.message = err.message; - res.locals.error = req.app.get("env") === "development" ? err : {}; - - res.status(err.status || 500); - res.render("error"); -}); - -export default app; diff --git a/package.json b/package.json index f64f6fb..5fd3b6e 100644 --- a/package.json +++ b/package.json @@ -2,9 +2,9 @@ "name": "minexlauncher", "private": true, "type": "module", - "main": "./bin/www", + "main": "./server.js", "scripts": { - "start": "node ./bin/www", + "start": "node ./server.js", "build": "npm run build:clean && npm run build:compile && npm run build:obfuscate", "build:clean": "rimraf ./public/resources/scripts", "build:compile": "tsc", diff --git a/bin/www b/server.js similarity index 51% rename from bin/www rename to server.js index 6360dcc..3873a52 100755 --- a/bin/www +++ b/server.js @@ -1,8 +1,40 @@ -#!/usr/bin/env node - -import app from "../app.js"; +import createError from "http-errors"; +import express, { json, urlencoded, static as serveStatic } from "express"; +import { join } from "path"; +import cookieParser from "cookie-parser"; +import logger from "morgan"; import debug from "debug"; import { createServer } from "http"; +import indexRouter from "./routes/index.js"; +import usersRouter from "./routes/users.js"; + +const __dirname = import.meta.dirname; + +const app = express(); + +app.set("views", join(__dirname, "views")); +app.set("view engine", "pug"); + +app.use(logger("dev")); +app.use(json()); +app.use(urlencoded({ extended: false })); +app.use(cookieParser()); +app.use(serveStatic(join(__dirname, "public"))); + +app.use("/", indexRouter); +app.use("/users", usersRouter); + +app.use(function (req, res, next) { + next(createError(404)); +}); + +app.use(function (err, req, res, next) { + res.locals.message = err.message; + res.locals.error = req.app.get("env") === "development" ? err : {}; + + res.status(err.status || 500); + res.render("error"); +}); const debugLogger = debug("minexlauncher:server"); @@ -17,25 +49,20 @@ server.on("listening", onListening); function normalizePort(val) { const port = parseInt(val, 10); - if (isNaN(port)) { return val; - } - - if (port >= 0) { + } else if (port >= 0) { return port; + } else { + return false; } - - return false; } function onError(error) { if (error.syscall !== "listen") { throw error; } - const bind = typeof port === "string" ? "Pipe " + port : "Port " + port; - switch (error.code) { case "EACCES": console.error(bind + " requires elevated privileges");