feat/publish-warnings
PublishWarnings.tsx had unit tests for the presentational banner, but nothing asserted that result.warnings from publish() actually flows through TopBar's handlePublish into it. That 3-line seam is exactly what this feature exists to fix -- the backend always returned warnings, and TopBar discarded them by only checking result.success, so the contact-form-relay warning was dead code for its entire life. Adds TopBar.test.tsx asserting: warnings render after a successful publish with warnings, no banner renders when warnings is absent, a warning doesn't present as a publish failure, warnings survive the 3s "Published" flash (fake timers, advanced past 3000ms), and a fresh publish clears stale warnings from the previous one. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Description
Visual drag-and-drop website builder using GrapesJS
Languages
TypeScript
61.2%
HTML
17.1%
JavaScript
17%
CSS
3.6%
PHP
0.8%
Other
0.3%