onChanges method

void onChanges(
  1. RelayChangesMessage message
)

Imports change blobs rebroadcast by the relay.

CRDTDocument.importChanges de-duplicates, so re-delivered blobs are harmless.

Implementation

void onChanges(RelayChangesMessage message) {
  document.importChanges([
    for (final blob in message.changes) Change.fromBytes(base64Decode(blob)),
  ]);
  _seqTracker.addRange(
    from: message.seq - message.changes.length,
    to: message.seq,
  );
}