index.ts 696 B

1234567891011121314151617181920212223242526
  1. import isEqual from 'lodash.isequal';
  2. import { createReducer } from '@reduxjs/toolkit';
  3. import { IContactsState,IContactsPayload} from '../../../typescript/redux/contacts/interfaces';
  4. import {
  5. actionGetContactsSuccess,
  6. actionGetContactsReject
  7. } from '../action';
  8. const initialState:IContactsState = {
  9. total: "0",
  10. limit: "0",
  11. page: "0",
  12. contacts: []
  13. }
  14. const reducerContacts = createReducer(initialState, {
  15. [actionGetContactsSuccess.type]: (state, { payload }: IContactsPayload) => {
  16. if (isEqual(state, payload) === false) return payload
  17. return state;
  18. },
  19. [actionGetContactsReject.type]: (state, _payload) => {
  20. return state;
  21. },
  22. });
  23. export default reducerContacts;