aegis-auth
Version:
A credentials-based auth solution for Next.js (and other Node projects) with IP rate-limiting, account lockouts, and sessions in DB.
23 lines • 914 B
JavaScript
import { parse as parseCookie, serialize as serializeCookie } from "cookie";
export function createSessionCookie({ sessionToken, config, }) {
return serializeCookie(config.session.cookieName, sessionToken, {
maxAge: config.session.maxAgeSeconds,
secure: config.session.cookieSecure,
httpOnly: config.session.cookieHttpOnly,
sameSite: config.session.cookieSameSite,
path: "/",
});
}
export function clearSessionCookie({ config, }) {
return serializeCookie(config.session.cookieName, "", {
maxAge: 0,
secure: config.session.cookieSecure,
httpOnly: config.session.cookieHttpOnly,
sameSite: config.session.cookieSameSite,
});
}
export function getSessionToken({ cookieHeader, config, }) {
const sessionToken = parseCookie(cookieHeader)[config.session.cookieName];
return sessionToken;
}
//# sourceMappingURL=session.js.map