Skip to content

feat(blocks): support heading 4/5/6 blocks#73

Merged
brd6 merged 1 commit into
mainfrom
feat/heading-456-blocks
May 28, 2026
Merged

feat(blocks): support heading 4/5/6 blocks#73
brd6 merged 1 commit into
mainfrom
feat/heading-456-blocks

Conversation

@brd6

@brd6 brd6 commented May 28, 2026

Copy link
Copy Markdown
Owner

Description

Add concrete block models for Notion heading_4, heading_5, and heading_6 payloads.

The new classes reuse the existing generic heading hydration and serialization path, so higher heading levels now preserve rich text instead of resolving to UnsupportedBlock.

Motivation and context

Notion can return higher heading levels. Without matching block classes, those payloads fall back to UnsupportedBlock, which does not hydrate the heading property and loses rich text for consumers.

How has this been tested?

  • composer test
  • composer dev:lint:syntax
  • composer dev:lint:style
  • composer dev:analyze:all

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

PR checklist

  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING.md document.
  • I have added tests to cover my changes.

Add concrete block classes for Notion heading_4, heading_5, and heading_6 payloads so the existing heading hydration path preserves rich text for higher heading levels. Extend block tests to cover class resolution, serialization fields, and unsupported block fallback.
@brd6 brd6 merged commit 3b30b3e into main May 28, 2026
21 checks passed
@brd6 brd6 deleted the feat/heading-456-blocks branch May 28, 2026 18:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant