Remember selected stops in session storage
This commit is contained in:
parent
cdffda56aa
commit
ecd02d21bb
@ -12,7 +12,7 @@ window['Popper'] = Popper;
|
|||||||
|
|
||||||
// dependencies
|
// dependencies
|
||||||
import Vue from "vue";
|
import Vue from "vue";
|
||||||
import Vuex, { mapActions, mapMutations, mapState, Store } from 'vuex';
|
import Vuex from 'vuex';
|
||||||
import { Workbox } from "workbox-window";
|
import { Workbox } from "workbox-window";
|
||||||
|
|
||||||
Vue.use(Vuex);
|
Vue.use(Vuex);
|
||||||
|
@ -1,15 +1,34 @@
|
|||||||
import Vuex from 'vuex';
|
import Vuex from 'vuex';
|
||||||
|
|
||||||
import messages from './messages';
|
import messages, { MessagesState } from './messages';
|
||||||
import departures from './departures'
|
import departures, { DeparturesState } from './departures'
|
||||||
import favourites, { localStorageSaver } from './favourites'
|
import favourites, { FavouritesState, localStorageSaver } from './favourites'
|
||||||
|
|
||||||
import { state, mutations, actions } from "./root";
|
import { state, mutations, actions, RootState } from "./root";
|
||||||
|
import VuexPersistence from "vuex-persist";
|
||||||
|
|
||||||
|
export type State = {
|
||||||
|
messages: MessagesState;
|
||||||
|
departures: DeparturesState;
|
||||||
|
favourites: FavouritesState;
|
||||||
|
} & RootState;
|
||||||
|
|
||||||
|
const localStoragePersist = new VuexPersistence<State>({
|
||||||
|
reducer: state => ({ favourites: state.favourites })
|
||||||
|
});
|
||||||
|
|
||||||
|
const sessionStoragePersist = new VuexPersistence<State>({
|
||||||
|
reducer: state => ({ stops: state.stops }),
|
||||||
|
storage: window.sessionStorage
|
||||||
|
});
|
||||||
|
|
||||||
export default new Vuex.Store({
|
export default new Vuex.Store({
|
||||||
state, mutations, actions,
|
state, mutations, actions,
|
||||||
modules: { messages, departures, favourites },
|
modules: { messages, departures, favourites },
|
||||||
plugins: [
|
plugins: [
|
||||||
|
// todo: remove after some time
|
||||||
localStorageSaver('favourites.favourites', 'favourites'),
|
localStorageSaver('favourites.favourites', 'favourites'),
|
||||||
|
localStoragePersist.plugin,
|
||||||
|
sessionStoragePersist.plugin,
|
||||||
]
|
]
|
||||||
})
|
})
|
Loading…
Reference in New Issue
Block a user