Define cookie TTLs as constants
This commit is contained in:
parent
0ba926d20c
commit
921a3efbfd
2 changed files with 34 additions and 11 deletions
|
|
@ -12,4 +12,23 @@ const cookieNames = {
|
||||||
SESSION_KEY: "skey",
|
SESSION_KEY: "skey",
|
||||||
};
|
};
|
||||||
|
|
||||||
export { cookieNames };
|
const cookieExpirations = {
|
||||||
|
SESSION_ID: convertToSeconds({ minutes: 30 }),
|
||||||
|
DXDEV: convertToSeconds({ years: 1 }),
|
||||||
|
FUNNEL_USER_ID: convertToSeconds({ weeks: 1 }),
|
||||||
|
FUNNEL_SESSION_KEY: convertToSeconds({ minutes: 30 }),
|
||||||
|
};
|
||||||
|
|
||||||
|
export { cookieNames, cookieExpirations };
|
||||||
|
|
||||||
|
function convertToSeconds({ years, months, weeks, days, hours, minutes, seconds }) {
|
||||||
|
let total = seconds ?? 0;
|
||||||
|
total += (minutes ?? 0) * 60;
|
||||||
|
total += (hours ?? 0) * 60 * 60;
|
||||||
|
total += (days ?? 0) * 24 * 60 * 60;
|
||||||
|
total += (weeks ?? 0) * 7 * 24 * 60 * 60;
|
||||||
|
total += (months ?? 0) * 30 * 24 * 60 * 60;
|
||||||
|
total += (years ?? 0) * 365 * 24 * 60 * 60;
|
||||||
|
|
||||||
|
return total;
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
import { cookieNames } from "@/constants/cookie-names";
|
import { cookieNames, cookieExpirations } from "@/constants/cookie-names";
|
||||||
import store from "@/store";
|
import store from "@/store";
|
||||||
import { applicationConfig } from "@/constants/application-config";
|
import { applicationConfig } from "@/constants/application-config";
|
||||||
|
|
||||||
|
|
@ -84,7 +84,7 @@ export function regenerateDeviceId() {
|
||||||
{
|
{
|
||||||
[cookieNames.DXDEV]: `did=${crypto.randomUUID()}`,
|
[cookieNames.DXDEV]: `did=${crypto.randomUUID()}`,
|
||||||
},
|
},
|
||||||
{ maxAge: 365 * 24 * 60 * 60 }
|
{ maxAge: cookieExpirations.DXDEV }
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -105,7 +105,7 @@ export function regenerateUserId() {
|
||||||
{
|
{
|
||||||
[cookieNames.FUNNEL_USER_ID]: crypto.randomUUID(),
|
[cookieNames.FUNNEL_USER_ID]: crypto.randomUUID(),
|
||||||
},
|
},
|
||||||
{ maxAge: 7 * 24 * 60 * 60 }
|
{ maxAge: cookieExpirations.FUNNEL_USER_ID }
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -129,7 +129,7 @@ export function setSessionKeyIfUnset(value) {
|
||||||
{
|
{
|
||||||
[cookieNames.FUNNEL_SESSION_KEY]: value,
|
[cookieNames.FUNNEL_SESSION_KEY]: value,
|
||||||
},
|
},
|
||||||
{ maxAge: 30 * 60 }
|
{ maxAge: cookieExpirations.FUNNEL_SESSION_KEY }
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -153,7 +153,7 @@ export function setSessionIdIfUnset(value) {
|
||||||
{
|
{
|
||||||
[cookieNames.SESSION_ID]: value,
|
[cookieNames.SESSION_ID]: value,
|
||||||
},
|
},
|
||||||
{ maxAge: 30 * 60 }
|
{ maxAge: cookieExpirations.SESSION_ID }
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -162,7 +162,9 @@ export function setSessionIdIfUnset(value) {
|
||||||
Updates session ID cookie with new expiration date
|
Updates session ID cookie with new expiration date
|
||||||
*/
|
*/
|
||||||
export function updateSessionIdCookie() {
|
export function updateSessionIdCookie() {
|
||||||
createOrUpdateCookie(cookieNames.SESSION_ID, getSessionIdValue(), { maxAge: 60 * 30 });
|
createOrUpdateCookie(cookieNames.SESSION_ID, getSessionIdValue(), {
|
||||||
|
maxAge: cookieExpirations.SESSION_ID,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
export function setCookieProperties(
|
export function setCookieProperties(
|
||||||
|
|
@ -196,10 +198,12 @@ export function areAllSessionCookiesSet() {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function refreshSessionExpiration() {
|
export function refreshSessionExpiration() {
|
||||||
refreshCookieExpiration(cookieNames.SESSION_ID, 30 * 60);
|
console.log(cookieExpirations);
|
||||||
refreshCookieExpiration(cookieNames.DXDEV, 365 * 24 * 60 * 60);
|
|
||||||
refreshCookieExpiration(cookieNames.FUNNEL_USER_ID, 7 * 24 * 60 * 60);
|
refreshCookieExpiration(cookieNames.SESSION_ID, cookieExpirations.SESSION_ID);
|
||||||
refreshCookieExpiration(cookieNames.FUNNEL_SESSION_KEY, 30 * 60);
|
refreshCookieExpiration(cookieNames.DXDEV, cookieExpirations.DXDEV);
|
||||||
|
refreshCookieExpiration(cookieNames.FUNNEL_USER_ID, cookieExpirations.FUNNEL_USER_ID);
|
||||||
|
refreshCookieExpiration(cookieNames.FUNNEL_SESSION_KEY, cookieExpirations.FUNNEL_SESSION_KEY);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function refreshCookieExpiration(name, expirationTime) {
|
export function refreshCookieExpiration(name, expirationTime) {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue