UNPKG

synapse-react-client

Version:

[![npm version](https://badge.fury.io/js/synapse-react-client.svg)](https://badge.fury.io/js/synapse-react-client) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettie

134 lines (133 loc) 3.96 kB
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