Fix state persistence handling problem

- Removed `getInitialState` helper function.
- Set default theme to 'system'.
- Changed default language to 'en'.
This commit is contained in:
yangdx
2025-03-13 09:39:21 +08:00
parent dac3f6cf76
commit 2bc41bebf8

View File

@@ -59,27 +59,11 @@ interface SettingsState {
setCurrentTab: (tab: Tab) => void
}
// Helper to get initial state from localStorage
const getInitialState = () => {
try {
const stored = localStorage.getItem('settings-storage')
if (stored) {
const { state } = JSON.parse(stored)
return {
theme: state?.theme || 'system',
language: state?.language || 'zh'
}
}
} catch (e) {
console.error('Failed to parse settings from localStorage:', e)
}
return { theme: 'system', language: 'zh' }
}
const useSettingsStoreBase = create<SettingsState>()(
persist(
(set) => ({
...getInitialState(),
theme: 'system',
language: 'en',
refreshLayout: () => {
const graphState = useGraphStore.getState();
const currentGraph = graphState.sigmaGraph;
@@ -211,10 +195,8 @@ const useSettingsStoreBase = create<SettingsState>()(
state.graphLayoutMaxIterations = 15
}
if (version < 8) {
state.enableNodeDrag = true
state.enableHideUnselectedEdges = true
state.enableEdgeEvents = false
state.graphMinDegree = 0
state.language = 'en'
}
return state
}