@paroicms/server
Version:
The ParoiCMS server
22 lines • 1.04 kB
JavaScript
import express from "express";
import { wrapExpressRoute } from "../express/route-handler-wrapper.js";
import { authController, googleLoginCallbackController, googleLoginController, siteUrlController, } from "./oauth2-client.controller.js";
export async function createOauth2ClientMiddleware(authFqdn) {
const passport = (await import("./account-auth.strategy.js")).default;
const passportMiddleware = passport.initialize();
const router = express.Router();
router.get("/auth", wrapExpressRoute(authController));
router.get("/auth/google", wrapExpressRoute(googleLoginController));
router.get("/auth/google/callback", wrapExpressRoute(googleLoginCallbackController));
router.get("/auth/site-url/:redirectTo", wrapExpressRoute(siteUrlController));
return (req, res, next) => {
if (req.hostname !== authFqdn) {
next();
return;
}
passportMiddleware(req, res, () => {
router(req, res, next);
});
};
}
//# sourceMappingURL=oauth-middleware.js.map