Theming
useColorMode
Manage theme state and toggle between light and dark modes with persistence.
import { useColorMode } from "saha-ui"Uses
Manage color mode (light, dark, system) persisted to local storage with automatic DOM class toggling.
Props
| Name | Type | Description | Default |
|---|---|---|---|
| defaultMode | 'light' | 'dark' | 'system' | Initial color mode. | 'system' |
| storageKey | string | localStorage key used to persist mode. | 'color-mode' |
| classNameDark | string | Class name applied on document.documentElement when dark. | - |
| classNameLight | string | Class name applied on document.documentElement when light. | - |
Returns
| Name | Description |
|---|---|
| colorMode | Current raw mode: 'light' | 'dark' | 'system'. |
| isDark / isLight | Booleans for resolved mode. |
| setColorMode(mode) | Set the color mode explicitly. |
| toggleColorMode() | Toggle between light and dark modes. |
Example
const { colorMode, toggleColorMode } = useColorMode();
toggleColorMode();Notes
Resolves 'system' mode using prefers-color-scheme and writes preference to localStorage.