Bootstrapped during the 2026-06-06 BlockNinja consolidation. Was previously an unversioned directory inside ~/src/blockninja-themes/corporate-modernist. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
57 lines
1.5 KiB
Plaintext
57 lines
1.5 KiB
Plaintext
package main
|
|
|
|
// ctaStripComponent renders the corporate-modernist:cta_strip block.
|
|
templ ctaStripComponent(data CTAStripData) {
|
|
<section
|
|
class={ "cm-section", ctaStripVariantClass(data.Variant) }
|
|
data-block="corporate-modernist:cta_strip"
|
|
data-variant={ data.Variant }
|
|
>
|
|
<div class="cm-content-well">
|
|
<div style="display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem;">
|
|
if data.Headline != "" {
|
|
<h2 class="cm-display" style="font-size: 1.75rem; margin: 0; max-width: 36rem;">{ data.Headline }</h2>
|
|
} else {
|
|
<h2 class="cm-display" style="font-size: 1.75rem; margin: 0; max-width: 36rem;">Ready when you are.</h2>
|
|
}
|
|
if data.HasCTA {
|
|
<a class="cm-btn-primary" href={ templ.SafeURL(data.CTAHref) }>
|
|
{ ctaStripLabel(data) }
|
|
</a>
|
|
} else {
|
|
<a class="cm-btn-primary" href="#" aria-disabled="true">
|
|
{ ctaStripDefaultLabel(data.Variant) }
|
|
</a>
|
|
}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
}
|
|
|
|
func ctaStripVariantClass(variant string) string {
|
|
switch variant {
|
|
case "quiet":
|
|
return "cm-cta-strip-quiet"
|
|
default:
|
|
return "cm-cta-strip-accent"
|
|
}
|
|
}
|
|
|
|
func ctaStripLabel(data CTAStripData) string {
|
|
if data.CTALabel != "" {
|
|
return data.CTALabel
|
|
}
|
|
return ctaStripDefaultLabel(data.Variant)
|
|
}
|
|
|
|
func ctaStripDefaultLabel(variant string) string {
|
|
switch variant {
|
|
case "download":
|
|
return "Download report"
|
|
case "quiet":
|
|
return "Learn more"
|
|
default:
|
|
return "Book a call"
|
|
}
|
|
}
|