getPendingChanges method
Implementation
@override
Future<List<T>> getPendingChanges() async {
final box = await _box;
final pending = <T>[];
for (final key in box.keys) {
final data = box.get(key);
Map<String, dynamic>? map;
if (storeAsMap && data is Map) {
map = Map<String, dynamic>.from(data);
} else if (!storeAsMap && serializer != null) {
map = serializer!(data);
}
if (map != null) {
final status = SyncStatus.values[map['_syncStatus'] ?? 0];
if (status == SyncStatus.pending) {
final model = _deserializeModel(map);
try {
(model as dynamic)._syncAction = SyncAction.values[map['_syncAction'] ?? 0];
} catch (_) {}
pending.add(model);
}
}
}
return pending;
}