{"version":3,"sources":["ts/dbs.styleSwitcher.ts"],"names":["DBS","StyleSwitcher","SetActiveStyleSheet","title","a","let","i","document","getElementsByTagName","_a","getAttribute","indexOf","disabled","StylesheetOnLoad","cookie","name","nameEq","ca","split","length","c","charAt","substring","_b","StylesheetOnUnload","date","createCookie","days","expires","Date","setTime","getTime","toUTCString","value","window","addEventListener"],"mappings":"aAEA,IAAOA,IAAP,CAAA,SAAOA,GAAI,IAAAC,GAAAA,EAAAD,EAAAC,gBAAAD,EAAAC,cAAa,KAmEJC,oBAAhB,SAAoCC,G,MAG5BC,EADJC,IAAIC,EAEJ,IAAKA,EAAI,EAAIF,EAAIG,SAASC,qBAAqB,MAAM,EAAEF,GAAKA,CAAC,GAET,CAAC,KAA7C,OAAAG,EAAAL,EAAEM,aAAa,KAAK,GAAC,KAAA,EAAAD,EAAEE,QAAQ,OAAO,IAAYP,EAAEM,aAAa,OAAO,IAExEN,EAAEQ,SAAW,CAAA,EACTR,EAAEM,aAAa,OAAO,IAAMP,KAE5BC,EAAEQ,SAAW,CAAA,EAI7B,EAEgBX,EAAAY,iBAAhB,WAEI,IACMV,GAAQW,EArFlB,SAAoBC,GAEhB,IAAMC,EAASD,EAAO,IAChBE,EAAKV,SAASO,OAAOI,MAAM,GAAG,EACpC,IAAKb,IAAIC,EAAI,EAAGA,EAAIW,EAAGE,OAAQb,CAAC,GAChC,CACID,IAAIe,EAAIH,EAAGX,GACX,KAAuB,MAAhBc,EAAEC,OAAO,CAAC,GAEbD,EAAIA,EAAEE,UAAU,EAAGF,EAAED,MAAM,EAE/B,GAA0B,IAAtBC,EAAET,QAAQK,CAAM,EAEhB,OAAOI,EAAEE,UAAUN,EAAOG,OAAQC,EAAED,MAAM,C,CAGlD,OAAO,IACX,EAmE8B,OAAO,IA/CrC,W,MAGQf,EADJC,IAAIC,EAEJ,IAAKA,EAAI,EAAIF,EAAIG,SAASC,qBAAqB,MAAM,EAAEF,GAAKA,CAAC,GAEzD,GAAgD,CAAC,KAA7C,OAAAG,EAAAL,EAAEM,aAAa,KAAK,GAAC,KAAA,EAAAD,EAAEE,QAAQ,OAAO,IAAsD,CAAC,KAA3C,OAAAY,EAAAnB,EAAEM,aAAa,KAAK,GAAC,KAAA,EAAAa,EAAEZ,QAAQ,KAAK,IAAYP,EAAEM,aAAa,OAAO,EAExH,OAAON,EAAEM,aAAa,OAAO,EAGrC,OAAO,IACX,EAsC8C,EAC1CT,EAAcC,oBAAoBC,CAAK,CAC3C,EAEgBF,EAAAuB,mBAAhB,WAEI,IApEUC,EAoEJtB,EA1CV,W,MAGQC,EADJC,IAAIC,EAEJ,IAAKA,EAAI,EAAIF,EAAIG,SAASC,qBAAqB,MAAM,EAAEF,GAAKA,CAAC,GAEzD,GAAgD,CAAC,KAA7C,OAAAG,EAAAL,EAAEM,aAAa,KAAK,GAAC,KAAA,EAAAD,EAAEE,QAAQ,OAAO,IAAYP,EAAEM,aAAa,OAAO,GAAK,CAACN,EAAEQ,SAEhF,OAAOR,EAAEM,aAAa,OAAO,EAGrC,OAAO,IACX,EA8BqC,EACjC,GAAIP,EAEAuB,CAAAA,IA7EcX,EA6ED,QAAbW,IA7E2CC,EA6Ed,IA3EjCtB,IAAIuB,EAMAA,EAJAD,IAEMF,EAAO,IAAII,MACZC,QAAQL,EAAKM,QAAO,EAAa,GAAPJ,EAAY,GAAK,GAAK,GAAK,EAChD,aAAaF,EAAKO,YAAW,GAI7B,GAGdzB,SAASO,OAASC,EAAO,IAAMkB,EAAQL,EAAU,UA8Db,CAExC,CACH,EArGM5B,IAAAA,KAAG,EAAA,EAuGVkC,OAAOC,iBAAiB,OAAQnC,IAAIC,cAAcY,gBAAgB,EAClEqB,OAAOC,iBAAiB,WAAYnC,IAAIC,cAAcuB,kBAAkB","file":"dbs.styleSwitcher.js","sourcesContent":["/// \r\n\r\nmodule DBS.StyleSwitcher\r\n{\r\n function readCookie(name: string): string | null\r\n {\r\n const nameEq = name + \"=\";\r\n const ca = document.cookie.split(\";\");\r\n for (let i = 0; i < ca.length; i++)\r\n {\r\n let c = ca[i];\r\n while (c.charAt(0) === \" \")\r\n {\r\n c = c.substring(1, c.length);\r\n }\r\n if (c.indexOf(nameEq) === 0)\r\n {\r\n return c.substring(nameEq.length, c.length);\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n function createCookie(name: string, value: string, days: number)\r\n {\r\n let expires: string;\r\n\r\n if (days)\r\n {\r\n const date = new Date();\r\n date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));\r\n expires = `; expires=${date.toUTCString()}`;\r\n }\r\n else\r\n {\r\n expires = \"\";\r\n }\r\n\r\n document.cookie = name + \"=\" + value + expires + \"; path=/\";\r\n }\r\n\r\n function getPreferredStyleSheet(): string | null\r\n {\r\n let i: number;\r\n let a: HTMLLinkElement;\r\n for (i = 0; (a = document.getElementsByTagName(\"link\")[i]); i++)\r\n {\r\n if (a.getAttribute(\"rel\")?.indexOf(\"style\") !== -1 && a.getAttribute(\"rel\")?.indexOf(\"alt\") === -1 && a.getAttribute(\"title\"))\r\n {\r\n return a.getAttribute(\"title\");\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n function getActiveStyleSheet(): string | null\r\n {\r\n let i: number;\r\n let a: HTMLLinkElement;\r\n for (i = 0; (a = document.getElementsByTagName(\"link\")[i]); i++)\r\n {\r\n if (a.getAttribute(\"rel\")?.indexOf(\"style\") !== -1 && a.getAttribute(\"title\") && !a.disabled)\r\n {\r\n return a.getAttribute(\"title\");\r\n }\r\n }\r\n return null;\r\n }\r\n\r\n export function SetActiveStyleSheet(title: any): void\r\n {\r\n let i: number;\r\n let a: HTMLLinkElement;\r\n for (i = 0; (a = document.getElementsByTagName(\"link\")[i]); i++)\r\n {\r\n if (a.getAttribute(\"rel\")?.indexOf(\"style\") !== -1 && a.getAttribute(\"title\"))\r\n {\r\n a.disabled = true;\r\n if (a.getAttribute(\"title\") === title)\r\n {\r\n a.disabled = false;\r\n }\r\n }\r\n }\r\n }\r\n\r\n export function StylesheetOnLoad(): void\r\n {\r\n const cookie = readCookie(\"style\");\r\n const title = cookie\r\n ? cookie\r\n : getPreferredStyleSheet();\r\n StyleSwitcher.SetActiveStyleSheet(title);\r\n }\r\n\r\n export function StylesheetOnUnload(): void\r\n {\r\n const title = getActiveStyleSheet();\r\n if (title)\r\n {\r\n createCookie(\"style\", title, 365);\r\n }\r\n }\r\n}\r\n\r\nwindow.addEventListener(\"load\", DBS.StyleSwitcher.StylesheetOnLoad);\r\nwindow.addEventListener(\"pagehide\", DBS.StyleSwitcher.StylesheetOnUnload);"]}