From dbf4cd915d5643197a0f30099ebbfe80987a1130 Mon Sep 17 00:00:00 2001 From: ivi Date: Wed, 19 Aug 2026 22:27:46 -0300 Subject: [PATCH] fix(editor): support heading node placeholders --- packages/editor/src/email-editor/email-editor.tsx | 3 --- packages/editor/src/ui/themes/default.css | 9 ++++++++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/editor/src/email-editor/email-editor.tsx b/packages/editor/src/email-editor/email-editor.tsx index d9c91dd681..2635befa94 100644 --- a/packages/editor/src/email-editor/email-editor.tsx +++ b/packages/editor/src/email-editor/email-editor.tsx @@ -150,9 +150,6 @@ export const EmailEditor = forwardRef( placeholder: placeholder ?? (({ node }) => { - // TODO: this heading placeholder is not working, - // in part because styles are only targetting paragraphs, - // but in part because of the way the content is rendered if (node.type.name === 'heading') { return `Heading ${node.attrs.level}`; } diff --git a/packages/editor/src/ui/themes/default.css b/packages/editor/src/ui/themes/default.css index 6496bb0e97..9121b51b73 100644 --- a/packages/editor/src/ui/themes/default.css +++ b/packages/editor/src/ui/themes/default.css @@ -397,7 +397,14 @@ color: var(--re-text); } -.tiptap p.is-empty::before { +.tiptap p.is-empty::before, +.tiptap h1.is-empty::before, +.tiptap h2.is-empty::before, +.tiptap h3.is-empty::before, +.tiptap h4.is-empty::before, +.tiptap h5.is-empty::before, +.tiptap h6.is-empty::before, +.tiptap div.is-empty[data-placeholder]::before { opacity: 0.3; float: left; content: attr(data-placeholder);