@univerjs-pro/collaboration-client v0.5.4


Class: SyncedState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:253

All local changesets are sent to and acknowledged by the server.

Extends

  • CollaborationState

Constructors

new SyncedState()

new SyncedState(
   unitID, 
   type, 
   handler, 
   revisionService, 
   _injector, 
   undoRedoService, 
   commandService, 
   _logService, 
   _transformService, 
   localCacheService?): SyncedState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:256

Parameters

ParameterType
unitIDstring
typeUniverType
handlerICollaborationStateHandler
revisionServiceRevisionService
_injectorInjector
undoRedoServiceICollaborativeUndoRedoService
commandServiceICommandService
_logServiceILogService
_transformServiceITransformService
localCacheService?ILocalCacheService

Returns

SyncedState

Overrides

CollaborationState.constructor

Properties

PropertyModifierTypeDefault valueDescriptionOverridesInherited fromDefined in
_awaitingChangesetprotectedNullable<IChangeset>nullMutations that has been sent to the server but not yet acknowledged by the server.-CollaborationState._awaitingChangesetpackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:92
_commandServicereadonlyICommandServiceundefined--CollaborationState._commandServicepackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:103
_handlerreadonlyICollaborationStateHandlerundefinedState may change internally. Parent module should provide a callback to handle this event.-CollaborationState._handlerpackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:102
_localCacheService?readonlyILocalCacheServiceundefined--CollaborationState._localCacheServicepackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:106
_pendingMutationsprotectedIMutationInfo[][]Mutations that has not been sent to the server.-CollaborationState._pendingMutationspackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:94
_revisionServicereadonlyRevisionServiceundefined--CollaborationState._revisionServicepackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:105
_undoRedoServicereadonlyICollaborativeUndoRedoServiceundefined--CollaborationState._undoRedoServicepackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:104
statusreadonlySYNCEDCollaborationStatus.SYNCED-CollaborationState.status-packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:254
typereadonlyUniverTypeundefined--CollaborationState.typepackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:98
unitIDreadonlystringundefined--CollaborationState.unitIDpackages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:97

Methods

_checkMissing()

protected _checkMissing(changeset): boolean

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:148

Check if there are some changesets missing. If true, the state should abort this changeset and request for missing changesets. Missing changesets will later be passed to onRemoteChangeset method.

Parameters

ParameterTypeDescription
changeset| IChangeset | IAcknowledgedChangesetThe changeset sent from the remote collaboration server.

Returns

boolean

There is some changeset missing.

Inherited from

CollaborationState._checkMissing

_executeRemoteChangeset()

protected _executeRemoteChangeset(changeset): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:224

Parameters

ParameterType
changesetIChangeset

Returns

void

Inherited from

CollaborationState._executeRemoteChangeset

_getCurrentRevision()

protected _getCurrentRevision(): number

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:216

Returns

number

Inherited from

CollaborationState._getCurrentRevision

_incrementRevisionNumber()

protected _incrementRevisionNumber(): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:220

Returns

void

Inherited from

CollaborationState._incrementRevisionNumber

_syncEditingCollabCursor()

protected _syncEditingCollabCursor(changeset): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:190

Parameters

ParameterType
changesetIChangeset

Returns

void

Inherited from

CollaborationState._syncEditingCollabCursor

_transformIMECache()

protected _transformIMECache(changeset): undefined | void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:173

Parameters

ParameterType
changesetIChangeset

Returns

undefined | void

Inherited from

CollaborationState._transformIMECache

_transformRemoteChangesetByIMECache()

protected _transformRemoteChangesetByIMECache(changeset): IChangeset

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:181

Parameters

ParameterType
changesetIChangeset

Returns

IChangeset

Inherited from

CollaborationState._transformRemoteChangesetByIMECache

_transformRemoteChangesetByStateCache()

protected _transformRemoteChangesetByStateCache(changeset): IChangeset

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:185

Parameters

ParameterType
changesetIChangeset

Returns

IChangeset

Inherited from

CollaborationState._transformRemoteChangesetByStateCache

_transformSelections()

protected _transformSelections(changeset): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:169

Transform selections by calling the selection manager service.

Parameters

ParameterType
changesetIChangeset

Returns

void

Inherited from

CollaborationState._transformSelections

_transformStateCache()

protected _transformStateCache(changeset): undefined | void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:177

Parameters

ParameterType
changesetIChangeset

Returns

undefined | void

Inherited from

CollaborationState._transformStateCache

_transformUndoredo()

protected _transformUndoredo(changeset): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:164

Transform undo redo mutations in the undo redo stack.

Parameters

ParameterType
changesetIChangeset

Returns

void

Inherited from

CollaborationState._transformUndoredo

_updateLocalCache()

_updateLocalCache(): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:207

Internal

Returns

void

Inherited from

CollaborationState._updateLocalCache

appendMutation()

appendMutation(mutation): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:281

Append a location mutation to collaboration queue.

Parameters

ParameterTypeDescription
mutationIMutationInfoa mutation that happened locally and should be broadcasted to other peers

Returns

CollaborationState

Overrides

CollaborationState.appendMutation

fetchMiss()

fetchMiss(): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:361

Returns

CollaborationState


onRemoteAck()

onRemoteAck(): never

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:335

Received an acknowledgement from the server.

Returns

never

Overrides

CollaborationState.onRemoteAck

onRemoteChangeset()

onRemoteChangeset(changeset): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:290

Received a changeset from the server.

Parameters

ParameterType
changesetIChangeset

Returns

CollaborationState

Overrides

CollaborationState.onRemoteChangeset

onRemoteRej()

onRemoteRej(): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:340

Received a rejection from the server, meaning that conflict could be resolved by the algorithm.

Returns

CollaborationState

Overrides

CollaborationState.onRemoteRej

onRemoteRetry()

onRemoteRetry(): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:345

Received a retry message from the server, meaning that some unexpected error occurred in server.

Returns

CollaborationState

Overrides

CollaborationState.onRemoteRetry

resend()

resend(): void

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:357

Returns

void

Overrides

CollaborationState.resend

toggleOffline()

toggleOffline(): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:349

Returns

CollaborationState

Overrides

CollaborationState.toggleOffline

toggleOnline()

toggleOnline(): CollaborationState

Defined in: packages/collaboration-client/src/controllers/collaboration/collaboration-state.ts:353

Returns

CollaborationState

Overrides

CollaborationState.toggleOnline