fix hot-reload settings

This commit is contained in:
Shin'ya Ueoka 2017-11-13 19:44:19 +09:00
parent 91ea58008c
commit c202ab0529
4 changed files with 8 additions and 8 deletions

View file

@ -2,21 +2,20 @@ import actions from 'content/actions';
import * as keyUtils from 'shared/utils/keys';
const set = (value) => {
let maps = new Map();
let entries = [];
if (value.keymaps) {
let entries = Object.entries(value.keymaps).map((entry) => {
entries = Object.entries(value.keymaps).map((entry) => {
return [
keyUtils.fromMapKeys(entry[0]),
entry[1],
];
});
maps = new Map(entries);
}
return {
type: actions.SETTING_SET,
value: Object.assign({}, value, {
keymaps: maps,
keymaps: entries,
})
};
};

View file

@ -25,7 +25,7 @@ export default class KeymapperComponent {
let state = this.store.getState();
let input = state.input;
let keymaps = state.setting.keymaps;
let keymaps = new Map(state.setting.keymaps);
let matched = Array.from(keymaps.keys()).filter((mapping) => {
return mapStartsWith(mapping, input.keys);

View file

@ -1,7 +1,8 @@
import actions from 'content/actions';
const defaultState = {
keymaps: new Map(),
// keymaps is and arrays of key-binding pairs, which is entries of Map
keymaps: [],
};
export default function reducer(state = defaultState, action = {}) {