@platejs/basic-nodes@53.0.0
udecode/plate@platejs/basic-nodes@53.0.0Apr 23, 2026by github-actions[bot]
AI Summary
Major changes to blockquote structure and block manipulation behaviors.
Key Highlights
- Store blockquotes as container blocks with block children
- Lift every selected nested quoted block one level on Shift+Tab
- Reset headings to paragraphs on Backspace at block start before any merge
Breaking Changes
- Blockquote structure changed to nested block children
- editor.tf.blockquote.toggle() now wraps or unwraps blocks instead of retagging text
- Backspace at heading start resets to paragraph before merge
Full Release Notes
### Major Changes
- [#4941](https://github.com/udecode/plate/pull/4941) by [@zbeyens](https://github.com/zbeyens) – Store blockquotes as container blocks with block children.
Lift every selected nested quoted block one level on `Shift+Tab`.
Reset headings to paragraphs on `Backspace` at block start before any merge.
**Migration:**
1. Update persisted values, fixtures, and tests to use block children instead of direct text children.
2. Expect `editor.tf.blockquote.toggle()` to wrap or unwrap blocks instead of retagging one text block in place.
3. Empty later quoted paragraphs delete in place on `Backspace` instead of jumping out of the quote.
4. `Backspace` at the start of a heading now resets the heading to a paragraph before any merge.
5. Legacy flat blockquote values still normalize on load, but persisted snapshots and fixtures should move to the new shape.
```tsx
// Before
{ type: 'blockquote', children: [{ text: 'Quote' }] }
// After
{
type: 'blockquote',
children: [{ type: 'p', children: [{ text: 'Quote' }] }],
}
```