diff --git a/lib/infrastructure/local/drift_repositories.dart b/lib/infrastructure/local/drift_repositories.dart index 88ae116..37b6811 100644 --- a/lib/infrastructure/local/drift_repositories.dart +++ b/lib/infrastructure/local/drift_repositories.dart @@ -1823,7 +1823,10 @@ FROM ranked LEFT JOIN exercises ON exercises.id = ranked.source_exercise_id_snapshot GROUP BY ranked.exercise_key -ORDER BY last_performed_at DESC +ORDER BY is_archived ASC, + last_performed_at DESC, + exercise_name_snapshot COLLATE NOCASE ASC, + ranked.exercise_key ASC ''', variables: _projectionVariables(range)).get(); return rows .map( @@ -2745,6 +2748,9 @@ DateTime _dateTimeFromData(Map data, String key) { return value.toUtc(); } if (value is int) { + if (value.abs() < 100000000000) { + return DateTime.fromMillisecondsSinceEpoch(value * 1000, isUtc: true); + } return DateTime.fromMillisecondsSinceEpoch(value, isUtc: true); } throw domain.DomainException('Invalid timestamp column: $key'); @@ -2759,6 +2765,9 @@ DateTime? _dateTimeOrNullFromData(Map data, String key) { return value.toUtc(); } if (value is int) { + if (value.abs() < 100000000000) { + return DateTime.fromMillisecondsSinceEpoch(value * 1000, isUtc: true); + } return DateTime.fromMillisecondsSinceEpoch(value, isUtc: true); } throw domain.DomainException('Invalid timestamp column: $key');