aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/local_storage/state_storage.ts
blob: 517784b5b06706cc1523e337ab38a2dc9d9fd660 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import { localStorage } from 'ts/local_storage/local_storage';
import { INITIAL_STATE, State } from 'ts/redux/reducer';

const STORAGE_NAME = 'persistedState';

export const stateStorage = {
    saveState(partialState: Partial<State>): void {
        localStorage.setObject(STORAGE_NAME, partialState);
    },
    getPersistedState(): Partial<State> {
        return localStorage.getObject(STORAGE_NAME);
    },
    getPersistedDefaultState(): State {
        return { ...INITIAL_STATE, ...stateStorage.getPersistedState() };
    },
};