exploreReducer.js 968 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. export const exploreReducer = (
  2. state = {},
  3. {
  4. type,
  5. newPosts = [],
  6. explorePostsCount,
  7. explorePosts,
  8. newPostsExploreCount,
  9. },
  10. ) => {
  11. const types = {
  12. 'ADD-EXPLORE-POSTS': () => {
  13. return {
  14. ...state,
  15. explorePosts: state?.explorePosts
  16. ? [...state.explorePosts, ...newPosts]
  17. : [...newPosts],
  18. explorePostsCount: explorePostsCount
  19. ? explorePostsCount
  20. : newPostsExploreCount,
  21. }
  22. },
  23. 'EXPLORE-COUNT': () => {
  24. return {
  25. ...state,
  26. explorePostsCount: explorePostsCount
  27. ? explorePostsCount
  28. : newPostsExploreCount,
  29. }
  30. },
  31. 'EXPLORE-POSTS': () => {
  32. return {
  33. ...state,
  34. explorePosts: explorePosts,
  35. }
  36. },
  37. 'CLEAR_EXPLORE_POSTS': () => ({
  38. ...state,
  39. explorePosts: [],
  40. explorePostsCount: 0,
  41. }),
  42. }
  43. if (type in types) {
  44. return types[type]()
  45. }
  46. return state
  47. }