API Reference / @modelence/react-query / modelenceMutation

modelenceMutation<T>(methodName, defaultArgs): object

Defined in: index.ts:75

Creates mutation options for use with TanStack Query’s useMutation hook.

Example

import { useMutation, useQueryClient } from '@tanstack/react-query';
import { modelenceMutation } from '@modelence/react-query';

function MyComponent() {
  const queryClient = useQueryClient();
  
  // Basic usage
  const { mutate } = useMutation(modelenceMutation('todos.create'));

  // With additional options
  const { mutate: updateTodo } = useMutation({
    ...modelenceMutation('todos.update'),
    onSuccess: () => {
      queryClient.invalidateQueries({ queryKey: ['todos.getAll'] });
    },
  });

  return <button onClick={() => mutate({ title: 'New Todo' })}>Create</button>;
}

Type Parameters

Type ParameterDefault typeDescription
TunknownThe expected return type of the mutation

Parameters

ParameterTypeDescription
methodNamestringThe name of the method to mutate
defaultArgsArgsOptional default arguments to merge with mutation variables

Returns

object

Mutation options object for TanStack Query’s useMutation

NameTypeDefined in
mutationFn()(variables) => Promise<T>index.ts:80

API Reference / @modelence/react-query / modelenceMutation

modelenceMutation<T>(methodName, defaultArgs): object

Defined in: index.ts:75

Creates mutation options for use with TanStack Query’s useMutation hook.

Example

import { useMutation, useQueryClient } from '@tanstack/react-query';
import { modelenceMutation } from '@modelence/react-query';

function MyComponent() {
  const queryClient = useQueryClient();
  
  // Basic usage
  const { mutate } = useMutation(modelenceMutation('todos.create'));

  // With additional options
  const { mutate: updateTodo } = useMutation({
    ...modelenceMutation('todos.update'),
    onSuccess: () => {
      queryClient.invalidateQueries({ queryKey: ['todos.getAll'] });
    },
  });

  return <button onClick={() => mutate({ title: 'New Todo' })}>Create</button>;
}

Type Parameters

Type ParameterDefault typeDescription
TunknownThe expected return type of the mutation

Parameters

ParameterTypeDescription
methodNamestringThe name of the method to mutate
defaultArgsArgsOptional default arguments to merge with mutation variables

Returns

object

Mutation options object for TanStack Query’s useMutation

NameTypeDefined in
mutationFn()(variables) => Promise<T>index.ts:80