mirror of
https://github.com/NginxProxyManager/nginx-proxy-manager.git
synced 2025-09-14 10:52:34 +00:00
67 lines
2.0 KiB
JavaScript
67 lines
2.0 KiB
JavaScript
import express from "express";
|
|
import errs from "../lib/error.js";
|
|
import pjson from "../package.json" with { type: "json" };
|
|
import { isSetup } from "../setup.js";
|
|
import auditLogRoutes from "./audit-log.js";
|
|
import accessListsRoutes from "./nginx/access_lists.js";
|
|
import certificatesHostsRoutes from "./nginx/certificates.js";
|
|
import deadHostsRoutes from "./nginx/dead_hosts.js";
|
|
import proxyHostsRoutes from "./nginx/proxy_hosts.js";
|
|
import redirectionHostsRoutes from "./nginx/redirection_hosts.js";
|
|
import streamsRoutes from "./nginx/streams.js";
|
|
import reportsRoutes from "./reports.js";
|
|
import schemaRoutes from "./schema.js";
|
|
import settingsRoutes from "./settings.js";
|
|
import tokensRoutes from "./tokens.js";
|
|
import usersRoutes from "./users.js";
|
|
|
|
const router = express.Router({
|
|
caseSensitive: true,
|
|
strict: true,
|
|
mergeParams: true,
|
|
});
|
|
|
|
/**
|
|
* Health Check
|
|
* GET /api
|
|
*/
|
|
router.get("/", async (_, res /*, next*/) => {
|
|
const version = pjson.version.split("-").shift().split(".");
|
|
const setup = await isSetup();
|
|
|
|
res.status(200).send({
|
|
status: "OK",
|
|
setup,
|
|
version: {
|
|
major: Number.parseInt(version.shift(), 10),
|
|
minor: Number.parseInt(version.shift(), 10),
|
|
revision: Number.parseInt(version.shift(), 10),
|
|
},
|
|
});
|
|
});
|
|
|
|
router.use("/schema", schemaRoutes);
|
|
router.use("/tokens", tokensRoutes);
|
|
router.use("/users", usersRoutes);
|
|
router.use("/audit-log", auditLogRoutes);
|
|
router.use("/reports", reportsRoutes);
|
|
router.use("/settings", settingsRoutes);
|
|
router.use("/nginx/proxy-hosts", proxyHostsRoutes);
|
|
router.use("/nginx/redirection-hosts", redirectionHostsRoutes);
|
|
router.use("/nginx/dead-hosts", deadHostsRoutes);
|
|
router.use("/nginx/streams", streamsRoutes);
|
|
router.use("/nginx/access-lists", accessListsRoutes);
|
|
router.use("/nginx/certificates", certificatesHostsRoutes);
|
|
|
|
/**
|
|
* API 404 for all other routes
|
|
*
|
|
* ALL /api/*
|
|
*/
|
|
router.all(/(.+)/, (req, _, next) => {
|
|
req.params.page = req.params["0"];
|
|
next(new errs.ItemNotFoundError(req.params.page));
|
|
});
|
|
|
|
export default router;
|