@jupyterlab/lsp 4.0.6 → 4.1.0-alpha.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/adapters/adapter.d.ts +4 -1
- package/lib/adapters/adapter.js +21 -0
- package/lib/adapters/adapter.js.map +1 -1
- package/lib/adapters/editorAdapter.d.ts +74 -0
- package/lib/adapters/editorAdapter.js +53 -0
- package/lib/adapters/editorAdapter.js.map +1 -0
- package/lib/adapters/index.d.ts +3 -0
- package/lib/adapters/index.js +6 -0
- package/lib/adapters/index.js.map +1 -0
- package/lib/adapters/tracker.d.ts +106 -0
- package/lib/adapters/tracker.js +175 -0
- package/lib/adapters/tracker.js.map +1 -0
- package/lib/connection_manager.d.ts +11 -5
- package/lib/connection_manager.js +10 -0
- package/lib/connection_manager.js.map +1 -1
- package/lib/feature.d.ts +7 -2
- package/lib/feature.js +17 -4
- package/lib/feature.js.map +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/lsp.d.ts +1 -0
- package/lib/lsp.js.map +1 -1
- package/lib/tokens.d.ts +106 -9
- package/lib/tokens.js +8 -0
- package/lib/tokens.js.map +1 -1
- package/lib/virtual/document.d.ts +1 -2
- package/lib/virtual/document.js +22 -5
- package/lib/virtual/document.js.map +1 -1
- package/package.json +10 -11
- package/src/adapters/adapter.ts +34 -2
- package/src/adapters/editorAdapter.ts +131 -0
- package/src/adapters/index.ts +6 -0
- package/src/adapters/tracker.ts +222 -0
- package/src/connection_manager.ts +23 -7
- package/src/feature.ts +20 -5
- package/src/index.ts +1 -1
- package/src/lsp.ts +2 -0
- package/src/tokens.ts +126 -12
- package/src/virtual/document.ts +26 -6
- package/style/index.css +2 -0
- package/style/index.js +2 -0
|
@@ -36,7 +36,7 @@ export interface IAdapterOptions {
|
|
|
36
36
|
* as this would make the logic of inspections caching impossible to maintain, thus the WidgetAdapter
|
|
37
37
|
* has to handle that, keeping multiple connections and multiple virtual documents.
|
|
38
38
|
*/
|
|
39
|
-
export declare abstract class WidgetLSPAdapter<T extends IDocumentWidget> implements IDisposable {
|
|
39
|
+
export declare abstract class WidgetLSPAdapter<T extends IDocumentWidget = IDocumentWidget> implements IDisposable {
|
|
40
40
|
widget: T;
|
|
41
41
|
protected options: IAdapterOptions;
|
|
42
42
|
constructor(widget: T, options: IAdapterOptions);
|
|
@@ -227,6 +227,9 @@ export declare abstract class WidgetLSPAdapter<T extends IDocumentWidget> implem
|
|
|
227
227
|
private _isConnected;
|
|
228
228
|
private _updateFinished;
|
|
229
229
|
private _virtualDocument;
|
|
230
|
+
private _editorToAdapter;
|
|
231
|
+
private _onEditorAdded;
|
|
232
|
+
private _onEditorRemoved;
|
|
230
233
|
/**
|
|
231
234
|
* Callback called when a foreign document is closed,
|
|
232
235
|
* the associated signals with this virtual document
|
package/lib/adapters/adapter.js
CHANGED
|
@@ -4,6 +4,7 @@ import mergeWith from 'lodash.mergewith';
|
|
|
4
4
|
import { Dialog, showDialog } from '@jupyterlab/apputils';
|
|
5
5
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
6
6
|
import { Signal } from '@lumino/signaling';
|
|
7
|
+
import { EditorAdapter } from './editorAdapter';
|
|
7
8
|
const createButton = Dialog.createButton;
|
|
8
9
|
/**
|
|
9
10
|
* The values should follow the https://microsoft.github.io/language-server-protocol/specification guidelines
|
|
@@ -56,6 +57,9 @@ export class WidgetLSPAdapter {
|
|
|
56
57
|
this.widget.context.saveState.connect(this.onSaveState, this);
|
|
57
58
|
this.connectionManager.closed.connect(this.onConnectionClosed, this);
|
|
58
59
|
this.widget.disposed.connect(this.dispose, this);
|
|
60
|
+
this._editorToAdapter = new WeakMap();
|
|
61
|
+
this.editorAdded.connect(this._onEditorAdded, this);
|
|
62
|
+
this.editorRemoved.connect(this._onEditorRemoved, this);
|
|
59
63
|
}
|
|
60
64
|
/**
|
|
61
65
|
* Check if the adapter is disposed
|
|
@@ -175,6 +179,8 @@ export class WidgetLSPAdapter {
|
|
|
175
179
|
if (this._isDisposed) {
|
|
176
180
|
return;
|
|
177
181
|
}
|
|
182
|
+
this.editorAdded.disconnect(this._onEditorAdded, this);
|
|
183
|
+
this.editorRemoved.disconnect(this._onEditorRemoved, this);
|
|
178
184
|
this._isDisposed = true;
|
|
179
185
|
this.disconnect();
|
|
180
186
|
this._virtualDocument = null;
|
|
@@ -363,6 +369,21 @@ export class WidgetLSPAdapter {
|
|
|
363
369
|
await this.connectDocument(foreignDocument, true);
|
|
364
370
|
foreignDocument.foreignDocumentClosed.connect(this._onForeignDocumentClosed, this);
|
|
365
371
|
}
|
|
372
|
+
_onEditorAdded(sender, change) {
|
|
373
|
+
const { editor } = change;
|
|
374
|
+
const editorAdapter = new EditorAdapter({
|
|
375
|
+
editor: editor,
|
|
376
|
+
widgetAdapter: this,
|
|
377
|
+
extensions: this.options.featureManager.extensionFactories()
|
|
378
|
+
});
|
|
379
|
+
this._editorToAdapter.set(editor, editorAdapter);
|
|
380
|
+
}
|
|
381
|
+
_onEditorRemoved(sender, change) {
|
|
382
|
+
const { editor } = change;
|
|
383
|
+
const adapter = this._editorToAdapter.get(editor);
|
|
384
|
+
adapter === null || adapter === void 0 ? void 0 : adapter.dispose();
|
|
385
|
+
this._editorToAdapter.delete(editor);
|
|
386
|
+
}
|
|
366
387
|
/**
|
|
367
388
|
* Callback called when a foreign document is closed,
|
|
368
389
|
* the associated signals with this virtual document
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapters/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { IConfigurableExtension, IEditorExtensionFactory } from '@jupyterlab/codemirror';
|
|
2
|
+
import { IDisposable } from '@lumino/disposable';
|
|
3
|
+
import { WidgetLSPAdapter } from './adapter';
|
|
4
|
+
import { Document } from '../tokens';
|
|
5
|
+
/**
|
|
6
|
+
* The CodeEditor.IEditor adapter.
|
|
7
|
+
*/
|
|
8
|
+
export declare class EditorAdapter implements IDisposable {
|
|
9
|
+
/**
|
|
10
|
+
* Instantiate a new EditorAdapter.
|
|
11
|
+
*
|
|
12
|
+
* @param options The instantiation options for a EditorAdapter.
|
|
13
|
+
*/
|
|
14
|
+
constructor(options: EditorAdapter.IOptions);
|
|
15
|
+
/**
|
|
16
|
+
* Whether the handler is disposed.
|
|
17
|
+
*/
|
|
18
|
+
isDisposed: boolean;
|
|
19
|
+
/**
|
|
20
|
+
* Dispose the handler.
|
|
21
|
+
*/
|
|
22
|
+
dispose(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Setup the editor.
|
|
25
|
+
*/
|
|
26
|
+
private _injectExtensions;
|
|
27
|
+
private _widgetAdapter;
|
|
28
|
+
private _extensions;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* A namespace for EditorAdapter `statics`.
|
|
32
|
+
*/
|
|
33
|
+
export declare namespace EditorAdapter {
|
|
34
|
+
/**
|
|
35
|
+
* Instantiation options for `EditorAdapter`.
|
|
36
|
+
*/
|
|
37
|
+
interface IOptions {
|
|
38
|
+
/**
|
|
39
|
+
* Editor wrapper enabling revealing the editor when detached (out of view).
|
|
40
|
+
*/
|
|
41
|
+
editor: Document.IEditor;
|
|
42
|
+
/**
|
|
43
|
+
* The widget lsp adapter.
|
|
44
|
+
*/
|
|
45
|
+
widgetAdapter: WidgetLSPAdapter;
|
|
46
|
+
/**
|
|
47
|
+
* The list of CodeMirror extension factories
|
|
48
|
+
*/
|
|
49
|
+
extensions: ILSPEditorExtensionFactory[];
|
|
50
|
+
}
|
|
51
|
+
interface ILSPEditorExtensionFactory extends Omit<IEditorExtensionFactory<any>, 'factory'> {
|
|
52
|
+
/**
|
|
53
|
+
* Extension factory.
|
|
54
|
+
*
|
|
55
|
+
* @param options
|
|
56
|
+
* @returns The extension builder or null if the extension is not active for that document
|
|
57
|
+
*/
|
|
58
|
+
readonly factory: (options: IFactoryOptions) => IConfigurableExtension<any> | null;
|
|
59
|
+
}
|
|
60
|
+
interface IFactoryOptions extends IEditorExtensionFactory.IOptions {
|
|
61
|
+
/**
|
|
62
|
+
* A path to a source file.
|
|
63
|
+
*/
|
|
64
|
+
path: string;
|
|
65
|
+
/**
|
|
66
|
+
* The code editor.
|
|
67
|
+
*/
|
|
68
|
+
editor: Document.IEditor;
|
|
69
|
+
/**
|
|
70
|
+
* The widget lsp adapter.
|
|
71
|
+
*/
|
|
72
|
+
widgetAdapter: WidgetLSPAdapter<any>;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// Copyright (c) Jupyter Development Team.
|
|
2
|
+
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
import { Signal } from '@lumino/signaling';
|
|
4
|
+
/**
|
|
5
|
+
* The CodeEditor.IEditor adapter.
|
|
6
|
+
*/
|
|
7
|
+
export class EditorAdapter {
|
|
8
|
+
/**
|
|
9
|
+
* Instantiate a new EditorAdapter.
|
|
10
|
+
*
|
|
11
|
+
* @param options The instantiation options for a EditorAdapter.
|
|
12
|
+
*/
|
|
13
|
+
constructor(options) {
|
|
14
|
+
this._widgetAdapter = options.widgetAdapter;
|
|
15
|
+
this._extensions = options.extensions;
|
|
16
|
+
void options.editor.ready().then(editor => {
|
|
17
|
+
this._injectExtensions(options.editor);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Dispose the handler.
|
|
22
|
+
*/
|
|
23
|
+
dispose() {
|
|
24
|
+
if (this.isDisposed) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
this.isDisposed = true;
|
|
28
|
+
Signal.clearData(this);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Setup the editor.
|
|
32
|
+
*/
|
|
33
|
+
_injectExtensions(editor) {
|
|
34
|
+
const codeEditor = editor.getEditor();
|
|
35
|
+
if (codeEditor.isDisposed) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
this._extensions.forEach(factory => {
|
|
39
|
+
const ext = factory.factory({
|
|
40
|
+
path: this._widgetAdapter.widget.context.path,
|
|
41
|
+
editor: editor,
|
|
42
|
+
widgetAdapter: this._widgetAdapter,
|
|
43
|
+
model: codeEditor.model,
|
|
44
|
+
inline: true
|
|
45
|
+
});
|
|
46
|
+
if (!ext) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
codeEditor.injectExtension(ext.instance(codeEditor));
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=editorAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editorAdapter.js","sourceRoot":"","sources":["../../src/adapters/editorAdapter.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAS3D,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAK3C;;GAEG;AACH,MAAM,OAAO,aAAa;IACxB;;;;OAIG;IACH,YAAY,OAA+B;QACzC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,KAAK,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACxC,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAOD;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,OAAO;SACR;QACD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,MAAwB;QAChD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,EAAG,CAAC;QACvC,IAAI,UAAU,CAAC,UAAU,EAAE;YACzB,OAAO;SACR;QAED,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACjC,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;gBAC1B,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;gBAC7C,MAAM,EAAE,MAAM;gBACd,aAAa,EAAE,IAAI,CAAC,cAAc;gBAClC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,MAAM,EAAE,IAAI;aACb,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,EAAE;gBACR,OAAO;aACR;YAED,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC;CAIF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/adapters/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { ISignal } from '@lumino/signaling';
|
|
2
|
+
import { WidgetLSPAdapter } from './adapter';
|
|
3
|
+
import { IShell, IWidgetLSPAdapterTracker } from '../tokens';
|
|
4
|
+
/**
|
|
5
|
+
* A class that keeps track of widget adapter instances.
|
|
6
|
+
*
|
|
7
|
+
* @typeparam T - The type of widget being tracked. Defaults to `WidgetLSPAdapter`.
|
|
8
|
+
*/
|
|
9
|
+
export declare class WidgetLSPAdapterTracker<T extends WidgetLSPAdapter = WidgetLSPAdapter> implements IWidgetLSPAdapterTracker<T> {
|
|
10
|
+
/**
|
|
11
|
+
* Create a new widget tracker.
|
|
12
|
+
*
|
|
13
|
+
* @param options - The instantiation options for a widget tracker.
|
|
14
|
+
*/
|
|
15
|
+
constructor(options: WidgetLSPAdapterTracker.IOptions);
|
|
16
|
+
/**
|
|
17
|
+
* A signal emitted when the current adapter changes.
|
|
18
|
+
*/
|
|
19
|
+
get currentChanged(): ISignal<this, T | null>;
|
|
20
|
+
/**
|
|
21
|
+
* The current adapter is the most recently focused or added adapter.
|
|
22
|
+
*
|
|
23
|
+
* #### Notes
|
|
24
|
+
* It is the most recently focused adapter, or the most recently added
|
|
25
|
+
* adapter if no adapter has taken focus.
|
|
26
|
+
*/
|
|
27
|
+
get currentAdapter(): T | null;
|
|
28
|
+
/**
|
|
29
|
+
* The number of adapter held by the tracker.
|
|
30
|
+
*/
|
|
31
|
+
get size(): number;
|
|
32
|
+
/**
|
|
33
|
+
* A signal emitted when an adapter is added.
|
|
34
|
+
*/
|
|
35
|
+
get adapterAdded(): ISignal<this, T>;
|
|
36
|
+
/**
|
|
37
|
+
* A signal emitted when an adapter is updated.
|
|
38
|
+
*/
|
|
39
|
+
get adapterUpdated(): ISignal<this, T>;
|
|
40
|
+
/**
|
|
41
|
+
* Add a new adapter to the tracker.
|
|
42
|
+
*
|
|
43
|
+
* @param adapter - The adapter being added.
|
|
44
|
+
*
|
|
45
|
+
* #### Notes.
|
|
46
|
+
* The newly added adapter becomes the current adapter unless the shell
|
|
47
|
+
* already had a DocumentWidget as the activeWidget.
|
|
48
|
+
*/
|
|
49
|
+
add(adapter: T): void;
|
|
50
|
+
/**
|
|
51
|
+
* Test whether the tracker is disposed.
|
|
52
|
+
*/
|
|
53
|
+
get isDisposed(): boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Dispose of the resources held by the tracker.
|
|
56
|
+
*/
|
|
57
|
+
dispose(): void;
|
|
58
|
+
/**
|
|
59
|
+
* Find the first adapter in the tracker that satisfies a filter function.
|
|
60
|
+
*
|
|
61
|
+
* @param - fn The filter function to call on each adapter.
|
|
62
|
+
*
|
|
63
|
+
* #### Notes
|
|
64
|
+
* If no adapter is found, the value returned is `undefined`.
|
|
65
|
+
*/
|
|
66
|
+
find(fn: (adapter: T) => boolean): T | undefined;
|
|
67
|
+
/**
|
|
68
|
+
* Iterate through each adapter in the tracker.
|
|
69
|
+
*
|
|
70
|
+
* @param fn - The function to call on each adapter.
|
|
71
|
+
*/
|
|
72
|
+
forEach(fn: (adapter: T) => void): void;
|
|
73
|
+
/**
|
|
74
|
+
* Filter the adapter in the tracker based on a predicate.
|
|
75
|
+
*
|
|
76
|
+
* @param fn - The function by which to filter.
|
|
77
|
+
*/
|
|
78
|
+
filter(fn: (adapter: T) => boolean): T[];
|
|
79
|
+
/**
|
|
80
|
+
* Check if this tracker has the specified adapter.
|
|
81
|
+
*
|
|
82
|
+
* @param adapter - The adapter whose existence is being checked.
|
|
83
|
+
*/
|
|
84
|
+
has(adapter: T): boolean;
|
|
85
|
+
private _isDisposed;
|
|
86
|
+
private _shell;
|
|
87
|
+
private _current;
|
|
88
|
+
private _adapters;
|
|
89
|
+
private _adapterAdded;
|
|
90
|
+
private _adapterUpdated;
|
|
91
|
+
private _currentChanged;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* A namespace for `WidgetLSPAdapterTracker` statics.
|
|
95
|
+
*/
|
|
96
|
+
export declare namespace WidgetLSPAdapterTracker {
|
|
97
|
+
/**
|
|
98
|
+
* The instantiation options for the WidgetLSPAdapterTracker.
|
|
99
|
+
*/
|
|
100
|
+
interface IOptions {
|
|
101
|
+
/**
|
|
102
|
+
* The JupyterLab shell for tracking all widgets.
|
|
103
|
+
*/
|
|
104
|
+
shell: IShell;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
// Copyright (c) Jupyter Development Team.
|
|
2
|
+
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
import { DocumentWidget } from '@jupyterlab/docregistry';
|
|
4
|
+
import { Signal } from '@lumino/signaling';
|
|
5
|
+
/**
|
|
6
|
+
* A class that keeps track of widget adapter instances.
|
|
7
|
+
*
|
|
8
|
+
* @typeparam T - The type of widget being tracked. Defaults to `WidgetLSPAdapter`.
|
|
9
|
+
*/
|
|
10
|
+
export class WidgetLSPAdapterTracker {
|
|
11
|
+
/**
|
|
12
|
+
* Create a new widget tracker.
|
|
13
|
+
*
|
|
14
|
+
* @param options - The instantiation options for a widget tracker.
|
|
15
|
+
*/
|
|
16
|
+
constructor(options) {
|
|
17
|
+
this._isDisposed = false;
|
|
18
|
+
this._current = null;
|
|
19
|
+
this._adapters = new Set();
|
|
20
|
+
this._adapterAdded = new Signal(this);
|
|
21
|
+
this._adapterUpdated = new Signal(this);
|
|
22
|
+
this._currentChanged = new Signal(this);
|
|
23
|
+
const shell = (this._shell = options.shell);
|
|
24
|
+
shell.currentChanged.connect((_, args) => {
|
|
25
|
+
let newValue = args.newValue;
|
|
26
|
+
if (!newValue || !(newValue instanceof DocumentWidget)) {
|
|
27
|
+
console.log('No current widget');
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
const adapter = this.find(value => value.widget === newValue);
|
|
31
|
+
if (!adapter) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
this._current = adapter;
|
|
35
|
+
this._currentChanged.emit(adapter);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* A signal emitted when the current adapter changes.
|
|
40
|
+
*/
|
|
41
|
+
get currentChanged() {
|
|
42
|
+
return this._currentChanged;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The current adapter is the most recently focused or added adapter.
|
|
46
|
+
*
|
|
47
|
+
* #### Notes
|
|
48
|
+
* It is the most recently focused adapter, or the most recently added
|
|
49
|
+
* adapter if no adapter has taken focus.
|
|
50
|
+
*/
|
|
51
|
+
get currentAdapter() {
|
|
52
|
+
return this._current;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* The number of adapter held by the tracker.
|
|
56
|
+
*/
|
|
57
|
+
get size() {
|
|
58
|
+
return this._adapters.size;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* A signal emitted when an adapter is added.
|
|
62
|
+
*/
|
|
63
|
+
get adapterAdded() {
|
|
64
|
+
return this._adapterAdded;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* A signal emitted when an adapter is updated.
|
|
68
|
+
*/
|
|
69
|
+
get adapterUpdated() {
|
|
70
|
+
return this._adapterUpdated;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Add a new adapter to the tracker.
|
|
74
|
+
*
|
|
75
|
+
* @param adapter - The adapter being added.
|
|
76
|
+
*
|
|
77
|
+
* #### Notes.
|
|
78
|
+
* The newly added adapter becomes the current adapter unless the shell
|
|
79
|
+
* already had a DocumentWidget as the activeWidget.
|
|
80
|
+
*/
|
|
81
|
+
add(adapter) {
|
|
82
|
+
if (adapter.isDisposed) {
|
|
83
|
+
const warning = 'A disposed object cannot be added.';
|
|
84
|
+
console.warn(warning, adapter);
|
|
85
|
+
throw new Error(warning);
|
|
86
|
+
}
|
|
87
|
+
if (this._adapters.has(adapter)) {
|
|
88
|
+
const warning = 'This object already exists in the pool.';
|
|
89
|
+
console.warn(warning, adapter);
|
|
90
|
+
throw new Error(warning);
|
|
91
|
+
}
|
|
92
|
+
this._adapters.add(adapter);
|
|
93
|
+
this._adapterAdded.emit(adapter);
|
|
94
|
+
adapter.disposed.connect(() => {
|
|
95
|
+
this._adapters.delete(adapter);
|
|
96
|
+
if (adapter === this._current) {
|
|
97
|
+
this._current = null;
|
|
98
|
+
this._currentChanged.emit(this._current);
|
|
99
|
+
}
|
|
100
|
+
}, this);
|
|
101
|
+
// Only update the current adapter, when there is no shell.activeWidget
|
|
102
|
+
// or the active widget is not a DocumentWidget
|
|
103
|
+
// We will be able to use other panels while keeping the current adapter.
|
|
104
|
+
const active = this._shell.activeWidget;
|
|
105
|
+
if (!active || !(active instanceof DocumentWidget)) {
|
|
106
|
+
this._current = adapter;
|
|
107
|
+
this._currentChanged.emit(adapter);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Test whether the tracker is disposed.
|
|
112
|
+
*/
|
|
113
|
+
get isDisposed() {
|
|
114
|
+
return this._isDisposed;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Dispose of the resources held by the tracker.
|
|
118
|
+
*/
|
|
119
|
+
dispose() {
|
|
120
|
+
if (this.isDisposed) {
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
this._isDisposed = true;
|
|
124
|
+
this._adapters.clear();
|
|
125
|
+
Signal.clearData(this);
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Find the first adapter in the tracker that satisfies a filter function.
|
|
129
|
+
*
|
|
130
|
+
* @param - fn The filter function to call on each adapter.
|
|
131
|
+
*
|
|
132
|
+
* #### Notes
|
|
133
|
+
* If no adapter is found, the value returned is `undefined`.
|
|
134
|
+
*/
|
|
135
|
+
find(fn) {
|
|
136
|
+
const values = this._adapters.values();
|
|
137
|
+
for (const value of values) {
|
|
138
|
+
if (fn(value)) {
|
|
139
|
+
return value;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Iterate through each adapter in the tracker.
|
|
146
|
+
*
|
|
147
|
+
* @param fn - The function to call on each adapter.
|
|
148
|
+
*/
|
|
149
|
+
forEach(fn) {
|
|
150
|
+
this._adapters.forEach(fn);
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Filter the adapter in the tracker based on a predicate.
|
|
154
|
+
*
|
|
155
|
+
* @param fn - The function by which to filter.
|
|
156
|
+
*/
|
|
157
|
+
filter(fn) {
|
|
158
|
+
const filtered = [];
|
|
159
|
+
this.forEach(value => {
|
|
160
|
+
if (fn(value)) {
|
|
161
|
+
filtered.push(value);
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
return filtered;
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check if this tracker has the specified adapter.
|
|
168
|
+
*
|
|
169
|
+
* @param adapter - The adapter whose existence is being checked.
|
|
170
|
+
*/
|
|
171
|
+
has(adapter) {
|
|
172
|
+
return this._adapters.has(adapter);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
//# sourceMappingURL=tracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracker.js","sourceRoot":"","sources":["../../src/adapters/tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { IDocumentWidget } from '@jupyterlab/docregistry';
|
|
2
1
|
import { ISignal } from '@lumino/signaling';
|
|
3
|
-
import { WidgetLSPAdapter } from './adapters
|
|
2
|
+
import { WidgetLSPAdapter } from './adapters';
|
|
4
3
|
import { LSPConnection } from './connection';
|
|
5
4
|
import { AskServersToSendTraceNotifications } from './plugin';
|
|
6
|
-
import { Document, IDocumentConnectionData, ILanguageServerManager, ILSPConnection, ILSPDocumentConnectionManager, ISocketConnectionOptions, TLanguageServerConfigurations, TLanguageServerId } from './tokens';
|
|
5
|
+
import { Document, IDocumentConnectionData, ILanguageServerManager, ILSPConnection, ILSPDocumentConnectionManager, ISocketConnectionOptions, IWidgetLSPAdapterTracker, TLanguageServerConfigurations, TLanguageServerId } from './tokens';
|
|
7
6
|
import { VirtualDocument } from './virtual/document';
|
|
8
7
|
/**
|
|
9
8
|
* Each Widget with a document (whether file or a notebook) has the same DocumentConnectionManager
|
|
@@ -18,9 +17,10 @@ export declare class DocumentConnectionManager implements ILSPDocumentConnection
|
|
|
18
17
|
*/
|
|
19
18
|
readonly connections: Map<VirtualDocument.uri, LSPConnection>;
|
|
20
19
|
/**
|
|
20
|
+
* @deprecated
|
|
21
21
|
* Map between the path of the document and its adapter
|
|
22
22
|
*/
|
|
23
|
-
readonly adapters: Map<string, WidgetLSPAdapter
|
|
23
|
+
readonly adapters: Map<string, WidgetLSPAdapter>;
|
|
24
24
|
/**
|
|
25
25
|
* Map between the URI of the virtual document and the document itself.
|
|
26
26
|
*/
|
|
@@ -83,12 +83,14 @@ export declare class DocumentConnectionManager implements ILSPDocumentConnection
|
|
|
83
83
|
*/
|
|
84
84
|
onForeignDocumentClosed(_host: VirtualDocument, context: Document.IForeignContext): void;
|
|
85
85
|
/**
|
|
86
|
+
* @deprecated
|
|
87
|
+
*
|
|
86
88
|
* Register a widget adapter with this manager
|
|
87
89
|
*
|
|
88
90
|
* @param path - path to the inner document of the adapter
|
|
89
91
|
* @param adapter - the adapter to be registered
|
|
90
92
|
*/
|
|
91
|
-
registerAdapter(path: string, adapter: WidgetLSPAdapter
|
|
93
|
+
registerAdapter(path: string, adapter: WidgetLSPAdapter): void;
|
|
92
94
|
/**
|
|
93
95
|
* Handles the settings that do not require an existing connection
|
|
94
96
|
* with a language server (or can influence to which server the
|
|
@@ -163,6 +165,10 @@ export declare namespace DocumentConnectionManager {
|
|
|
163
165
|
* The language server manager instance.
|
|
164
166
|
*/
|
|
165
167
|
languageServerManager: ILanguageServerManager;
|
|
168
|
+
/**
|
|
169
|
+
* The WidgetLSPAdapter's tracker.
|
|
170
|
+
*/
|
|
171
|
+
adapterTracker: IWidgetLSPAdapterTracker;
|
|
166
172
|
}
|
|
167
173
|
/**
|
|
168
174
|
* Generate the URI of a virtual document from input
|
|
@@ -70,6 +70,10 @@ export class DocumentConnectionManager {
|
|
|
70
70
|
this._ignoredLanguages = new Set();
|
|
71
71
|
this.languageServerManager = options.languageServerManager;
|
|
72
72
|
Private.setLanguageServerManager(options.languageServerManager);
|
|
73
|
+
options.adapterTracker.adapterAdded.connect((_, adapter) => {
|
|
74
|
+
const path = adapter.widget.context.path;
|
|
75
|
+
this.registerAdapter(path, adapter);
|
|
76
|
+
});
|
|
73
77
|
}
|
|
74
78
|
/**
|
|
75
79
|
* Signal emitted when the manager is initialized.
|
|
@@ -154,6 +158,8 @@ export class DocumentConnectionManager {
|
|
|
154
158
|
this.disconnectDocumentSignals(foreignDocument);
|
|
155
159
|
}
|
|
156
160
|
/**
|
|
161
|
+
* @deprecated
|
|
162
|
+
*
|
|
157
163
|
* Register a widget adapter with this manager
|
|
158
164
|
*
|
|
159
165
|
* @param path - path to the inner document of the adapter
|
|
@@ -161,6 +167,10 @@ export class DocumentConnectionManager {
|
|
|
161
167
|
*/
|
|
162
168
|
registerAdapter(path, adapter) {
|
|
163
169
|
this.adapters.set(path, adapter);
|
|
170
|
+
adapter.widget.context.pathChanged.connect((context, newPath) => {
|
|
171
|
+
this.adapters.delete(path);
|
|
172
|
+
this.adapters.set(newPath, adapter);
|
|
173
|
+
});
|
|
164
174
|
adapter.disposed.connect(() => {
|
|
165
175
|
if (adapter.virtualDocument) {
|
|
166
176
|
this.documents.delete(adapter.virtualDocument.uri);
|