From 68784f3e4de74d19d5dca55e7a434ad515ab12ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A1=97=E8=A7=92=E5=B0=8F=E6=9E=97?= <1013335014@qq.com> Date: Mon, 9 Dec 2024 11:38:11 +0800 Subject: [PATCH] =?UTF-8?q?Feat=EF=BC=9A=E5=8D=87=E7=BA=A7quill=E7=89=88?= =?UTF-8?q?=E6=9C=AC=EF=BC=9BFix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E5=AF=8C?= =?UTF-8?q?=E6=96=87=E6=9C=AC=E6=A8=A1=E5=BC=8F=E4=B8=8B=E6=96=87=E6=9C=AC?= =?UTF-8?q?=E8=BE=93=E5=85=A5=E8=BF=9E=E7=BB=AD=E5=A4=9A=E4=B8=AA=E7=A9=BA?= =?UTF-8?q?=E6=A0=BC=E4=BC=9A=E5=8E=8B=E7=BC=A9=E6=88=90=E4=B8=80=E4=B8=AA?= =?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simple-mind-map/package-lock.json | 16 ++++++++-------- simple-mind-map/src/plugins/RichText.js | 12 ++++++++---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/simple-mind-map/package-lock.json b/simple-mind-map/package-lock.json index 4902ccb9..bf60f753 100644 --- a/simple-mind-map/package-lock.json +++ b/simple-mind-map/package-lock.json @@ -1,11 +1,11 @@ { "name": "simple-mind-map", - "version": "0.10.6", + "version": "0.12.1", "lockfileVersion": 2, "requires": true, "packages": { "": { - "version": "0.10.6", + "version": "0.12.1", "license": "MIT", "dependencies": { "@svgdotjs/svg.js": "3.2.0", @@ -1822,9 +1822,9 @@ ] }, "node_modules/quill": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/quill/-/quill-2.0.2.tgz", - "integrity": "sha512-QfazNrhMakEdRG57IoYFwffUIr04LWJxbS/ZkidRFXYCQt63c1gK6Z7IHUXMx/Vh25WgPBU42oBaNzQ0K1R/xw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/quill/-/quill-2.0.3.tgz", + "integrity": "sha512-xEYQBqfYx/sfb33VJiKnSJp8ehloavImQ2A6564GAbqG55PGw1dAWUn1MUbQB62t0azawUS2CZZhWCjO8gRvTw==", "dependencies": { "eventemitter3": "^5.0.1", "lodash-es": "^4.17.21", @@ -3553,9 +3553,9 @@ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "quill": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/quill/-/quill-2.0.2.tgz", - "integrity": "sha512-QfazNrhMakEdRG57IoYFwffUIr04LWJxbS/ZkidRFXYCQt63c1gK6Z7IHUXMx/Vh25WgPBU42oBaNzQ0K1R/xw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/quill/-/quill-2.0.3.tgz", + "integrity": "sha512-xEYQBqfYx/sfb33VJiKnSJp8ehloavImQ2A6564GAbqG55PGw1dAWUn1MUbQB62t0azawUS2CZZhWCjO8gRvTw==", "requires": { "eventemitter3": "^5.0.1", "lodash-es": "^4.17.21", diff --git a/simple-mind-map/src/plugins/RichText.js b/simple-mind-map/src/plugins/RichText.js index ec913466..82adc214 100644 --- a/simple-mind-map/src/plugins/RichText.js +++ b/simple-mind-map/src/plugins/RichText.js @@ -229,14 +229,14 @@ class RichText { this.textEditNode = document.createElement('div') this.textEditNode.classList.add('smm-richtext-node-edit-wrap') this.textEditNode.style.cssText = ` - position:fixed; - box-sizing: border-box; + position:fixed; + box-sizing: border-box; ${ openRealtimeRenderOnNodeTextEdit ? '' : 'box-shadow: 0 0 20px rgba(0,0,0,.5);' } - outline: none; + outline: none; word-break: break-all; padding: ${paddingY}px ${paddingX}px; ` @@ -370,7 +370,11 @@ class RichText { // 获取当前正在编辑的内容 getEditText() { - return this.quill.container.firstChild.innerHTML + // https://github.com/slab/quill/issues/4509 + return this.quill + .getSemanticHTML() + .replaceAll(/ +/g, match => ' '.repeat(match.length)) + // return this.quill.container.firstChild.innerHTML // 去除ql-cursor节点 // https://github.com/wanglin2/mind-map/commit/138cc4b3e824671143f0bf70e5c46796f48520d0 // https://github.com/wanglin2/mind-map/commit/0760500cebe8ec4e8ad84ab63f877b8b2a193aa1