@codingame/monaco-vscode-extensions-service-override
Version:
VSCode public API plugged on the monaco editor - extensions service-override
36 lines (33 loc) • 1.9 kB
JavaScript
import { __decorate, __param } from 'vscode/external/tslib/tslib.es6.js';
import { CancellationToken } from 'vscode/vscode/vs/base/common/cancellation';
import { Disposable, DisposableMap } from 'vscode/vscode/vs/base/common/lifecycle';
import { ExtHostContext, MainContext } from 'vscode/vscode/vs/workbench/api/common/extHost.protocol';
import { IAiRelatedInformationService } from 'vscode/vscode/vs/workbench/services/aiRelatedInformation/common/aiRelatedInformation.service';
import { extHostNamedCustomer } from '../../services/extensions/common/extHostCustomers.js';
let MainThreadAiRelatedInformation = class MainThreadAiRelatedInformation extends Disposable {
constructor(context, _aiRelatedInformationService) {
super();
this._aiRelatedInformationService = _aiRelatedInformationService;
this._registrations = this._register(( new DisposableMap()));
this._proxy = ( context.getProxy(ExtHostContext.ExtHostAiRelatedInformation));
}
$getAiRelatedInformation(query, types) {
return this._aiRelatedInformationService.getRelatedInformation(query, types, CancellationToken.None);
}
$registerAiRelatedInformationProvider(handle, type) {
const provider = {
provideAiRelatedInformation: (query, token) => {
return this._proxy.$provideAiRelatedInformation(handle, query, token);
},
};
this._registrations.set(handle, this._aiRelatedInformationService.registerAiRelatedInformationProvider(type, provider));
}
$unregisterAiRelatedInformationProvider(handle) {
this._registrations.deleteAndDispose(handle);
}
};
MainThreadAiRelatedInformation = __decorate([
extHostNamedCustomer(MainContext.MainThreadAiRelatedInformation),
( __param(1, IAiRelatedInformationService))
], MainThreadAiRelatedInformation);
export { MainThreadAiRelatedInformation };