Handle case where the language is known but not loaded into HLJS

This commit is contained in:
Scott Frazer 2023-08-26 22:00:47 -04:00
parent 41a901694d
commit 6095b3a4e9

View file

@ -151,13 +151,16 @@ export class Diff2HtmlUI {
this.config.highlightLanguages = new Map(Object.entries(this.config.highlightLanguages)); this.config.highlightLanguages = new Map(Object.entries(this.config.highlightLanguages));
} }
const hljsLanguage = let hljsLanguage =
language && this.config.highlightLanguages.has(language) language && this.config.highlightLanguages.has(language)
? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
this.config.highlightLanguages.get(language)! this.config.highlightLanguages.get(language)!
: language : language
? getLanguage(language) ? getLanguage(language)
: 'plaintext'; : 'plaintext';
if (language !== null && hljs.getLanguage(language) === undefined) {
hljsLanguage = 'plaintext';
}
// Collect all the code lines and execute the highlight on them // Collect all the code lines and execute the highlight on them
const codeLines = file.querySelectorAll('.d2h-code-line-ctn'); const codeLines = file.querySelectorAll('.d2h-code-line-ctn');