@difizen/libro-code-editor 0.1.1 → 0.1.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/es/code-editor-info-manager.d.ts +7 -0
- package/es/code-editor-info-manager.d.ts.map +1 -0
- package/es/code-editor-info-manager.js +32 -0
- package/es/code-editor-manager.d.ts +67 -0
- package/es/code-editor-manager.d.ts.map +1 -0
- package/es/code-editor-manager.js +130 -0
- package/es/{model.d.ts → code-editor-model.d.ts} +2 -2
- package/es/code-editor-model.d.ts.map +1 -0
- package/es/{model.js → code-editor-model.js} +1 -3
- package/es/{code-editor.d.ts → code-editor-protocol.d.ts} +70 -145
- package/es/code-editor-protocol.d.ts.map +1 -0
- package/es/{code-editor.js → code-editor-protocol.js} +17 -15
- package/es/code-editor-settings.d.ts +34 -0
- package/es/code-editor-settings.d.ts.map +1 -0
- package/es/code-editor-settings.js +225 -0
- package/es/code-editor-view.d.ts +26 -14
- package/es/code-editor-view.d.ts.map +1 -1
- package/es/code-editor-view.js +108 -72
- package/es/index.d.ts +5 -3
- package/es/index.d.ts.map +1 -1
- package/es/index.js +6 -4
- package/es/mimetype.d.ts.map +1 -1
- package/es/mimetype.js +3 -0
- package/es/module.d.ts.map +1 -1
- package/es/module.js +5 -2
- package/package.json +4 -5
- package/src/code-editor-info-manager.ts +25 -0
- package/src/code-editor-manager.ts +86 -0
- package/src/{model.ts → code-editor-model.ts} +4 -4
- package/src/{code-editor.ts → code-editor-protocol.ts} +136 -189
- package/src/code-editor-settings.ts +214 -0
- package/src/code-editor-view.tsx +93 -49
- package/src/index.spec.ts +1 -3
- package/src/index.ts +5 -3
- package/src/mimetype.ts +3 -0
- package/src/module.ts +13 -2
- package/es/code-editor.d.ts.map +0 -1
- package/es/completer/completer-protocol.d.ts +0 -210
- package/es/completer/completer-protocol.d.ts.map +0 -1
- package/es/completer/completer-protocol.js +0 -34
- package/es/model.d.ts.map +0 -1
- package/src/completer/completer-protocol.ts +0 -259
package/src/code-editor-view.tsx
CHANGED
|
@@ -1,23 +1,34 @@
|
|
|
1
|
+
// Copyright (c) Jupyter Development Team.
|
|
2
|
+
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
|
|
1
4
|
import { getOrigin, prop } from '@difizen/mana-app';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
+
import {
|
|
6
|
+
inject,
|
|
7
|
+
transient,
|
|
8
|
+
Deferred,
|
|
9
|
+
Emitter,
|
|
10
|
+
BaseView,
|
|
11
|
+
ThemeService,
|
|
12
|
+
view,
|
|
13
|
+
ViewOption,
|
|
14
|
+
} from '@difizen/mana-app';
|
|
5
15
|
import { forwardRef, memo } from 'react';
|
|
6
16
|
|
|
7
|
-
import
|
|
17
|
+
import { CodeEditorInfoManager } from './code-editor-info-manager.js';
|
|
18
|
+
import type { CodeEditorFactory } from './code-editor-manager.js';
|
|
19
|
+
import type { IModel } from './code-editor-model.js';
|
|
8
20
|
import type {
|
|
9
|
-
|
|
21
|
+
CompletionProvider,
|
|
10
22
|
ICoordinate,
|
|
11
23
|
IEditorConfig,
|
|
12
24
|
IEditorSelectionStyle,
|
|
13
|
-
CompletionProvider,
|
|
14
25
|
TooltipProvider,
|
|
15
|
-
|
|
16
|
-
} from './code-editor.js';
|
|
17
|
-
import
|
|
26
|
+
} from './code-editor-protocol.js';
|
|
27
|
+
import type { IEditor } from './code-editor-protocol.js';
|
|
28
|
+
import { CodeEditorSettings } from './code-editor-settings.js';
|
|
18
29
|
|
|
19
30
|
export const CodeEditorRender = memo(
|
|
20
|
-
forwardRef<HTMLDivElement>((
|
|
31
|
+
forwardRef<HTMLDivElement>((props, ref) => {
|
|
21
32
|
return <div ref={ref} />;
|
|
22
33
|
}),
|
|
23
34
|
);
|
|
@@ -49,6 +60,11 @@ const leadingWhitespaceRe = /^\s+$/;
|
|
|
49
60
|
@transient()
|
|
50
61
|
@view('code-editor-view')
|
|
51
62
|
export class CodeEditorView extends BaseView {
|
|
63
|
+
@inject(ThemeService) protected readonly themeService: ThemeService;
|
|
64
|
+
@inject(CodeEditorSettings) protected readonly codeEditorSettings: CodeEditorSettings;
|
|
65
|
+
|
|
66
|
+
codeEditorInfoManager: CodeEditorInfoManager;
|
|
67
|
+
|
|
52
68
|
override view = CodeEditorRender;
|
|
53
69
|
|
|
54
70
|
protected classlist: string[] = [];
|
|
@@ -57,6 +73,8 @@ export class CodeEditorView extends BaseView {
|
|
|
57
73
|
|
|
58
74
|
protected modalChangeEmitter = new Emitter();
|
|
59
75
|
|
|
76
|
+
protected editorHostRef: any;
|
|
77
|
+
|
|
60
78
|
get onModalChange() {
|
|
61
79
|
return this.modalChangeEmitter.event;
|
|
62
80
|
}
|
|
@@ -65,7 +83,7 @@ export class CodeEditorView extends BaseView {
|
|
|
65
83
|
* Get the editor wrapped by the widget.
|
|
66
84
|
*/
|
|
67
85
|
@prop()
|
|
68
|
-
editor: IEditor
|
|
86
|
+
editor: IEditor;
|
|
69
87
|
protected editorReadyDeferred: Deferred<void> = new Deferred<void>();
|
|
70
88
|
get editorReady() {
|
|
71
89
|
return this.editorReadyDeferred.promise;
|
|
@@ -73,23 +91,36 @@ export class CodeEditorView extends BaseView {
|
|
|
73
91
|
/**
|
|
74
92
|
* Construct a new code editor widget.
|
|
75
93
|
*/
|
|
76
|
-
constructor(
|
|
94
|
+
constructor(
|
|
95
|
+
@inject(ViewOption) options: CodeEditorViewOptions,
|
|
96
|
+
@inject(CodeEditorInfoManager) codeEditorInfoManager: CodeEditorInfoManager,
|
|
97
|
+
) {
|
|
77
98
|
super();
|
|
78
99
|
this.options = options;
|
|
100
|
+
this.codeEditorInfoManager = codeEditorInfoManager;
|
|
79
101
|
}
|
|
80
102
|
|
|
81
|
-
override onViewMount() {
|
|
82
|
-
const
|
|
83
|
-
|
|
103
|
+
override async onViewMount() {
|
|
104
|
+
const settings = this.codeEditorSettings.getUserEditorSettings();
|
|
105
|
+
|
|
106
|
+
const editorHostId = this.options.editorHostId;
|
|
107
|
+
const editorHostRef = editorHostId
|
|
108
|
+
? this.codeEditorInfoManager.getEditorHostRef(editorHostId)
|
|
109
|
+
: undefined;
|
|
110
|
+
|
|
111
|
+
this.editorHostRef =
|
|
112
|
+
editorHostRef && editorHostRef.current ? editorHostRef : this.container;
|
|
113
|
+
|
|
114
|
+
if (this.editorHostRef.current && this.options.factory) {
|
|
84
115
|
this.editor = this.options.factory({
|
|
85
|
-
|
|
116
|
+
...this.options,
|
|
117
|
+
host: this.editorHostRef.current,
|
|
86
118
|
model: this.options.model,
|
|
87
119
|
uuid: this.options.uuid,
|
|
88
|
-
config: this.options.config,
|
|
120
|
+
config: { ...settings, ...this.options.config },
|
|
89
121
|
selectionStyle: this.options.selectionStyle,
|
|
90
122
|
tooltipProvider: this.options.tooltipProvider,
|
|
91
123
|
completionProvider: this.options.completionProvider,
|
|
92
|
-
lspProvider: this.options.lspProvider,
|
|
93
124
|
});
|
|
94
125
|
this.editorReadyDeferred.resolve();
|
|
95
126
|
this.editor.onModalChange((val) => this.modalChangeEmitter.fire(val));
|
|
@@ -99,30 +130,52 @@ export class CodeEditorView extends BaseView {
|
|
|
99
130
|
getOrigin(this.editor).focus();
|
|
100
131
|
}
|
|
101
132
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
133
|
+
this.editorHostRef.current.addEventListener('focus', this.onViewActive);
|
|
134
|
+
this.editorHostRef.current.addEventListener('dragenter', this._evtDragEnter);
|
|
135
|
+
this.editorHostRef.current.addEventListener('dragleave', this._evtDragLeave);
|
|
136
|
+
this.editorHostRef.current.addEventListener('dragover', this._evtDragOver);
|
|
137
|
+
this.editorHostRef.current.addEventListener('drop', this._evtDrop);
|
|
138
|
+
|
|
139
|
+
this.toDispose.push(
|
|
140
|
+
this.codeEditorSettings.onCodeEditorSettingsChange((e) => {
|
|
141
|
+
this.editor.setOption(e.key, e.value);
|
|
142
|
+
}),
|
|
143
|
+
);
|
|
107
144
|
}
|
|
108
145
|
}
|
|
109
146
|
|
|
110
|
-
|
|
111
|
-
|
|
147
|
+
removeChildNodes = (parent: any) => {
|
|
148
|
+
while (parent.firstChild) {
|
|
149
|
+
parent.removeChild(parent.firstChild);
|
|
150
|
+
}
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
override onViewUnmount = () => {
|
|
154
|
+
if (this.editor.dispose) {
|
|
155
|
+
this.editor.dispose();
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
const node = this.editorHostRef?.current;
|
|
112
159
|
if (node) {
|
|
113
160
|
node.removeEventListener('focus', this.onViewActive);
|
|
114
161
|
node.removeEventListener('dragenter', this._evtDragEnter);
|
|
115
162
|
node.removeEventListener('dragleave', this._evtDragLeave);
|
|
116
163
|
node.removeEventListener('dragover', this._evtDragOver);
|
|
117
164
|
node.removeEventListener('drop', this._evtDrop);
|
|
165
|
+
|
|
166
|
+
this.removeChildNodes(node);
|
|
118
167
|
}
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
override onViewResize() {
|
|
171
|
+
this.editor?.resizeToFit();
|
|
119
172
|
}
|
|
120
173
|
|
|
121
174
|
/**
|
|
122
175
|
* Get the model used by the widget.
|
|
123
176
|
*/
|
|
124
|
-
get model(): IModel
|
|
125
|
-
return this.editor
|
|
177
|
+
get model(): IModel {
|
|
178
|
+
return this.editor.model;
|
|
126
179
|
}
|
|
127
180
|
|
|
128
181
|
/**
|
|
@@ -133,11 +186,11 @@ export class CodeEditorView extends BaseView {
|
|
|
133
186
|
return;
|
|
134
187
|
}
|
|
135
188
|
super.dispose();
|
|
136
|
-
this.editor
|
|
189
|
+
this.editor.dispose();
|
|
137
190
|
}
|
|
138
191
|
|
|
139
192
|
protected onViewActive = (): void => {
|
|
140
|
-
this.editor
|
|
193
|
+
this.editor.focus();
|
|
141
194
|
};
|
|
142
195
|
|
|
143
196
|
/**
|
|
@@ -145,7 +198,7 @@ export class CodeEditorView extends BaseView {
|
|
|
145
198
|
*/
|
|
146
199
|
protected onResize(): void {
|
|
147
200
|
if (this.isVisible) {
|
|
148
|
-
this.editor
|
|
201
|
+
this.editor.resizeToFit();
|
|
149
202
|
}
|
|
150
203
|
}
|
|
151
204
|
|
|
@@ -164,9 +217,6 @@ export class CodeEditorView extends BaseView {
|
|
|
164
217
|
* Handle a change in model selections.
|
|
165
218
|
*/
|
|
166
219
|
protected _onSelectionsChanged(): void {
|
|
167
|
-
if (!this.editor) {
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
220
|
const { start, end } = this.editor.getSelection();
|
|
171
221
|
|
|
172
222
|
if (start.column !== end.column || start.line !== end.line) {
|
|
@@ -191,9 +241,6 @@ export class CodeEditorView extends BaseView {
|
|
|
191
241
|
* Handle the `'lm-dragenter'` event for the widget.
|
|
192
242
|
*/
|
|
193
243
|
protected _evtDragEnter = (event: DragEvent): void => {
|
|
194
|
-
if (!this.editor) {
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
244
|
if (this.editor.getOption('readOnly') === true) {
|
|
198
245
|
return;
|
|
199
246
|
}
|
|
@@ -210,9 +257,6 @@ export class CodeEditorView extends BaseView {
|
|
|
210
257
|
* Handle the `'lm-dragleave'` event for the widget.
|
|
211
258
|
*/
|
|
212
259
|
protected _evtDragLeave = (event: DragEvent): void => {
|
|
213
|
-
if (!this.editor) {
|
|
214
|
-
return;
|
|
215
|
-
}
|
|
216
260
|
this.removeClass(DROP_TARGET_CLASS);
|
|
217
261
|
if (this.editor.getOption('readOnly') === true) {
|
|
218
262
|
return;
|
|
@@ -229,9 +273,6 @@ export class CodeEditorView extends BaseView {
|
|
|
229
273
|
* Handle the `'lm-dragover'` event for the widget.
|
|
230
274
|
*/
|
|
231
275
|
protected _evtDragOver = (event: DragEvent): void => {
|
|
232
|
-
if (!this.editor) {
|
|
233
|
-
return;
|
|
234
|
-
}
|
|
235
276
|
this.removeClass(DROP_TARGET_CLASS);
|
|
236
277
|
if (this.editor.getOption('readOnly') === true) {
|
|
237
278
|
return;
|
|
@@ -250,9 +291,6 @@ export class CodeEditorView extends BaseView {
|
|
|
250
291
|
* Handle the `'lm-drop'` event for the widget.
|
|
251
292
|
*/
|
|
252
293
|
protected _evtDrop = (event: DragEvent): void => {
|
|
253
|
-
if (!this.editor) {
|
|
254
|
-
return;
|
|
255
|
-
}
|
|
256
294
|
if (this.editor.getOption('readOnly') === true) {
|
|
257
295
|
return;
|
|
258
296
|
}
|
|
@@ -292,7 +330,7 @@ export class CodeEditorView extends BaseView {
|
|
|
292
330
|
/**
|
|
293
331
|
* The options used to initialize a code editor widget.
|
|
294
332
|
*/
|
|
295
|
-
export interface CodeEditorViewOptions {
|
|
333
|
+
export interface CodeEditorViewOptions<Config extends IEditorConfig = IEditorConfig> {
|
|
296
334
|
/**
|
|
297
335
|
* A code editor factory.
|
|
298
336
|
*
|
|
@@ -300,7 +338,12 @@ export interface CodeEditorViewOptions {
|
|
|
300
338
|
* The widget needs a factory and a model instead of a `CodeEditor.IEditor`
|
|
301
339
|
* object because it needs to provide its own node as the host.
|
|
302
340
|
*/
|
|
303
|
-
factory
|
|
341
|
+
factory?: CodeEditorFactory;
|
|
342
|
+
|
|
343
|
+
/**
|
|
344
|
+
* where to mount the editor
|
|
345
|
+
*/
|
|
346
|
+
editorHostId?: string;
|
|
304
347
|
|
|
305
348
|
/**
|
|
306
349
|
* The model used to initialize the code editor.
|
|
@@ -315,7 +358,7 @@ export interface CodeEditorViewOptions {
|
|
|
315
358
|
/**
|
|
316
359
|
* The configuration options for the editor.
|
|
317
360
|
*/
|
|
318
|
-
config?: Partial<
|
|
361
|
+
config?: Partial<Config>;
|
|
319
362
|
|
|
320
363
|
/**
|
|
321
364
|
* The default selection style for the editor.
|
|
@@ -324,9 +367,10 @@ export interface CodeEditorViewOptions {
|
|
|
324
367
|
|
|
325
368
|
tooltipProvider?: TooltipProvider;
|
|
326
369
|
completionProvider?: CompletionProvider;
|
|
327
|
-
lspProvider?: LSPProvider;
|
|
328
370
|
|
|
329
371
|
autoFocus?: boolean;
|
|
372
|
+
|
|
373
|
+
[key: string]: any;
|
|
330
374
|
}
|
|
331
375
|
|
|
332
376
|
/**
|
package/src/index.spec.ts
CHANGED
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
2
|
import assert from 'assert';
|
|
3
3
|
|
|
4
|
-
import { CodeEditorView
|
|
4
|
+
import { CodeEditorView } from './index.js';
|
|
5
5
|
|
|
6
6
|
describe('libro-code-editor', () => {
|
|
7
7
|
it('#import', () => {
|
|
8
8
|
assert(CodeEditorView);
|
|
9
|
-
assert(CodeEditorModule);
|
|
10
|
-
assert(defaultMimeType);
|
|
11
9
|
});
|
|
12
10
|
});
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
export * from './code-editor.js';
|
|
2
|
-
export * from './
|
|
1
|
+
export * from './code-editor-manager.js';
|
|
2
|
+
export * from './code-editor-model.js';
|
|
3
|
+
export * from './code-editor-protocol.js';
|
|
4
|
+
export * from './code-editor-settings.js';
|
|
3
5
|
export * from './code-editor-view.js';
|
|
6
|
+
export * from './mimetype.js';
|
|
4
7
|
export * from './module.js';
|
|
5
|
-
export * from './model.js';
|
package/src/mimetype.ts
CHANGED
package/src/module.ts
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
import { ManaModule } from '@difizen/mana-app';
|
|
2
2
|
|
|
3
|
+
import { CodeEditorInfoManager } from './code-editor-info-manager.js';
|
|
4
|
+
import { CodeEditorContribution, CodeEditorManager } from './code-editor-manager.js';
|
|
5
|
+
import { Model } from './code-editor-model.js';
|
|
6
|
+
import { CodeEditorSettings } from './code-editor-settings.js';
|
|
3
7
|
import { CodeEditorView } from './code-editor-view.js';
|
|
4
|
-
import { Model } from './model.js';
|
|
5
8
|
|
|
6
|
-
export const CodeEditorModule = ManaModule.create()
|
|
9
|
+
export const CodeEditorModule = ManaModule.create()
|
|
10
|
+
.register(
|
|
11
|
+
CodeEditorInfoManager,
|
|
12
|
+
CodeEditorView,
|
|
13
|
+
CodeEditorManager,
|
|
14
|
+
Model,
|
|
15
|
+
CodeEditorSettings,
|
|
16
|
+
)
|
|
17
|
+
.contribution(CodeEditorContribution);
|
package/es/code-editor.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"code-editor.d.ts","sourceRoot":"","sources":["../src/code-editor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,210 +0,0 @@
|
|
|
1
|
-
import type { SourceChange } from '@difizen/libro-shared-model';
|
|
2
|
-
import { Syringe } from '@difizen/mana-app';
|
|
3
|
-
import type { View } from '@difizen/mana-app';
|
|
4
|
-
import type { Event } from '@difizen/mana-app';
|
|
5
|
-
import type React from 'react';
|
|
6
|
-
import type { IEditor } from '../code-editor.js';
|
|
7
|
-
/**
|
|
8
|
-
* The context which will be passed to the `fetch` function
|
|
9
|
-
* of a provider.
|
|
10
|
-
*/
|
|
11
|
-
export interface CompletionContext {
|
|
12
|
-
/**
|
|
13
|
-
* The widget (notebook, console, code editor) which invoked
|
|
14
|
-
* the completer
|
|
15
|
-
*/
|
|
16
|
-
widget: View;
|
|
17
|
-
/**
|
|
18
|
-
* The current editor.
|
|
19
|
-
*/
|
|
20
|
-
editor?: IEditor | null;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* An object describing a completion option injection into text.
|
|
24
|
-
*/
|
|
25
|
-
export interface IPatch {
|
|
26
|
-
/**
|
|
27
|
-
* The start of the range to be patched.
|
|
28
|
-
*/
|
|
29
|
-
start: number;
|
|
30
|
-
/**
|
|
31
|
-
* The end of the range to be patched.
|
|
32
|
-
*/
|
|
33
|
-
end: number;
|
|
34
|
-
/**
|
|
35
|
-
* The value to be patched in.
|
|
36
|
-
*/
|
|
37
|
-
value: string;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Completion item object based off of LSP CompletionItem.
|
|
41
|
-
* Compared to the old kernel completions interface, this enhances the completions UI to support:
|
|
42
|
-
* - differentiation between inserted text and user facing text
|
|
43
|
-
* - documentation for each completion item to be displayed adjacently
|
|
44
|
-
* - deprecation styling
|
|
45
|
-
* - custom icons
|
|
46
|
-
* and other potential new features.
|
|
47
|
-
*/
|
|
48
|
-
export interface ICompletionItem {
|
|
49
|
-
/**
|
|
50
|
-
* User facing completion.
|
|
51
|
-
* If insertText is not set, this will be inserted.
|
|
52
|
-
*/
|
|
53
|
-
label: string;
|
|
54
|
-
/**
|
|
55
|
-
* Completion to be inserted.
|
|
56
|
-
*/
|
|
57
|
-
insertText?: string;
|
|
58
|
-
/**
|
|
59
|
-
* Type of this completion item.
|
|
60
|
-
*/
|
|
61
|
-
type?: string;
|
|
62
|
-
/**
|
|
63
|
-
* LabIcon object for icon to be rendered with completion type.
|
|
64
|
-
*/
|
|
65
|
-
icon?: React.ReactNode;
|
|
66
|
-
/**
|
|
67
|
-
* A human-readable string with additional information
|
|
68
|
-
* about this item, like type or symbol information.
|
|
69
|
-
*/
|
|
70
|
-
documentation?: string;
|
|
71
|
-
/**
|
|
72
|
-
* Indicates if the item is deprecated.
|
|
73
|
-
*/
|
|
74
|
-
deprecated?: boolean;
|
|
75
|
-
resolve?: (patch?: IPatch) => Promise<ICompletionItem>;
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* A reply to a completion items fetch request.
|
|
79
|
-
*/
|
|
80
|
-
export interface ICompletionItemsReply<T extends ICompletionItem = ICompletionItem> {
|
|
81
|
-
/**
|
|
82
|
-
* The starting index for the substring being replaced by completion.
|
|
83
|
-
*/
|
|
84
|
-
start: number;
|
|
85
|
-
/**
|
|
86
|
-
* The end index for the substring being replaced by completion.
|
|
87
|
-
*/
|
|
88
|
-
end: number;
|
|
89
|
-
/**
|
|
90
|
-
* A list of completion items. default to CompletionHandler.ICompletionItems
|
|
91
|
-
*/
|
|
92
|
-
items: T[];
|
|
93
|
-
}
|
|
94
|
-
/**
|
|
95
|
-
* The details of a completion request.
|
|
96
|
-
*/
|
|
97
|
-
export interface IRequest {
|
|
98
|
-
/**
|
|
99
|
-
* The cursor offset position within the text being completed.
|
|
100
|
-
*/
|
|
101
|
-
offset: number;
|
|
102
|
-
/**
|
|
103
|
-
* The text being completed.
|
|
104
|
-
*/
|
|
105
|
-
text: string;
|
|
106
|
-
}
|
|
107
|
-
export declare const CompletionProvider: Syringe.DefinedToken;
|
|
108
|
-
/**
|
|
109
|
-
* The interface to implement a completer provider.
|
|
110
|
-
*/
|
|
111
|
-
export interface CompletionProvider<T extends ICompletionItem = ICompletionItem> {
|
|
112
|
-
/**
|
|
113
|
-
* Unique identifier of the provider
|
|
114
|
-
*/
|
|
115
|
-
readonly identifier: string;
|
|
116
|
-
/**
|
|
117
|
-
* Renderer for provider's completions (optional).
|
|
118
|
-
*/
|
|
119
|
-
/**
|
|
120
|
-
* Is completion provider applicable to specified context?
|
|
121
|
-
* @param request - the completion request text and details
|
|
122
|
-
* @param context - additional information about context of completion request
|
|
123
|
-
*/
|
|
124
|
-
isApplicable: (context: CompletionContext) => Promise<boolean>;
|
|
125
|
-
/**
|
|
126
|
-
* Fetch completion requests.
|
|
127
|
-
*
|
|
128
|
-
* @param request - the completion request text and details
|
|
129
|
-
* @param context - additional information about context of completion request
|
|
130
|
-
*/
|
|
131
|
-
fetch: (request: IRequest, context: CompletionContext) => Promise<ICompletionItemsReply<T>>;
|
|
132
|
-
/**
|
|
133
|
-
* This method is called to customize the model of a completer widget.
|
|
134
|
-
* If it is not provided, the default model will be used.
|
|
135
|
-
*
|
|
136
|
-
* @param context - additional information about context of completion request
|
|
137
|
-
* @returns The completer model
|
|
138
|
-
*/
|
|
139
|
-
modelFactory?: (context: CompletionContext) => Promise<Record<string, any>>;
|
|
140
|
-
/**
|
|
141
|
-
* Given an incomplete (unresolved) completion item, resolve it by adding
|
|
142
|
-
* all missing details, such as lazy-fetched documentation.
|
|
143
|
-
*
|
|
144
|
-
* @param completion - the completion item to resolve
|
|
145
|
-
* @param context - The context of the completer
|
|
146
|
-
* @param patch - The text which will be injected if the completion item is
|
|
147
|
-
* selected.
|
|
148
|
-
*/
|
|
149
|
-
resolve?: (completionItem: T, context: CompletionContext, patch?: IPatch | null) => Promise<T>;
|
|
150
|
-
/**
|
|
151
|
-
* If users enable `autoCompletion` in setting, this method is
|
|
152
|
-
* called on text changed event of `CodeMirror` to check if the
|
|
153
|
-
* completion items should be shown.
|
|
154
|
-
*
|
|
155
|
-
* @param completerIsVisible - Current visibility status of the
|
|
156
|
-
* completer widget0
|
|
157
|
-
* @param changed - changed text.
|
|
158
|
-
*/
|
|
159
|
-
shouldShowContinuousHint?: (completerIsVisible: boolean, changed: SourceChange) => boolean;
|
|
160
|
-
}
|
|
161
|
-
export interface ICompletionProviderManager {
|
|
162
|
-
/**
|
|
163
|
-
* Register a completer provider with the manager.
|
|
164
|
-
*
|
|
165
|
-
* @param {CompletionProvider} provider - the provider to be registered.
|
|
166
|
-
*/
|
|
167
|
-
registerProvider: (provider: CompletionProvider) => void;
|
|
168
|
-
/**
|
|
169
|
-
* Invoke the completer in the widget with provided id.
|
|
170
|
-
*
|
|
171
|
-
* @param {string} id - the id of notebook panel, console panel or code editor.
|
|
172
|
-
*/
|
|
173
|
-
invoke: (id: string) => void;
|
|
174
|
-
/**
|
|
175
|
-
* Activate `select` command in the widget with provided id.
|
|
176
|
-
*
|
|
177
|
-
* @param {string} id - the id of notebook panel, console panel or code editor.
|
|
178
|
-
*/
|
|
179
|
-
select: (id: string) => void;
|
|
180
|
-
/**
|
|
181
|
-
* Update completer handler of a widget with new context.
|
|
182
|
-
*
|
|
183
|
-
* @param newCompleterContext - The completion context.
|
|
184
|
-
*/
|
|
185
|
-
updateCompleter: (newCompleterContext: CompletionContext) => Promise<void>;
|
|
186
|
-
/**
|
|
187
|
-
* Signal emitted when active providers list is changed.
|
|
188
|
-
*/
|
|
189
|
-
activeProvidersChanged: Event<void>;
|
|
190
|
-
}
|
|
191
|
-
export interface IConnectorProxy {
|
|
192
|
-
/**
|
|
193
|
-
* Fetch response from multiple providers, If a provider can not return
|
|
194
|
-
* the response for a completer request before timeout,
|
|
195
|
-
* the result of this provider will be ignore.
|
|
196
|
-
*
|
|
197
|
-
* @param {CompletionHandler.IRequest} request - The completion request.
|
|
198
|
-
*/
|
|
199
|
-
fetch: (request: IRequest) => Promise<(ICompletionItemsReply | null)[]>;
|
|
200
|
-
/**
|
|
201
|
-
* Check if completer should make request to fetch completion responses
|
|
202
|
-
* on user typing. If the provider with highest rank does not have
|
|
203
|
-
* `shouldShowContinuousHint` method, a default one will be used.
|
|
204
|
-
*
|
|
205
|
-
* @param completerIsVisible - The visible status of completer widget.
|
|
206
|
-
* @param changed - CodeMirror changed argument.
|
|
207
|
-
*/
|
|
208
|
-
shouldShowContinuousHint: (completerIsVisible: boolean, changed: SourceChange) => boolean;
|
|
209
|
-
}
|
|
210
|
-
//# sourceMappingURL=completer-protocol.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completer-protocol.d.ts","sourceRoot":"","sources":["../../src/completer/completer-protocol.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,MAAM,EAAE,IAAI,CAAC;IAEb;;OAEG;IACH,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CAMzB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEvB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;CACxD;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAChF;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;OAEG;IACH,KAAK,EAAE,CAAC,EAAE,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,kBAAkB,sBAAiD,CAAC;AAEjF;;GAEG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe;IAC7E;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;OAEG;IAGH;;;;OAIG;IACH,YAAY,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAE/D;;;;;OAKG;IACH,KAAK,EAAE,CACL,OAAO,EAAE,QAAQ,EACjB,OAAO,EAAE,iBAAiB,KACvB,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvC;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAE5E;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,CACR,cAAc,EAAE,CAAC,EACjB,OAAO,EAAE,iBAAiB,EAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,KAClB,OAAO,CAAC,CAAC,CAAC,CAAC;IAEhB;;;;;;;;OAQG;IACH,wBAAwB,CAAC,EAAE,CACzB,kBAAkB,EAAE,OAAO,EAC3B,OAAO,EAAE,YAAY,KAClB,OAAO,CAAC;CACd;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAEzD;;;;OAIG;IACH,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7B;;;;OAIG;IACH,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAE7B;;;;OAIG;IACH,eAAe,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3E;;OAEG;IACH,sBAAsB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,KAAK,EAAE,CAAC,OAAO,EAAE,QAAQ,KAAK,OAAO,CAAC,CAAC,qBAAqB,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IAExE;;;;;;;OAOG;IACH,wBAAwB,EAAE,CACxB,kBAAkB,EAAE,OAAO,EAC3B,OAAO,EAAE,YAAY,KAClB,OAAO,CAAC;CACd"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Syringe } from '@difizen/mana-app';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* The context which will be passed to the `fetch` function
|
|
5
|
-
* of a provider.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* An object describing a completion option injection into text.
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Completion item object based off of LSP CompletionItem.
|
|
14
|
-
* Compared to the old kernel completions interface, this enhances the completions UI to support:
|
|
15
|
-
* - differentiation between inserted text and user facing text
|
|
16
|
-
* - documentation for each completion item to be displayed adjacently
|
|
17
|
-
* - deprecation styling
|
|
18
|
-
* - custom icons
|
|
19
|
-
* and other potential new features.
|
|
20
|
-
*/
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* A reply to a completion items fetch request.
|
|
24
|
-
*/
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* The details of a completion request.
|
|
28
|
-
*/
|
|
29
|
-
|
|
30
|
-
export var CompletionProvider = new Syringe.DefinedToken('CompletionProvider');
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* The interface to implement a completer provider.
|
|
34
|
-
*/
|
package/es/model.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAI5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,MAAO,SAAQ,UAAU;IACxC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,UAAU,EAAE,cAAc,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,qBACa,KAAM,YAAW,MAAM;IAClC,EAAE,EAAE,MAAM,CAAC;IACX;;OAEG;IAEH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IAEH,QAAQ,EAAE,MAAM,CAAC;IAGjB,IAAI,EAAE,QAAQ,CAAU;IAExB;;OAEG;IAEH,UAAU,EAAE,cAAc,EAAE,CAAC;IAE7B;;OAEG;gBACS,OAAO,CAAC,EAAE,aAAa;IASnC;;OAEG;IACH,IAAI,mBAAmB,IAAI,KAAK,CAAC,OAAO,CAAC,CAExC;IAED;;OAEG;IACH,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;IACH,OAAO,IAAI,IAAI;IAOf,SAAS,CAAC,WAAW,UAAS;IAE9B,SAAS,CAAC,2BAA2B,mBAA0B;IAC/D,SAAS,CAAC,oBAAoB,iBAA0C;CACzE"}
|