• Steven's avatar
    refactor: simplify theme/locale to user preferences and improve initialization · 81da20c9
    Steven authored
    Remove theme and locale from instance settings to eliminate duplication and
    simplify the codebase. These are user-specific preferences and should only
    exist in user settings, not instance-wide settings.
    
    Backend changes:
    - Remove theme from InstanceGeneralSetting proto
    - Remove locale from InstanceCustomProfile proto
    - Update instance service converters to remove theme/locale handling
    - Simplify RSS feed to use static locale
    
    Frontend changes:
    - Remove theme/locale from instanceStore state
    - Create unified initialization flow with clear fallback priority:
      * Theme: user setting → localStorage → system preference
      * Locale: user setting → browser language
    - Add applyUserPreferences() to centralize theme/locale application
    - Simplify App.tsx by removing redundant state synchronization
    - Update all components to use new helper functions:
      * getThemeWithFallback() for theme resolution
      * getLocaleWithFallback() for locale resolution
    - Remove theme/locale selectors from instance profile dialog
    
    Theme utilities refactor:
    - Organize code into clear sections with JSDoc comments
    - Extract localStorage operations into getStoredTheme/setStoredTheme helpers
    - Split DOM manipulation into focused functions
    - Improve type safety with Theme and ResolvedTheme types
    - Reduce code duplication and improve maintainability
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    Co-Authored-By: 's avatarClaude <noreply@anthropic.com>
    81da20c9
Name
Last commit
Last update
..
ActivityCalendar Loading commit data...
ConfirmDialog Loading commit data...
Inbox Loading commit data...
MasonryView Loading commit data...
MemoActionMenu Loading commit data...
MemoContent Loading commit data...
MemoDetailSidebar Loading commit data...
MemoEditor Loading commit data...
MemoExplorer Loading commit data...
MemoReactionListView Loading commit data...
MemoRelationForceGraph Loading commit data...
MemoView Loading commit data...
PagedMemoList Loading commit data...
Settings Loading commit data...
StatisticsView Loading commit data...
kit Loading commit data...
memo-metadata Loading commit data...
ui Loading commit data...
AttachmentIcon.tsx Loading commit data...
AuthFooter.tsx Loading commit data...
ChangeMemberPasswordDialog.tsx Loading commit data...
CreateAccessTokenDialog.tsx Loading commit data...
CreateIdentityProviderDialog.tsx Loading commit data...
CreateShortcutDialog.tsx Loading commit data...
CreateUserDialog.tsx Loading commit data...
CreateWebhookDialog.tsx Loading commit data...
DateTimeInput.tsx Loading commit data...
Empty.tsx Loading commit data...
LeafletMap.tsx Loading commit data...
LearnMore.tsx Loading commit data...
LocaleSelect.tsx Loading commit data...
MemoAttachment.tsx Loading commit data...
MemoDisplaySettingMenu.tsx Loading commit data...
MemoFilters.tsx Loading commit data...
MemoResource.tsx Loading commit data...
MemoSkeleton.tsx Loading commit data...
MemosLogo.tsx Loading commit data...
MobileHeader.tsx Loading commit data...
Navigation.tsx Loading commit data...
NavigationDrawer.tsx Loading commit data...
PasswordSignInForm.tsx Loading commit data...
PreviewImageDialog.tsx Loading commit data...
RequiredBadge.tsx Loading commit data...
SearchBar.tsx Loading commit data...
TagTree.tsx Loading commit data...
ThemeSelect.tsx Loading commit data...
UpdateAccountDialog.tsx Loading commit data...
UpdateCustomizedProfileDialog.tsx Loading commit data...
UserAvatar.tsx Loading commit data...
UserMenu.tsx Loading commit data...
VisibilityIcon.tsx Loading commit data...