client: Fix rendering notes if hljs is not loaded

This commit is contained in:
Elian Doran 2024-11-08 21:50:22 +02:00
parent 2048a30aa5
commit 29e83b97e6
No known key found for this signature in database
2 changed files with 7 additions and 4 deletions

View File

@ -371,7 +371,8 @@ class NoteListRenderer {
$content.append($renderedContent); $content.append($renderedContent);
$content.addClass(`type-${type}`); $content.addClass(`type-${type}`);
} catch (e) { } catch (e) {
console.log(`Caught error while rendering note '${note.noteId}' of type '${note.type}': ${e.message}, stack: ${e.stack}`); console.warn(`Caught error while rendering note '${note.noteId}' of type '${note.type}'`);
console.error(e);
$content.append("rendering error"); $content.append("rendering error");
} }

View File

@ -23,9 +23,7 @@ export function getStylesheetUrl(theme) {
export async function applySyntaxHighlight($container) { export async function applySyntaxHighlight($container) {
if (!isSyntaxHighlightEnabled()) { if (!isSyntaxHighlightEnabled()) {
return; return;
} }
await library_loader.requireLibrary(library_loader.HIGHLIGHT_JS);
const codeBlocks = $container.find("pre code"); const codeBlocks = $container.find("pre code");
for (const codeBlock of codeBlocks) { for (const codeBlock of codeBlocks) {
@ -48,6 +46,10 @@ export async function applySingleBlockSyntaxHighlight($codeBlock, normalizedMime
$codeBlock.parent().toggleClass("hljs"); $codeBlock.parent().toggleClass("hljs");
const text = $codeBlock.text(); const text = $codeBlock.text();
if (!window.hljs) {
await library_loader.requireLibrary(library_loader.HIGHLIGHT_JS);
}
let highlightedText = null; let highlightedText = null;
if (normalizedMimeType === mime_types.MIME_TYPE_AUTO) { if (normalizedMimeType === mime_types.MIME_TYPE_AUTO) {
highlightedText = hljs.highlightAuto(text); highlightedText = hljs.highlightAuto(text);