getAutoWindow static method

MBTimeWindow getAutoWindow(
  1. MBTimeWindow timeWindow,
  2. List<PointData> parsedPoints
)

Implementation

static MBTimeWindow getAutoWindow(
    MBTimeWindow timeWindow, List<PointData> parsedPoints) {
  MBTimeWindow selectedWindow = timeWindow;
  final DateTime now = DateTime.now();

  if (timeWindow == MBTimeWindow.auto && parsedPoints.isNotEmpty) {
    final Duration dataRange = now.difference(parsedPoints.last.timestamp);
    if (dataRange.inMinutes <= 1)
      selectedWindow = MBTimeWindow.lastMinute;
    else if (dataRange.inMinutes <= 15)
      selectedWindow = MBTimeWindow.last15Minutes;
    else if (dataRange.inMinutes <= 60)
      selectedWindow = MBTimeWindow.lastHour;
    else if (dataRange.inHours <= 24)
      selectedWindow = MBTimeWindow.last24Hours;
    else if (dataRange.inDays <= 7)
      selectedWindow = MBTimeWindow.last7Days;
    else if (dataRange.inDays <= 30)
      selectedWindow = MBTimeWindow.last30Days;
    else if (dataRange.inDays <= 365)
      selectedWindow = MBTimeWindow.pastYear;
    else
      selectedWindow = MBTimeWindow.none;
  }

  return selectedWindow;
}