@fdm-monster/server
Version:
FDM Monster is a bulk OctoPrint, Klipper, PrusaLink and BambuLab manager to set up, configure and monitor 3D printers. Our aim is to provide neat overview over your farm.
22 lines (21 loc) • 757 B
JavaScript
import { ForbiddenError } from "../exceptions/runtime.exceptions.js";
import { inject } from "awilix-express";
//#region src/middleware/demo.middleware.ts
const demoUserNotAllowed = inject((userService, configService, loggerFactory) => {
const logger = loggerFactory(demoUserNotAllowed.name);
return async (req, res, next) => {
if (!configService.isDemoMode()) {
next();
return;
}
const demoUserId = await userService.getDemoUserId();
if (req.user?.id === demoUserId) {
logger.warn("Demo user attempted to access restricted resource", req.path);
throw new ForbiddenError("Demo user attempted to access restricted resource");
}
next();
};
});
//#endregion
export { demoUserNotAllowed };
//# sourceMappingURL=demo.middleware.js.map