Skip to content

feat: react email support#62

Open
olliethedev wants to merge 61 commits into
mainfrom
feat/react-email-support
Open

feat: react email support#62
olliethedev wants to merge 61 commits into
mainfrom
feat/react-email-support

Conversation

@olliethedev
Copy link
Copy Markdown
Owner

@olliethedev olliethedev commented Mar 14, 2026

Note

Medium Risk
Adds a new extension surface (pageTypeRenderers/pageTypeCodeGenerators) that changes how pages are created, rendered, and exported, plus new email-specific rendering/codegen utilities; mistakes could affect editor canvas behavior and exported output across page types.

Overview
Adds page-type extensibility to UIBuilder via pageTypeRenderers and pageTypeCodeGenerators, letting the editor route canvas rendering and code export per-page based on page.pageType (including registry filtering for the add-component popover).

Updates core UI to support this: the NavBar page-creation popover now includes a page-type selector and passes default root layer type/props when creating pages; EditorPanel/preview dialog can delegate rendering to a custom page-type renderer (with optional skipAutoFrame); CodePanel can replace the default React tab with a page-type-specific generator + label.

Introduces React Email support: a react-email component registry, emailPageRenderer/emailCodeGenerator, Tailwind email theme config + EmailTailwindThemePanel, and canvas-safe component substitutes; includes a full email builder demo route and new docs/README guidance. Also adds a Tailwind theme panel override (tailwindThemePanel: ReactNode | false), improves layers drag/drop persistence for string-children nodes, and tightens tests/mocks accordingly.

Written by Cursor Bugbot for commit 0b853f2. This will update automatically on new commits. Configure here.

Comment thread components/ui/ui-builder/internal/editor-panel.tsx
Comment thread components/ui/ui-builder/internal/components/add-component-popover.tsx Outdated
Comment thread lib/ui-builder/store/layer-store.ts Outdated
Comment thread components/ui/ui-builder/internal/components/nav.tsx
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread app/layout.tsx
Comment thread components/ui/ui-builder/internal/editor-panel.tsx Outdated
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread app/platform/email-builder.tsx Outdated
Comment thread components/ui/ui-builder/internal/editor-panel.tsx
Comment thread components/ui/ui-builder/internal/utils/render-utils.tsx Outdated
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread lib/ui-builder/email/email-builder-utils.tsx Outdated
Comment thread lib/ui-builder/email/email-builder-utils.tsx
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread components/ui/ui-builder/internal/form-fields/classname-control/config.tsx Outdated
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread components/ui/ui-builder/internal/editor-panel.tsx
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread components/ui/ui-builder/internal/components/nav.tsx
Comment thread app/examples/email/page.tsx Outdated
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

Comment thread components/ui/ui-builder/internal/components/nav.tsx
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Comment thread app/examples/email/page.tsx
@github-actions
Copy link
Copy Markdown
Contributor

✅ Registry test passed! The registry files have been automatically updated with your changes.

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