From 303cde60322e108a54defe56f97ca21cdfe8d114 Mon Sep 17 00:00:00 2001 From: Duncan McClean Date: Fri, 16 Jan 2026 10:47:42 +0000 Subject: [PATCH 1/3] Prevent "Type / to insert a set" clashing with nodes --- .../js/components/fieldtypes/bard/BardFieldtype.vue | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/resources/js/components/fieldtypes/bard/BardFieldtype.vue b/resources/js/components/fieldtypes/bard/BardFieldtype.vue index 69682be1ca..af7aa3fed6 100644 --- a/resources/js/components/fieldtypes/bard/BardFieldtype.vue +++ b/resources/js/components/fieldtypes/bard/BardFieldtype.vue @@ -105,7 +105,7 @@ v-tooltip="__('Add Set')" /> @@ -331,6 +331,15 @@ export default { return this.config.sets; }, + currentNodeIsEmpty() { + const { $anchor } = this.editor.state.selection; + const isRootDepth = $anchor.depth === 1; + const isEmptyTextNode = $anchor.parent.type.name === 'paragraph' + && !$anchor.parent.textContent; + + return isRootDepth && isEmptyTextNode; + }, + internalFieldActions() { return [ { From 7906297cf18a02ad4bbf33a7dbf69fcd33cd3d01 Mon Sep 17 00:00:00 2001 From: Jason Varga Date: Fri, 16 Jan 2026 17:08:08 -0500 Subject: [PATCH 2/3] revert as it didnt seem to work, and check if textblock has no firstchild --- .../js/components/fieldtypes/bard/BardFieldtype.vue | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/resources/js/components/fieldtypes/bard/BardFieldtype.vue b/resources/js/components/fieldtypes/bard/BardFieldtype.vue index af7aa3fed6..3781c3c6cc 100644 --- a/resources/js/components/fieldtypes/bard/BardFieldtype.vue +++ b/resources/js/components/fieldtypes/bard/BardFieldtype.vue @@ -105,7 +105,7 @@ v-tooltip="__('Add Set')" /> @@ -331,15 +331,6 @@ export default { return this.config.sets; }, - currentNodeIsEmpty() { - const { $anchor } = this.editor.state.selection; - const isRootDepth = $anchor.depth === 1; - const isEmptyTextNode = $anchor.parent.type.name === 'paragraph' - && !$anchor.parent.textContent; - - return isRootDepth && isEmptyTextNode; - }, - internalFieldActions() { return [ { @@ -585,7 +576,7 @@ export default { const { $anchor, empty } = selection; const isRootDepth = $anchor.depth === 1; const isEmptyTextBlock = - $anchor.parent.isTextblock && !$anchor.parent.type.spec.code && !$anchor.parent.textContent; + ($anchor.parent.isTextblock && !$anchor.parent.firstChild) && !$anchor.parent.type.spec.code && !$anchor.parent.textContent; const isAroundInlineImage = state.selection.$to.nodeBefore?.type.name === 'image' || state.selection.$to.nodeAfter?.type.name === 'image'; From 7ada8c1190a2dca564fccc990f6987244f983135 Mon Sep 17 00:00:00 2001 From: Jason Varga Date: Fri, 16 Jan 2026 17:18:28 -0500 Subject: [PATCH 3/3] =?UTF-8?q?handle=20always=5Fshow=5Fset=5Fbutton,=20wh?= =?UTF-8?q?ich=20i=20realize=20is=20where=20you=20could=C2=A0see=20the=20f?= =?UTF-8?q?irst=20commit=20having=20some=20effect?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/js/components/fieldtypes/bard/BardFieldtype.vue | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/resources/js/components/fieldtypes/bard/BardFieldtype.vue b/resources/js/components/fieldtypes/bard/BardFieldtype.vue index 3781c3c6cc..9fa24995de 100644 --- a/resources/js/components/fieldtypes/bard/BardFieldtype.vue +++ b/resources/js/components/fieldtypes/bard/BardFieldtype.vue @@ -105,7 +105,7 @@ v-tooltip="__('Add Set')" /> @@ -361,6 +361,10 @@ export default { }, ]; }, + + shouldShowAddSetHelperText() { + return !this.$refs.setPicker?.isOpen && this.suitableToShowSetButton(this.editor); + }, }, created() {