ZenMutation<TData, TVariables> constructor

ZenMutation<TData, TVariables>({
  1. required Future<TData> mutationFn(
    1. TVariables variables
    ),
  2. FutureOr<Object?> onMutate(
    1. TVariables variables
    )?,
  3. void onSuccess(
    1. TData data,
    2. TVariables variables,
    3. Object? context
    )?,
  4. void onError(
    1. Object error,
    2. TVariables variables,
    3. Object? context
    )?,
  5. void onSettled(
    1. TData? data,
    2. Object? error,
    3. TVariables variables,
    4. Object? context,
    )?,
})

Implementation

ZenMutation({
  required this.mutationFn,
  this.onMutate,
  this.onSuccess,
  this.onError,
  this.onSettled,
}) {
  // AUTOMATIC CHILD CONTROLLER TRACKING
  // If a parent controller is currently initializing (onInit is running),
  // automatically register this mutation with it for automatic disposal
  if (ZenController.currentParentController != null) {
    ZenController.currentParentController!.trackController(this);
  }
}