synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
78 lines (77 loc) • 2.49 kB
JavaScript
import * as s from "../../synapse-client/SynapseClient.js";
import "@sage-bionetworks/synapse-client/generated/models/ErrorResponseCode";
import "@sage-bionetworks/synapse-client/generated/models/TwoFactorAuthErrorResponse";
import "@sage-bionetworks/synapse-client/util/SynapseClientError";
import "@sage-bionetworks/synapse-types";
import "../../utils/functions/EntityTypeUtils.js";
import "../../utils/SynapseConstants.js";
import "lodash-es";
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
import { useSynapseContext as o } from "../../utils/context/SynapseContext.js";
import { useQuery as F, useQueryClient as c, useMutation as y, useInfiniteQuery as m } from "@tanstack/react-query";
import { getNextPageParamForPaginatedResults as v } from "../InfiniteQueryUtils.js";
function I(e) {
const { data: r, isLoading: a } = d();
return { isFavorite: r?.some((t) => t.id === e), isLoading: a };
}
function T(e) {
const { accessToken: r, keyFactory: a } = o(), i = c();
return y({
...e,
mutationFn: (t) => s.addUserFavorite(t, r),
mutationKey: ["addFavorite"],
onSuccess: async (t, n, u) => {
if (await i.invalidateQueries({
queryKey: a.getFavoritesQueryKey()
}), e?.onSuccess)
return e.onSuccess(t, n, u);
}
});
}
function U(e) {
const { accessToken: r } = o(), a = c(), { keyFactory: i } = o();
return y({
...e,
mutationFn: (t) => s.removeUserFavorite(t, r),
mutationKey: ["removeFavorite"],
onSuccess: async (t, n, u) => {
if (await a.invalidateQueries({
queryKey: i.getFavoritesQueryKey()
}), e?.onSuccess)
return e.onSuccess(t, n, u);
}
});
}
function d(e = "FAVORITED_ON", r = "DESC", a) {
const { accessToken: i, keyFactory: t } = o();
return F({
...a,
queryKey: t.getUserFavoritesQueryKey(e, r),
queryFn: () => s.getAllUserFavorites(i, e, r)
});
}
function x(e = "FAVORITED_ON", r = "DESC", a) {
const { accessToken: i, keyFactory: t } = o();
return m({
...a,
queryKey: t.getUserFavoritesInfiniteQueryKey(e, r),
queryFn: async (n) => s.getUserFavorites(
i,
// pass the context.pageParam for the new offset
n.pageParam,
void 0,
e,
r
),
initialPageParam: void 0,
getNextPageParam: v
});
}
export {
T as useAddFavorite,
d as useGetFavorites,
x as useGetFavoritesInfinite,
I as useIsFavorite,
U as useRemoveFavorite
};
//# sourceMappingURL=useFavorites.js.map