MCPcopy Create free account
hub / github.com/dailydotdev/apps / useQuerySubscription

Function useQuerySubscription

packages/shared/src/hooks/useQuerySubscription.ts:8–37  ·  view source on GitHub ↗
(
  callback: (props: {
    mutation: Mutation<TData, TError, TVariables, TContext>;
    variables: TVariables;
  }) => void,
  { mutationKey }: UseMutationOptions<TData, TError, TVariables, TContext>,
)

Source from the content-addressed store, hash-verified

6import { useMutationSubscription } from './mutationSubscription';
7
8export const useQuerySubscription = <
9 TData = unknown,
10 TError = DefaultError,
11 TVariables = void,
12 TContext = unknown,
13>(
14 callback: (props: {
15 mutation: Mutation<TData, TError, TVariables, TContext>;
16 variables: TVariables;
17 }) => void,
18 { mutationKey }: UseMutationOptions<TData, TError, TVariables, TContext>,
19): void => {
20 useMutationSubscription({
21 matcher: ({ mutation }) => {
22 return (
23 JSON.stringify(mutation.options.mutationKey) ===
24 JSON.stringify(mutationKey)
25 );
26 },
27 callback: ({ mutation, variables: mutationVariables }) => {
28 // can potentially use zod here to validate mutation/variables against schema
29 // to avoid just casting, but already type safety is much better
30
31 callback({
32 mutation: mutation as Mutation<TData, TError, TVariables, TContext>,
33 variables: mutationVariables as TVariables,
34 });
35 },
36 });
37};

Callers

nothing calls this directly

Calls 2

useMutationSubscriptionFunction · 0.90
callbackFunction · 0.50

Tested by

no test coverage detected