queueDelete method

Future<void> queueDelete({
  1. required String collectionName,
  2. required String recordId,
})

Add delete operation to queue

Implementation

Future<void> queueDelete({
  required String collectionName,
  required String recordId,
}) async {
  final operation = SyncOperation()
    ..collectionName = collectionName
    ..operationType = 'delete'
    ..payload = jsonEncode({'recordId': recordId})
    ..timestamp = DateTime.now()
    ..status = 'pending'
    ..recordId = recordId;

  await _localStorage.addToSyncQueue(operation);

  _metrics.recordOperationQueued('delete');

  // Emit event
  _onEvent?.call(SyncEvent(
    type: SyncEventType.operationQueued,
    collectionName: collectionName,
    recordId: recordId,
    metadata: {'operationType': 'delete'},
  ));
}