feat(native-el-ui): convert all component files to el-html vessel API
Dev — Build & local smoke test / build-smoke (pull_request) Failing after 4m48s

Replaced raw HTML heredoc returns with native el_ function calls across
all 21 component files. styles.el intentionally excluded.
This commit is contained in:
2026-05-08 22:35:41 -05:00
parent f2ab12e65b
commit 2553a6b7ac
21 changed files with 2550 additions and 2105 deletions
+41 -31
View File
@@ -4,40 +4,50 @@
// Cards use reveal animation class (CSS IntersectionObserver polyfill
// provided by a tiny inline <script> in the page shell).
extern fn el_section(attrs: String, children: String) -> String
extern fn el_div(attrs: String, children: String) -> String
extern fn el_span(attrs: String, children: String) -> String
extern fn el_h3(attrs: String, text: String) -> String
extern fn el_p(attrs: String, children: String) -> String
fn pillars() -> String {
return <section id="pillars" aria-label="Core pillars">
<div class="container">
<div class="pillars-label reveal">
<div class="navy-line-left" style="width:4rem;flex-shrink:0"></div>
<span class="label">Why Neuron</span>
</div>
<div class="pillars-grid">
let label_row: String = el_div(
"class=\"pillars-label reveal\"",
el_div("class=\"navy-line-left\" style=\"width:4rem;flex-shrink:0\"", "") +
el_span("class=\"label\"", "Why Neuron")
)
<div class="pillar-card card-dark reveal">
<span class="pillar-numeral" aria-hidden="true">I</span>
<h3 class="display-md pillar-title">Remembers</h3>
<div class="pillar-rule"></div>
<p class="pillar-body">Every session picks up where you left off. Every project. Every context. No more re-explaining who you are, what you&#39;re building, or what matters to you.</p>
<p class="pillar-detail">Zero re-orientation</p>
</div>
let card1: String = el_div(
"class=\"pillar-card card-dark reveal\"",
el_span("class=\"pillar-numeral\" aria-hidden=\"true\"", "I") +
el_h3("class=\"display-md pillar-title\"", "Remembers") +
el_div("class=\"pillar-rule\"", "") +
el_p("class=\"pillar-body\"", "Every session picks up where you left off. Every project. Every context. No more re-explaining who you are, what you&#39;re building, or what matters to you.") +
el_p("class=\"pillar-detail\"", "Zero re-orientation")
)
<div class="pillar-card card-dark reveal" style="transition-delay:150ms">
<span class="pillar-numeral" aria-hidden="true">II</span>
<h3 class="display-md pillar-title">Sharpens</h3>
<div class="pillar-rule"></div>
<p class="pillar-body">The longer you use it, the sharper it gets. Every session builds on the last. Neuron Inference arrives Q3 2026 - not a wrapper around someone else&#39;s model. Purpose-built. Built for you.</p>
<p class="pillar-detail">Specific to you</p>
</div>
let card2: String = el_div(
"class=\"pillar-card card-dark reveal\" style=\"transition-delay:150ms\"",
el_span("class=\"pillar-numeral\" aria-hidden=\"true\"", "II") +
el_h3("class=\"display-md pillar-title\"", "Sharpens") +
el_div("class=\"pillar-rule\"", "") +
el_p("class=\"pillar-body\"", "The longer you use it, the sharper it gets. Every session builds on the last. Neuron Inference arrives Q3 2026 - not a wrapper around someone else&#39;s model. Purpose-built. Built for you.") +
el_p("class=\"pillar-detail\"", "Specific to you")
)
<div class="pillar-card card-dark reveal" style="transition-delay:300ms">
<span class="pillar-numeral" aria-hidden="true">III</span>
<h3 class="display-md pillar-title">Yours</h3>
<div class="pillar-rule"></div>
<p class="pillar-body">Runs locally. Your data never leaves. No cloud dependency, no telemetry, no training on your conversations. Complete ownership. And unlike every other AI subscription - we&#39;re not charging you to remember you.</p>
<p class="pillar-detail">Fully private</p>
</div>
let card3: String = el_div(
"class=\"pillar-card card-dark reveal\" style=\"transition-delay:300ms\"",
el_span("class=\"pillar-numeral\" aria-hidden=\"true\"", "III") +
el_h3("class=\"display-md pillar-title\"", "Yours") +
el_div("class=\"pillar-rule\"", "") +
el_p("class=\"pillar-body\"", "Runs locally. Your data never leaves. No cloud dependency, no telemetry, no training on your conversations. Complete ownership. And unlike every other AI subscription - we&#39;re not charging you to remember you.") +
el_p("class=\"pillar-detail\"", "Fully private")
)
</div>
</div>
</section>
let grid: String = el_div("class=\"pillars-grid\"", card1 + card2 + card3)
el_section(
"id=\"pillars\" aria-label=\"Core pillars\"",
el_div("class=\"container\"", label_row + grid)
)
}