(metadata?: nbformat.INotebookMetadata)
| 497 | return model?.language || getLanguageInKernelSpec(kernelSpec); |
| 498 | } |
| 499 | export function getLanguageInNotebookMetadata(metadata?: nbformat.INotebookMetadata): string | undefined { |
| 500 | if (!metadata) { |
| 501 | return; |
| 502 | } |
| 503 | // If kernel spec is defined & we have a language in that, then use that information. |
| 504 | // eslint-disable-next-line @typescript-eslint/no-explicit-any |
| 505 | const kernelSpec: Partial<IJupyterKernelSpec> | undefined = metadata.kernelspec as any; |
| 506 | return getLanguageInKernelSpec(kernelSpec) || metadata.language_info?.name; |
| 507 | } |
| 508 | export function getLanguageInKernelSpec(kernelSpec?: Partial<IJupyterKernelSpec> | undefined): string | undefined { |
| 509 | // When a kernel spec is stored in ipynb, the `language` of the kernel spec is also saved. |
| 510 | // Unfortunately there's no strong typing for this. |
no test coverage detected