Datalayer VS Code Extension - v0.0.9
    Preparing search index...

    Provider implementation for VS Code environment. Uses postMessage to communicate with extension's WebSocket adapter.

    Implements

    • Provider
    Index

    Constructors

    • Creates a new VS Code Loro provider instance

      Parameters

      • adapterId: string

        Unique adapter identifier for this provider

      • doc: LoroDoc

        Loro document instance for CRDT operations

      • userName: string

        Username for awareness state

      • userColor: string

        User's display color for awareness presence

      • OptionalwebsocketUrl: string

        Optional WebSocket URL for server connection

      Returns VSCodeLoroProvider

    Properties

    _awareness: AwarenessAdapter

    Awareness adapter for collaborative presence information

    adapterId: string

    Adapter ID for identifying messages from extension

    doc: LoroDoc

    Loro document for CRDT operations

    documentId: string

    Document ID extracted from adapter ID

    ephemeralStore: EphemeralStore

    Ephemeral store for awareness state (5 minute timeout)

    isSynced: boolean = false

    Flag indicating whether document is synchronized with server

    messageDisposable: Disposable = null

    Disposable for cleanup of message listener registration

    reloadListeners: Set<(doc: LoroDoc) => void> = ...

    Listeners for document reload events

    statusListeners: Set<(status: { status: string }) => void> = ...

    Listeners for connection status changes

    syncListeners: Set<(isSynced: boolean) => void> = ...

    Listeners for synchronization state changes

    updateListeners: Set<(update: unknown) => void> = ...

    Listeners for remote document updates

    websocketUrl: string

    WebSocket URL for server connection

    Accessors

    Methods

    • Unregister event listener for synchronization state changes

      Parameters

      • type: "sync"

        Event type 'sync'

      • cb: (isSynced: boolean) => void

        Callback function to remove

      Returns void

    • Unregister event listener for connection status changes

      Parameters

      • type: "status"

        Event type 'status'

      • cb: (status: { status: string }) => void

        Callback function to remove

      Returns void

    • Unregister event listener for remote document updates

      Parameters

      • type: "update"

        Event type 'update'

      • cb: (update: unknown) => void

        Callback function to remove

      Returns void

    • Unregister event listener for document reload events

      Parameters

      • type: "reload"

        Event type 'reload'

      • cb: (doc: LoroDoc) => void

        Callback function to remove

      Returns void

    • Register event listener for synchronization state changes

      Parameters

      • type: "sync"

        Event type 'sync'

      • cb: (isSynced: boolean) => void

        Callback function receiving sync state

      Returns void

    • Register event listener for connection status changes

      Parameters

      • type: "status"

        Event type 'status'

      • cb: (status: { status: string }) => void

        Callback function receiving status object

      Returns void

    • Register event listener for remote document updates

      Parameters

      • type: "update"

        Event type 'update'

      • cb: (update: unknown) => void

        Callback function receiving update data

      Returns void

    • Register event listener for document reload events

      Parameters

      • type: "reload"

        Event type 'reload'

      • cb: (doc: LoroDoc) => void

        Callback function receiving reloaded document

      Returns void