ditto_live library

The Flutter SDK for Ditto

Subclassing and SemVer

This package respects SemVer.

However, we reserve the right to add methods/fields/etc. to classes in a minor version release. In other words, adding a new API to a class does not constitute a breaking change.

Classes

Attachment
An attachment which can be used to insert the associated data into a document at a specific key-path. Instances of this class cannot not be created directly, instead use the Store.newAttachment and Store.fetchAttachment methods.
AttachmentFetcher
These objects are returned by calls to Store.fetchAttachment.
AttachmentFetchEvent
A representation of the events that can occur in relation to an attachment fetch.
AttachmentFetchEventCompleted
An attachment fetch event for when the download has completed.
AttachmentFetchEventDeleted
An attachment fetch event for when the attachment is deleted.
AttachmentFetchEventProgress
An attachment fetch event for when the download has progressed but is not yet complete.
AttachmentMetadata
Represents metadata for an attachment, defined as a key-value map.
AttachmentToken
An AttachmentToken can be passed in the arguments field of Store.execute to insert an attachment into a document, or used with Store.fetchAttachment to retrieve the attachment data.
AuthenticationHandler
An interface that can be implemented to receive updates about Ditto's authentication status
AuthenticationStatus
Provides info about the authentication status.
Authenticator
An object that provides access to authentication information and provides methods for logging into Ditto Cloud.
AuthResponse
Represents the result of a login attempt.
AwdlConfig
P2P AWDL configuration. Part of PeerToPeer.
BluetoothLEConfig
P2P BluetoothLE configuration. Part of PeerToPeer.
Connect
Specific servers that Ditto should attempt to connect to. TCP servers are specified as host:port. WebSocket URLs take the form wss://hydra.ditto.live.
Connection
Represents a connection between two peers in a Ditto mesh network.
ConnectionRequest
Contains information about a remote peer that has requested a connection.
Diff
Represents a diff between two arrays.
Differ
Calculates diffs between arrays of QueryResultItems.
DiffMove
Represents a move of an item from one index to another.
Ditto
The main entrypoint for all Ditto-related functionality.
DittoLogger
A class with static methods to customize the logging behavior for Ditto.
DocumentID
An identifier for a Ditto document
GlobalConfig
Settings not associated with any specific type of transport. Part of TransportConfig.
HttpListenConfig
HTTP & WebSocket listening configuration. Part of Listen.
Identity
The various identity configurations that you can use when initializing a Ditto instance.
LanConfig
P2P LAN configuration to configure peer discovery via mDNS or multicast. Part of PeerToPeer.
Listen
Configure this device as a Ditto server. Disabled by default.
ManualIdentity
A manually-provided certificate identity. This accepts a base64-encoded bundle.
OfflinePlaygroundIdentity
Initializes a peer-to-peer app with no cloud connection for development purposes.
OnlinePlaygroundIdentity
Initializes a Ditto Cloud app in "Playground mode" for development purposes.
OnlineWithAuthenticationIdentity
Run Ditto in secure production mode, logging on to Ditto Cloud or on on-premises authentication server.
Peer
Peer in the Ditto mesh.
PeerToPeer
Configuration of peer-to-peer transports, which are able to discover and connect to peers on their own.
Presence
An object that provides access to information about Ditto peers connected to this peer.
PresenceGraph
Graph of all known peers generated by Presence methods.
PresenceObserver
A handle returned from Presence.observe.
QueryResult
Represents the result of executing a DQL query.
QueryResultItem
Represents a single match of a DQL query, similar to a “row” in SQL terms.
SharedKeyIdentity
A mode where any device is trusted provided they know the secret key.
SiteID
A class representing a Ditto site ID as a custom unsigned 64-bit integer.
SmallPeerInfo
An object that provides access to Ditto's small peer info APIs.
Store
An object that provides access to Ditto's store.
StoreObserver
An object that tracks when results for its query change.
Sync
An object that provides sync-related functionality of Ditto.
SyncSubscription
Configures Ditto to receive updates from remote peers about documents matching the subscription's query.
TcpListenConfig
TCP listening configuration. Part of Listen.
Transaction
Represents a transaction in the Ditto store.
TransactionInfo
Encapsulates information about a transaction.
TransportConfig
A configuration object specifying which network transports Ditto should use to sync data.
WifiAwareConfig
P2P Wifi Aware configuration. Part of PeerToPeer.

Enums

AttachmentFetchEventType
The types of attachment fetch events that can be delivered to an attachment fetcher's callback.
ConnectionRequestAuthorization
Indicates whether a connection request should be authorized.
ConnectionType
The type of Connection between two Ditto peers, signaling what transport is being used for it.
LogLevel
The severity of a logging event
SmallPeerInfoSyncScope
Specifies which peers to replicate the small peer info to when enabled.
TransactionCompletionAction
Represents an action that completes a transaction, by either committing it or rolling it back.