closestIndexTo method

int? closestIndexTo(
  1. Iterable<DateTime> datesArray
)

Get index of the closest day to current one, returns null if empty Iterable is passed as argument

Implementation

int? closestIndexTo(Iterable<DateTime> datesArray) {
  final differences = datesArray.map((date) {
    return date.difference(this).abs();
  });

  if (datesArray.isEmpty) {
    return null;
  }

  var index = 0;
  for (var i = 0; i < differences.length; i++) {
    if (differences.elementAt(i) < differences.elementAt(index)) {
      index = i;
    }
  }
  return index;
}