mirror of
https://github.com/streetwriters/notesnook.git
synced 2026-05-18 05:05:36 +02:00
editor: handle crash on inserting incorrect syntax in math nodes (#9690)
* editor: handle crash on inserting incorrect syntax in math nodes Signed-off-by: 01zulfi <85733202+01zulfi@users.noreply.github.com> * editor: fix 'math error' text shown on newly empty math node Signed-off-by: 01zulfi <85733202+01zulfi@users.noreply.github.com>
This commit is contained in:
@@ -276,6 +276,8 @@ export class MathView implements NodeView, ICursorPosObserver {
|
||||
while (this._mathRenderElt.firstChild) {
|
||||
this._mathRenderElt.firstChild.remove();
|
||||
}
|
||||
this._mathRenderElt.classList.remove("parse-error");
|
||||
this.dom.setAttribute("title", "");
|
||||
// do not render empty math
|
||||
return;
|
||||
} else {
|
||||
|
||||
@@ -32,20 +32,32 @@ async function loadKatex() {
|
||||
export const KatexRenderer: MathRenderer = {
|
||||
inline: (text, element) => {
|
||||
loadKatex().then((katex) => {
|
||||
katex.render(text, element, {
|
||||
displayMode: false,
|
||||
globalGroup: true,
|
||||
throwOnError: false
|
||||
});
|
||||
try {
|
||||
katex.render(text, element, {
|
||||
displayMode: false,
|
||||
globalGroup: true,
|
||||
throwOnError: false
|
||||
});
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
element.classList.add("parse-error");
|
||||
element.setAttribute("title", err instanceof Error ? err.message : String(err));
|
||||
}
|
||||
});
|
||||
},
|
||||
block: (text, element) => {
|
||||
loadKatex().then((katex) => {
|
||||
katex.render(text, element, {
|
||||
displayMode: true,
|
||||
globalGroup: true,
|
||||
throwOnError: false
|
||||
});
|
||||
try {
|
||||
katex.render(text, element, {
|
||||
displayMode: true,
|
||||
globalGroup: true,
|
||||
throwOnError: false
|
||||
});
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
element.classList.add("parse-error");
|
||||
element.setAttribute("title", err instanceof Error ? err.message : String(err));
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user