@jsvision/code-editor / CodeEditorLspCoordinator
Class: CodeEditorLspCoordinator
Defined in: code-editor/src/lsp/coordinator.ts:72
Coordinates one document with an optional transport-neutral LSP session.
Example
const coordinator = new CodeEditorLspCoordinator({ document, uri, languageId: 'typescript' });
await coordinator.open();Constructors
Constructor
new CodeEditorLspCoordinator(
options):CodeEditorLspCoordinator
Defined in: code-editor/src/lsp/coordinator.ts:157
Parameters
options
CreateCodeEditorLspCoordinatorOptions
Returns
CodeEditorLspCoordinator
Properties
closed
closed:
boolean=false
Defined in: code-editor/src/lsp/coordinator.ts:73
localCapabilities
readonlylocalCapabilities:LocalCapabilityState=defaultLocalCapabilities
Defined in: code-editor/src/lsp/coordinator.ts:74
Accessors
commandAvailability
Get Signature
get commandAvailability():
CodeEditorLspCommandAvailability
Defined in: code-editor/src/lsp/coordinator.ts:815
Reports commands enabled by the current negotiated session capabilities.
Returns
CodeEditorLspCommandAvailability
document
Get Signature
get document():
CodeEditorDocumentModel
Defined in: code-editor/src/lsp/coordinator.ts:262
Returns the document model controlled by this coordinator.
Returns
operationState
Get Signature
get operationState():
"idle"|"waiting"|"pending"
Defined in: code-editor/src/lsp/coordinator.ts:121
Current request indicator used by status and accessibility presentation.
Returns
"idle" | "waiting" | "pending"
Set Signature
set operationState(
value):void
Defined in: code-editor/src/lsp/coordinator.ts:125
Parameters
value
"idle" | "waiting" | "pending"
Returns
void
presentation
Get Signature
get presentation():
CodeEditorLspPresentation
Defined in: code-editor/src/lsp/coordinator.ts:132
Current bounded assistance presentation.
Returns
Set Signature
set presentation(
value):void
Defined in: code-editor/src/lsp/coordinator.ts:136
Parameters
value
Returns
void
retainedState
Get Signature
get retainedState():
object
Defined in: code-editor/src/lsp/coordinator.ts:245
Returns content-free retained protocol counters for lifecycle inspection.
Returns
object
completions
readonlycompletions:number
diagnostics
readonlydiagnostics:number
pendingRequests
readonlypendingRequests:number
snippetPlaceholders
readonlysnippetPlaceholders:number
symbols
readonlysymbols:number
serviceState
Get Signature
get serviceState():
LspServiceState
Defined in: code-editor/src/lsp/coordinator.ts:110
Current language-service lifecycle state.
Returns
Set Signature
set serviceState(
value):void
Defined in: code-editor/src/lsp/coordinator.ts:114
Parameters
value
Returns
void
snippet
Get Signature
get snippet():
SnippetInteractionState|undefined
Defined in: code-editor/src/lsp/coordinator.ts:147
Current internal snippet traversal state retained for compatibility.
Returns
SnippetInteractionState | undefined
Set Signature
set snippet(
value):void
Defined in: code-editor/src/lsp/coordinator.ts:151
Parameters
value
SnippetInteractionState | undefined
Returns
void
state
Get Signature
get state():
CodeEditorLspStateSnapshot
Defined in: code-editor/src/lsp/coordinator.ts:267
Returns the latest immutable render-facing coordinator state.
Returns
Methods
acceptCompletion()
acceptCompletion(
_options?):void
Defined in: code-editor/src/lsp/coordinator.ts:568
Applies the selected completion atomically, without executing its command field.
Parameters
_options?
execute?
(value) => void
Returns
void
bindMutationSink()
bindMutationSink(
sink):CodeEditorDisposable
Defined in: code-editor/src/lsp/coordinator.ts:300
Delegates provider mutations to one controller for this exact document.
Standalone coordinators continue to use their validated direct-document fallback until bound.
Parameters
sink
Returns
Throws
When the sink belongs to another document.
Throws
When another live sink already owns mutation integration.
caretChanged()
caretChanged():
void
Defined in: code-editor/src/lsp/coordinator.ts:634
Invalidates caret-context assistance after a local caret move.
Returns
void
chooseDocumentSymbol()
chooseDocumentSymbol(
index):boolean
Defined in: code-editor/src/lsp/coordinator.ts:654
Chooses one current-document symbol.
Parameters
index
number
Returns
boolean
chooseNavigationTarget()
chooseNavigationTarget(
index):Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:674
Chooses one previously validated navigation target.
Parameters
index
number
Returns
Promise<void>
close()
close():
Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:397
Closes protocol state and leaves local save/edit/close behavior available.
Returns
Promise<void>
configureLimits()
configureLimits(
limits):void
Defined in: code-editor/src/lsp/coordinator.ts:237
Applies a controller-owned limit projection before protocol requests begin.
Parameters
limits
{ completionItems?: number; contentCharacters?: number; diagnostics?: number; edits?: number; replacementCharacters?: number; } | undefined
Returns
void
dismissTransientAssistance()
dismissTransientAssistance():
void
Defined in: code-editor/src/lsp/coordinator.ts:647
Dismisses transient popups while preserving diagnostics and local editing state.
Returns
void
Example
coordinator.dismissTransientAssistance();documentChanged()
documentChanged():
void
Defined in: code-editor/src/lsp/coordinator.ts:625
Ends snippet mode after an external or conflicting document edit.
Returns
void
formatDocument()
formatDocument():
CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:545
Requests whole-document formatting.
Returns
formatRange()
formatRange(
range):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:553
Requests formatting for one validated selected range.
Parameters
range
Returns
forwardCommand()
forwardCommand(
command):Promise<boolean>
Defined in: code-editor/src/lsp/coordinator.ts:694
Forwards only a bounded command identifier to the host authorization seam.
Parameters
command
unknown
Returns
Promise<boolean>
handleKey()
handleKey(
key):"completion"|"snippet"|"editor"|"unhandled"
Defined in: code-editor/src/lsp/coordinator.ts:604
Routes assistance keys without consuming unrelated editor commands.
Parameters
key
key
string
shift?
boolean
text?
string
Returns
"completion" | "snippet" | "editor" | "unhandled"
navigateBack()
navigateBack():
boolean
Defined in: code-editor/src/lsp/coordinator.ts:666
Returns to the latest bounded local navigation origin.
Returns
boolean
open()
open():
Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:315
Opens the active protocol document after validating its URI.
Returns
Promise<void>
proposeWorkspaceEdit()
proposeWorkspaceEdit(
edit):Promise<boolean>
Defined in: code-editor/src/lsp/coordinator.ts:680
Forwards a cross-document edit proposal to the host without applying it.
Parameters
edit
unknown
Returns
Promise<boolean>
requestCompletion()
requestCompletion(
position):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:422
Requests completion for one current UTF-16 position.
Parameters
position
Returns
requestDefinition()
requestDefinition(
position):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:520
Requests definition-style navigation.
Parameters
position
Returns
requestDocumentSymbols()
requestDocumentSymbols():
CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:536
Requests bounded document symbols.
Returns
requestHover()
requestHover(
position,viewport?):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:472
Requests explicit hover content for one caret position.
Parameters
position
viewport?
height
number
width
number
Returns
requestSignature()
requestSignature(
position):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:484
Requests signature help and a non-color active-parameter marker.
Parameters
position
Returns
resynchronize()
resynchronize():
Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:358
Reopens the current document after a session generation change.
Returns
Promise<void>
save()
save():
Promise<{formatting:string;identity:DocumentIdentity;text:string; }>
Defined in: code-editor/src/lsp/coordinator.ts:757
Returns text for host saving, applying opt-in valid current formatting when available.
Returns
Promise<{ formatting: string; identity: DocumentIdentity; text: string; }>
setLanguage()
setLanguage(
languageId):Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:383
Replaces the active language while preserving document text and resynchronizing protocol state.
Parameters
languageId
string
Returns
Promise<void>
setUri()
setUri(
uri):Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:391
Replaces the active URI while preserving document text and resynchronizing protocol state.
Parameters
uri
string
Returns
Promise<void>
subscribeState()
subscribeState(
listener):CodeEditorDisposable
Defined in: code-editor/src/lsp/coordinator.ts:278
Subscribes to coalesced render-facing coordinator changes.
Listener failures are isolated so one embedding host cannot block other editors.
Parameters
listener
(state) => void
Returns
Throws
When the bounded listener capacity has been reached.
synchronize()
synchronize():
Promise<void>
Defined in: code-editor/src/lsp/coordinator.ts:327
Sends the current revision in protocol order and releases queued requests.
Returns
Promise<void>
tick()
tick():
void
Defined in: code-editor/src/lsp/coordinator.ts:810
Advances the pending indicator using the injected monotonic clock.
Returns
void
triggerCompletion()
triggerCompletion(
character,position):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:460
Requests completion only for a currently negotiated trigger character.
Parameters
character
string
position
Returns
triggerSignature()
triggerSignature(
character,position):CodeEditorLspOperation
Defined in: code-editor/src/lsp/coordinator.ts:508
Requests signature help only for a currently negotiated trigger character.
Parameters
character
string