getNextReviewDate method

Future<DateTime?> getNextReviewDate()

Implementation

Future<DateTime?> getNextReviewDate() async {
  final userId = _client.auth.currentUser?.id;
  if (userId == null) return null;

  final now = DateTime.now().toIso8601String();
  final response = await _client
      .from('review_cards')
      .select('next_review_at')
      .eq('user_id', userId)
      .gt('next_review_at', now)
      .order('next_review_at', ascending: true)
      .limit(1)
      .maybeSingle();
  if (response == null) return null;
  return DateTime.parse(response['next_review_at'] as String);
}