1
1
import { ReactElement , useEffect , useRef , useState } from 'react'
2
- import { createLanguageClientManager , LanguageClientId , StatusChangeEvent } from '@codingame/monaco-languageclient-wrapper'
3
- import { LanguageClientManager , WillShutdownParams } from '@codingame/monaco-languageclient-wrapper/dist/languageClient'
2
+ import { createLanguageClientManager , LanguageClientId , StatusChangeEvent , LanguageClientManager , WillShutdownParams } from '@codingame/monaco-languageclient-wrapper'
4
3
5
4
export interface LanguageClientProps {
6
5
id : LanguageClientId
7
6
sessionId ?: string
8
7
languageServerUrl : string
8
+ useMutualizedProxy ?: boolean
9
9
getSecurityToken : ( ) => Promise < string >
10
10
libraryUrls ?: string [ ]
11
11
onError ?: ( error : Error ) => void
@@ -22,6 +22,7 @@ function LanguageClient ({
22
22
id,
23
23
sessionId,
24
24
languageServerUrl,
25
+ useMutualizedProxy,
25
26
getSecurityToken,
26
27
libraryUrls = defaultLibraryUrls ,
27
28
onError,
@@ -49,7 +50,7 @@ function LanguageClient ({
49
50
setWillShutdown ( false )
50
51
51
52
console . info ( `Starting language server for language ${ id } ` )
52
- const languageClient = createLanguageClientManager ( id , sessionId , languageServerUrl , getSecurityToken , libraryUrls )
53
+ const languageClient = createLanguageClientManager ( id , sessionId , languageServerUrl , getSecurityToken , libraryUrls , useMutualizedProxy )
53
54
languageClientRef . current = languageClient
54
55
const errorDisposable = languageClient . onError ( ( error : Error ) => {
55
56
if ( onErrorRef . current != null ) {
@@ -81,7 +82,7 @@ function LanguageClient ({
81
82
console . error ( 'Unable to dispose language client' , err )
82
83
} )
83
84
}
84
- } , [ getSecurityToken , id , languageServerUrl , libraryUrls , sessionId , counter ] )
85
+ } , [ getSecurityToken , id , languageServerUrl , libraryUrls , sessionId , counter , useMutualizedProxy ] )
85
86
86
87
useEffect ( ( ) => {
87
88
onErrorRef . current = onError
0 commit comments