fictioneer/js/head-inline.min.js
2024-03-06 14:42:10 +01:00

1 line
1.8 KiB
JavaScript

!function(){if("undefined"!=typeof localStorage){const t=localStorage.getItem("fcnLightmode"),e=document.documentElement;let a,o,s=localStorage.getItem("fcnSiteSettings");if(s&&(s=JSON.parse(s))&&null!==s&&"object"==typeof s){Object.entries(s).forEach((t=>{switch(t[0]){case"minimal":e.classList.toggle("minimal",t[1]);break;case"darken":a=s.darken,o=a>=0?1+Math.pow(a,2):1-Math.pow(a,2),e.style.setProperty("--darken",`(${o} + var(--lightness-offset))`);break;case"saturation":a=s.saturation,o=a>=0?1+Math.pow(a,2):1-Math.pow(a,2),e.style.setProperty("--saturation",`(${o} + var(--saturation-offset))`);break;case"font-lightness":a=s["font-lightness"],o=a>=0?1+Math.pow(a,2):1-Math.pow(a,2),e.style.setProperty("--font-lightness",`(${o} + var(--font-lightness-offset))`);break;case"font-saturation":a=s["font-saturation"],o=a>=0?1+Math.pow(a,2):1-Math.pow(a,2),e.style.setProperty("--font-saturation",`(${o} + var(--font-saturation-offset))`);break;case"hue-rotate":o=Number.isInteger(s["hue-rotate"])?s["hue-rotate"]:0,e.style.setProperty("--hue-rotate",`(${o}deg + var(--hue-offset))`);break;default:e.classList.toggle(`no-${t[0]}`,!t[1])}})),e.dataset.fontWeight=s.hasOwnProperty("font-weight")?s["font-weight"]:"default",e.dataset.theme=s.hasOwnProperty("site-theme")&&!e.dataset.forceChildTheme?s["site-theme"]:"default";let t=getComputedStyle(document.documentElement).getPropertyValue("--theme-color-base").trim().split(" ");const r=s.darken?s.darken:0,n=s.saturation?s.saturation:0,i=s["hue-rotate"]?s["hue-rotate"]:0,h=r>=0?1+Math.pow(r,2):1-Math.pow(r,2);s=n>=0?1+Math.pow(n,2):1-Math.pow(n,2),t=`hsl(${(parseInt(t[0])+i)%360}deg ${(parseInt(t[1])*s).toFixed(2)}% ${(parseInt(t[2])*h).toFixed(2)}%)`,document.querySelector("meta[name=theme-color]").setAttribute("content",t)}t&&(e.dataset.mode="true"==t?"light":"dark")}}();