export function useAuthMutation<Mutation extends AuthFunction<"mutation">>(
name: Mutation
) {
const organization = useOrganization();
const clerkOrgId = organization?.organization?.id;
const originalMutation = useMutation(name);
return useCallback(
async (
...args: AuthArgsArray<Mutation>
): Promise<FunctionReturnType<Mutation>> => {
const newArgs = {
...(args[0] ?? {}),
clerkOrgId,
} as FunctionArgs<Mutation>;
return originalMutation(...([newArgs] as OptionalRestArgs<Mutation>));
},
[clerkOrgId, originalMutation]
);
}
export function useAuthMutation<Mutation extends AuthFunction<"mutation">>(
name: Mutation
) {
const organization = useOrganization();
const clerkOrgId = organization?.organization?.id;
const originalMutation = useMutation(name);
return useCallback(
async (
...args: AuthArgsArray<Mutation>
): Promise<FunctionReturnType<Mutation>> => {
const newArgs = {
...(args[0] ?? {}),
clerkOrgId,
} as FunctionArgs<Mutation>;
return originalMutation(...([newArgs] as OptionalRestArgs<Mutation>));
},
[clerkOrgId, originalMutation]
);
}