fix: in lastUsedByActivityType, check for uses with specific activity type (#1413)

pull/1593/head
ggurdin 10 months ago committed by GitHub
parent 28757d603a
commit bfe8789485
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -466,17 +466,20 @@ class PangeaToken {
} }
/// lastUsed by activity type /// lastUsed by activity type
DateTime? _lastUsedByActivityType(ActivityTypeEnum a) => DateTime? _lastUsedByActivityType(ActivityTypeEnum a) {
constructs.where((c) => a.constructFilter(c.id)).fold<DateTime?>( final List<ConstructUses> filteredConstructs =
null, constructs.where((c) => a.constructFilter(c.id)).toList();
(previousValue, element) { final correctUseTimestamps = filteredConstructs
if (previousValue == null) return element.lastUsed; .expand((c) => c.uses)
if (element.lastUsed == null) return previousValue; .where((u) => u.useType == a.correctUse)
return element.lastUsed!.isAfter(previousValue) .map((u) => u.timeStamp)
? element.lastUsed .toList();
: previousValue;
}, if (correctUseTimestamps.isEmpty) return null;
);
// return the most recent timestamp
return correctUseTimestamps.reduce((a, b) => a.isAfter(b) ? a : b);
}
/// daysSinceLastUse by activity type /// daysSinceLastUse by activity type
int daysSinceLastUseByType(ActivityTypeEnum a) { int daysSinceLastUseByType(ActivityTypeEnum a) {

Loading…
Cancel
Save