00c740de80b14453e5c3708810c609a717c8046f
PrefsInitializer calls setTheme + updateConfig on mount. ThemeCustomizer was watching these with skip-first-mount effects — but after PrefsInitializer changed the values, the effects fired and called saveThemePrefsAction (server action). Next.js server actions revalidate the router cache, triggering a soft remount, resetting applied.current in PrefsInitializer, causing another save → infinite loop / flicker. Fix: dark/light and sidebar config no longer call saveThemePrefsAction from reactive effects. Sidebar saves localStorage only. Color theme / tweakcn / radius still call saveThemePrefsAction from explicit click handlers (no mount trigger, no loop).
Description
No description provided
Languages
TypeScript
99.5%
CSS
0.5%