separate setting actions and reducers

This commit is contained in:
Shin'ya Ueoka 2018-01-08 21:54:16 +09:00
parent d23c190cad
commit 6083e70ea0
9 changed files with 96 additions and 16 deletions

View file

@ -1,26 +1,22 @@
import actions from 'settings/actions';
import messages from 'shared/messages';
import DefaultSettings from 'shared/settings/default';
import * as settingsStorage from 'shared/settings/storage';
import * as settingsValues from 'shared/settings/values';
const load = () => {
return browser.storage.local.get('settings').then(({ settings }) => {
if (!settings) {
return set(DefaultSettings);
}
return set(Object.assign({}, DefaultSettings, settings));
}, console.error);
return settingsStorage.loadRaw().then((settings) => {
return set(settings);
});
};
const save = (settings) => {
return browser.storage.local.set({
settings,
}).then(() => {
return settingsStorage.save(settings).then(() => {
return browser.runtime.sendMessage({
type: messages.SETTINGS_RELOAD
}).then(() => {
return set(settings);
});
}).then(() => {
return set(settings);
});
};