copyWith method

NodeModel<T, E> copyWith({
  1. Vector2? position,
  2. String? id,
  3. T? data,
  4. List<NodeSocketModel<E>>? inputSockets,
  5. List<NodeSocketModel<E>>? outputSockets,
})

Implementation

NodeModel<T, E> copyWith({
  Vector2? position,
  String? id,
  T? data,
  List<NodeSocketModel<E>>? inputSockets,
  List<NodeSocketModel<E>>? outputSockets,
}) {
  return NodeModel<T, E>(
    position: position ?? this.position.copy(),
    id: id ?? this.id,
    data: data ?? this.data,
    inputSockets:
        inputSockets ?? this.inputSockets.map((s) => s.copy()).toList(),
    outputSockets:
        outputSockets ?? this.outputSockets.map((s) => s.copy()).toList(),
  );
}