URL Cloner, real builder integration and E2E tests
FIX plugin Scaffold now writes all 5 required Elementor post metas (_elementor_data, _elementor_edit_mode, _elementor_version, _elementor_page_settings, _elementor_css) when creating pages.
FIX plugin Scaffold now writes Gutenberg block grammar directly into post_content when creating pages.
NEW plugin New endpoint POST /wp-converter/v1/elementor-content — injects Elementor content into existing pages looked up by slug.
NEW plugin New endpoint POST /wp-converter/v1/gutenberg-content — injects block grammar into post_content of existing pages looked up by slug.
NEW api ScaffoldPage now accepts optional elementorData and gutenbergContent fields to send builder content alongside the site structure.
NEW parser New UrlParser (URL Cloner): clones any public URL, downloads HTML and external stylesheets, and feeds the conversion pipeline.
FIX parser URL parser now downloads external CSS with MIME type guards, max-size limit and timeout to avoid blocking on slow or unexpected resources.
FIX parser CSS rules limit raised from 400 to 5000 (configurable via maxCssRules) to prevent truncating styles on real-world pages.
NEW parser CSS parser now processes @media rules and stores them in the IR's designTokens.breakpoints.
FIX conversion Fixed DOM→IR conversion: src, alt, href and level attributes now map correctly to IR nodes.
FIX elementor Added LEAF_TYPES guard in Elementor generator: headings, paragraphs and images no longer become containers even if they have children in the IR.
IMPROVEMENT tests All 4 E2E test suites (Elementor, Gutenberg, Divi, Oxygen) rewritten from scratch against the real generator API. 58 tests passing.
FIX web Removed deprecated baseUrl option from tapeto-web's tsconfig.json (deprecated in TypeScript 6.0, removed in 7.0).