- LOAD_TREE_PICKER_NODE: ({ id, pickerKind }) => {
- const picker = state[pickerKind] || createTree();
- const updatedPicker = setNodeValueWith(setPending)(id)(picker);
- return { ...state, [pickerKind]: updatedPicker };
- },
- LOAD_TREE_PICKER_NODE_SUCCESS: ({ id, nodes, pickerKind }) => {
- const picker = state[pickerKind] || createTree();
- const [updatedPicker] = [picker]
- .map(receiveNodes(nodes)(id))
- .map(setNodeValueWith(setLoaded)(id));
- return { ...state, [pickerKind]: updatedPicker };
- },
- TOGGLE_TREE_PICKER_NODE_COLLAPSE: ({ id, pickerKind }) => {
- const picker = state[pickerKind] || createTree();
- const updatedPicker = setNodeValueWith(toggleCollapse)(id)(picker);
- return { ...state, [pickerKind]: updatedPicker };
- },
- TOGGLE_TREE_PICKER_NODE_SELECT: ({ id, pickerKind }) => {
- const picker = state[pickerKind] || createTree();
- const updatedPicker = mapTreeValues(toggleSelect(id))(picker);
- return { ...state, [pickerKind]: updatedPicker };
- },
+ LOAD_TREE_PICKER_NODE: ({ nodeId, pickerId }) =>
+ updateOrCreatePicker(state, pickerId, setNodeValueWith(setPending)(nodeId)),
+ LOAD_TREE_PICKER_NODE_SUCCESS: ({ nodeId, nodes, pickerId }) =>
+ updateOrCreatePicker(state, pickerId, compose(receiveNodes(nodes)(nodeId),setNodeValueWith(setLoaded)(nodeId))),
+ TOGGLE_TREE_PICKER_NODE_COLLAPSE: ({ nodeId, pickerId }) =>
+ updateOrCreatePicker(state, pickerId, setNodeValueWith(toggleCollapse)(nodeId)),
+ TOGGLE_TREE_PICKER_NODE_SELECT: ({ nodeId, pickerId }) =>
+ updateOrCreatePicker(state, pickerId, mapTreeValues(toggleSelect(nodeId))),