Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | 2x 2x 2x 8x 7x 7x 2x 1x 2x 1x 7x | import { notificationSettingsQueryKey } from "features/queryKeys"; import { RpcError } from "grpc-web"; import { GetNotificationSettingsRes } from "proto/notifications_pb"; import { useMutation, useQueryClient } from "react-query"; import { service } from "service"; import { NotificationPreferenceData } from "service/notifications"; import { SetMutationError } from "utils/setMutationError"; export default function useUpdateNotificationSettings() { const queryClient = useQueryClient(); const { mutate: updateNotificationSettings, reset, isLoading, isError, isSuccess, status, } = useMutation< GetNotificationSettingsRes.AsObject, RpcError, { preferenceData: NotificationPreferenceData; setMutationError: SetMutationError; } >( ({ preferenceData }: { preferenceData: NotificationPreferenceData }) => service.notifications.setNotificationSettingsPreference(preferenceData), { onError: (error, { setMutationError }) => { setMutationError(error.message); }, onMutate: ({ setMutationError }) => { setMutationError(null); }, onSuccess: () => { queryClient.invalidateQueries(notificationSettingsQueryKey); }, } ); return { updateNotificationSettings, reset, isLoading, isError, isSuccess, status, }; } |