diff options
author | Shin'ya Ueoka <ueokande@i-beam.org> | 2017-11-25 18:03:15 +0900 |
---|---|---|
committer | Shin'ya Ueoka <ueokande@i-beam.org> | 2017-11-26 11:45:05 +0900 |
commit | f27d21908a2b402e3274288d4411a48160f38e4c (patch) | |
tree | 9aaebc9c1c0869009daa5eff43773cfb2bc52579 /src/settings/actions/setting.js | |
parent | 507000619377f82ca63251c8c5db98af690a5ed2 (diff) |
load settiongs from form
Diffstat (limited to 'src/settings/actions/setting.js')
-rw-r--r-- | src/settings/actions/setting.js | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/settings/actions/setting.js b/src/settings/actions/setting.js index fa158a3..1d4ef34 100644 --- a/src/settings/actions/setting.js +++ b/src/settings/actions/setting.js @@ -1,6 +1,7 @@ import actions from 'settings/actions'; import messages from 'shared/messages'; -import DefaultSettings from 'shared/default-settings'; +import DefaultSettings from 'shared/settings/default'; +import * as settingsValues from 'shared/settings/values'; const load = () => { return browser.storage.local.get('settings').then(({ settings }) => { @@ -24,12 +25,19 @@ const save = (settings) => { }; const set = (settings) => { + let value = JSON.parse(DefaultSettings.json); + if (settings.source === 'json') { + value = settingsValues.fromJson(settings.json); + } else if (settings.source === 'form') { + value = settingsValues.fromForm(settings.form); + } + return { type: actions.SETTING_SET_SETTINGS, source: settings.source, json: settings.json, form: settings.form, - value: JSON.parse(settings.json), + value, }; }; |