UNPKG

@lumina-study/user-settings-redux

Version:

Redux store for Lumina Study user settings with unstorage persistence

45 lines 1.3 kB
import { createSlice } from '@reduxjs/toolkit'; /** * Initial state for user settings with default values */ const initialState = { language: 'en', }; /** * Redux slice for user settings * Manages the state of user preferences including language */ export const userSettingsSlice = createSlice({ name: 'userSettings', initialState, reducers: { /** * Set the complete user settings state * Used primarily when loading persisted settings from storage */ setUserSettings: (state, action) => { return action.payload; }, /** * Update the user interface language */ setLanguage: (state, action) => { state.language = action.payload; }, /** * Update partial user settings */ updateUserSettings: (state, action) => { return { ...state, ...action.payload }; }, /** * Reset settings to default values */ resetUserSettings: () => { return initialState; }, }, }); export const { setUserSettings, setLanguage, updateUserSettings, resetUserSettings, } = userSettingsSlice.actions; export default userSettingsSlice.reducer; //# sourceMappingURL=userSettingsSlice.js.map