Spaces:
Sleeping
Sleeping
File size: 747 Bytes
69698fb | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | export const ADMIN_COOKIE = "admin_session";
export const SESSION_MAX_AGE = 60 * 60 * 12;
function attributes(isHttps: boolean, maxAge: number) {
const parts = [`Path=/`, `Max-Age=${maxAge}`, "HttpOnly"];
if (isHttps) {
parts.push("Secure", "SameSite=None", "Partitioned");
} else {
parts.push("SameSite=Lax");
}
return parts.join("; ");
}
export function setAdminSessionCookie(headers: Headers, value: string, isHttps: boolean) {
headers.append(
"set-cookie",
`${ADMIN_COOKIE}=${encodeURIComponent(value)}; ${attributes(isHttps, SESSION_MAX_AGE)}`
);
}
export function clearAdminSessionCookie(headers: Headers, isHttps: boolean) {
headers.append("set-cookie", `${ADMIN_COOKIE}=; ${attributes(isHttps, 0)}`);
}
|