mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 21:05:19 +00:00
16 lines
438 B
TypeScript
16 lines
438 B
TypeScript
import { ThemeMode } from '../types';
|
|
|
|
export class LocalStorageThemeHelper {
|
|
name = 'Affine-theme-mode';
|
|
callback = new Set<() => void>();
|
|
get = (): ThemeMode | null => {
|
|
return localStorage.getItem(this.name) as ThemeMode | null;
|
|
};
|
|
set = (mode: ThemeMode) => {
|
|
localStorage.setItem(this.name, mode);
|
|
this.callback.forEach(cb => cb());
|
|
};
|
|
}
|
|
|
|
export const localStorageThemeHelper = new LocalStorageThemeHelper();
|