{"version":3,"file":"themes_init.min.js","names":["darkThemeClass","darkTheme","darkThemeItem","lightTheme","lightThemeItem","styleCookie","applyStyleSheet","theme","document","documentElement","classList","add","remove","item","getElementById","active","readCookie","name","nameEQ","ca","cookie","split","c","charAt","substring","length","indexOf","readSystemDefault","window","matchMedia","matches","cookieValue"],"sources":["../../dashboard/ts/core/themes_init.ts"],"sourcesContent":["// Copyright 2019 Istio Authors\r//\r// Licensed under the Apache License, Version 2.0 (the \"License\");\r// you may not use this file except in compliance with the License.\r// You may obtain a copy of the License at\r//\r// http://www.apache.org/licenses/LICENSE-2.0\r//\r// Unless required by applicable law or agreed to in writing, software\r// distributed under the License is distributed on an \"AS IS\" BASIS,\r// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r// See the License for the specific language governing permissions and\r// limitations under the License.\r\rconst darkThemeClass = \"dark-theme\";\rconst darkTheme = \"Dark Theme\";\rconst darkThemeItem = \"dark-theme-item\";\rconst lightTheme = \"Light Theme\";\rconst lightThemeItem = \"light-theme-item\";\rconst styleCookie = \"style\";\r\rfunction applyStyleSheet(theme: string | null): void {\r // convert legacy cookie values\r if (theme === \"dark\") {\r theme = darkTheme;\r } else if (theme === \"light\") {\r theme = lightTheme;\r }\r\r if (theme === darkTheme) {\r document.documentElement.classList.add(darkThemeClass);\r } else {\r document.documentElement.classList.remove(darkThemeClass);\r }\r\r // set the active theme menu item\r\r let item = document.getElementById(lightThemeItem);\r if (item) {\r if (theme === darkTheme) {\r item.classList.remove(active);\r } else {\r item.classList.add(active);\r }\r }\r\r item = document.getElementById(darkThemeItem);\r if (item) {\r if (theme === darkTheme) {\r item.classList.add(active);\r } else {\r item.classList.remove(active);\r }\r }\r}\r\rfunction readCookie(name: string): string | null {\r const nameEQ = name + \"=\";\r const ca = document.cookie.split(\";\");\r for (let c of ca) {\r while (c.charAt(0) === \" \") {\r c = c.substring(1, c.length);\r }\r\r if (c.indexOf(nameEQ) === 0) {\r return c.substring(nameEQ.length, c.length);\r }\r }\r return null;\r}\r\rfunction readSystemDefault(): string | null {\r if (window.matchMedia(\"(prefers-color-scheme: dark)\").matches) {\r return darkTheme;\r } else if (window.matchMedia(\"(prefers-color-scheme: light)\").matches) {\r return lightTheme;\r }\r return null;\r}\r\rlet cookieValue = readCookie(styleCookie);\rif (cookieValue === null) {\r cookieValue = readSystemDefault();\r}\rapplyStyleSheet(cookieValue);\r"],"mappings":"kBAcM,CAAAA,cAAc,CAAG,YAAY,CAC7BC,SAAS,CAAG,YAAY,CACxBC,aAAa,CAAG,iBAAiB,CACjCC,UAAU,CAAG,aAAa,CAC1BC,cAAc,CAAG,kBAAkB,CACnCC,WAAW,CAAG,OAAO,CAE3B,QAAS,CAAAC,eAAeA,CAACC,CAAoB,EAE3B,MAAM,GAAhBA,CAAgB,CAChBA,CAAK,CAAGN,SAAS,CACA,OAAO,GAAjBM,CAAiB,GACxBA,CAAK,CAAGJ,UAAU,EAGlBI,CAAK,GAAKN,SAAS,CACnBO,QAAQ,CAACC,eAAe,CAACC,SAAS,CAACC,GAAG,CAACX,cAAc,CAAC,CAEtDQ,QAAQ,CAACC,eAAe,CAACC,SAAS,CAACE,MAAM,CAACZ,cAAc,CAAC,CAK7D,GAAI,CAAAa,CAAI,CAAGL,QAAQ,CAACM,cAAc,CAACV,cAAc,CAAC,CAC9CS,CAAI,GACAN,CAAK,GAAKN,SAAS,CACnBY,CAAI,CAACH,SAAS,CAACE,MAAM,CAACG,MAAM,CAAC,CAE7BF,CAAI,CAACH,SAAS,CAACC,GAAG,CAACI,MAAM,CAAC,EAIlCF,CAAI,CAAGL,QAAQ,CAACM,cAAc,CAACZ,aAAa,CAAC,CACzCW,CAAI,GACAN,CAAK,GAAKN,SAAS,CACnBY,CAAI,CAACH,SAAS,CAACC,GAAG,CAACI,MAAM,CAAC,CAE1BF,CAAI,CAACH,SAAS,CAACE,MAAM,CAACG,MAAM,CAAC,CAGzC,CAEA,QAAS,CAAAC,UAAUA,CAACC,CAAY,OACtB,CAAAC,CAAM,CAAGD,CAAI,CAAG,GAAG,CACnBE,CAAE,CAAGX,QAAQ,CAACY,MAAM,CAACC,KAAK,CAAC,GAAG,CAAC,CACrC,IAAK,GAAI,CAAAC,CAAC,GAAI,CAAAH,CAAE,CAAE,MACS,GAAG,GAAnBG,CAAC,CAACC,MAAM,CAAC,CAAC,CAAS,EACtBD,CAAC,CAAGA,CAAC,CAACE,SAAS,CAAC,CAAC,CAAEF,CAAC,CAACG,MAAM,CAAC,CAGhC,GAA0B,CAAC,GAAvBH,CAAC,CAACI,OAAO,CAACR,CAAM,CAAO,CACvB,MAAO,CAAAI,CAAC,CAACE,SAAS,CAACN,CAAM,CAACO,MAAM,CAAEH,CAAC,CAACG,MAAM,EAGlD,MAAO,KACX,CAEA,QAAS,CAAAE,iBAAiBA,CAAA,EACtB,GAAIC,MAAM,CAACC,UAAU,CAAC,8BAA8B,CAAC,CAACC,OAAO,CACzD,MAAO,CAAA7B,SAAS,CAGnB,MAFU,CAAA2B,MAAM,CAACC,UAAU,CAAC,+BAA+B,CAAC,CAACC,OAAO,CAC1D3B,UAAU,CAEd,IACX,CAEA,GAAI,CAAA4B,WAAW,CAAGf,UAAU,CAACX,WAAW,CAAC,CACrB,IAAI,GAApB0B,WAAoB,GACpBA,WAAW,CAAGJ,iBAAiB,EAAE,EAErCrB,eAAe,CAACyB,WAAW,CAAC","ignoreList":[]}