aboutsummaryrefslogtreecommitdiff
path: root/src/settings
diff options
context:
space:
mode:
authorShin'ya Ueoka <ueokande@i-beam.org>2017-11-28 20:45:22 +0900
committerShin'ya Ueoka <ueokande@i-beam.org>2017-11-28 20:45:22 +0900
commite1060f9bb218202d13a4382584f220d47173194c (patch)
tree3bbfeb46f693a0523d8837c9c194f213881241ed /src/settings
parent6821372fc71779b458eed52f614d5a15571129d0 (diff)
remove default form settings
Diffstat (limited to 'src/settings')
-rw-r--r--src/settings/components/form/keymaps-form.jsx4
-rw-r--r--src/settings/components/index.jsx15
2 files changed, 18 insertions, 1 deletions
diff --git a/src/settings/components/form/keymaps-form.jsx b/src/settings/components/form/keymaps-form.jsx
index f99318f..f3b6abe 100644
--- a/src/settings/components/form/keymaps-form.jsx
+++ b/src/settings/components/form/keymaps-form.jsx
@@ -58,6 +58,8 @@ const KeyMapFields = [
]
];
+const AllowdOps = [].concat(...KeyMapFields.map(group => group.map(e => e[0])));
+
class KeymapsForm extends Component {
render() {
@@ -99,4 +101,6 @@ class KeymapsForm extends Component {
}
}
+KeymapsForm.AllowdOps = AllowdOps;
+
export default KeymapsForm;
diff --git a/src/settings/components/index.jsx b/src/settings/components/index.jsx
index 3961982..38f7db8 100644
--- a/src/settings/components/index.jsx
+++ b/src/settings/components/index.jsx
@@ -123,6 +123,18 @@ class SettingsComponent extends Component {
}
}
+ validateValue(e) {
+ let next = Object.assign({}, this.state);
+
+ next.errors.json = '';
+ try {
+ this.validate(e.target);
+ } catch (err) {
+ next.errors.json = err.message;
+ }
+ next.settings[e.target.name] = e.target.value;
+ }
+
bindForm(name, value) {
let next = Object.assign({}, this.state, {
settings: Object.assign({}, this.state.settings, {
@@ -164,7 +176,8 @@ class SettingsComponent extends Component {
return;
}
next.settings.form =
- settingsValues.formFromJson(this.state.settings.json);
+ settingsValues.formFromJson(
+ this.state.settings.json, KeymapsForm.AllowdOps);
}
next.settings.source = to;