brick_offline_first library

Classes

And
Generate a required condition.
LimitBy
Construct directions for a provider to limit its results.
OfflineFirst
Low-level field config for the OfflineFirst domain.
OfflineFirstAdapter<_Model extends OfflineFirstModel>
This adapter fetches first from SqliteProvider then hydrates with from a remote provider.
OfflineFirstModel
This model is constructed by data in SQLite. It hydrates from a REST endpoint.
OfflineFirstRepository<TRepositoryModel extends OfflineFirstModel>
A ModelRepository that interacts with a SqliteProvider first before using a Provider from a remote source.
OfflineFirstSerdes<RemoteSerializeType, SqliteSerializeType>
A class that isn't connected to the OfflineFirstRepository but is still used by OfflineFirstModels (such as a Cash class that declares amount and currency). OfflineFirstSerdes must extend the class in end implementation.
Or
Generate an optional condition.
OrderBy
Construct directions for a provider to sort its results.
ProviderQuery<T extends Provider<Model>>
Specify query arguments that are exclusive to a specific Provider. For example, configuring a REST's POST method.
Query
An interface to request data from a Provider or ModelRepository.
RuntimeOfflineFirstDefinition
Used to define types in OfflineFirstAdapter#fieldsToOfflineFirstRuntimeDefinition. The build runner package extracts types and associations that would've been otherwise inaccessible at runtime.
Where
A condition that evaluates to true in the Provider should return Model.
WhereCondition
Lower-level control over the value of a Query#where map.
WherePhrase
A collection of conditions that are evaluated together.

Enums

Compare
Specify how to evalute the WhereCondition.value against the WhereCondition.evaluatedField in a WhereCondition. For size operators, a left side comparison is done.
OfflineFirstDeletePolicy
Behaviors for how the repository should handle delete requests
OfflineFirstGetPolicy
Data will always be returned from local providers and never directly from a remote provider(s)
OfflineFirstUpsertPolicy
Behaviors for how the repository should handle upsert requests
QueryAction
How the query interacts with the provider

Exceptions / Errors

OfflineFirstException
An exception thrown by the remote provider or the SqliteProvider. An implementation may choose to ignore this error if the remote exception is not important to the requested behavior.