mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-16 04:43:35 +00:00
bca7ad30b1
* fix: fetch in offline environments (#295) * add arm platforms to docker build --------- Co-authored-by: Fabian Posenau <fabian@fphome.de> * fix: docker build (#298) Co-authored-by: Fabian Posenau <fabian@fphome.de> * Timer: fix too many renders error when using ?progress (#305) * ux: remove duplicate showing of selected event * several small fixes and UX improvements --------- Co-authored-by: Fabian Posenau <fabian.p99@gmx.de> Co-authored-by: Fabian Posenau <fabian@fphome.de> Co-authored-by: Marks Polakovs <github@markspolakovs.me>
23 lines
639 B
TypeScript
23 lines
639 B
TypeScript
import { create } from 'zustand';
|
|
|
|
import { booleanFromLocalStorage } from '../utils/localStorage';
|
|
|
|
enum LocalEventKeys {
|
|
Mirror = 'ontime-view-mirror',
|
|
}
|
|
|
|
type ViewOptionsStore = {
|
|
mirror: boolean;
|
|
toggleMirror: (newValue?: boolean) => void;
|
|
};
|
|
|
|
export const useViewOptionsStore = create<ViewOptionsStore>()((set) => ({
|
|
mirror: booleanFromLocalStorage(LocalEventKeys.Mirror, false),
|
|
toggleMirror: (newValue?: boolean) =>
|
|
set((state) => {
|
|
const val = typeof newValue === 'undefined' ? !state.mirror : newValue;
|
|
localStorage.setItem(LocalEventKeys.Mirror, String(val));
|
|
return { mirror: val };
|
|
}),
|
|
}));
|