X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/546052817ac18623f5389914a3077e8cc6a3d4f4..f528f6f6ca52c8654b52f84e52339da8e91a9d9c:/src/store/tree-picker/tree-picker-reducer.ts?ds=sidebyside diff --git a/src/store/tree-picker/tree-picker-reducer.ts b/src/store/tree-picker/tree-picker-reducer.ts index 341df7b8..fb9bc50c 100644 --- a/src/store/tree-picker/tree-picker-reducer.ts +++ b/src/store/tree-picker/tree-picker-reducer.ts @@ -8,6 +8,7 @@ import { treePickerActions, TreePickerAction } from "./tree-picker-actions"; import { compose } from "redux"; import { activateNode, getNode, toggleNodeCollapse, toggleNodeSelection } from '~/models/tree'; import { pipe } from 'lodash/fp'; +import { appendSubtree } from '~/models/tree'; export const treePickerReducer = (state: TreePicker = {}, action: TreePickerAction) => treePickerActions.match(action, { @@ -17,6 +18,9 @@ export const treePickerReducer = (state: TreePicker = {}, action: TreePickerActi LOAD_TREE_PICKER_NODE_SUCCESS: ({ id, nodes, pickerId }) => updateOrCreatePicker(state, pickerId, compose(receiveNodes(nodes)(id), setNodeStatus(id)(TreeNodeStatus.LOADED))), + APPEND_TREE_PICKER_NODE_SUBTREE: ({ id, subtree, pickerId}) => + updateOrCreatePicker(state, pickerId, compose(appendSubtree(id, subtree), setNodeStatus(id)(TreeNodeStatus.LOADED))), + TOGGLE_TREE_PICKER_NODE_COLLAPSE: ({ id, pickerId }) => updateOrCreatePicker(state, pickerId, toggleNodeCollapse(id)),