@replyke/core
Version:
Replyke: Build interactive apps with social features like comments, votes, feeds, user lists, notifications, and more.
31 lines • 1.2 kB
JavaScript
import { useCallback } from "react";
import useProject from "../projects/useProject";
import useAxiosPrivate from "../../config/useAxiosPrivate";
function useFetchDrafts() {
const { projectId } = useProject();
const axios = useAxiosPrivate();
const fetchDrafts = useCallback(async (params) => {
if (!projectId) {
throw new Error("No projectId available.");
}
const queryParams = {};
if (params?.page !== undefined)
queryParams.page = params.page;
if (params?.limit !== undefined)
queryParams.limit = params.limit;
if (params?.sourceId)
queryParams.sourceId = params.sourceId;
if (params?.spaceId)
queryParams.spaceId = params.spaceId;
if (params?.include) {
queryParams.include = Array.isArray(params.include)
? params.include.join(",")
: params.include;
}
const response = await axios.get(`/${projectId}/entities/drafts`, { params: queryParams });
return response.data;
}, [projectId, axios]);
return fetchDrafts;
}
export default useFetchDrafts;
//# sourceMappingURL=useFetchDrafts.js.map