offlineOutbox function

  1. @Riverpod(keepAlive: true)
OfflineOutbox? offlineOutbox(
  1. Ref<Object?> ref
)

Append-only queue of pending Supabase writes that the device couldn't flush online. null on web (no sqlite3 / dart:io). Initialized lazily — callers must await initialize() before use; eager-init at app startup is a future polish (see riverpod-eager-initialization).

Implementation

@Riverpod(keepAlive: true)
OfflineOutbox? offlineOutbox(Ref ref) {
  if (kIsWeb) return null;
  final outbox = OfflineOutbox();
  ref.onDispose(outbox.dispose);
  return outbox;
}