mirror of
https://github.com/hoornet/vega.git
synced 2026-05-09 13:49:12 -07:00
Bump to v0.9.3 — color themes, font size, settings polish
7 color themes (Midnight, Light, Catppuccin Mocha, Tokyo Night, Gruvbox, Ethereal, Hackerman), font size presets (Small/Normal/Large/Extra Large), collapsible muted accounts list, removed old sidebar connection indicator.
This commit is contained in:
@@ -29,6 +29,8 @@ interface UIState {
|
||||
showHelp: boolean;
|
||||
showDebugPanel: boolean;
|
||||
feedLanguageFilter: string | null;
|
||||
fontSize: number;
|
||||
themeId: string;
|
||||
setView: (view: View) => void;
|
||||
setFeedTab: (tab: FeedTab) => void;
|
||||
openProfile: (pubkey: string) => void;
|
||||
@@ -39,12 +41,16 @@ interface UIState {
|
||||
openArticle: (naddr: string, event?: NDKEvent) => void;
|
||||
goBack: () => void;
|
||||
setFeedLanguageFilter: (filter: string | null) => void;
|
||||
setFontSize: (size: number) => void;
|
||||
setTheme: (id: string) => void;
|
||||
toggleSidebar: () => void;
|
||||
toggleHelp: () => void;
|
||||
toggleDebugPanel: () => void;
|
||||
}
|
||||
|
||||
const SIDEBAR_KEY = "wrystr_sidebar_collapsed";
|
||||
const FONT_SIZE_KEY = "wrystr_font_size";
|
||||
const THEME_KEY = "wrystr_theme";
|
||||
|
||||
export const useUIStore = create<UIState>((set, _get) => ({
|
||||
currentView: "feed",
|
||||
@@ -62,6 +68,8 @@ export const useUIStore = create<UIState>((set, _get) => ({
|
||||
showHelp: false,
|
||||
showDebugPanel: false,
|
||||
feedLanguageFilter: null,
|
||||
fontSize: parseInt(localStorage.getItem(FONT_SIZE_KEY) || "14", 10),
|
||||
themeId: localStorage.getItem(THEME_KEY) || "midnight",
|
||||
setView: (currentView) => set({ currentView }),
|
||||
setFeedTab: (feedTab) => set({ feedTab }),
|
||||
openProfile: (pubkey) => set((s) => {
|
||||
@@ -91,6 +99,14 @@ export const useUIStore = create<UIState>((set, _get) => ({
|
||||
return { showHelp: false, currentView: "feed", selectedNote: null, viewStack: [] };
|
||||
}),
|
||||
setFeedLanguageFilter: (feedLanguageFilter) => set({ feedLanguageFilter }),
|
||||
setFontSize: (fontSize) => {
|
||||
localStorage.setItem(FONT_SIZE_KEY, String(fontSize));
|
||||
set({ fontSize });
|
||||
},
|
||||
setTheme: (themeId) => {
|
||||
localStorage.setItem(THEME_KEY, themeId);
|
||||
set({ themeId });
|
||||
},
|
||||
toggleSidebar: () => set((s) => {
|
||||
const next = !s.sidebarCollapsed;
|
||||
localStorage.setItem(SIDEBAR_KEY, String(next));
|
||||
|
||||
Reference in New Issue
Block a user