mirror of
https://github.com/kilyabin/psysonic.git
synced 2026-07-22 06:25:41 +00:00
feat(settings): theme scheduler, UI scale, CustomSelect scroll fix
- Time-based theme scheduler: auto-switches between day/night theme based on configurable times; setInterval re-checks every minute - UI scale slider (80–150%) via CSS zoom on document root; preset buttons aligned to actual slider positions - CustomSelect: scroll listener keeps dropdown anchored on scroll - All features i18n in 7 languages Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -6,6 +6,8 @@ export type FontId = 'inter' | 'outfit' | 'dm-sans' | 'nunito' | 'rubik' | 'spac
|
||||
interface FontState {
|
||||
font: FontId;
|
||||
setFont: (font: FontId) => void;
|
||||
uiScale: number;
|
||||
setUiScale: (scale: number) => void;
|
||||
}
|
||||
|
||||
export const useFontStore = create<FontState>()(
|
||||
@@ -13,6 +15,8 @@ export const useFontStore = create<FontState>()(
|
||||
(set) => ({
|
||||
font: 'lexend',
|
||||
setFont: (font) => set({ font }),
|
||||
uiScale: 1.0,
|
||||
setUiScale: (uiScale) => set({ uiScale }),
|
||||
}),
|
||||
{ name: 'psysonic_font' }
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user