Explorar el Código

rewrite data-color-scheme with an original script

Yuki Takei hace 3 años
padre
commit
ae99abab82
Se han modificado 1 ficheros con 7 adiciones y 0 borrados
  1. 7 0
      packages/app/src/components/Layout/RawLayout.tsx

+ 7 - 0
packages/app/src/components/Layout/RawLayout.tsx

@@ -47,12 +47,19 @@ export const RawLayout = ({ children, title, className }: Props): JSX.Element =>
     setBackgroundImageSrc(imgSrc);
   }, [growiTheme, colorScheme]);
 
+  const scriptToRewriteDataColorScheme = isClient() ? `
+    wrapper = document.getElementById('wrapper');
+    wrapper.setAttribute('data-color-scheme', '${resolvedThemeByAttributes}');
+  ` : '';
+
   return (
     <>
       <Head>
         <title>{title}</title>
         <meta charSet="utf-8" />
         <meta name="viewport" content="initial-scale=1.0, width=device-width" />
+        {/* set data-color-scheme immediately after load */}
+        <script>{scriptToRewriteDataColorScheme}</script>
       </Head>
       <ThemeProvider theme={growiTheme}>
         <div id="wrapper" className={classNames.join(' ')} data-color-scheme={colorScheme}>