reloadScoresAndPersistTimestamp function

Future<ScoreRefreshResult> reloadScoresAndPersistTimestamp(
  1. WidgetRef ref
)

Implementation

Future<ScoreRefreshResult> reloadScoresAndPersistTimestamp(
  WidgetRef ref,
) async {
  ref.invalidate(academicPerformanceProvider);
  final refreshedState = await ref.read(academicPerformanceProvider.future);

  if (!refreshedState.refreshedFromNetwork) {
    return (refreshedFromNetwork: false, updatedAt: null);
  }

  final now = DateTime.now();
  await saveScoreLastUpdatedToCache(ref, now);
  return (refreshedFromNetwork: true, updatedAt: now);
}