// Generated by scripts/generate-showcase.mjs. Do not edit directly.
page CTASectionDetail {
layout = "showcase"
state playground_eyebrow = ctx.url.searchParams.get("pg_eyebrow") ?? ""
state playground_title = ctx.url.searchParams.get("pg_title") ?? "CTASection example"
state playground_description = ctx.url.searchParams.get("pg_description") ?? "A polished default ctasection for a modern application."
state playground_icon = ctx.url.searchParams.get("pg_icon") ?? ""
state playground_align = ctx.url.searchParams.get("pg_align") ?? "start"
state playground_size = ctx.url.searchParams.get("pg_size") ?? "default"
state playground_color = ctx.url.searchParams.get("pg_color") ?? "primary"
state playground_variant = ctx.url.searchParams.get("pg_variant") ?? "solid"
state playground_primaryLabel = ctx.url.searchParams.get("pg_primaryLabel") ?? "CTASection"
state playground_primaryHref = ctx.url.searchParams.get("pg_primaryHref") ?? "#ctasection-demo"
state playground_primaryIcon = ctx.url.searchParams.get("pg_primaryIcon") ?? ""
state playground_secondaryLabel = ctx.url.searchParams.get("pg_secondaryLabel") ?? "CTASection"
state playground_secondaryHref = ctx.url.searchParams.get("pg_secondaryHref") ?? "#ctasection-demo"
state playground_secondaryIcon = ctx.url.searchParams.get("pg_secondaryIcon") ?? ""
state playground_backgroundImage = ctx.url.searchParams.get("pg_backgroundImage") ?? ""
state playground_maxWidth = ctx.url.searchParams.get("pg_maxWidth") ?? "xl"
state playground_class = ctx.url.searchParams.get("pg_class") ?? "showcase-instance showcase-instance--1"
seo {
title = "CTASection"
description = "Reusable closing call-to-action section with primary and secondary actions."
}
view {
Interactive playgroundConfigure CTASection
Change any prop and inspect the server-rendered component immediately.
Live preview
actions slot
visual slot
footer slot
<CTASection
title="CTASection example"
description="A polished default ctasection for a modern application."
align="start"
primaryLabel="CTASection"
primaryHref="#ctasection-demo"
secondaryLabel="CTASection"
secondaryHref="#ctasection-demo">
<!-- Add default, actions, visual, footer slot content here -->
</CTASection>
Live examplesDesigned for real product surfaces
Compare configurations and resize the browser to check responsive behavior.
Live preview
actions slot
visual slot
footer slot
<CTASection
title="CTASection example"
description="A polished default ctasection for a modern application."
align="start"
primaryLabel="CTASection"
primaryHref="#ctasection-demo"
secondaryLabel="CTASection"
secondaryHref="#ctasection-demo">
<!-- Add default, actions, visual, footer slot content here -->
</CTASection>
Live preview
actions slot
visual slot
footer slot
<CTASection
title="Compact CTASection"
description="A compact configuration for dashboards and dense product surfaces."
icon="icon-[lucide--arrow-right]"
size="sm"
variant="secondary"
primaryLabel="Compact example"
primaryHref="#ctasection-demo"
secondaryLabel="Compact example"
secondaryHref="#ctasection-demo">
<!-- Add default, actions, visual, footer slot content here -->
</CTASection>
Live preview
actions slot
visual slot
footer slot
<CTASection
title="Advanced CTASection"
description="A richer configuration demonstrating additional content and hierarchy."
icon="icon-[lucide--trash-2]"
align="end"
size="lg"
variant="success"
primaryLabel="Advanced example"
primaryHref="#ctasection-demo"
secondaryLabel="Advanced example"
secondaryHref="#ctasection-demo">
<!-- Add default, actions, visual, footer slot content here -->
</CTASection>
Component eventsEvents
Public events declared by this component. Custom events bubble from the component root and expose state through event.detail.
No public component events.
Component APIProps and configuration
All content and behavior shown above is supplied through these props and slots.
| Prop | Type | Default | Required |
|---|
eyebrow | string | "" | No |
title | string | "Ready to get started?" | No |
description | string | "" | No |
icon | string | "" | No |
align | string | "center" | No |
size | string | "default" | No |
color | string | "primary" | No |
variant | string | "solid" | No |
primaryLabel | string | "Get started" | No |
primaryHref | string | "#" | No |
primaryIcon | string | "" | No |
secondaryLabel | string | "" | No |
secondaryHref | string | "" | No |
secondaryIcon | string | "" | No |
backgroundImage | string | "" | No |
maxWidth | string | "xl" | No |
class | string | "" | No |
}
}