TypeCellOS / TypeCellOS/BlockNote

BlockTypeSelect shows no heading options when createHeadingBlockSpec({ allowToggleHeadings: false })

Open
#2,845 0 comments 5 reactions 1 assignee View on GitHub

@matthewlipski is already working on this.

Since Aug 24, 2026.

Dominant language
TypeScript
Stars
10.2k
Forks
772
Avg merge
3d 11h
Merged PRs (30d)
17

Description

What’s broken?

When the heading block spec is configured with allowToggleHeadings: false, the default BlockTypeSelect does not show any heading options.
The schema itself supports normal headings, and headings still work elsewhere, but the formatting toolbar’s block type dropdown does not expose H1-H6.

What did you expect to happen?

BlockTypeSelect should still show normal heading options H1-H6. Only toggle-heading options should be removed when allowToggleHeadings: false

Steps to reproduce
  1. Create a schema with toggle headings disabled: const schema = BlockNoteSchema.create({ blockSpecs: { ...defaultBlockSpecs, heading: createHeadingBlockSpec({ allowToggleHeadings: false, }), }, });
  2. Render the default block type select: <FormattingToolbarController formattingToolbar={() => ( <FormattingToolbar> <BlockTypeSelect /> </FormattingToolbar> )} />
BlockNote version

0.50.0

Environment

No response

Additional context

No response

Contribution
  • I'd be interested in contributing a fix for this issue
Sponsor
  • I'm a sponsor and would appreciate if you could look into this sooner than later 💖

Contributor guide

Open the contributing guide

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.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.