resolve method
T
resolve(
- T local,
- T remote
)
override
Implementation
@override
T resolve(T local, T remote) {
// Assuming models have a timestamp field
// This is a generic implementation - specific models should override
if (local is Map && remote is Map) {
final localTimestamp = local['timestamp'] ?? 0;
final remoteTimestamp = remote['timestamp'] ?? 0;
return localTimestamp >= remoteTimestamp ? local : remote;
}
// For objects with timestamp property
try {
final localTimestamp = (local as dynamic).timestamp ?? 0;
final remoteTimestamp = (remote as dynamic).timestamp ?? 0;
return localTimestamp >= remoteTimestamp ? local : remote;
} catch (e) {
// Fallback to client wins if timestamp comparison fails
return local;
}
}