diff --git a/docs/assets/search.js b/docs/assets/search.js index eb66621e..f8ff0ec1 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/functions/client_core_core.Core.html b/docs/functions/client_core_core.Core.html index 839d606e..73014318 100644 --- a/docs/functions/client_core_core.Core.html +++ b/docs/functions/client_core_core.Core.html @@ -9,4 +9,4 @@
export const Core = ({ t, nonce, k = "o" }: CoreProps) => {
// handle client side exceptions when script is not run. <- for client side apps like vite or CRA
if (typeof window !== "undefined" && !window.m) noFOUCScript(k);

const [{ m: mode, s: systemMode }, setThemeState] = useStore();

useEffect(() => {
// store global functions to local variables to avoid any interference
[media, updateDOM] = [m, u];
/** Updating media: prefers-color-scheme*/
media.addEventListener("change", () =>
setThemeState(state => ({ ...state, s: media.matches ? DARK : LIGHT })),
);
/** Sync the tabs */
addEventListener("storage", (e: StorageEvent): void => {
e.key === k && setThemeState(state => ({ ...state, m: e.newValue as ColorSchemePreference }));
});
}, []);

useEffect(() => {
const restoreTransitions = modifyTransition(t, nonce);
updateDOM(mode, systemMode);
restoreTransitions();
}, [systemMode, mode, t, nonce]);

return <Script {...{ n: nonce, k }} />;
};
-
+
diff --git a/docs/functions/client_core_no-fouc.noFOUCScript.html b/docs/functions/client_core_no-fouc.noFOUCScript.html index 90c4d87d..07ee7270 100644 --- a/docs/functions/client_core_no-fouc.noFOUCScript.html +++ b/docs/functions/client_core_no-fouc.noFOUCScript.html @@ -1,2 +1,2 @@ noFOUCScript | React18 Loaders

function to be injected in script tag for avoiding FOUC

-
+
diff --git a/docs/functions/client_switch_switch.Switch.html b/docs/functions/client_switch_switch.Switch.html index cd6ee234..8c88f752 100644 --- a/docs/functions/client_switch_switch.Switch.html +++ b/docs/functions/client_switch_switch.Switch.html @@ -5,7 +5,7 @@
-
export const Switch = ({
tag: Tag = "button",
size = 24,
skipSystem,
children,
...props
}: SwitchProps) => {
const [state, setState] = useStore();
/** toggle mode */
const handleModeSwitch = () => {
let index = modes.indexOf(state.m);
const n = modes.length;
if (skipSystem && index === n - 1) index = 0;
setState({
...state,
m: modes[(index + 1) % n],
});
};
if (children) {
return (
// @ts-expect-error -- too complex types
<Tag
suppressHydrationWarning
{...props}
data-testid="switch"
// skipcq: JS-0417
onClick={handleModeSwitch}>
{/* @ts-expect-error -> we are setting the CSS variable */}
<div className={styles.switch} style={{ "--size": `${size}px` }} />
{children}
</Tag>
);
}
return (
<Tag
// Hydration warning is caused when the data from localStorage differs from the default data provided while rendering on server
suppressHydrationWarning
{...props}
className={[props.className, styles.switch].join(" ")}
// @ts-expect-error -> we are setting the CSS variable
style={{ "--size": `${size}px` }}
data-testid="switch"
// skipcq: JS-0417 -> tradeoff between size and best practices
onClick={handleModeSwitch}
/>
);
}; +
export const Switch = ({
tag: Tag = "button",
size = 24,
skipSystem,
children,
...tagProps
}: SwitchProps) => {
const [{ m, s }, setState] = useStore();
const n = modes.length - (skipSystem ? 1 : 0);
/** toggle mode */
tagProps.onClick = () =>
setState({
s,
m: modes[(modes.indexOf(m) + 1) % n],
});

const className = styles.switch;
const style = { "--size": `${size}px` };

if (!children) {
tagProps.className += " " + className;
tagProps.style = { ...tagProps.style, ...style };
}

return (
// @ts-expect-error -- too complex types
<Tag suppressHydrationWarning {...tagProps} data-testid="switch">
{/* @ts-expect-error -> we are setting the CSS variable */}
{children && <div {...{ className, style }} />}
{children}
</Tag>
);
};
-
+
diff --git a/docs/functions/hooks_use-mode.useMode.html b/docs/functions/hooks_use-mode.useMode.html index 861344a9..b7a37b52 100644 --- a/docs/functions/hooks_use-mode.useMode.html +++ b/docs/functions/hooks_use-mode.useMode.html @@ -8,4 +8,4 @@
export const useMode = (): UseModeYeild => {
const [{ m, s }, setState] = useStore();
/** Set user preference */
return {
mode: m,
systemMode: s,
resolvedMode: (m === SYSTEM ? s : m) as ResolvedScheme,
setMode: (m: ColorSchemePreference) => setState({ s, m }),
};
};
-
+
diff --git a/docs/functions/utils.useStore.html b/docs/functions/utils.useStore.html index 0efac618..98c96e1a 100644 --- a/docs/functions/utils.useStore.html +++ b/docs/functions/utils.useStore.html @@ -1,2 +1,2 @@ useStore | React18 Loaders

local abstaction of RGS to avoid multiple imports

-
+
diff --git a/docs/interfaces/client_core_core.CoreProps.html b/docs/interfaces/client_core_core.CoreProps.html index b775a96f..8fc6cafc 100644 --- a/docs/interfaces/client_core_core.CoreProps.html +++ b/docs/interfaces/client_core_core.CoreProps.html @@ -1,16 +1,16 @@ -CoreProps | React18 Loaders
interface CoreProps {
    k?: string;
    nonce?: string;
    t?: string;
}

Properties

k? +CoreProps | React18 Loaders
interface CoreProps {
    k?: string;
    nonce?: string;
    t?: string;
}

Properties

Properties

k?: string

storageKey

'o'
 
-
nonce?: string

The nonce value for your Content Security Policy.

+
nonce?: string

The nonce value for your Content Security Policy.

''
 
-
t?: string

themeTransition: force apply CSS transition property to all the elements during theme switching. E.g., all .3s

+
t?: string

themeTransition: force apply CSS transition property to all the elements during theme switching. E.g., all .3s

'none'
 
-
+
diff --git a/docs/interfaces/client_switch_switch.SwitchProps.html b/docs/interfaces/client_switch_switch.SwitchProps.html index 600a5a9d..3fd1a897 100644 --- a/docs/interfaces/client_switch_switch.SwitchProps.html +++ b/docs/interfaces/client_switch_switch.SwitchProps.html @@ -1,10 +1,10 @@ -SwitchProps | React18 Loaders
interface SwitchProps {
    size?: number;
    skipSystem?: boolean;
    tag?: "button" | "div";
}

Hierarchy

Properties

size? +SwitchProps | React18 Loaders
interface SwitchProps {
    size?: number;
    skipSystem?: boolean;
    tag?: "button" | "div";
}

Hierarchy

Properties

size?: number

Diameter of the color switch

-
skipSystem?: boolean

Skip system colorScheme while toggling

-
tag?: "button" | "div"

html tag

+
skipSystem?: boolean

Skip system colorScheme while toggling

+
tag?: "button" | "div"

html tag

'button'
 
-
+
diff --git a/docs/interfaces/hooks_use-mode.UseModeYeild.html b/docs/interfaces/hooks_use-mode.UseModeYeild.html index edc49ee8..e9f2502b 100644 --- a/docs/interfaces/hooks_use-mode.UseModeYeild.html +++ b/docs/interfaces/hooks_use-mode.UseModeYeild.html @@ -1,5 +1,5 @@ -UseModeYeild | React18 Loaders
interface UseModeYeild {
    mode: ColorSchemePreference;
    resolvedMode: ResolvedScheme;
    setMode: (mode: ColorSchemePreference) => void;
    systemMode: ResolvedScheme;
}

Properties

mode +UseModeYeild | React18 Loaders
interface UseModeYeild {
    mode: ColorSchemePreference;
    resolvedMode: ResolvedScheme;
    setMode: (mode: ColorSchemePreference) => void;
    systemMode: ResolvedScheme;
}

Properties

resolvedMode: ResolvedScheme
setMode: (mode: ColorSchemePreference) => void
systemMode: ResolvedScheme
+

Properties

resolvedMode: ResolvedScheme
setMode: (mode: ColorSchemePreference) => void
systemMode: ResolvedScheme
diff --git a/docs/interfaces/utils.Store.html b/docs/interfaces/utils.Store.html index a0a6ba34..3f87f011 100644 --- a/docs/interfaces/utils.Store.html +++ b/docs/interfaces/utils.Store.html @@ -1,3 +1,3 @@ -Store | React18 Loaders
interface Store {
    m: ColorSchemePreference;
    s: ResolvedScheme;
}

Properties

m +Store | React18 Loaders
interface Store {
    m: ColorSchemePreference;
    s: ResolvedScheme;
}

Properties

m s -

Properties

+

Properties

diff --git a/docs/types/utils.ColorSchemePreference.html b/docs/types/utils.ColorSchemePreference.html index 04c85384..946ccffe 100644 --- a/docs/types/utils.ColorSchemePreference.html +++ b/docs/types/utils.ColorSchemePreference.html @@ -1 +1 @@ -ColorSchemePreference | React18 Loaders

Type Alias ColorSchemePreference

ColorSchemePreference: "system" | "dark" | ""
+ColorSchemePreference | React18 Loaders

Type Alias ColorSchemePreference

ColorSchemePreference: "system" | "dark" | ""
diff --git a/docs/types/utils.ResolvedScheme.html b/docs/types/utils.ResolvedScheme.html index abac3ba3..0eb8a4e7 100644 --- a/docs/types/utils.ResolvedScheme.html +++ b/docs/types/utils.ResolvedScheme.html @@ -1 +1 @@ -ResolvedScheme | React18 Loaders

Type Alias ResolvedScheme

ResolvedScheme: "dark" | ""
+ResolvedScheme | React18 Loaders

Type Alias ResolvedScheme

ResolvedScheme: "dark" | ""
diff --git a/docs/variables/constants.DARK.html b/docs/variables/constants.DARK.html index b58139d2..0b50012b 100644 --- a/docs/variables/constants.DARK.html +++ b/docs/variables/constants.DARK.html @@ -1 +1 @@ -DARK | React18 Loaders
DARK: ResolvedScheme = "dark"
+DARK | React18 Loaders
DARK: ResolvedScheme = "dark"
diff --git a/docs/variables/constants.LIGHT.html b/docs/variables/constants.LIGHT.html index a67b73de..b071224c 100644 --- a/docs/variables/constants.LIGHT.html +++ b/docs/variables/constants.LIGHT.html @@ -1 +1 @@ -LIGHT | React18 Loaders
LIGHT: ResolvedScheme = ""
+LIGHT | React18 Loaders
LIGHT: ResolvedScheme = ""
diff --git a/docs/variables/constants.SYSTEM.html b/docs/variables/constants.SYSTEM.html index 59af6de6..4b47ca50 100644 --- a/docs/variables/constants.SYSTEM.html +++ b/docs/variables/constants.SYSTEM.html @@ -1 +1 @@ -SYSTEM | React18 Loaders

Variable SYSTEMConst

SYSTEM: ColorSchemePreference = "system"
+SYSTEM | React18 Loaders

Variable SYSTEMConst

SYSTEM: ColorSchemePreference = "system"
diff --git a/docs/variables/constants.modes.html b/docs/variables/constants.modes.html index eb5f41ae..55135769 100644 --- a/docs/variables/constants.modes.html +++ b/docs/variables/constants.modes.html @@ -1 +1 @@ -modes | React18 Loaders
modes: ColorSchemePreference[] = ...
+modes | React18 Loaders
modes: ColorSchemePreference[] = ...