UNPKG

@replyke/core

Version:

Replyke: Build interactive apps with social features like comments, votes, feeds, user lists, notifications, and more.

34 lines 1.38 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = require("react"); const useAxiosPrivate_1 = __importDefault(require("../../../config/useAxiosPrivate")); const useProject_1 = __importDefault(require("../../projects/useProject")); const user_1 = require("../../user"); function useFetchFollowStatus() { const axios = (0, useAxiosPrivate_1.default)(); const { projectId } = (0, useProject_1.default)(); const { user } = (0, user_1.useUser)(); const fetchFollowStatus = (0, react_1.useCallback)(async (props) => { const { userId } = props; if (!projectId) { throw new Error("No project specified"); } if (!user) { throw new Error("No user is logged in"); } if (!userId) { throw new Error("No user ID was provided"); } if (userId === user.id) { throw new Error("Users don't follow themselves"); } const response = await axios.get(`/${projectId}/users/${userId}/follow`); return response.data; }, [axios, projectId, user?.id]); return fetchFollowStatus; } exports.default = useFetchFollowStatus; //# sourceMappingURL=useFetchFollowStatus.js.map