blockTask method

  1. @override
Future<void> blockTask(
  1. String taskListId,
  2. String taskId,
  3. String blockedTaskId
)
override

Add a blocking relationship: taskId blocks blockedTaskId.

Implementation

@override
Future<void> blockTask(
  String taskListId,
  String taskId,
  String blockedTaskId,
) async {
  final blocker = _lists[taskListId]?[taskId];
  final blocked = _lists[taskListId]?[blockedTaskId];
  if (blocker != null && !blocker.blocks.contains(blockedTaskId)) {
    blocker.blocks = [...blocker.blocks, blockedTaskId];
  }
  if (blocked != null && !blocked.blockedBy.contains(taskId)) {
    blocked.blockedBy = [...blocked.blockedBy, taskId];
  }
}