diff --git a/packages/codemirror/html.mjs b/packages/codemirror/html.mjs index 4b4d82e4..527275ef 100644 --- a/packages/codemirror/html.mjs +++ b/packages/codemirror/html.mjs @@ -1,6 +1,6 @@ -const parser = new DOMParser(); +const parser = typeof DOMParser !== 'undefined' ? new DOMParser() : null; export let html = (string) => { - return parser.parseFromString(string, 'text/html').querySelectorAll('*'); + return parser?.parseFromString(string, 'text/html').querySelectorAll('*'); }; let parseChunk = (chunk) => { if (Array.isArray(chunk)) return chunk.flat().join(''); diff --git a/packages/codemirror/tooltip.mjs b/packages/codemirror/tooltip.mjs index 7b7a36db..f67e6d14 100644 --- a/packages/codemirror/tooltip.mjs +++ b/packages/codemirror/tooltip.mjs @@ -6,26 +6,28 @@ const getDocLabel = (doc) => doc.name || doc.longname; let ctrlDown = false; -// Record Control key event to trigger or block the tooltip depending on the state -window.addEventListener( - 'keyup', - function (e) { - if (e.key == 'Control') { - ctrlDown = false; - } - }, - true, -); +if (typeof window !== 'undefined') { + // Record Control key event to trigger or block the tooltip depending on the state + window.addEventListener( + 'keyup', + function (e) { + if (e.key == 'Control') { + ctrlDown = false; + } + }, + true, + ); -window.addEventListener( - 'keydown', - function (e) { - if (e.key == 'Control') { - ctrlDown = true; - } - }, - true, -); + window.addEventListener( + 'keydown', + function (e) { + if (e.key == 'Control') { + ctrlDown = true; + } + }, + true, + ); +} export const strudelTooltip = hoverTooltip( (view, pos, side) => {