synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
134 lines (133 loc) • 3.96 kB
JavaScript
import * as n 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 { SubscriptionObjectType as l } from "@sage-bionetworks/synapse-types";
import "../../utils/functions/EntityTypeUtils.js";
import "../../utils/SynapseConstants.js";
import "lodash-es";
import "@sage-bionetworks/synapse-client/util/synapseClientFetch";
import "../../utils/PermissionLevelToAccessType.js";
import "react";
import { useSynapseContext as u } from "../../utils/context/SynapseContext.js";
import "use-deep-compare-effect";
import { useInfiniteQuery as d, useQueryClient as c, useMutation as y, useQuery as g } from "@tanstack/react-query";
import "@tanstack/query-core";
import "lodash-es/isEmpty";
import "lodash-es/isEqual";
import "lodash-es/xorWith";
import "@mui/material";
import "@sage-bionetworks/synapse-client";
import { getNextPageParamForPaginatedResults as f } from "../InfiniteQueryUtils.js";
import "../../utils/types/IsType.js";
import "react/jsx-runtime";
import "../../utils/hooks/useCookiePreferences.js";
import "../../utils/hooks/useSourceAppConfigs.js";
import "universal-cookie";
import "../../utils/AppUtils/session/ApplicationSessionContext.js";
import "../../utils/context/FullContextProvider.js";
import "../../utils/context/DocumentMetadataContext.js";
import '../../style/components/_spinner.css';/* empty css */
import "react-router";
function V(e, r, i, s, t, a) {
const { accessToken: o, keyFactory: m } = u();
return d({
...a,
queryKey: m.getRepliesQueryKey(
e,
r,
i,
s,
t
),
queryFn: async (p) => n.getReplies(
o,
e,
i,
p.pageParam,
s,
r,
t
),
initialPageParam: void 0,
getNextPageParam: f
});
}
function W(e, r) {
const { accessToken: i, keyFactory: s } = u(), t = async () => {
const a = await n.getReplyMessageUrl(
e.messageKey,
i
);
return (await fetch(a.messageUrl, {
method: "GET",
headers: {
Accept: "*/*",
"Access-Control-Request-Headers": "authorization",
"Content-Type": "text/plain; charset=utf-8"
}
})).text();
};
return g({
...r,
queryKey: s.getReplyQueryKey(
e.threadId,
e.id,
e.messageKey
),
queryFn: t
});
}
function X(e) {
const r = c(), { accessToken: i, keyFactory: s } = u();
return y({
...e,
mutationFn: (t) => n.postReply(t, i),
onSuccess: async (t, a, o) => {
await Promise.all([
r.invalidateQueries({
queryKey: s.getAllRepliesQueryKey(t.threadId)
}),
// Posting a reply will add the subscription, so invalidate query for list of subscribers
r.invalidateQueries({
queryKey: s.getSubscribersQueryKey(
t.threadId,
l.THREAD
)
})
]), e?.onSuccess && await e.onSuccess(t, a, o);
}
});
}
function Y(e) {
const r = c(), { accessToken: i, keyFactory: s } = u();
return y({
...e,
mutationFn: (t) => n.putReply(t, i),
onSuccess: async (t, a, o) => {
await r.invalidateQueries({
queryKey: s.getAllRepliesQueryKey(t.threadId)
}), e?.onSuccess && await e.onSuccess(t, a, o);
}
});
}
function Z(e) {
const r = c(), { accessToken: i, keyFactory: s } = u();
return y({
...e,
mutationFn: (t) => n.deleteReply(i, t.replyId),
onSuccess: async (t, a, o) => {
await r.invalidateQueries({
queryKey: s.getAllRepliesQueryKey(a.threadId)
}), e?.onSuccess && await e.onSuccess(t, a, o);
}
});
}
export {
Z as useDeleteReply,
V as useGetRepliesInfinite,
W as useGetReply,
X as usePostReply,
Y as usePutReply
};
//# sourceMappingURL=useReply.js.map