export function reducer()

in src/app/customers/cases/store/documents/pageNumber.reducer.ts [30:66]


export function reducer(state = initialState, action: documentActions.Actions): State {

  switch (action.type) {

    case documentActions.LOAD_ALL_PAGES: {
      return initialState;
    }

    case documentActions.LOAD_ALL_PAGES_COMPLETE: {
      const pageNumbers: number[] = action.payload;

      return {
        pageNumbers
      };
    }

    case documentActions.UPLOAD_PAGE_SUCCESS: {
      const payload: UploadPagePayload = action.payload;

      return {
        pageNumbers: state.pageNumbers.concat(payload.pageNumber)
      }
    }

    case documentActions.DELETE_PAGE_SUCCESS: {
      const payload: DeletePagePayload = action.payload;

      return {
        pageNumbers: state.pageNumbers.filter(pageNumber => pageNumber !== payload.pageNumber)
      }
    }

    default: {
      return state;
    }
  }
}