/** * Parse request cookies * ============================================================================== * * @description This function takes in a request object and returns the cookies as a JS object */ export default function (): { [s: string]: any } | null { /** * Check inputs * * @description Check inputs */ const cookieString: string | null = document.cookie; if (!cookieString || typeof cookieString !== "string") { return null; } const cookieSplitArray: string[] = cookieString.split(";"); let cookieObject: { [s: string]: any } = {}; cookieSplitArray.forEach((keyValueString) => { const [key, value] = keyValueString.split("="); if (key && typeof key == "string") { cookieObject[key.replace(/^ +| +$/, "")] = value && typeof value == "string" ? value.replace(/^ +| +$/, "") : null; } }); return cookieObject; }