Inspector Text panel omits Uppercase mark toggle (MARK_NAMES missing "uppercase")

Open
#3,849 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

@svargas-dev is already working on this.

Since Nov 2, 2026.

  • #3850 by @svargas-dev — open
  • #3858 by @Tyagiquamar — open

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]
  • StarterKit includes the Uppercase mark (declared in dist/extensions/index.d.ts, with setUppercase/toggleUppercase/unsetUppercase commands)
  • BubbleMenuUppercase is exported from @react-email/editor/ui and 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

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from resend/react-email

All issues in resend/react-email

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.