{"version":3,"file":"chunk-preferences.JywkwODK.js","sources":["../../../Scripts/global/preferences.ts"],"sourcesContent":["interface Preferences extends IndexedType {\r\n sidebarOpened: boolean;\r\n}\r\n\r\nconst values: Preferences = {},\r\n cookieName = \"cmn.preferences\",\r\n cookieValue = decodeURIComponent(document.cookie.replace(new RegExp(\"(?:(?:^|.*;)\\\\s*\" + encodeURIComponent(cookieName).replace(/[\\-\\.\\+\\*]/g, \"\\\\$&\") + \"\\\\s*\\\\=\\\\s*([^;]*).*$)|^.*$\"), \"$1\")) || null;\r\n\r\nif (cookieValue) {\r\n for (const value of cookieValue.split(\"&\")) {\r\n let sections: any[] = value.split(\"=\");\r\n\r\n if (sections[1].match(/^(true)|(false)$/)) {\r\n sections[1] = sections[1].toLowerCase() === \"true\";\r\n } else if (!isNaN(sections[1])) {\r\n sections[1] = parseFloat(sections[1]);\r\n }\r\n\r\n values[sections[0]] = sections[1];\r\n }\r\n}\r\n\r\nexport const preferences: Preferences = new (class PreferenceImpl implements Preferences {\r\n get sidebarOpened() {\r\n return !!values.sidebarOpened;\r\n }\r\n\r\n set sidebarOpened(value: boolean) {\r\n values.sidebarOpened = value;\r\n\r\n PreferenceImpl.update();\r\n }\r\n\r\n static update() {\r\n let parts = [cookieName, \"=\"];\r\n\r\n for (const key in values) {\r\n if (values.hasOwnProperty(key)) {\r\n parts.push(`${key}=${values[key]}`);\r\n }\r\n }\r\n\r\n parts.push(\"; expires=Fri, 31 Dec 9999 23:59:59 GMT; path=/\");\r\n\r\n document.cookie = parts.join(\"\");\r\n }\r\n});\r\n\r\nexport function getCookieValue(cookieName: string) {\r\n const cookieValue = document.cookie\r\n .split('; ')\r\n .find((row) => row.startsWith(`${cookieName}=`));\r\n\r\n return cookieValue?.split('=')[1];\r\n}\r\n\r\nexport function setCookieValue(cookieName: string, cookieValue: string, expirationDays: number) {\r\n const date = new Date();\r\n date.setTime(date.getTime() + (expirationDays * 24 * 60 * 60 * 1000))\r\n const expires = \"expires=\" + date.toUTCString();\r\n document.cookie = `${cookieName}=${cookieValue};${expires};path=/`;\r\n}\r\n"],"names":["values","cookieName","cookieValue","value","sections","preferences","PreferenceImpl","parts","key","getCookieValue","row","setCookieValue","expirationDays","date","expires"],"mappings":"AAIA,MAAMA,EAA2B,CAAA,EAC7BC,EAAa,kBACbC,EAAc,mBAAmB,SAAS,OAAO,QAAQ,IAAI,OAAO,mBAAqB,mBAAmBD,CAAU,EAAE,QAAQ,cAAe,MAAM,EAAI,6BAA6B,EAAG,IAAI,CAAC,GAAK,KAEvM,GAAIC,EACA,UAAWC,KAASD,EAAY,MAAM,GAAG,EAAG,CACpC,IAAAE,EAAkBD,EAAM,MAAM,GAAG,EAEjCC,EAAS,CAAC,EAAE,MAAM,kBAAkB,EACpCA,EAAS,CAAC,EAAIA,EAAS,CAAC,EAAE,gBAAkB,OACpC,MAAMA,EAAS,CAAC,CAAC,IACzBA,EAAS,CAAC,EAAI,WAAWA,EAAS,CAAC,CAAC,GAGxCJ,EAAOI,EAAS,CAAC,CAAC,EAAIA,EAAS,CAAC,CAAA,CAI3B,MAAAC,EAA2B,IAAK,MAAMC,CAAsC,CACrF,IAAI,eAAgB,CACT,MAAA,CAAC,CAACN,EAAO,aAAA,CAGpB,IAAI,cAAcG,EAAgB,CAC9BH,EAAO,cAAgBG,EAEvBG,EAAe,OAAO,CAAA,CAG1B,OAAO,QAAS,CACR,IAAAC,EAAQ,CAACN,EAAY,GAAG,EAE5B,UAAWO,KAAOR,EACVA,EAAO,eAAeQ,CAAG,GACzBD,EAAM,KAAK,GAAGC,CAAG,IAAIR,EAAOQ,CAAG,CAAC,EAAE,EAI1CD,EAAM,KAAK,iDAAiD,EAEnD,SAAA,OAASA,EAAM,KAAK,EAAE,CAAA,CAEvC,EAEO,SAASE,EAAeR,EAAoB,CAK/C,OAJoB,SAAS,OACxB,MAAM,IAAI,EACV,KAAMS,GAAQA,EAAI,WAAW,GAAGT,CAAU,GAAG,CAAC,GAE/B,MAAM,GAAG,EAAE,CAAC,CACpC,CAEgB,SAAAU,EAAeV,EAAoBC,EAAqBU,EAAwB,CACtF,MAAAC,MAAW,KACZA,EAAA,QAAQA,EAAK,QAAQ,EAAKD,EAAiB,GAAK,GAAK,GAAK,GAAK,EAC9D,MAAAE,EAAU,WAAaD,EAAK,YAAY,EAC9C,SAAS,OAAS,GAAGZ,CAAU,IAAIC,CAAW,IAAIY,CAAO,SAC7D"}