From 2941bf6af3e2f9788d6d15defaa8be50b7940f8b Mon Sep 17 00:00:00 2001 From: linonetwo Date: Sun, 23 Mar 2025 23:01:39 +0800 Subject: [PATCH] fix: document is not defined by checking !$tw.browser ReferenceError: document is not defined at $tw.utils.domMaker ($:/boot/boot.js:181:32) at ProsemirrorWidget.render ($:/plugins/tiddlywiki/prosemirror/widget.js:36:29) --- plugins/tiddlywiki/prosemirror/widget-loader.js | 15 +++++++++++++++ plugins/tiddlywiki/prosemirror/widget.js | 4 +--- 2 files changed, 16 insertions(+), 3 deletions(-) create mode 100644 plugins/tiddlywiki/prosemirror/widget-loader.js diff --git a/plugins/tiddlywiki/prosemirror/widget-loader.js b/plugins/tiddlywiki/prosemirror/widget-loader.js new file mode 100644 index 000000000..849c7c98c --- /dev/null +++ b/plugins/tiddlywiki/prosemirror/widget-loader.js @@ -0,0 +1,15 @@ +/*\ +title: $:/plugins/tiddlywiki/prosemirror/widget-loader.js +type: application/javascript +module-type: widget + +\*/ + +if (!$tw.browser) { + return; +} +// separate the widget from the exports here, so we can skip the require of react code if `!$tw.browser`. Those ts code will error if loaded in the nodejs side. +const components = require('$:/plugins/tiddlywiki/prosemirror/widget.js'); +const { prosemirror } = components; +exports.prosemirror = prosemirror; +exports['edit-prosemirror'] = prosemirror; \ No newline at end of file diff --git a/plugins/tiddlywiki/prosemirror/widget.js b/plugins/tiddlywiki/prosemirror/widget.js index 16d47ab8a..fe1924cd9 100644 --- a/plugins/tiddlywiki/prosemirror/widget.js +++ b/plugins/tiddlywiki/prosemirror/widget.js @@ -1,9 +1,7 @@ /*\ title: $:/plugins/tiddlywiki/prosemirror/widget.js type: application/javascript -module-type: widget - -Text node widget +module-type: library \*/