UNPKG

@transkripid/flowbite-react

Version:

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

75 lines (74 loc) 2.58 kB
import { c as k } from "react/compiler-runtime"; import { useState as v, useEffect as b } from "react"; import { isClient as w } from "../helpers/is-client.mjs"; import { useWatchLocalStorageValue as D } from "./use-watch-localstorage-value.mjs"; import { getThemeMode as g } from "../theme-store/index.mjs"; const S = "light", _ = "flowbite-theme-mode", E = "flowbite-theme-mode-sync", F = () => { const e = k(18); let n; e[0] === Symbol.for("react.memo_cache_sentinel") ? (n = T(g()), e[0] = n) : n = e[0]; const [t, s] = v(n); let l; e[1] !== t ? (l = () => { L(t), y(t); }, e[1] = t, e[2] = l) : l = e[2]; let m; e[3] === Symbol.for("react.memo_cache_sentinel") ? (m = [], e[3] = m) : m = e[3], b(l, m), D({ key: _, onChange(o) { if (o) return c(o); } }); let r; e[4] === Symbol.for("react.memo_cache_sentinel") ? (r = (o) => s(o), e[4] = r) : r = e[4], I(r); const c = (o) => { s(o), L(o), y(o), document.dispatchEvent(new CustomEvent(E, { detail: o })); }; let i; e[5] !== c || e[6] !== t ? (i = () => { let o = t; o === "auto" && (o = p(o)), o = o === "dark" ? "light" : "dark", c(o); }, e[5] = c, e[6] = t, e[7] = i) : i = e[7]; const u = i; let a; e[8] !== c ? (a = () => { const o = g() ?? S; c(o); }, e[8] = c, e[9] = a) : a = e[9]; const M = a; let d; e[10] !== t ? (d = p(t), e[10] = t, e[11] = d) : d = e[11]; const h = c; let f; return e[12] !== M || e[13] !== t || e[14] !== d || e[15] !== h || e[16] !== u ? (f = { mode: t, computedMode: d, setMode: h, toggleMode: u, clearMode: M }, e[12] = M, e[13] = t, e[14] = d, e[15] = h, e[16] = u, e[17] = f) : f = e[17], f; }, I = (e) => { const n = k(3); let t; n[0] !== e ? (t = () => { const l = function(r) { const c = r.detail; e(c); }; return document.addEventListener(E, l), () => document.removeEventListener(E, l); }, n[0] = e, n[1] = t) : t = n[1]; let s; n[2] === Symbol.for("react.memo_cache_sentinel") ? (s = [], n[2] = s) : s = n[2], b(t, s); }, L = (e) => localStorage.setItem(_, e), y = (e) => { p(e) === "dark" ? document.documentElement.classList.add("dark") : document.documentElement.classList.remove("dark"); }, T = (e) => w() ? localStorage.getItem(_) ?? e ?? S : S, p = (e) => e === "auto" ? O() : e, O = () => { var e; return (e = window.matchMedia) != null && e.call(window, "(prefers-color-scheme: dark)").matches ? "dark" : "light"; }; export { F as useThemeMode }; //# sourceMappingURL=use-theme-mode.mjs.map