mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-12-11 20:35:18 +01:00
* Extract Mode enum out of UI and into its own file Reduces circular imports from 909 to 773 * Move around utility files Reduces cyclical dependencies from 773 to 765 * Remove starterColors and bypassLogin from battle-scene Reduces cyclical dependencies from 765 to 623 * Fix test runner error * Update import for bypassLogin in test * Update mocks for utils in tests * Fix broken tests * Update selectWithTera override * Update path for utils in ab-attr.ts * Update path for utils in ability-class.ts * Fix utils import path in healer.test.ts
37 lines
1.4 KiB
TypeScript
37 lines
1.4 KiB
TypeScript
import { isBeta } from "./utility-vars";
|
|
|
|
export function setCookie(cName: string, cValue: string): void {
|
|
const expiration = new Date();
|
|
expiration.setTime(new Date().getTime() + 3600000 * 24 * 30 * 3 /*7*/);
|
|
document.cookie = `${cName}=${cValue};Secure;SameSite=Strict;Domain=${window.location.hostname};Path=/;Expires=${expiration.toUTCString()}`;
|
|
}
|
|
|
|
export function removeCookie(cName: string): void {
|
|
if (isBeta) {
|
|
document.cookie = `${cName}=;Secure;SameSite=Strict;Domain=pokerogue.net;Path=/;Max-Age=-1`; // we need to remove the cookie from the main domain as well
|
|
}
|
|
|
|
document.cookie = `${cName}=;Secure;SameSite=Strict;Domain=${window.location.hostname};Path=/;Max-Age=-1`;
|
|
document.cookie = `${cName}=;Secure;SameSite=Strict;Path=/;Max-Age=-1`; // legacy cookie without domain, for older cookies to prevent a login loop
|
|
}
|
|
|
|
export function getCookie(cName: string): string {
|
|
// check if there are multiple cookies with the same name and delete them
|
|
if (document.cookie.split(";").filter(c => c.includes(cName)).length > 1) {
|
|
removeCookie(cName);
|
|
return "";
|
|
}
|
|
const name = `${cName}=`;
|
|
const ca = document.cookie.split(";");
|
|
for (let i = 0; i < ca.length; i++) {
|
|
let c = ca[i];
|
|
while (c.charAt(0) === " ") {
|
|
c = c.substring(1);
|
|
}
|
|
if (c.indexOf(name) === 0) {
|
|
return c.substring(name.length, c.length);
|
|
}
|
|
}
|
|
return "";
|
|
}
|