fetchSinceFromRawPages method
Test-only helper: simulate fetchSince over raw paginated pages without SDK.
Implementation
Future<Delta<T, Id>> fetchSinceFromRawPages(
SyncScope scope,
DateTime? since,
List<List<Map<String, dynamic>>> pages,
) async {
final upserts = <T>[];
final deletes = <Id>[];
for (final page in pages) {
final scoped = filterRowsByScope(page, scope);
final filtered = since == null
? scoped
: scoped.where((m) {
final ts = m[config.updatedAtColumn];
if (ts is String) {
return DateTime.parse(ts).isAfter(since);
}
return false;
}).toList();
final (ups, dels) = parsePage(filtered);
upserts.addAll(ups);
deletes.addAll(dels);
}
final serverTs = await getServerTime();
return Delta<T, Id>(
upserts: upserts,
deletes: deletes,
serverTimestamp: serverTs,
);
}