export function workItemsReducer()

in src/EpicRoadmap/redux/modules/workItems/workItemReducer.ts [5:40]


export function workItemsReducer(state: IWorkItemsState, action: WorkItemsActions): IWorkItemsState {
    if (!state) {
        state = {
            epicHierarchy: [],
            dependencies: [],
            pagedWorkItems: []
        };
    }
    return produce(state, draft => {
        switch (action.type) {
            case EpicHierarchyReceivedType:
                draft.epicHierarchy = action.payload.links;
                break;
            case DependenciesReceivedType:
                draft.dependencies = action.payload.links;
                break;
            case PagedWorkItemsReceivedType:
                draft.pagedWorkItems = action.payload.workItems;
                break;
            case StartUpdateWorkitemIterationActionType:
                {
                    const {
                        workItem,
                        teamIteration
                    } = action.payload;
                    debugger;
                    const workItemId = workItem[0];
                    const pagedItems =  draft.pagedWorkItems.filter(w => w.id === workItemId);
                    if (pagedItems && pagedItems[0] && pagedItems[0].fields) {
                        pagedItems[0].fields["System.IterationPath"] = teamIteration.path;
                    }

                }
        }
    });
}