Add React hooks eslint

This commit is contained in:
Gregory Schier
2023-04-01 15:26:57 -07:00
parent 604254257d
commit b23e56c3af
23 changed files with 151 additions and 98 deletions

View File

@@ -13,16 +13,12 @@ export function useTheme() {
defaultValue: getAppearance(),
});
const themeChange = (appearance: Appearance) => {
appearanceKv.set(appearance);
};
const handleToggleAppearance = async () => {
appearanceKv.set(appearanceKv.value === 'dark' ? 'light' : 'dark');
};
// Set appearance when preferred theme changes
useEffect(() => subscribeToPreferredAppearanceChange(themeChange), []);
useEffect(() => subscribeToPreferredAppearanceChange(appearanceKv.set), [appearanceKv.set]);
// Sync appearance when k/v changes
useEffect(() => setAppearance(appearanceKv.value), [appearanceKv.value]);