diff --git a/Public/CtaLetsTalk/Infrastructure/Ui/CtaLetsTalkRenderer.php b/Public/CtaLetsTalk/Infrastructure/Ui/CtaLetsTalkRenderer.php index 34382d7e..b15a3e52 100644 --- a/Public/CtaLetsTalk/Infrastructure/Ui/CtaLetsTalkRenderer.php +++ b/Public/CtaLetsTalk/Infrastructure/Ui/CtaLetsTalkRenderer.php @@ -137,7 +137,7 @@ final class CtaLetsTalkRenderer implements RendererInterface * @param array $data Datos del componente * @return string CSS generado */ - private function generateCSS(array $data): string + public function generateCSS(array $data): string { $css = ''; diff --git a/Public/TableOfContents/Infrastructure/Ui/TableOfContentsRenderer.php b/Public/TableOfContents/Infrastructure/Ui/TableOfContentsRenderer.php index 16139b22..8493ed26 100644 --- a/Public/TableOfContents/Infrastructure/Ui/TableOfContentsRenderer.php +++ b/Public/TableOfContents/Infrastructure/Ui/TableOfContentsRenderer.php @@ -203,7 +203,7 @@ final class TableOfContentsRenderer implements RendererInterface }, 20); } - private function generateCSS(array $data): string + public function generateCSS(array $data): string { $colors = $data['colors'] ?? []; $spacing = $data['spacing'] ?? []; diff --git a/Schemas/cta-lets-talk.json b/Schemas/cta-lets-talk.json index 97705694..bdea8bd7 100644 --- a/Schemas/cta-lets-talk.json +++ b/Schemas/cta-lets-talk.json @@ -42,6 +42,13 @@ "pages": "Solo páginas" }, "description": "Define en qué páginas se mostrará el botón" + }, + "is_critical": { + "type": "boolean", + "label": "CSS Crítico", + "default": true, + "editable": true, + "description": "Inyectar CSS inline en para optimizar LCP (componente above-the-fold)" } } }, diff --git a/Schemas/table-of-contents.json b/Schemas/table-of-contents.json index 7b39cf1a..f48efdc6 100644 --- a/Schemas/table-of-contents.json +++ b/Schemas/table-of-contents.json @@ -35,6 +35,13 @@ "editable": true, "options": ["all", "posts", "pages"], "description": "Tipos de contenido donde se muestra" + }, + "is_critical": { + "type": "boolean", + "label": "CSS Crítico", + "default": true, + "editable": true, + "description": "Inyectar CSS inline en para optimizar LCP (componente above-the-fold)" } } }, diff --git a/Shared/Infrastructure/Services/CriticalCSSService.php b/Shared/Infrastructure/Services/CriticalCSSService.php index 7e2c625a..99bafb8b 100644 --- a/Shared/Infrastructure/Services/CriticalCSSService.php +++ b/Shared/Infrastructure/Services/CriticalCSSService.php @@ -52,8 +52,10 @@ final class CriticalCSSService private const CRITICAL_RENDERERS = [ 'top-notification-bar' => \ROITheme\Public\TopNotificationBar\Infrastructure\Ui\TopNotificationBarRenderer::class, 'navbar' => \ROITheme\Public\Navbar\Infrastructure\Ui\NavbarRenderer::class, + 'cta-lets-talk' => \ROITheme\Public\CtaLetsTalk\Infrastructure\Ui\CtaLetsTalkRenderer::class, 'hero' => \ROITheme\Public\Hero\Infrastructure\Ui\HeroRenderer::class, 'featured-image' => \ROITheme\Public\FeaturedImage\Infrastructure\Ui\FeaturedImageRenderer::class, + 'table-of-contents' => \ROITheme\Public\TableOfContents\Infrastructure\Ui\TableOfContentsRenderer::class ]; /**