Inline adapters
parent
8f57069f86
commit
a33b7cee5a
@ -1,55 +0,0 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import { LanguageServiceDefaults } from './monaco.contribution';
|
||||
import type { CSSWorker } from './cssWorker';
|
||||
import { Uri } from '../fillers/monaco-editor-core';
|
||||
import {
|
||||
DiagnosticsAdapter,
|
||||
CompletionAdapter,
|
||||
HoverAdapter,
|
||||
DocumentHighlightAdapter,
|
||||
DefinitionAdapter,
|
||||
ReferenceAdapter,
|
||||
RenameAdapter,
|
||||
DocumentSymbolAdapter,
|
||||
DocumentColorAdapter,
|
||||
FoldingRangeAdapter,
|
||||
SelectionRangeAdapter
|
||||
} from '../common/lspLanguageFeatures';
|
||||
|
||||
export interface WorkerAccessor {
|
||||
(first: Uri, ...more: Uri[]): Promise<CSSWorker>;
|
||||
}
|
||||
|
||||
export class CSSDiagnosticsAdapter extends DiagnosticsAdapter<CSSWorker> {
|
||||
constructor(languageId: string, worker: WorkerAccessor, defaults: LanguageServiceDefaults) {
|
||||
super(languageId, worker, defaults.onDidChange);
|
||||
}
|
||||
}
|
||||
|
||||
export class CSSCompletionAdapter extends CompletionAdapter<CSSWorker> {
|
||||
constructor(worker: WorkerAccessor) {
|
||||
super(worker, ['/', '-', ':']);
|
||||
}
|
||||
}
|
||||
|
||||
export class CSSHoverAdapter extends HoverAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSDocumentHighlightAdapter extends DocumentHighlightAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSDefinitionAdapter extends DefinitionAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSReferenceAdapter extends ReferenceAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSRenameAdapter extends RenameAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSDocumentSymbolAdapter extends DocumentSymbolAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSDocumentColorAdapter extends DocumentColorAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSFoldingRangeAdapter extends FoldingRangeAdapter<CSSWorker> {}
|
||||
|
||||
export class CSSSelectionRangeAdapter extends SelectionRangeAdapter<CSSWorker> {}
|
@ -1,47 +0,0 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import type { HTMLWorker } from './htmlWorker';
|
||||
import { Uri } from '../fillers/monaco-editor-core';
|
||||
import {
|
||||
CompletionAdapter,
|
||||
HoverAdapter,
|
||||
DocumentHighlightAdapter,
|
||||
RenameAdapter,
|
||||
DocumentSymbolAdapter,
|
||||
DocumentLinkAdapter,
|
||||
DocumentFormattingEditProvider,
|
||||
DocumentRangeFormattingEditProvider,
|
||||
FoldingRangeAdapter,
|
||||
SelectionRangeAdapter
|
||||
} from '../common/lspLanguageFeatures';
|
||||
|
||||
export interface WorkerAccessor {
|
||||
(...more: Uri[]): Promise<HTMLWorker>;
|
||||
}
|
||||
|
||||
export class HTMLCompletionAdapter extends CompletionAdapter<HTMLWorker> {
|
||||
constructor(worker: WorkerAccessor) {
|
||||
super(worker, ['.', ':', '<', '"', '=', '/']);
|
||||
}
|
||||
}
|
||||
|
||||
export class HTMLHoverAdapter extends HoverAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLDocumentHighlightAdapter extends DocumentHighlightAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLRenameAdapter extends RenameAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLDocumentSymbolAdapter extends DocumentSymbolAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLDocumentLinkAdapter extends DocumentLinkAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLDocumentFormattingEditProvider extends DocumentFormattingEditProvider<HTMLWorker> {}
|
||||
|
||||
export class HTMLDocumentRangeFormattingEditProvider extends DocumentRangeFormattingEditProvider<HTMLWorker> {}
|
||||
|
||||
export class HTMLFoldingRangeAdapter extends FoldingRangeAdapter<HTMLWorker> {}
|
||||
|
||||
export class HTMLSelectionRangeAdapter extends SelectionRangeAdapter<HTMLWorker> {}
|
@ -1,66 +0,0 @@
|
||||
/*---------------------------------------------------------------------------------------------
|
||||
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
import { LanguageServiceDefaults } from './monaco.contribution';
|
||||
import type { JSONWorker } from './jsonWorker';
|
||||
import { editor, Uri } from '../fillers/monaco-editor-core';
|
||||
import {
|
||||
DiagnosticsAdapter,
|
||||
CompletionAdapter,
|
||||
HoverAdapter,
|
||||
DocumentSymbolAdapter,
|
||||
DocumentFormattingEditProvider,
|
||||
DocumentRangeFormattingEditProvider,
|
||||
DocumentColorAdapter,
|
||||
FoldingRangeAdapter,
|
||||
SelectionRangeAdapter
|
||||
} from '../common/lspLanguageFeatures';
|
||||
|
||||
export interface WorkerAccessor {
|
||||
(...more: Uri[]): Promise<JSONWorker>;
|
||||
}
|
||||
|
||||
export class JSONDiagnosticsAdapter extends DiagnosticsAdapter<JSONWorker> {
|
||||
constructor(languageId: string, worker: WorkerAccessor, defaults: LanguageServiceDefaults) {
|
||||
super(languageId, worker, defaults.onDidChange);
|
||||
|
||||
this._disposables.push(
|
||||
editor.onWillDisposeModel((model) => {
|
||||
this._resetSchema(model.uri);
|
||||
})
|
||||
);
|
||||
this._disposables.push(
|
||||
editor.onDidChangeModelLanguage((event) => {
|
||||
this._resetSchema(event.model.uri);
|
||||
})
|
||||
);
|
||||
}
|
||||
|
||||
private _resetSchema(resource: Uri): void {
|
||||
this._worker().then((worker) => {
|
||||
worker.resetSchema(resource.toString());
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
export class JSONCompletionAdapter extends CompletionAdapter<JSONWorker> {
|
||||
constructor(worker: WorkerAccessor) {
|
||||
super(worker, [' ', ':', '"']);
|
||||
}
|
||||
}
|
||||
|
||||
export class JSONHoverAdapter extends HoverAdapter<JSONWorker> {}
|
||||
|
||||
export class JSONDocumentSymbolAdapter extends DocumentSymbolAdapter<JSONWorker> {}
|
||||
|
||||
export class JSONDocumentFormattingEditProvider extends DocumentFormattingEditProvider<JSONWorker> {}
|
||||
|
||||
export class JSONDocumentRangeFormattingEditProvider extends DocumentRangeFormattingEditProvider<JSONWorker> {}
|
||||
|
||||
export class JSONDocumentColorAdapter extends DocumentColorAdapter<JSONWorker> {}
|
||||
|
||||
export class JSONFoldingRangeAdapter extends FoldingRangeAdapter<JSONWorker> {}
|
||||
|
||||
export class JSONSelectionRangeAdapter extends SelectionRangeAdapter<JSONWorker> {}
|
Loading…
Reference in New Issue