Add language picker to notebook cells. (#18601)

This commit is contained in:
Cory Rivera
2022-03-02 10:25:55 -08:00
committed by GitHub
parent c34de52a03
commit 79cda5cbe5
10 changed files with 144 additions and 7 deletions

View File

@@ -494,6 +494,22 @@ export class NotebookService extends Disposable implements INotebookService {
return kernels;
}
public async getSupportedLanguagesForProvider(provider: string, kernelDisplayName?: string): Promise<string[]> {
let languages: string[] = [];
let kernels = await this.getStandardKernelsForProvider(provider);
if (kernelDisplayName && kernels) {
kernels = kernels.filter(kernel => kernel.displayName === kernelDisplayName);
}
kernels?.forEach(kernel => {
if (kernel.supportedLanguages) {
languages.push(...kernel.supportedLanguages);
}
});
// Remove duplicates
languages = [...new Set(languages)];
return languages;
}
private shutdown(): void {
this._executeManagersMap.forEach(manager => {
manager.forEach(m => {