checkTimeIsOverlapping static method

bool checkTimeIsOverlapping(
  1. DateTimeRange<DateTime> meeting,
  2. List<DateTimeRange<DateTime>> availableSlots,
  3. List<DateTimeRange<DateTime>> blockedSlots,
  4. Duration bufferTime,
  5. DateTime selectedDate,
)

Implementation

static bool checkTimeIsOverlapping(
  DateTimeRange meeting,
  List<DateTimeRange> availableSlots,
  List<DateTimeRange> blockedSlots,
  Duration bufferTime,
  DateTime selectedDate,
) {
  bool isOverlapping = false;

  List<DateTimeRange> mergedSlots = blockedSlots.isNotEmpty
      ? adjustAvailableSlots(
          availableSlots,
          blockedSlots,
          bufferTime,
          selectedDate,
        )
      : availableSlots;
  for (var mergedSlot in mergedSlots) {
    if (mergedSlot.timeIsValid(meeting)) {
      isOverlapping = true;
      break;
    }
  }
  return isOverlapping;
}