SupabaseRemoteStore<T extends HasUpdatedAt, Id> class
Methods
-
batchDelete(List<Id> ids)
→ Future<void>
-
override
-
batchUpsert(List<T> items)
→ Future<void>
-
override
-
buildUpsertRows(List<T> items)
→ List<Map<String, dynamic>>
-
Build upsert rows with optional scope injection. Exposed for tests.
-
fetchSince(SyncScope scope, DateTime? since)
→ Future<Delta<T, Id>>
-
override
-
fetchSinceFromRawPages(SyncScope scope, DateTime? since, List<List<Map<String, dynamic>>> pages)
→ Future<Delta<T, Id>>
-
Test-only helper: simulate fetchSince over raw paginated pages without SDK.
-
filterRowsByScope(List<Map<String, dynamic>> rows, SyncScope scope)
→ List<Map<String, dynamic>>
-
Filter raw rows (maps) by scope equality.
Uses shallow map equality on scope keys to avoid reference equality pitfalls.
-
getById(Id id)
→ Future<T?>
-
override
-
getServerTime()
→ Future<DateTime>
-
override
-
groupDeletesByScope(List<Id> ids)
→ Map<SyncScope?, List<String>>
-
Group delete ids by scope (from callback or default). Exposed for tests.
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
parsePage(List<Map<String, dynamic>> rows)
→ (List<T>, List<Id>)
-
Parse a page of raw rows into upserts and deletes with defensive checks.
-
remoteSearch(SyncScope scope, QuerySpec spec)
→ Future<List<T>>
-
Search within a scope using a normalized query spec. Implementations should
apply soft-delete semantics and only support operators and fields that are
natively available on the backend. Unsupported operators/fields must throw
ArgumentError with a clear message.
override
-
toString()
→ String
-
A string representation of this object.
inherited