feat: sync showcase with WRNexusJS 0.8.72 and @wrnexus/ui 0.8.88

- Sync app, public, scripts, test and examples from the framework's
  component-showcase: redesigned component demos, marketing blocks under
  /blocks, template and preview galleries, distinct Timeline/Section
  variants, Chat Bubble receipts, a top-placement Drawer demo, and the
  playground code panel fix (objects in array props no longer blank out).
- Standalone adaptations kept: the generator and tests read
  component-reference.json from the published @wrnexus/ui, and tests use
  the published @wrnexus/compiler and @wrnexus/syntax.
- Dependencies: every @wrnexus/* package to its latest release (ui 0.8.88,
  styles 0.8.26, core 0.8.16, cli 0.8.72, ...), happy-dom for the
  playground tests, Tailwind 4.3; bun.lock and package-lock.json refreshed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ClintchizandClaude Opus 5.5 committed 2026-09-30 16:50:22 +05:30
1 parent bec9ef2889
commit c0ac38c572
171 files changed
+21983 -35658

No files matched your search

+6
View File
@@ -0,0 +1,6 @@
page commerceTemplate {
state bag: number = 0
view {<nav class="example-toolbar"><a href="/templates">← All templates</a><a href="#example-source">View code</a></nav> <main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"><h1>Everyday essentials</h1><p>Thoughtfully made tools for your desk.</p><div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.25rem"><Card title="Studio notebook" description="Dot grid · recycled paper" footer="$18"><Button label="Add notebook" @click="bag = bag + 1" /></Card><Card title="Desk organizer" description="Solid oak · natural finish" footer="$42"><Button label="Add organizer" @click="bag = bag + 1" /></Card><Card title="Travel tumbler" description="Insulated · 350 ml" footer="$24"><Button label="Add tumbler" @click="bag = bag + 1" /></Card></div><p role="status">Shopping bag: {bag} items</p><Button label="Clear bag" variant="secondary" @click="bag = 0" /></main> <section class="example-code-panel"><header><h2>Copy this example</h2><button type="button" data-copy-target="#example-source">Copy code</button></header><pre><code id="example-source">page commerceTemplate <span>&#123;</span>
state bag: number = 0
view <span>&#123;</span> &lt;main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"&gt;&lt;h1&gt;Everyday essentials&lt;/h1&gt;&lt;p&gt;Thoughtfully made tools for your desk.&lt;/p&gt;&lt;div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.25rem"&gt;&lt;Card title="Studio notebook" description="Dot grid · recycled paper" footer="$18"&gt;&lt;Button label="Add notebook" @click="bag = bag + 1" /&gt;&lt;/Card&gt;&lt;Card title="Desk organizer" description="Solid oak · natural finish" footer="$42"&gt;&lt;Button label="Add organizer" @click="bag = bag + 1" /&gt;&lt;/Card&gt;&lt;Card title="Travel tumbler" description="Insulated · 350 ml" footer="$24"&gt;&lt;Button label="Add tumbler" @click="bag = bag + 1" /&gt;&lt;/Card&gt;&lt;/div&gt;&lt;p role="status"&gt;Shopping bag: <span>&#123;</span>bag<span>&#125;</span> items&lt;/p&gt;&lt;Button label="Clear bag" variant="secondary" @click="bag = 0" /&gt;&lt;/main&gt; <span>&#125;</span>
<span>&#125;</span></code></pre></section> } }
+6
View File
@@ -0,0 +1,6 @@
page dashboardsTemplate {
state bag: number = 0
view {<nav class="example-toolbar"><a href="/templates">← All templates</a><a href="#example-source">View code</a></nav> <main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"><h1>Workspace performance</h1><MetricCard title="Active accounts" value="1,284" /><Chart title="Weekly activity" type="bar" data='[{"label":"Mon","value":24},{"label":"Tue","value":38},{"label":"Wed","value":52}]' showLegend="false" /><Card title="Team access" description="Manage roles and permissions for your workspace." actionLabel="Manage team" actionHref="/preview/profile" /></main> <section class="example-code-panel"><header><h2>Copy this example</h2><button type="button" data-copy-target="#example-source">Copy code</button></header><pre><code id="example-source">page dashboardsTemplate <span>&#123;</span>
state bag: number = 0
view <span>&#123;</span> &lt;main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"&gt;&lt;h1&gt;Workspace performance&lt;/h1&gt;&lt;MetricCard title="Active accounts" value="1,284" /&gt;&lt;Chart title="Weekly activity" type="bar" data='[<span>&#123;</span>"label":"Mon","value":24<span>&#125;</span>,<span>&#123;</span>"label":"Tue","value":38<span>&#125;</span>,<span>&#123;</span>"label":"Wed","value":52<span>&#125;</span>]' showLegend="false" /&gt;&lt;Card title="Team access" description="Manage roles and permissions for your workspace." actionLabel="Manage team" actionHref="/preview/profile" /&gt;&lt;/main&gt; <span>&#125;</span>
<span>&#125;</span></code></pre></section> } }
+6
View File
@@ -0,0 +1,6 @@
page marketingTemplate {
state bag: number = 0
view {<nav class="example-toolbar"><a href="/templates">← All templates</a><a href="#example-source">View code</a></nav> <main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"><h1>Make room for your best work.</h1><p>One calm workspace for projects, notes, and the people behind them.</p><Button label="Explore the workspace" href="/preview/workspace" /><div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.25rem"><Card title="Plan together" description="Turn your next idea into clear, shared priorities." /><Card title="Stay focused" description="Keep tasks, notes, and decisions in one place." /><Card title="Grow naturally" description="Start with your team. Add more space when you need it." /></div><Card title="Team plan" description="Everything your team needs to get started." footer="$19 / member / month" actionLabel="Get started" actionHref="/preview/sign-in" /></main> <section class="example-code-panel"><header><h2>Copy this example</h2><button type="button" data-copy-target="#example-source">Copy code</button></header><pre><code id="example-source">page marketingTemplate <span>&#123;</span>
state bag: number = 0
view <span>&#123;</span> &lt;main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"&gt;&lt;h1&gt;Make room for your best work.&lt;/h1&gt;&lt;p&gt;One calm workspace for projects, notes, and the people behind them.&lt;/p&gt;&lt;Button label="Explore the workspace" href="/preview/workspace" /&gt;&lt;div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:1.25rem"&gt;&lt;Card title="Plan together" description="Turn your next idea into clear, shared priorities." /&gt;&lt;Card title="Stay focused" description="Keep tasks, notes, and decisions in one place." /&gt;&lt;Card title="Grow naturally" description="Start with your team. Add more space when you need it." /&gt;&lt;/div&gt;&lt;Card title="Team plan" description="Everything your team needs to get started." footer="$19 / member / month" actionLabel="Get started" actionHref="/preview/sign-in" /&gt;&lt;/main&gt; <span>&#125;</span>
<span>&#125;</span></code></pre></section> } }
+6
View File
@@ -0,0 +1,6 @@
page productivityTemplate {
state bag: number = 0
view {<nav class="example-toolbar"><a href="/templates">← All templates</a><a href="#example-source">View code</a></nav> <main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"><h1>Your week, in focus</h1><DragAndDrop title="Priorities" items='[{"label":"Review the launch plan"},{"label":"Prepare customer interviews"},{"label":"Share the weekly update"}]' /><DatePicker label="Next milestone" name="milestone" /><WysiwygEditor title="Meeting notes" value="Capture decisions and next steps here." /></main> <section class="example-code-panel"><header><h2>Copy this example</h2><button type="button" data-copy-target="#example-source">Copy code</button></header><pre><code id="example-source">page productivityTemplate <span>&#123;</span>
state bag: number = 0
view <span>&#123;</span> &lt;main style="max-width:72rem;margin:3rem auto;padding:2rem;display:grid;gap:1.5rem"&gt;&lt;h1&gt;Your week, in focus&lt;/h1&gt;&lt;DragAndDrop title="Priorities" items='[<span>&#123;</span>"label":"Review the launch plan"<span>&#125;</span>,<span>&#123;</span>"label":"Prepare customer interviews"<span>&#125;</span>,<span>&#123;</span>"label":"Share the weekly update"<span>&#125;</span>]' /&gt;&lt;DatePicker label="Next milestone" name="milestone" /&gt;&lt;WysiwygEditor title="Meeting notes" value="Capture decisions and next steps here." /&gt;&lt;/main&gt; <span>&#125;</span>
<span>&#125;</span></code></pre></section> } }