UNPKG

@transkripid/flowbite-react

Version:

Official React components built for Flowbite and Tailwind CSS - Transkrip.id fork

1 lines 2.34 kB
{"version":3,"file":"ThemeModeScript.mjs","sources":["../../../src/components/ThemeModeScript/ThemeModeScript.tsx"],"sourcesContent":["import React from 'react';\nimport type { ThemeMode } from '../../hooks/use-theme-mode';\n\nexport interface ThemeModeScriptProps extends React.ComponentPropsWithoutRef<'script'> {\n mode?: ThemeMode;\n}\n\nexport const ThemeModeScript = ({ mode, ...others }: ThemeModeScriptProps) => {\n return (\n <script\n {...others}\n data-flowbite-theme-mode-script\n dangerouslySetInnerHTML={{\n __html: getScript({ mode, defaultMode: 'light', localStorageKey: 'flowbite-theme-mode' }),\n }}\n />\n );\n};\n\nfunction getScript({\n mode,\n defaultMode,\n localStorageKey,\n}: {\n mode?: ThemeMode;\n defaultMode: ThemeMode;\n localStorageKey: string;\n}) {\n return `\n try {\n const mode = window.localStorage.getItem('${localStorageKey}') ?? '${mode}' ?? '${defaultMode}';\n const computedMode =\n mode === 'auto' ? (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light') : mode;\n\n if (computedMode === 'dark') {\n document.documentElement.classList.add('dark');\n } else {\n document.documentElement.classList.remove('dark');\n }\n } catch (e) {}\n `;\n}\n"],"names":["ThemeModeScript","t0","$","_c","mode","others","t1","getScript","defaultMode","localStorageKey","t2","__html","t3"],"mappings":";;AAOO,MAAMA,IAAkBC,CAAAA,MAAA;AAAAC,QAAAA,IAAAC,EAAA,EAAA;AAAAC,MAAAA,GAAAC;AAAAH,EAAAA,SAAAD,KAAC;AAAA,IAAAG,MAAAA;AAAAA,IAAA,GAAAC;AAAAA,EAAAJ,IAAAA,GAAyCC,OAAAD,GAAAC,OAAAE,GAAAF,OAAAG,MAAAD,IAAAF,EAAA,CAAA,GAAAG,IAAAH,EAAA,CAAA;AAAAI,MAAAA;AAAAJ,EAAAA,SAAAE,KAMzDE,IAAAC,EAAA;AAAA,IAAAH,MAAAA;AAAAA,IAAAI,aAA+B;AAAA,IAAOC,iBAAmB;AAAA,EAAA,CAAuB,GAACP,OAAAE,GAAAF,OAAAI,KAAAA,IAAAJ,EAAA,CAAA;AAAAQ,MAAAA;AAAAR,EAAAA,SAAAI,KADlEI,IAAA;AAAA,IAAAC,QACfL;AAAAA,EAAAA,GACTJ,OAAAI,GAAAJ,OAAAQ,KAAAA,IAAAR,EAAA,CAAA;AAAAU,MAAAA;AAAA,SAAAV,EAAAG,CAAAA,MAAAA,KAAAH,SAAAQ,KALHE,sBAME,UAAA,EAAA,GALIP,GACJ,mCAA+B,IACN,yBAAAK,EAGzB,CAAA,GAAAR,OAAAG,GAAAH,OAAAQ,GAAAR,OAAAU,KAAAA,IAAAV,EAAA,CAAA,GANFU;AAME;AAIN,SAASL,EAAU;AAAA,EACjBH,MAAAA;AAAAA,EACAI,aAAAA;AAAAA,EACAC,iBAAAA;AAKF,GAAG;AACO,SAAA;AAAA;AAAA,kDAEwCA,CAAgB,UAASL,CAAK,SAAQI,CAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWpG;"}