sync method

  1. @override
Future<void> sync(
  1. List<AiChatItem> inserts,
  2. List<String> deletes
)
override

This call should be atomic to ensure data integrity

Implementation

@override
Future<void> sync(List<AiChatItem> inserts, List<String> deletes) async {
  state = [...state, ...inserts]
      .whereNot((e) => deletes.contains(e.id))
      .sorted((a, b) => a.timestamp.compareTo(b.timestamp))
      .toList();
}