diff --git a/src/contexts/TravelerDataContext.js b/src/contexts/TravelerDataContext.js index db03f56..4961cca 100644 --- a/src/contexts/TravelerDataContext.js +++ b/src/contexts/TravelerDataContext.js @@ -1,7 +1,7 @@ import { createContext, useContext, useEffect, useState } from "react"; import { axiosReq, axiosRes } from "../api/axiosDefaults"; import { useCurrentUser } from "./CurrentUserContext"; -import { followHelper } from "../utils/utils"; +import { followHelper, unfollowHelper } from "../utils/utils"; export const TravelerDataContext = createContext(); export const SetTravelerDataContext = createContext(); @@ -43,6 +43,28 @@ export const TravelerDataProvider = ({ children }) => { } }; + const handleUnFollow = async (clickedTraveler) => { + try { + await axiosRes.delete(`/followers/${clickedTraveler.following_id}`); + setTravelerData((prevState) => ({ + ...prevState, + pageTraveler: { + results: prevState.pageTraveler.results.map((traveler) => + unfollowHelper(traveler, clickedTraveler) + ), + }, + popularTravelers: { + ...prevState.popularTravelers, + results: prevState.popularTravelers.results.map((traveler) => + unfollowHelper(traveler, clickedTraveler) + ), + }, + })); + } catch (err) { + console.log(err); + } + }; + useEffect(() => { const handleMount = async () => { try {