Inspector Text panel omits Uppercase mark toggle (MARK_NAMES missing "uppercase")
Maintainers usually reply within 1 day
@svargas-dev is already working on this.
Since Nov 2, 2026.
Assessment
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Newbie friendliness
- 22/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Stale
- Tech stack
- react, typescript
- Domain
- frontend
Research direction
The bug is the MARK_NAMES array in dist/ui/index.mjs and dist/ui/index.cjs, which InspectorText uses to build its mark toggles. Open the InspectorText component and check how it reads that list, then compare it with the marks StarterKit registers. Done means the Inspector Text panel shows an Uppercase toggle. Pull request #3850 is already open against this issue, so review it before starting new work.
Written by the indexing model from the issue text.
Description
Summary
The Inspector's text panel does not show a toggle for the Uppercase mark, even though the mark is registered and functional elsewhere.
Context
@react-email/[email protected]StarterKitincludes theUppercasemark (declared indist/extensions/index.d.ts, withsetUppercase/toggleUppercase/unsetUppercasecommands)BubbleMenuUppercaseis exported from@react-email/editor/uiand works in the bubble menu
Problem
InspectorText renders mark toggles from a hardcoded MARK_NAMES list in dist/ui/index.mjs / dist/ui/index.cjs:
const MARK_NAMES = [
"bold",
"italic",
"underline",
"strike",
"code",
];
"uppercase" is missing, so the inspector's Text panel never offers an uppercase toggle, even though the mark is part of the schema. The bubble menu (which uses BubbleMenuUppercase) works fine.
Expected
MARK_NAMES includes "uppercase" so the inspector matches the schema and the bubble menu.
Workaround
We currently patch MARK_NAMES in both dist/ui/index.mjs and dist/ui/index.cjs to add "uppercase".
- Dominant language
- TypeScript
- Stars
- 19.9k
- Forks
- 1.1k
- Avg merge
- 1d 15h
- Merged PRs (30d)
- 49
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from resend/react-email
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
resend/react-email#3876 ·
Maintainers usually reply within 1 day
-
render: unstableTextConversion outputs HTML comments and repeats link URLs in plain textPossibly taken @lakshya-dhariwal claimed this 1 day ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 87/100
resend/react-email#3864 ·
Maintainers usually reply within 1 day
-
<CodeInline> causes duplicated text in body previews in Gmail and other providers due to hacky Orange.fr workaroundPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
resend/react-email#3853 ·
Maintainers usually reply within 1 day
-
Markdown: HTML inside code blocks and inline code isn't escapedPossibly taken @KishanKanejiya23 claimed this 11 days ago. Open
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
resend/react-email#3814 ·
Maintainers usually reply within 1 day
-
Tailwind stacked media variants leave nested CSS in rendered emailsPossibly taken @lakshya-dhariwal claimed this today. Open
Difficulty 3/5 1-2 days Newbie friendliness 35/100
resend/react-email#3874 ·
Maintainers usually reply within 1 day
All issues in resend/react-email
Similar issues
-
documentation good first issue roadmap
Difficulty 1/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
siyuan-note/siyuan#21324 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
dmno-dev/varlock#1279 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
himynameisdave/bsky-profanity-counter#59 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100