@vpxa/aikit 0.1.152 → 0.1.153

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,863 @@
1
+ function e(e){return e.kind===`result`}function t(e){return e.kind===`error`}function n(e){return String(e??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`).replace(/'/g,`&#39;`)}function r(e){let t=String(e??``).trim();return/^(https?:|mailto:|#)/i.test(t)?t:`#`}function i(e){return String(e??``).replace(/[^a-zA-Z0-9_-]/g,`_`)}function a(e){if(e==null)return``;if(Array.isArray(e))return e.map(a).join(`, `);if(typeof e==`object`)try{return JSON.stringify(e)}catch{return String(e)}return String(e)}function o(e){if(typeof e!=`string`)return e;let t=e.trim();if(t.startsWith(`[`)&&t.endsWith(`]`)||t.startsWith(`{`)&&t.endsWith(`}`))try{return JSON.parse(t)}catch{return e}return e}function s(e){return n(String(e??``)).replace(/\*\*(.+?)\*\*/g,`<strong>$1</strong>`).replace(/`(.+?)`/g,`<code>$1</code>`).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,t,n)=>`<a href="${r(n)}">${t}</a>`)}const c={ok:`success`,pass:`success`,passed:`success`,good:`success`,error:`danger`,fail:`danger`,failed:`danger`,critical:`danger`,high:`danger`,warn:`warning`,caution:`warning`,medium:`warning`,info:`accent`,low:`accent`,note:`accent`},l=new Set([`success`,`danger`,`warning`,`accent`]);function u(e){if(!e)return`accent`;let t=String(e).toLowerCase(),n=c[t]??t;return l.has(n)?n:`accent`}function d(e,t=`fg`){return`var(--dt-${u(e)}-${t})`}function f(e){let t=e.value;return Array.isArray(t)?t:t&&typeof t==`object`&&`items`in t&&Array.isArray(t.items)?t.items:[]}function ee(e){let t=o(e);return Array.isArray(t)?t:[]}function te(e,t){return`<div class="bk-actions">${ee(e.value).map(e=>{let t=i(e.id);if(e.type===`select`){let r=(e.options??[]).map(e=>{let t=typeof e==`string`?e:e.value,r=typeof e==`string`?e:e.label;return`<option value="${n(t)}">${n(r)}</option>`}).join(``);return`<label class="bk-select-wrap"><span class="bk-visually-hidden">${n(e.label)}</span><select class="bk-select" data-action-id="${t}"><option value="" selected disabled>${n(e.label)}</option>${r}</select></label>`}return`<button type="button" class="bk-action bk-action--${n(e.variant??`default`)}" data-action-id="${t}">${n(e.label)}</button>`}).join(``)}</div>`}function ne(e,t){return`<div class="bk-cards">${f(e).map(e=>{let t=e.badge?`<span class="bk-card-badge">${n(e.badge)}</span>`:``,r=e.body?`<div class="bk-card-body">${n(e.body)}</div>`:``,i=e.description?`<div class="bk-card-description">${n(e.description)}</div>`:``;return`<article class="bk-card" data-tone="${u(e.status)}"><div class="bk-card-header"><div class="bk-card-title">${n(e.title)}</div>${t}</div>${r}${i}</article>`}).join(``)}</div>`}function re(e,t){let r=o(e.value),i=Array.isArray(r?.data)?r.data:[],s=[String(r?.xKey??`label`),...Array.isArray(r?.yKeys)&&r.yKeys.length>0?r.yKeys:[`value`]],c=s.map(e=>`<th>${n(e)}</th>`).join(``),l=i.map(e=>`<tr>${s.map(t=>`<td>${n(a(e[t]))}</td>`).join(``)}</tr>`).join(``);return`<div class="bk-chart"><div class="bk-chart-note">Chart fallback (${n(String(r?.chartType??e.chartType??`chart`))}) rendered as a data table.</div><div class="bk-chart-table-wrap"><table class="bk-chart-table"><thead><tr>${c}</tr></thead><tbody>${l}</tbody></table></div></div>`}function ie(e,t){return`<ul class="bk-checklist">${f(e).map(e=>{let t=!!e.checked;return`<li class="bk-checklist-item" data-checked="${String(t)}"><span class="bk-checklist-icon">${t?`✓`:`×`}</span><span class="bk-checklist-label">${n(e.label)}</span></li>`}).join(``)}</ul>`}function ae(e,t){return`<pre class="bk-code"><code class="${(e.language?` language-${i(String(e.language))}`:``).trim()}">${n(String(e.value??``))}</code></pre>`}function oe(e){let t=o(e);return Array.isArray(t)?t:t&&typeof t==`object`&&Array.isArray(t.columns)?t.columns:[]}function se(e,t){return`<div class="bk-comparison">${oe(e.value).map(e=>{let t=e.items.map(e=>`<li>${n(e)}</li>`).join(``);return`<section class="bk-comparison-column"><div class="bk-comparison-title">${n(e.title)}</div><ul class="bk-comparison-items">${t}</ul></section>`}).join(``)}</div>`}function ce(e){let t=o(e);return Array.isArray(t)?t:t&&typeof t==`object`&&Array.isArray(t.files)?t.files:[]}function le(e,t){return`<div class="bk-docs-browser">${ce(e.value).map(e=>{let t=u(e.status),r=e.title?`<div class="bk-doc-title">${n(e.title)}</div>`:``,i=e.content?`<pre class="bk-doc-content">${n(e.content)}</pre>`:``;return`<article class="bk-doc-entry"><div class="bk-doc-header"><div>${r}<div class="bk-doc-path">${n(e.path)}</div></div><span class="bk-doc-status" style="background:var(--dt-${t}-subtle);color:var(--dt-${t}-fg);">${n(e.status??`current`)}</span></div>${i}</article>`}).join(``)}</div>`}function ue(e){let t=o(e.value);if(t&&typeof t==`object`){let n=t;return{title:String(n.title??e.title??``),severity:n.severity?String(n.severity):e.severity?String(e.severity):void 0,detail:n.detail??n.value}}return{title:String(e.title??`Finding`),severity:e.severity?String(e.severity):void 0,detail:t}}function de(e,t){let r=ue(e),i=u(r.severity),a=r.detail===void 0?``:s(String(r.detail)).replace(/\n/g,`<br>`);return`<article class="bk-finding" data-tone="${i}"><div class="bk-finding-header"><div class="bk-finding-title">${n(r.title)}</div><span class="bk-finding-severity" style="background:var(--dt-${i}-subtle);color:var(--dt-${i}-fg);">${n(r.severity??`info`)}</span></div><div class="bk-finding-detail">${a}</div></article>`}function p(e){return String(e??``).replace(/"/g,`\\"`)}function fe(e,t){let r=o(e.value),a=[`graph ${[`TD`,`LR`,`RL`,`BT`].includes(String(e.direction??`TD`))?String(e.direction??`TD`):`TD`}`];for(let e of r?.nodes??[]){let t=i(String(e.id??e.name??`node`)),n=p(e.label??e.name??t);a.push(` ${t}["${n}"]`)}for(let e of r?.edges??[]){let t=i(String(e.from??e.source??`from`)),n=i(String(e.to??e.target??`to`)),r=e.label?`|${p(e.label)}|`:``;a.push(` ${t} -->${r} ${n}`)}return`<pre class="bk-graph mermaid">${n(a.join(`
2
+ `))}</pre>`}function pe(e,t){let r=Number(e.level??2),i=Number.isFinite(r)?Math.max(1,Math.min(r,6)):2;return`<h${i} class="bk-heading bk-heading--${i}">${n(String(e.value??e.title??``))}</h${i}>`}function me(e,t){let n=String(e.value??``);return`<div class="bk-markdown">${n.trimStart().startsWith(`<`)?n:s(n).replace(/\n/g,`<br>`)}</div>`}function he(e,t){return`<pre class="bk-mermaid mermaid">${n(String(e.value??``))}</pre>`}function ge(e){if(e==null||e===``)return``;let t=a(e),r=Number(String(e).replace(/[^0-9.-]/g,``));return`<span class="bk-metric-trend">${Number.isNaN(r)?``:r>0?`↑ `:r<0?`↓ `:`→ `}${n(t)}</span>`}function _e(e,t){return`<div class="bk-metrics">${f(e).map(e=>`<article class="bk-metric" data-tone="${u(e.status)}"><div class="bk-metric-label">${n(e.label)}</div><div class="bk-metric-value">${n(a(e.value))}</div>${ge(e.trend)}</article>`).join(``)}</div>`}function ve(e,t){return`<p class="bk-paragraph">${n(String(e.value??e.text??``))}</p>`}function ye(e){let t=o(e);if(Array.isArray(t))return t;if(t&&typeof t==`object`){if(Array.isArray(t.items))return t.items;if(`value`in t)return[t]}return[]}function be(e,t){return`<div class="bk-progress">${ye(e.value).map(e=>{let t=Math.max(1,Number(e.max)||100),r=Math.max(0,Number(e.value)||0),i=Math.round(Math.min(r/t*100,100)),a=u(e.color);return`<div class="bk-progress-item"><div class="bk-progress-meta"><span>${n(e.label)}</span><span>${i}%</span></div><div class="bk-progress-track"><span class="bk-progress-bar" style="width:${i}%;background:var(--dt-${a}-emphasis);box-shadow:0 0 16px var(--dt-glow-${a});"></span></div></div>`}).join(``)}</div>`}function xe(e){if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e??``)}}function Se(e,t){return`<pre class="bk-prompt">${n(xe(e.value))}</pre>`}function Ce(e,t){return`<hr class="bk-separator">`}function we(e){let t=o(e);return Array.isArray(t)?t:t&&typeof t==`object`&&Array.isArray(t.items)?t.items:[]}function Te(e,t){return`<div class="bk-status-board">${we(e.value).map(e=>{let t=e.items.map(e=>{let t=u(e.status),r=e.description?`<div class="bk-status-description">${n(e.description)}</div>`:``;return`<div class="bk-status-item"><span class="bk-status-pill" style="background:var(--dt-${t}-subtle);color:var(--dt-${t}-fg);">${n(e.status??`pending`)}</span><div class="bk-status-copy"><div class="bk-status-label">${n(e.label)}</div>${r}</div></div>`}).join(``);return`<section class="bk-status-category"><div class="bk-status-category-title">${n(e.category)}</div><div class="bk-status-items">${t}</div></section>`}).join(``)}</div>`}function Ee(e){let t=o(e.value);if(Array.isArray(t)){if(t.length>0&&typeof t[0]==`object`&&t[0]!==null&&!Array.isArray(t[0])){let n=t;return{headers:Array.isArray(e.headers)?e.headers.map(String):Object.keys(n[0]??{}),rows:n}}if(t.length>0&&Array.isArray(t[0])){let[n,...r]=t,i=Array.isArray(e.headers)?e.headers.map(String):n.map(String);return{headers:i,rows:r.map(e=>Object.fromEntries(i.map((t,n)=>[t,e[n]])))}}}if(t&&typeof t==`object`){let n=Array.isArray(e.headers)?e.headers.map(String):Array.isArray(t.headers)?t.headers.map(String):[],r=Array.isArray(t.rows)?t.rows:[];if(r.length>0&&Array.isArray(r[0]))return{headers:n,rows:r.map(e=>Object.fromEntries(n.map((t,n)=>[t,e[n]])))};if(r.length>0&&typeof r[0]==`object`&&r[0]!==null)return{headers:n,rows:r}}return{headers:Array.isArray(e.headers)?e.headers.map(String):[],rows:[]}}function De(e,t){let{headers:r,rows:i}=Ee(e);return r.length===0?`<div class="bk-table-wrap"><table class="bk-table"><tbody></tbody></table></div>`:`<div class="bk-table-wrap"><table class="bk-table">${`<thead><tr>${r.map(e=>`<th>${n(e)}</th>`).join(``)}</tr></thead>`}<tbody>${i.map(e=>`<tr>${r.map(t=>`<td>${n(a(e[t]))}</td>`).join(``)}</tr>`).join(``)}</tbody></table></div>`}function Oe(e){let t=o(e);return Array.isArray(t)?t:t&&typeof t==`object`&&Array.isArray(t.items)?t.items:[]}function ke(e,t){return`<div class="bk-tags">${Oe(e.value).map(e=>{let t=typeof e==`string`?e:String(e.text??e.label??``),r=u(typeof e==`string`?void 0:e.status??e.tone??e.color);return`<span class="bk-tag" style="background:var(--dt-${r}-subtle);color:var(--dt-${r}-fg);">${n(t)}</span>`}).join(``)}</div>`}function Ae(e,t){return`<div class="bk-text">${s(String(e.value??``)).replace(/\n/g,`<br>`)}</div>`}function je(e,t){return`<div class="bk-timeline">${f(e).map(e=>{let t=u(e.status),r=e.description?`<div class="bk-timeline-description">${n(e.description)}</div>`:``,i=e.timestamp?`<div class="bk-timeline-timestamp">${n(e.timestamp)}</div>`:``;return`<article class="bk-timeline-item" data-tone="${t}"><span class="bk-timeline-dot" style="background:${`var(--dt-${t}-emphasis)`};box-shadow:0 0 0 6px var(--dt-glow-${t});"></span><div class="bk-timeline-title">${n(e.title)}</div>${r}${i}</article>`}).join(``)}</div>`}function m(e,t){if(Array.isArray(e)){let r=e.map(e=>m(e)).join(``);return t?`<details class="bk-tree-node" open><summary>${n(t)}</summary><div class="bk-tree-children">${r}</div></details>`:`<div class="bk-tree-children">${r}</div>`}if(e&&typeof e==`object`){let r=e;if(typeof r.name==`string`)return m(r.children??[],r.name);let i=Object.entries(r).map(([e,t])=>m(t,e)).join(``);return t?`<details class="bk-tree-node" open><summary>${n(t)}</summary><div class="bk-tree-children">${i}</div></details>`:`<div class="bk-tree-children">${i}</div>`}let r=n(a(e));return t?`<div class="bk-tree-leaf"><span class="bk-tree-key">${n(t)}</span><span class="bk-tree-value">${r}</span></div>`:`<div class="bk-tree-leaf">${r}</div>`}function Me(e,t){return`<div class="bk-tree">${m(o(e.value))}</div>`}const h={"--dt-bg-primary":`#ffffff`,"--dt-bg-secondary":`#f6f8fa`,"--dt-bg-tertiary":`#eaeef2`,"--dt-bg-canvas":`#f0f0f0`,"--dt-text-primary":`#1f2328`,"--dt-text-secondary":`#656d76`,"--dt-text-tertiary":`#8b949e`,"--dt-border-default":`#d0d7de`,"--dt-border-muted":`#d8dee4`,"--dt-border-subtle":`#eaeef2`,"--dt-accent-fg":`#0969da`,"--dt-accent-emphasis":`#0550ae`,"--dt-accent-muted":`rgba(9, 105, 218, 0.4)`,"--dt-accent-subtle":`rgba(9, 105, 218, 0.1)`,"--dt-success-fg":`#1a7f37`,"--dt-success-emphasis":`#116329`,"--dt-success-muted":`rgba(26, 127, 55, 0.4)`,"--dt-success-subtle":`rgba(26, 127, 55, 0.1)`,"--dt-danger-fg":`#cf222e`,"--dt-danger-emphasis":`#a40e26`,"--dt-danger-muted":`rgba(207, 34, 46, 0.4)`,"--dt-danger-subtle":`rgba(207, 34, 46, 0.1)`,"--dt-warning-fg":`#9a6700`,"--dt-warning-emphasis":`#7d4e00`,"--dt-warning-muted":`rgba(154, 103, 0, 0.4)`,"--dt-warning-subtle":`rgba(154, 103, 0, 0.1)`,"--dt-purple-fg":`#8250df`,"--dt-purple-emphasis":`#6639ba`,"--dt-purple-muted":`rgba(130, 80, 223, 0.4)`,"--dt-purple-subtle":`rgba(130, 80, 223, 0.1)`,"--dt-font-sans":`'Segoe UI', system-ui, -apple-system, sans-serif`,"--dt-font-mono":`'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, monospace`,"--dt-font-size-xs":`0.75rem`,"--dt-font-size-sm":`0.8125rem`,"--dt-font-size-base":`0.875rem`,"--dt-font-size-lg":`1rem`,"--dt-font-size-xl":`1.25rem`,"--dt-font-size-2xl":`1.5rem`,"--dt-font-size-3xl":`2rem`,"--dt-space-1":`0.25rem`,"--dt-space-2":`0.5rem`,"--dt-space-3":`0.75rem`,"--dt-space-4":`1rem`,"--dt-space-6":`1.5rem`,"--dt-space-8":`2rem`,"--dt-space-12":`3rem`,"--dt-space-16":`4rem`,"--dt-radius-sm":`6px`,"--dt-radius-md":`8px`,"--dt-radius-lg":`12px`,"--dt-radius-xl":`16px`,"--dt-shadow-sm":`0 1px 2px rgba(0, 0, 0, 0.07)`,"--dt-shadow-md":`0 3px 6px rgba(0, 0, 0, 0.1)`,"--dt-shadow-lg":`0 8px 24px rgba(0, 0, 0, 0.12)`,"--dt-glow-accent":`rgba(9, 105, 218, 0.08)`,"--dt-glow-success":`rgba(26, 127, 55, 0.08)`,"--dt-glow-danger":`rgba(207, 34, 46, 0.08)`,"--dt-glow-warning":`rgba(154, 103, 0, 0.08)`,"--dt-glow-purple":`rgba(130, 80, 223, 0.08)`,"--dt-transition-fast":`150ms ease`,"--dt-transition-normal":`200ms ease`},g={"--dt-bg-primary":`#0d1117`,"--dt-bg-secondary":`#161b22`,"--dt-bg-tertiary":`#21262d`,"--dt-bg-canvas":`#010409`,"--dt-text-primary":`#f0f6fc`,"--dt-text-secondary":`#9198a1`,"--dt-text-tertiary":`#656d76`,"--dt-border-default":`#30363d`,"--dt-border-muted":`#21262d`,"--dt-border-subtle":`#1f242d`,"--dt-accent-fg":`#58a6ff`,"--dt-accent-emphasis":`#1f6feb`,"--dt-accent-muted":`rgba(56, 139, 253, 0.4)`,"--dt-accent-subtle":`rgba(56, 139, 253, 0.15)`,"--dt-success-fg":`#3fb950`,"--dt-success-emphasis":`#238636`,"--dt-success-muted":`rgba(63, 185, 80, 0.4)`,"--dt-success-subtle":`rgba(63, 185, 80, 0.15)`,"--dt-danger-fg":`#f85149`,"--dt-danger-emphasis":`#da3633`,"--dt-danger-muted":`rgba(248, 81, 73, 0.4)`,"--dt-danger-subtle":`rgba(248, 81, 73, 0.15)`,"--dt-warning-fg":`#d29922`,"--dt-warning-emphasis":`#bb8009`,"--dt-warning-muted":`rgba(210, 153, 34, 0.4)`,"--dt-warning-subtle":`rgba(210, 153, 34, 0.15)`,"--dt-purple-fg":`#bc8cff`,"--dt-purple-emphasis":`#a371f7`,"--dt-purple-muted":`rgba(188, 140, 255, 0.4)`,"--dt-purple-subtle":`rgba(188, 140, 255, 0.15)`,"--dt-shadow-sm":`0 1px 2px rgba(1, 4, 9, 0.35)`,"--dt-shadow-md":`0 3px 6px rgba(1, 4, 9, 0.4)`,"--dt-shadow-lg":`0 8px 24px rgba(1, 4, 9, 0.45)`,"--dt-glow-accent":`rgba(56, 139, 253, 0.14)`,"--dt-glow-success":`rgba(63, 185, 80, 0.14)`,"--dt-glow-danger":`rgba(248, 81, 73, 0.14)`,"--dt-glow-warning":`rgba(210, 153, 34, 0.14)`,"--dt-glow-purple":`rgba(188, 140, 255, 0.14)`},Ne=`--dt-bg-primary.--dt-bg-secondary.--dt-bg-tertiary.--dt-bg-canvas.--dt-text-primary.--dt-text-secondary.--dt-text-tertiary.--dt-border-default.--dt-border-muted.--dt-border-subtle.--dt-accent-fg.--dt-accent-emphasis.--dt-accent-muted.--dt-accent-subtle.--dt-success-fg.--dt-success-emphasis.--dt-success-muted.--dt-success-subtle.--dt-danger-fg.--dt-danger-emphasis.--dt-danger-muted.--dt-danger-subtle.--dt-warning-fg.--dt-warning-emphasis.--dt-warning-muted.--dt-warning-subtle.--dt-purple-fg.--dt-purple-emphasis.--dt-purple-muted.--dt-purple-subtle.--dt-font-sans.--dt-font-mono.--dt-font-size-xs.--dt-font-size-sm.--dt-font-size-base.--dt-font-size-lg.--dt-font-size-xl.--dt-font-size-2xl.--dt-font-size-3xl.--dt-space-1.--dt-space-2.--dt-space-3.--dt-space-4.--dt-space-6.--dt-space-8.--dt-space-12.--dt-space-16.--dt-radius-sm.--dt-radius-md.--dt-radius-lg.--dt-radius-xl.--dt-shadow-sm.--dt-shadow-md.--dt-shadow-lg.--dt-glow-accent.--dt-glow-success.--dt-glow-danger.--dt-glow-warning.--dt-glow-purple.--dt-transition-fast.--dt-transition-normal`.split(`.`),Pe=`--dt-bg-primary.--dt-bg-secondary.--dt-bg-tertiary.--dt-bg-canvas.--dt-text-primary.--dt-text-secondary.--dt-text-tertiary.--dt-border-default.--dt-border-muted.--dt-border-subtle.--dt-accent-fg.--dt-accent-emphasis.--dt-accent-muted.--dt-accent-subtle.--dt-success-fg.--dt-success-emphasis.--dt-success-muted.--dt-success-subtle.--dt-danger-fg.--dt-danger-emphasis.--dt-danger-muted.--dt-danger-subtle.--dt-warning-fg.--dt-warning-emphasis.--dt-warning-muted.--dt-warning-subtle.--dt-purple-fg.--dt-purple-emphasis.--dt-purple-muted.--dt-purple-subtle.--dt-shadow-sm.--dt-shadow-md.--dt-shadow-lg.--dt-glow-accent.--dt-glow-success.--dt-glow-danger.--dt-glow-warning.--dt-glow-purple`.split(`.`),_={actions:`
3
+ .bk-actions {
4
+ display: flex;
5
+ flex-wrap: wrap;
6
+ gap: var(--dt-space-3);
7
+ }
8
+
9
+ .bk-action,
10
+ .bk-select {
11
+ min-height: 2.5rem;
12
+ border: 1px solid var(--dt-border-default);
13
+ border-radius: var(--dt-radius-md);
14
+ background: var(--dt-bg-secondary);
15
+ color: var(--dt-text-primary);
16
+ font: inherit;
17
+ }
18
+
19
+ .bk-action {
20
+ padding: 0 var(--dt-space-4);
21
+ cursor: pointer;
22
+ transition: transform var(--dt-transition-fast), box-shadow var(--dt-transition-fast);
23
+ }
24
+
25
+ .bk-action:hover {
26
+ transform: translateY(-1px);
27
+ box-shadow: 0 8px 20px var(--dt-glow-accent);
28
+ }
29
+
30
+ .bk-action--primary {
31
+ background: var(--dt-accent-emphasis);
32
+ border-color: var(--dt-accent-emphasis);
33
+ color: var(--dt-bg-primary);
34
+ }
35
+
36
+ .bk-action--danger {
37
+ background: var(--dt-danger-emphasis);
38
+ border-color: var(--dt-danger-emphasis);
39
+ color: var(--dt-bg-primary);
40
+ }
41
+
42
+ .bk-select {
43
+ padding: 0 var(--dt-space-3);
44
+ }
45
+ `,cards:`
46
+ .bk-cards {
47
+ display: grid;
48
+ grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
49
+ gap: var(--dt-space-4);
50
+ }
51
+
52
+ .bk-card {
53
+ display: grid;
54
+ gap: var(--dt-space-3);
55
+ padding: var(--dt-space-4);
56
+ border: 1px solid var(--dt-border-default);
57
+ border-radius: var(--dt-radius-xl);
58
+ background: linear-gradient(180deg, var(--dt-bg-secondary), var(--dt-bg-primary));
59
+ box-shadow: var(--dt-shadow-sm);
60
+ transition: transform var(--dt-transition-fast), box-shadow var(--dt-transition-fast);
61
+ }
62
+
63
+ .bk-card:hover {
64
+ transform: translateY(-1px);
65
+ box-shadow: 0 12px 28px var(--dt-glow-accent);
66
+ }
67
+
68
+ .bk-card-header {
69
+ display: flex;
70
+ align-items: center;
71
+ justify-content: space-between;
72
+ gap: var(--dt-space-3);
73
+ }
74
+
75
+ .bk-card-title {
76
+ color: var(--dt-text-primary);
77
+ font-size: var(--dt-font-size-lg);
78
+ font-weight: 600;
79
+ }
80
+
81
+ .bk-card-body,
82
+ .bk-card-description {
83
+ color: var(--dt-text-secondary);
84
+ line-height: 1.6;
85
+ }
86
+
87
+ .bk-card-badge {
88
+ padding: var(--dt-space-1) var(--dt-space-2);
89
+ border-radius: 999px;
90
+ background: var(--dt-accent-subtle);
91
+ color: var(--dt-accent-fg);
92
+ font-size: var(--dt-font-size-xs);
93
+ font-weight: 600;
94
+ }
95
+ `,chart:`
96
+ .bk-chart {
97
+ display: grid;
98
+ gap: var(--dt-space-3);
99
+ }
100
+
101
+ .bk-chart-note {
102
+ color: var(--dt-text-secondary);
103
+ font-size: var(--dt-font-size-sm);
104
+ }
105
+
106
+ .bk-chart-table-wrap {
107
+ overflow-x: auto;
108
+ border: 1px solid var(--dt-border-default);
109
+ border-radius: var(--dt-radius-lg);
110
+ background: var(--dt-bg-secondary);
111
+ }
112
+
113
+ .bk-chart-table {
114
+ width: 100%;
115
+ border-collapse: collapse;
116
+ }
117
+
118
+ .bk-chart-table th,
119
+ .bk-chart-table td {
120
+ padding: var(--dt-space-3) var(--dt-space-4);
121
+ border-bottom: 1px solid var(--dt-border-muted);
122
+ text-align: left;
123
+ }
124
+ `,checklist:`
125
+ .bk-checklist {
126
+ display: grid;
127
+ gap: var(--dt-space-2);
128
+ margin: 0;
129
+ padding: 0;
130
+ list-style: none;
131
+ }
132
+
133
+ .bk-checklist-item {
134
+ display: flex;
135
+ align-items: flex-start;
136
+ gap: var(--dt-space-3);
137
+ padding: var(--dt-space-3) var(--dt-space-4);
138
+ border: 1px solid var(--dt-border-default);
139
+ border-radius: var(--dt-radius-lg);
140
+ background: var(--dt-bg-secondary);
141
+ }
142
+
143
+ .bk-checklist-icon {
144
+ display: inline-flex;
145
+ align-items: center;
146
+ justify-content: center;
147
+ width: var(--dt-space-6);
148
+ height: var(--dt-space-6);
149
+ border-radius: 999px;
150
+ background: var(--dt-danger-subtle);
151
+ color: var(--dt-danger-fg);
152
+ font-size: var(--dt-font-size-sm);
153
+ font-weight: 700;
154
+ }
155
+
156
+ .bk-checklist-item[data-checked='true'] .bk-checklist-icon {
157
+ background: var(--dt-success-subtle);
158
+ color: var(--dt-success-fg);
159
+ }
160
+
161
+ .bk-checklist-label {
162
+ color: var(--dt-text-primary);
163
+ }
164
+ `,code:`
165
+ .bk-code {
166
+ margin: 0;
167
+ padding: var(--dt-space-4);
168
+ overflow-x: auto;
169
+ border: 1px solid var(--dt-border-default);
170
+ border-radius: var(--dt-radius-lg);
171
+ background: var(--dt-bg-secondary);
172
+ color: var(--dt-text-primary);
173
+ box-shadow: 0 0 0 1px var(--dt-glow-purple);
174
+ }
175
+
176
+ .bk-code code {
177
+ font-family: var(--dt-font-mono);
178
+ font-size: var(--dt-font-size-sm);
179
+ line-height: 1.6;
180
+ }
181
+ `,comparison:`
182
+ .bk-comparison {
183
+ display: grid;
184
+ grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
185
+ gap: var(--dt-space-4);
186
+ }
187
+
188
+ .bk-comparison-column {
189
+ display: grid;
190
+ gap: var(--dt-space-3);
191
+ padding: var(--dt-space-4);
192
+ border: 1px solid var(--dt-border-default);
193
+ border-radius: var(--dt-radius-lg);
194
+ background: var(--dt-bg-secondary);
195
+ }
196
+
197
+ .bk-comparison-title {
198
+ color: var(--dt-text-primary);
199
+ font-size: var(--dt-font-size-lg);
200
+ font-weight: 600;
201
+ }
202
+
203
+ .bk-comparison-items {
204
+ display: grid;
205
+ gap: var(--dt-space-2);
206
+ margin: 0;
207
+ padding-left: var(--dt-space-4);
208
+ color: var(--dt-text-secondary);
209
+ }
210
+ `,"docs-browser":`
211
+ .bk-docs-browser {
212
+ display: grid;
213
+ gap: var(--dt-space-3);
214
+ }
215
+
216
+ .bk-doc-entry {
217
+ display: grid;
218
+ gap: var(--dt-space-2);
219
+ padding: var(--dt-space-4);
220
+ border: 1px solid var(--dt-border-default);
221
+ border-radius: var(--dt-radius-lg);
222
+ background: var(--dt-bg-secondary);
223
+ }
224
+
225
+ .bk-doc-header {
226
+ display: flex;
227
+ align-items: center;
228
+ justify-content: space-between;
229
+ gap: var(--dt-space-3);
230
+ }
231
+
232
+ .bk-doc-title {
233
+ color: var(--dt-text-primary);
234
+ font-weight: 600;
235
+ }
236
+
237
+ .bk-doc-path,
238
+ .bk-doc-content {
239
+ color: var(--dt-text-secondary);
240
+ }
241
+
242
+ .bk-doc-content {
243
+ margin: 0;
244
+ font-family: var(--dt-font-mono);
245
+ font-size: var(--dt-font-size-sm);
246
+ white-space: pre-wrap;
247
+ }
248
+
249
+ .bk-doc-status {
250
+ padding: var(--dt-space-1) var(--dt-space-2);
251
+ border-radius: 999px;
252
+ font-size: var(--dt-font-size-xs);
253
+ font-weight: 700;
254
+ }
255
+ `,finding:`
256
+ .bk-finding {
257
+ display: grid;
258
+ gap: var(--dt-space-3);
259
+ padding: var(--dt-space-4);
260
+ border: 1px solid var(--dt-border-default);
261
+ border-radius: var(--dt-radius-xl);
262
+ background: linear-gradient(180deg, var(--dt-bg-secondary), var(--dt-bg-primary));
263
+ box-shadow: var(--dt-shadow-sm);
264
+ }
265
+
266
+ .bk-finding-header {
267
+ display: flex;
268
+ align-items: center;
269
+ justify-content: space-between;
270
+ gap: var(--dt-space-3);
271
+ }
272
+
273
+ .bk-finding-title {
274
+ color: var(--dt-text-primary);
275
+ font-size: var(--dt-font-size-lg);
276
+ font-weight: 700;
277
+ }
278
+
279
+ .bk-finding-severity {
280
+ padding: var(--dt-space-1) var(--dt-space-2);
281
+ border-radius: 999px;
282
+ font-size: var(--dt-font-size-xs);
283
+ font-weight: 700;
284
+ text-transform: uppercase;
285
+ }
286
+
287
+ .bk-finding-detail {
288
+ color: var(--dt-text-secondary);
289
+ line-height: 1.7;
290
+ }
291
+ `,graph:`
292
+ .bk-graph {
293
+ margin: 0;
294
+ padding: var(--dt-space-4);
295
+ overflow-x: auto;
296
+ border: 1px solid var(--dt-border-default);
297
+ border-radius: var(--dt-radius-lg);
298
+ background: var(--dt-bg-secondary);
299
+ color: var(--dt-text-primary);
300
+ font-family: var(--dt-font-mono);
301
+ font-size: var(--dt-font-size-sm);
302
+ line-height: 1.6;
303
+ }
304
+ `,heading:`
305
+ .bk-heading {
306
+ margin: 0;
307
+ color: var(--dt-text-primary);
308
+ font-family: var(--dt-font-sans);
309
+ font-weight: 700;
310
+ line-height: 1.15;
311
+ }
312
+ .bk-heading--1 { font-size: var(--dt-font-size-3xl); }
313
+ .bk-heading--2 { font-size: var(--dt-font-size-2xl); }
314
+ .bk-heading--3 { font-size: var(--dt-font-size-xl); }
315
+ .bk-heading--4 { font-size: var(--dt-font-size-lg); }
316
+ .bk-heading--5,
317
+ .bk-heading--6 { font-size: var(--dt-font-size-base); }
318
+ `,markdown:`
319
+ .bk-markdown {
320
+ color: var(--dt-text-primary);
321
+ font-size: var(--dt-font-size-base);
322
+ line-height: 1.7;
323
+ }
324
+ `,mermaid:`
325
+ .bk-mermaid {
326
+ margin: 0;
327
+ padding: var(--dt-space-4);
328
+ overflow-x: auto;
329
+ border: 1px solid var(--dt-border-default);
330
+ border-radius: var(--dt-radius-lg);
331
+ background: var(--dt-bg-secondary);
332
+ color: var(--dt-text-primary);
333
+ font-family: var(--dt-font-mono);
334
+ font-size: var(--dt-font-size-sm);
335
+ line-height: 1.6;
336
+ }
337
+ `,metrics:`
338
+ .bk-metrics {
339
+ display: grid;
340
+ grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
341
+ gap: var(--dt-space-4);
342
+ }
343
+
344
+ .bk-metric {
345
+ display: grid;
346
+ gap: var(--dt-space-2);
347
+ padding: var(--dt-space-4);
348
+ border: 1px solid var(--dt-border-default);
349
+ border-radius: var(--dt-radius-lg);
350
+ background: linear-gradient(180deg, var(--dt-bg-secondary), var(--dt-bg-primary));
351
+ box-shadow: 0 0 0 1px var(--dt-accent-subtle), var(--dt-shadow-sm);
352
+ transition: transform var(--dt-transition-fast), box-shadow var(--dt-transition-fast);
353
+ }
354
+
355
+ .bk-metric:hover {
356
+ transform: translateY(-1px);
357
+ box-shadow: 0 0 0 1px var(--dt-accent-muted), 0 10px 28px var(--dt-glow-accent);
358
+ }
359
+
360
+ .bk-metric-value {
361
+ color: var(--dt-text-primary);
362
+ font-size: var(--dt-font-size-2xl);
363
+ font-weight: 700;
364
+ }
365
+
366
+ .bk-metric-label,
367
+ .bk-metric-trend {
368
+ color: var(--dt-text-secondary);
369
+ font-size: var(--dt-font-size-sm);
370
+ }
371
+ `,paragraph:`
372
+ .bk-paragraph {
373
+ margin: 0;
374
+ color: var(--dt-text-primary);
375
+ font-size: var(--dt-font-size-base);
376
+ line-height: 1.7;
377
+ }
378
+ `,progress:`
379
+ .bk-progress {
380
+ display: grid;
381
+ gap: var(--dt-space-3);
382
+ }
383
+
384
+ .bk-progress-item {
385
+ display: grid;
386
+ gap: var(--dt-space-2);
387
+ }
388
+
389
+ .bk-progress-meta {
390
+ display: flex;
391
+ justify-content: space-between;
392
+ gap: var(--dt-space-3);
393
+ color: var(--dt-text-primary);
394
+ font-size: var(--dt-font-size-sm);
395
+ }
396
+
397
+ .bk-progress-track {
398
+ overflow: hidden;
399
+ height: 0.75rem;
400
+ border-radius: 999px;
401
+ background: var(--dt-bg-tertiary);
402
+ box-shadow: inset 0 0 0 1px var(--dt-border-muted);
403
+ }
404
+
405
+ .bk-progress-bar {
406
+ display: block;
407
+ height: 100%;
408
+ min-width: 0;
409
+ border-radius: inherit;
410
+ background: var(--dt-accent-emphasis);
411
+ box-shadow: 0 0 16px var(--dt-glow-accent);
412
+ }
413
+ `,prompt:`
414
+ .bk-prompt {
415
+ margin: 0;
416
+ padding: var(--dt-space-4);
417
+ border: 1px solid var(--dt-border-default);
418
+ border-radius: var(--dt-radius-lg);
419
+ background: linear-gradient(180deg, var(--dt-bg-secondary), var(--dt-bg-primary));
420
+ color: var(--dt-text-primary);
421
+ font-family: var(--dt-font-mono);
422
+ font-size: var(--dt-font-size-sm);
423
+ line-height: 1.6;
424
+ white-space: pre-wrap;
425
+ }
426
+ `,separator:`
427
+ .bk-separator {
428
+ margin: var(--dt-space-6) 0;
429
+ border: 0;
430
+ border-top: 1px solid var(--dt-border-default);
431
+ }
432
+ `,"status-board":`
433
+ .bk-status-board {
434
+ display: grid;
435
+ gap: var(--dt-space-4);
436
+ }
437
+
438
+ .bk-status-category {
439
+ display: grid;
440
+ gap: var(--dt-space-3);
441
+ padding: var(--dt-space-4);
442
+ border: 1px solid var(--dt-border-default);
443
+ border-radius: var(--dt-radius-lg);
444
+ background: var(--dt-bg-secondary);
445
+ }
446
+
447
+ .bk-status-category-title {
448
+ color: var(--dt-text-primary);
449
+ font-size: var(--dt-font-size-lg);
450
+ font-weight: 600;
451
+ }
452
+
453
+ .bk-status-items {
454
+ display: grid;
455
+ gap: var(--dt-space-2);
456
+ }
457
+
458
+ .bk-status-item {
459
+ display: flex;
460
+ align-items: flex-start;
461
+ gap: var(--dt-space-3);
462
+ }
463
+
464
+ .bk-status-pill {
465
+ display: inline-flex;
466
+ align-items: center;
467
+ justify-content: center;
468
+ min-width: 5.5rem;
469
+ padding: var(--dt-space-1) var(--dt-space-2);
470
+ border-radius: 999px;
471
+ background: var(--dt-accent-subtle);
472
+ color: var(--dt-accent-fg);
473
+ font-size: var(--dt-font-size-xs);
474
+ font-weight: 700;
475
+ text-transform: uppercase;
476
+ }
477
+
478
+ .bk-status-copy {
479
+ display: grid;
480
+ gap: var(--dt-space-1);
481
+ }
482
+
483
+ .bk-status-label {
484
+ color: var(--dt-text-primary);
485
+ }
486
+
487
+ .bk-status-description {
488
+ color: var(--dt-text-secondary);
489
+ }
490
+ `,table:`
491
+ .bk-table-wrap {
492
+ overflow-x: auto;
493
+ border: 1px solid var(--dt-border-default);
494
+ border-radius: var(--dt-radius-lg);
495
+ background: var(--dt-bg-secondary);
496
+ box-shadow: var(--dt-shadow-sm);
497
+ }
498
+
499
+ .bk-table {
500
+ width: 100%;
501
+ border-collapse: collapse;
502
+ font-size: var(--dt-font-size-sm);
503
+ }
504
+
505
+ .bk-table thead th {
506
+ position: sticky;
507
+ top: 0;
508
+ z-index: 1;
509
+ background: var(--dt-bg-tertiary);
510
+ color: var(--dt-text-primary);
511
+ }
512
+
513
+ .bk-table th,
514
+ .bk-table td {
515
+ padding: var(--dt-space-3) var(--dt-space-4);
516
+ border-bottom: 1px solid var(--dt-border-muted);
517
+ text-align: left;
518
+ vertical-align: top;
519
+ }
520
+
521
+ .bk-table tbody tr:nth-child(even) {
522
+ background: color-mix(in srgb, var(--dt-bg-secondary) 82%, var(--dt-accent-subtle));
523
+ }
524
+ `,tags:`
525
+ .bk-tags {
526
+ display: flex;
527
+ flex-wrap: wrap;
528
+ gap: var(--dt-space-2);
529
+ }
530
+
531
+ .bk-tag {
532
+ display: inline-flex;
533
+ align-items: center;
534
+ padding: var(--dt-space-1) var(--dt-space-3);
535
+ border-radius: 999px;
536
+ background: var(--dt-accent-subtle);
537
+ color: var(--dt-accent-fg);
538
+ font-size: var(--dt-font-size-xs);
539
+ font-weight: 700;
540
+ }
541
+ `,text:`
542
+ .bk-text {
543
+ color: var(--dt-text-primary);
544
+ font-size: var(--dt-font-size-base);
545
+ line-height: 1.7;
546
+ }
547
+ `,timeline:`
548
+ .bk-timeline {
549
+ display: grid;
550
+ gap: var(--dt-space-4);
551
+ }
552
+
553
+ .bk-timeline-item {
554
+ position: relative;
555
+ display: grid;
556
+ gap: var(--dt-space-2);
557
+ padding-left: calc(var(--dt-space-6) + var(--dt-space-2));
558
+ }
559
+
560
+ .bk-timeline-item::before {
561
+ content: '';
562
+ position: absolute;
563
+ inset: 0 auto 0 var(--dt-space-3);
564
+ width: 1px;
565
+ background: var(--dt-border-default);
566
+ }
567
+
568
+ .bk-timeline-dot {
569
+ position: absolute;
570
+ top: var(--dt-space-1);
571
+ left: 0;
572
+ width: var(--dt-space-6);
573
+ height: var(--dt-space-6);
574
+ border: 3px solid var(--dt-bg-primary);
575
+ border-radius: 999px;
576
+ background: var(--dt-accent-emphasis);
577
+ box-shadow: 0 0 0 6px var(--dt-glow-accent);
578
+ }
579
+
580
+ .bk-timeline-title {
581
+ color: var(--dt-text-primary);
582
+ font-weight: 600;
583
+ }
584
+
585
+ .bk-timeline-description,
586
+ .bk-timeline-timestamp {
587
+ color: var(--dt-text-secondary);
588
+ }
589
+ `,tree:`
590
+ .bk-tree {
591
+ display: grid;
592
+ gap: var(--dt-space-2);
593
+ }
594
+
595
+ .bk-tree-node {
596
+ padding-left: var(--dt-space-3);
597
+ border-left: 1px solid var(--dt-border-default);
598
+ }
599
+
600
+ .bk-tree-node > summary {
601
+ cursor: pointer;
602
+ color: var(--dt-text-primary);
603
+ font-weight: 600;
604
+ }
605
+
606
+ .bk-tree-children {
607
+ display: grid;
608
+ gap: var(--dt-space-2);
609
+ margin-top: var(--dt-space-2);
610
+ }
611
+
612
+ .bk-tree-leaf {
613
+ display: flex;
614
+ gap: var(--dt-space-2);
615
+ color: var(--dt-text-secondary);
616
+ }
617
+
618
+ .bk-tree-key {
619
+ color: var(--dt-text-primary);
620
+ }
621
+ `},v=`
622
+ .bk-section {
623
+ display: grid;
624
+ gap: var(--dt-space-3);
625
+ margin: 0 0 var(--dt-space-6);
626
+ }
627
+
628
+ .bk-section-title {
629
+ margin: 0;
630
+ color: var(--dt-text-primary);
631
+ font-family: var(--dt-font-sans);
632
+ font-size: var(--dt-font-size-lg);
633
+ font-weight: 700;
634
+ }
635
+
636
+ .bk-text,
637
+ .bk-markdown,
638
+ .bk-paragraph,
639
+ .bk-fallback,
640
+ .bk-prompt,
641
+ .bk-heading,
642
+ .bk-table,
643
+ .bk-docs-browser,
644
+ .bk-actions,
645
+ .bk-comparison,
646
+ .bk-status-board,
647
+ .bk-progress,
648
+ .bk-timeline,
649
+ .bk-tree,
650
+ .bk-tags,
651
+ .bk-cards,
652
+ .bk-metrics,
653
+ .bk-chart,
654
+ .bk-code,
655
+ .bk-mermaid,
656
+ .bk-graph,
657
+ .bk-checklist,
658
+ .bk-finding {
659
+ font-family: var(--dt-font-sans);
660
+ }
661
+
662
+ .bk-text a,
663
+ .bk-markdown a,
664
+ .bk-finding a {
665
+ color: var(--dt-accent-fg);
666
+ text-decoration: none;
667
+ }
668
+
669
+ .bk-text code,
670
+ .bk-markdown code,
671
+ .bk-finding code {
672
+ padding: 0 var(--dt-space-1);
673
+ border-radius: var(--dt-radius-sm);
674
+ background: var(--dt-bg-tertiary);
675
+ color: var(--dt-purple-fg);
676
+ font-family: var(--dt-font-mono);
677
+ font-size: 0.95em;
678
+ }
679
+
680
+ .bk-fallback {
681
+ margin: 0;
682
+ padding: var(--dt-space-4);
683
+ border: 1px solid var(--dt-border-default);
684
+ border-radius: var(--dt-radius-lg);
685
+ background: var(--dt-bg-secondary);
686
+ color: var(--dt-text-secondary);
687
+ font-family: var(--dt-font-mono);
688
+ font-size: var(--dt-font-size-sm);
689
+ white-space: pre-wrap;
690
+ }
691
+
692
+ .bk-visually-hidden {
693
+ position: absolute;
694
+ width: 1px;
695
+ height: 1px;
696
+ padding: 0;
697
+ margin: -1px;
698
+ overflow: hidden;
699
+ clip: rect(0, 0, 0, 0);
700
+ white-space: nowrap;
701
+ border: 0;
702
+ }
703
+ `;function y(e){let t=[v],n=new Set;for(let r of e)!n.has(r)&&_[r]&&(n.add(r),t.push(_[r]));return t.join(`
704
+ `)}function Fe(){return y(Object.keys(_))}function b(e){return Object.entries(e).map(([e,t])=>` ${e}: ${t};`).join(`
705
+ `)}function Ie(e,t){let n=` `.repeat(t);return e.split(`
706
+ `).map(e=>`${n}${e}`).join(`
707
+ `)}function Le(e){return e===`dark`?{...h,...g}:{...h}}function x(){return b(g)}function S(e=`auto`){let t=`:root {\n${b(Le(e===`dark`?`dark`:`light`))}\n}`;return e===`light`?`${t}\n\nhtml {\n color-scheme: light;\n}`:e===`dark`?`${t}\n\nhtml {\n color-scheme: dark;\n}`:[t,`html {
708
+ color-scheme: light;
709
+ }`,[`@media (prefers-color-scheme: dark) {`,` :root {`,Ie(x(),4),` }`,``,` html {`,` color-scheme: dark;`,` }`,`}`].join(`
710
+ `)].join(`
711
+
712
+ `)}const Re={actions:te,cards:ne,chart:re,checklist:ie,code:ae,comparison:se,"docs-browser":le,finding:de,graph:fe,heading:pe,markdown:me,mermaid:he,metrics:_e,paragraph:ve,progress:be,prompt:Se,separator:Ce,"status-board":Te,table:De,tags:ke,text:Ae,timeline:je,tree:Me};function C(e,t){let r={...e,value:o(e.value)},i=Re[r.type],a=i?i(r,t):ze(r);return r.title&&![`heading`,`finding`].includes(r.type)?`<section class="bk-section bk-section--${n(r.type)}"><h3 class="bk-section-title">${n(r.title)}</h3>${a}</section>`:a}function w(e,t){return e.map(e=>C(e,t)).join(`
713
+ `)}function ze(e){if(e.value===void 0||e.value===null)return``;if(typeof e.value==`string`)return`<p class="bk-paragraph">${n(e.value)}</p>`;try{return`<pre class="bk-fallback">${n(JSON.stringify(e.value,null,2))}</pre>`}catch{return`<pre class="bk-fallback">${n(String(e.value))}</pre>`}}var T=class{templates=new Map;register(e){this.templates.set(e.id,e)}get(e){let t=this.templates.get(e);if(t)return t;let n=e.includes(`@`)?e:`${e}@`,r,i=-1;for(let[e,t]of this.templates){if(!e.startsWith(n))continue;let a=Number.parseInt(e.split(`@`)[1]??`0`,10);a>i&&(i=a,r=t)}return r}has(e){return this.get(e)!==void 0}list(){return[...this.templates.values()]}};const Be=[`mcp-app`,`browser`];function E(e){return typeof e==`object`&&!!e}function Ve(e){return Array.isArray(e)?e.flatMap(e=>!E(e)||typeof e.label!=`string`?[]:[{label:e.label,checked:!!e.checked}]):[]}const D={id:`checklist@1`,label:`Checklist`,description:`Checklist with optional title and form hydration metadata.`,inputSchema:{type:`object`,properties:{title:{type:`string`},items:{type:`array`,items:{type:`object`,required:[`label`,`checked`],properties:{label:{type:`string`},checked:{type:`boolean`}},additionalProperties:!1}}},required:[`items`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=[],n=E(e)&&typeof e.title==`string`?e.title:void 0,r=E(e)?Ve(e.items):[];return n&&t.push({type:`heading`,value:n}),t.push({type:`checklist`,value:r}),t},hydration:[`form`],supportedTransports:Be},He=[`mcp-app`,`browser`,`export`];function O(e){return typeof e==`object`&&!!e}function Ue(e){return O(e)&&typeof e.label==`string`&&(typeof e.value==`string`||typeof e.value==`number`)}function We(e){return O(e)&&typeof e.key==`string`&&typeof e.label==`string`}function Ge(e){return Array.isArray(e)?e.filter(O):[]}function Ke(e,t){if(Array.isArray(e)){let t=e.filter(We);if(t.length>0)return t}return Object.keys(t[0]??{}).map(e=>({key:e,label:e}))}const k={id:`data-table@1`,label:`Data Table`,description:`Static data table with optional metrics and sortable table hydration.`,inputSchema:{type:`object`,properties:{columns:{type:`array`,items:{type:`object`,required:[`key`,`label`],properties:{key:{type:`string`},label:{type:`string`}},additionalProperties:!1}},rows:{type:`array`,items:{type:`object`}},stats:{type:`array`,items:{type:`object`,required:[`label`,`value`],properties:{label:{type:`string`},value:{type:[`string`,`number`]},trend:{type:[`string`,`number`]},status:{type:`string`}},additionalProperties:!1}}},required:[`rows`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=O(e)?Ge(e.rows):[],n=O(e)?Ke(e.columns,t):[],r=n.map(e=>e.label),i=t.map(e=>n.map(t=>e[t.key])),a=[];if(O(e)&&Array.isArray(e.stats)){let t=e.stats.filter(Ue);t.length>0&&a.push({type:`metrics`,value:t})}return a.push({type:`table`,columns:n,headers:r,rows:i,value:{headers:r,rows:i}}),a},hydration:[`table`],supportedTransports:He},qe=[`mcp-app`,`browser`,`export`];function A(e){return typeof e==`object`&&!!e}function Je(e){return Array.isArray(e)?e.flatMap(e=>!A(e)||typeof e.type!=`string`||typeof e.content!=`string`?[]:[{type:e.type,content:e.content}]):[]}function Ye(e){return Array.isArray(e)?e.flatMap(e=>!A(e)||typeof e.header!=`string`?[]:[{header:e.header,changes:Je(e.changes)}]):[]}function Xe(e){return!A(e)||!Array.isArray(e.files)?[]:e.files.flatMap(e=>!A(e)||typeof e.path!=`string`||typeof e.status!=`string`?[]:[{path:e.path,status:e.status,additions:typeof e.additions==`number`?e.additions:0,deletions:typeof e.deletions==`number`?e.deletions:0,hunks:Ye(e.hunks)}])}function Ze(e){return e===`add`?`+`:e===`delete`?`-`:` `}function Qe(e){let t=e.hunks.flatMap(e=>[e.header,...e.changes.map(e=>`${Ze(e.type)}${e.content}`)]).join(`
714
+ `);return[{type:`heading`,value:e.path},{type:`paragraph`,value:`${e.status} | +${e.additions} / -${e.deletions}`},{type:`code`,language:`diff`,value:t}]}const j={id:`diff-view@1`,label:`Diff View`,description:`Static diff summary rendered as per-file diff code blocks.`,inputSchema:{type:`object`,properties:{files:{type:`array`,items:{type:`object`,required:[`path`,`status`,`additions`,`deletions`,`hunks`],properties:{path:{type:`string`},status:{type:`string`},additions:{type:`number`},deletions:{type:`number`},hunks:{type:`array`,items:{type:`object`,required:[`header`,`changes`],properties:{header:{type:`string`},changes:{type:`array`,items:{type:`object`,required:[`type`,`content`],properties:{type:{type:`string`},content:{type:`string`}},additionalProperties:!1}}},additionalProperties:!1}}},additionalProperties:!1}}},required:[`files`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>Xe(e).flatMap(Qe),hydration:[],supportedTransports:qe},$e=[`mcp-app`,`browser`,`export`];function M(e){return typeof e==`object`&&!!e}function et(e){return M(e)&&typeof e.type==`string`}function tt(e){return Array.isArray(e)&&e.every(et)}function nt(e){if(!M(e))return{sections:[]};let t=Array.isArray(e.sections)?e.sections.flatMap(e=>{if(!M(e)||typeof e.heading!=`string`)return[];let t=typeof e.content==`string`||tt(e.content)?e.content:``;return[{heading:e.heading,content:t}]}):[];return{title:typeof e.title==`string`?e.title:void 0,sections:t}}function rt(e){let t=[{type:`heading`,value:e.heading}];return typeof e.content==`string`?(t.push({type:`paragraph`,value:e.content}),t):(t.push(...e.content),t)}const N={id:`document@1`,label:`Document`,description:`Structured document with optional title and section content blocks.`,inputSchema:{type:`object`,properties:{title:{type:`string`},sections:{type:`array`,items:{type:`object`,additionalProperties:!1,required:[`heading`,`content`],properties:{heading:{type:`string`},content:{oneOf:[{type:`string`},{type:`array`,items:{type:`object`}}]}}}}},required:[`sections`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=nt(e),n=[];t.title&&n.push({type:`heading`,value:t.title});for(let e of t.sections)n.push(...rt(e));return n},hydration:[],supportedTransports:$e},it=[`mcp-app`,`browser`,`export`];function at(e){return typeof e==`object`&&!!e}function ot(e){return at(e)?{code:typeof e.code==`string`?e.code:`ERROR`,message:typeof e.message==`string`?e.message:`Unknown error`,details:typeof e.details==`string`?e.details:void 0,stack:typeof e.stack==`string`?e.stack:void 0}:{code:`ERROR`,message:`Unknown error`}}const P={id:`error@1`,label:`Error`,description:`Static error view with message and optional stack trace.`,inputSchema:{type:`object`,properties:{code:{type:`string`},message:{type:`string`},details:{type:`string`},stack:{type:`string`}},required:[`code`,`message`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=ot(e),n=[{type:`heading`,value:`Error`},{type:`code`,title:t.code,language:`text`,value:t.details?`${t.message}\n\n${t.details}`:t.message}];return t.stack&&n.push({type:`code`,title:`Stack Trace`,language:`text`,value:t.stack}),n},hydration:[],supportedTransports:it};function F(e){return typeof e==`object`&&!!e}function I(e){return e.replace(/\|/g,`\\|`).replace(/\r?\n/g,` `)}function st(e){return Array.isArray(e)?e.flatMap(e=>!F(e)||typeof e.name!=`string`||typeof e.label!=`string`?[]:[{name:e.name,label:e.label,type:typeof e.type==`string`?e.type:void 0,options:Array.isArray(e.options)?e.options.filter(e=>typeof e==`string`):void 0,value:typeof e.value==`string`?e.value:void 0}]):[]}function ct(e){let t=[`| Label | Name | Type | Options | Value |`,`| --- | --- | --- | --- | --- |`];for(let n of e)t.push(`| ${I(n.label)} | ${I(n.name)} | ${I(n.type??`text`)} | ${I((n.options??[]).join(`, `))} | ${I(n.value??``)} |`);return t.join(`
715
+ `)}const L={id:`form@1`,label:`Form`,description:`Browser-only form template rendered as a heading and markdown field table.`,inputSchema:{type:`object`,properties:{title:{type:`string`},fields:{type:`array`,items:{type:`object`,required:[`name`,`label`],properties:{name:{type:`string`},label:{type:`string`},type:{type:`string`},options:{type:`array`,items:{type:`string`}},value:{type:`string`}},additionalProperties:!1}}},required:[`fields`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t={title:F(e)&&typeof e.title==`string`?e.title:`Form`,fields:F(e)?st(e.fields):[]};return[{type:`heading`,value:t.title},{type:`markdown`,value:ct(t.fields)}]},hydration:[`form`],supportedTransports:[`browser`]},lt=[`mcp-app`,`browser`];function R(e){return typeof e==`object`&&!!e}function ut(e){if(!Array.isArray(e))return;let t=e.flatMap(e=>!R(e)||typeof e.id!=`string`||typeof e.label!=`string`?[]:[{id:e.id,label:e.label}]);return t.length>0?t:void 0}function dt(e){return Array.isArray(e)?e.flatMap(e=>!R(e)||typeof e.id!=`string`||typeof e.label!=`string`?[]:[{id:e.id,label:e.label,category:typeof e.category==`string`?e.category:void 0,tags:Array.isArray(e.tags)?e.tags.filter(e=>typeof e==`string`):void 0}]):[]}function ft(e){return R(e)?{categories:ut(e.categories),items:dt(e.items)}:{items:[]}}function z(e){return{title:e.label,body:e.id,description:e.tags&&e.tags.length>0?e.tags.join(`, `):void 0}}function B(e,t){return t.length===0?[]:[{type:`heading`,value:e},{type:`cards`,value:t.map(z)}]}const V={id:`picker@1`,label:`Picker`,description:`Grouped item picker rendered as cards with picker hydration metadata.`,inputSchema:{type:`object`,properties:{categories:{type:`array`,items:{type:`object`,required:[`id`,`label`],properties:{id:{type:`string`},label:{type:`string`}},additionalProperties:!1}},items:{type:`array`,items:{type:`object`,required:[`id`,`label`],properties:{id:{type:`string`},label:{type:`string`},category:{type:`string`},tags:{type:`array`,items:{type:`string`}}},additionalProperties:!1}}},required:[`items`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=ft(e),n=[];if(t.categories&&t.categories.length>0){let e=new Set(t.categories.map(e=>e.id));for(let e of t.categories)n.push(...B(e.label,t.items.filter(t=>t.category===e.id)));let r=t.items.filter(t=>!t.category||!e.has(t.category));return n.push(...B(`Other`,r)),n}return t.items.length>0&&n.push({type:`cards`,value:t.items.map(z)}),n},hydration:[`picker`],supportedTransports:lt},pt=[`mcp-app`,`browser`,`export`];function H(e){return typeof e==`object`&&!!e}function mt(e){return H(e)&&typeof e.type==`string`}function ht(e){return Array.isArray(e)&&e.every(mt)}function gt(e){return H(e)&&typeof e.label==`string`&&(typeof e.value==`string`||typeof e.value==`number`)}function _t(e){return Array.isArray(e)?e.flatMap(e=>{if(!H(e)||typeof e.heading!=`string`)return[];let t=typeof e.content==`string`||ht(e.content)?e.content:``;return[{heading:e.heading,content:t}]}):[]}function vt(e){return Array.isArray(e)?e.flatMap(e=>H(e)?[{title:typeof e.title==`string`?e.title:void 0,value:e.value,headers:Array.isArray(e.headers)?e.headers.filter(e=>typeof e==`string`):void 0,rows:Array.isArray(e.rows)?e.rows.filter(e=>Array.isArray(e)):void 0}]:[]):[]}function yt(e){let t=[{type:`heading`,value:e.heading}];return typeof e.content==`string`?(t.push({type:`paragraph`,value:e.content}),t):(t.push(...e.content),t)}function bt(e){let t={type:`table`};return e.title&&(t.title=e.title),e.value!==void 0&&(t.value=e.value),e.headers&&(t.headers=e.headers),e.rows&&(t.rows=e.rows),t}const U={id:`report@1`,label:`Report`,description:`Static report with title, optional metrics, narrative sections, and tables.`,inputSchema:{type:`object`,properties:{title:{type:`string`},metrics:{type:`array`,items:{type:`object`,required:[`label`,`value`],properties:{label:{type:`string`},value:{type:[`string`,`number`]},trend:{type:[`string`,`number`]},status:{type:`string`}},additionalProperties:!1}},sections:{type:`array`,items:{type:`object`,required:[`heading`,`content`],properties:{heading:{type:`string`},content:{oneOf:[{type:`string`},{type:`array`,items:{type:`object`}}]}},additionalProperties:!1}},tables:{type:`array`,items:{type:`object`,properties:{title:{type:`string`},value:{},headers:{type:`array`,items:{type:`string`}},rows:{type:`array`,items:{type:`array`,items:{}}}},additionalProperties:!1}}},required:[`title`,`sections`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t={title:H(e)&&typeof e.title==`string`?e.title:`Report`,metrics:H(e)&&Array.isArray(e.metrics)?e.metrics.filter(gt):void 0,sections:H(e)?_t(e.sections):[],tables:H(e)?vt(e.tables):void 0},n=[{type:`heading`,value:t.title}];t.metrics&&t.metrics.length>0&&n.push({type:`metrics`,value:t.metrics});for(let e of t.sections)n.push(...yt(e));for(let e of t.tables??[])n.push(bt(e));return n},hydration:[],supportedTransports:pt},xt=[`mcp-app`,`browser`,`export`];function W(e){return typeof e==`object`&&!!e}function St(e){return Array.isArray(e)?e.flatMap(e=>{if(!W(e)||typeof e.category!=`string`||!Array.isArray(e.items))return[];let t=e.items.flatMap(e=>!W(e)||typeof e.label!=`string`||typeof e.status!=`string`?[]:[{label:e.label,status:e.status,badge:typeof e.badge==`string`?e.badge:void 0}]);return[{category:e.category,items:t}]}):[]}function Ct(e){return e.map(e=>({title:e.label,status:e.status,badge:e.badge}))}const G={id:`status-board@1`,label:`Status Board`,description:`Static status board grouped into category headings and card collections.`,inputSchema:{type:`object`,properties:{categories:{type:`array`,items:{type:`object`,required:[`category`,`items`],properties:{category:{type:`string`},items:{type:`array`,items:{type:`object`,required:[`label`,`status`],properties:{label:{type:`string`},status:{type:`string`},badge:{type:`string`}},additionalProperties:!1}}},additionalProperties:!1}}},required:[`categories`],additionalProperties:!1},defaultLayout:{},blocksFromData:e=>{let t=W(e)?St(e.categories):[],n=[];for(let e of t)n.push({type:`heading`,value:e.category}),n.push({type:`cards`,value:Ct(e.items)});return n},hydration:[],supportedTransports:xt},wt=[`mcp-app`,`browser`,`export`];function Tt(e){return typeof e==`object`&&!!e}function Et(e){return Array.isArray(e)?e.flatMap(e=>!Tt(e)||typeof e.title!=`string`?[]:[{title:e.title,description:typeof e.description==`string`?e.description:void 0,timestamp:typeof e.timestamp==`string`?e.timestamp:void 0,status:typeof e.status==`string`?e.status:void 0}]):[]}const K={id:`timeline@1`,label:`Timeline`,description:`Static timeline events rendered as a timeline block.`,inputSchema:{type:`array`,items:{type:`object`,required:[`title`],properties:{title:{type:`string`},description:{type:`string`},timestamp:{type:`string`},status:{type:`string`}},additionalProperties:!1}},defaultLayout:{},blocksFromData:e=>[{type:`timeline`,value:Et(e)}],hydration:[],supportedTransports:wt},Dt=[`mcp-app`,`browser`,`export`];function q(e){return typeof e==`object`&&!!e}function J(e){return q(e)&&typeof e.label==`string`}function Y(e){return{name:e.label,children:Array.isArray(e.children)?e.children.filter(J).map(Y):[]}}function Ot(e){if(!q(e))return{};let t=e.root;return J(t)?Y(t):q(t)?t:e}const X={id:`tree@1`,label:`Tree`,description:`Static tree view data with optional tree hydration metadata.`,inputSchema:{oneOf:[{type:`object`,properties:{root:{type:`object`}},required:[`root`],additionalProperties:!0},{type:`object`,additionalProperties:!0}]},defaultLayout:{},blocksFromData:e=>[{type:`tree`,value:Ot(e)}],hydration:[`tree`],supportedTransports:Dt},Z=new T;Z.register(D),Z.register(j),Z.register(N),Z.register(V),Z.register(U),Z.register(K),Z.register(X),Z.register(k),Z.register(P),Z.register(L),Z.register(G);let Q=0;function kt(){return Q=(Q+1)%(2**53-1),`${Date.now().toString(16).padStart(12,`0`).slice(-12)}${Q.toString(16).padStart(4,`0`).slice(-4)}${Array.from({length:8},()=>Math.floor(Math.random()*256).toString(16).padStart(2,`0`)).join(``)}`}function At(e){return{id:e,version:1,entry:`@aikit/blocks-interactive/dist/islands/${e}.js`,selector:`[data-island="${e}"]`,needsData:!0}}function jt(e,t){let n=new TextEncoder;return n.encode(e).byteLength+t.reduce((e,t)=>e+n.encode(t).byteLength,0)}function Mt(e,t){let n=[],r=t.registry??Z,i={colorScheme:e.colorScheme??t.colorScheme??`auto`,transport:t.transport,lang:e.lang,dir:e.dir},a=[...e.blocks??[]],o=[...a],s=[],c=[...e.actions??[]];if(e.template){let t=r.get(e.template);if(t)try{o=t.blocksFromData(e.data,i),t.actionsFromData&&(c=[...c,...t.actionsFromData(e.data)]),s=t.hydration.map(e=>At(e))}catch(t){let r=t instanceof Error?t.message:String(t);n.push({level:`error`,message:`Template ${e.template} failed: ${r}`}),o=a.length===0?P.blocksFromData({code:`TEMPLATE_RENDER_ERROR`,message:`Failed to render template ${e.template}`,details:r},i):[...a]}else n.push({level:`warn`,message:`Template not found: ${e.template}`})}let l=w(o,i),u=[y(o.map(e=>e.type))],d=t.nonce??kt(),f=e.metadata?.surfaceId??`surface-${d}`,ee=s.length>0?JSON.stringify({data:e.data,blocks:o}):void 0;return{surfaceId:f,nonce:d,html:l,css:u,islands:s,actions:c,payload:ee,estimatedBytes:jt(l,u),exportPolicy:s.length>0?`local-interactive`:`static-only`,diagnostics:n.length>0?n:void 0}}function Nt(e){return e===`up`||e===`down`||e===`neutral`}function $(e){return typeof e==`object`&&!!e}function Pt(e){return!$(e)||!Array.isArray(e.metrics)?{metrics:[]}:{metrics:e.metrics.flatMap(e=>{if(!$(e)||typeof e.label!=`string`||typeof e.value!=`string`&&typeof e.value!=`number`)return[];let t=$(e.trend)&&typeof e.trend.value==`string`&&Nt(e.trend.direction)?{value:e.trend.value,direction:e.trend.direction}:void 0,n=Array.isArray(e.items)?e.items.flatMap(e=>!$(e)||typeof e.label!=`string`||typeof e.value!=`string`?[]:[{label:e.label,value:e.value}]):void 0;return[{id:typeof e.id==`string`?e.id:void 0,label:e.label,value:e.value,trend:t,status:e.status===`success`||e.status===`warning`||e.status===`error`||e.status===`info`?e.status:void 0,type:e.type===`progress`||e.type===`list`||e.type===`stat`?e.type:void 0,progress:typeof e.progress==`number`?Ht(e.progress):void 0,items:n}]})}}function Ft(e){let t=e.type===`progress`&&typeof e.progress==`number`?`${e.progress}%`:void 0;return{label:e.label,value:e.value,trend:e.trend?.value??t,status:e.status}}function It(e){return e.type!==`progress`||typeof e.progress!=`number`?null:{label:e.label,value:Ht(e.progress),max:100}}function Lt(e){return $(e)?{columns:Array.isArray(e.columns)?e.columns.flatMap(e=>!$(e)||typeof e.id!=`string`||typeof e.label!=`string`?[]:[{id:e.id,label:e.label}]):[],cards:Array.isArray(e.cards)?e.cards.flatMap(e=>!$(e)||typeof e.id!=`string`||typeof e.title!=`string`||typeof e.column!=`string`?[]:[{id:e.id,title:e.title,description:typeof e.description==`string`?e.description:void 0,column:e.column,tags:Array.isArray(e.tags)?e.tags.filter(e=>typeof e==`string`):void 0,priority:e.priority===`high`||e.priority===`medium`||e.priority===`low`?e.priority:void 0}]):[]}:{columns:[],cards:[]}}function Rt(e){return{title:e.title,description:e.description,badge:e.priority,body:e.tags?.join(`, `),status:e.priority}}function zt(e){return!$(e)||!Array.isArray(e.items)?[]:e.items.flatMap(e=>!$(e)||typeof e.id!=`string`||typeof e.label!=`string`?[]:[{id:e.id,label:e.label}])}function Bt(e){return $(e)?{name:typeof e.name==`string`?e.name:``,total:typeof e.total==`number`?e.total:typeof e.value==`number`?e.value:0,self:typeof e.self==`number`?e.self:void 0,children:Array.isArray(e.children)?e.children.map(e=>Bt(e)):[]}:{name:``,total:0,children:[]}}function Vt(e){return{name:e.self==null?`${e.name} (${e.total})`:`${e.name} (${e.total} total / ${e.self} self)`,children:(e.children??[]).map(Vt)}}function Ht(e){return Math.max(0,Math.min(100,e))}function Ut(e){let t=Pt(e),n=[];t.metrics.length>0&&n.push({type:`metrics`,value:t.metrics.map(Ft)});let r=t.metrics.map(It).filter(e=>e!==null);r.length>0&&n.push({type:`progress`,value:r});for(let e of t.metrics)e.type===`list`&&e.items&&e.items.length>0&&(n.push({type:`heading`,value:e.label}),n.push({type:`table`,value:e.items}));return n}function Wt(e){let t=Lt(e),n=[];for(let e of t.columns){let r=t.cards.filter(t=>t.column===e.id);n.push({type:`heading`,value:e.label}),n.push({type:`cards`,value:r.map(Rt)})}return n}function Gt(e){let t=zt(e);return t.length===0?[]:[{type:`cards`,value:t.map((e,t)=>({title:e.label,body:e.id,badge:`#${t+1}`}))}]}function Kt(e){return!$(e)||!$(e.profile)?[]:[{type:`tree`,value:Vt(Bt(e.profile))}]}const qt={id:`dashboard@1`,label:`Dashboard`,description:`Metric cards grid with optional charts.`,inputSchema:{type:`object`,properties:{metrics:{type:`array`,items:{type:`object`,required:[`label`,`value`],properties:{id:{type:`string`},label:{type:`string`},value:{type:[`string`,`number`]},trend:{type:`object`,properties:{value:{type:`string`},direction:{enum:[`up`,`down`,`neutral`]}},required:[`value`,`direction`],additionalProperties:!1},status:{enum:[`success`,`warning`,`error`,`info`]},type:{enum:[`stat`,`progress`,`list`]},progress:{type:`number`},items:{type:`array`,items:{type:`object`,required:[`label`,`value`],properties:{label:{type:`string`},value:{type:`string`}},additionalProperties:!1}}},additionalProperties:!1}}},required:[`metrics`],additionalProperties:!1},defaultLayout:{maxWidth:`1200px`},blocksFromData:e=>Ut(e),hydration:[],supportedTransports:[`mcp-app`,`browser`]},Jt={id:`kanban@1`,label:`Kanban`,description:`Drag-and-drop task board grouped by columns.`,inputSchema:{type:`object`,properties:{columns:{type:`array`,items:{type:`object`,required:[`id`,`label`],properties:{id:{type:`string`},label:{type:`string`},color:{type:`string`}},additionalProperties:!1}},cards:{type:`array`,items:{type:`object`,required:[`id`,`title`,`column`],properties:{id:{type:`string`},title:{type:`string`},description:{type:`string`},column:{type:`string`},tags:{type:`array`,items:{type:`string`}},priority:{enum:[`high`,`medium`,`low`]}},additionalProperties:!1}}},required:[`columns`,`cards`],additionalProperties:!1},defaultLayout:{maxWidth:`1400px`},blocksFromData:e=>Wt(e),hydration:[],supportedTransports:[`browser`]},Yt={id:`list-sort@1`,label:`Sortable List`,description:`Reorderable list of items with browser drag-and-drop interactions.`,inputSchema:{type:`object`,properties:{items:{type:`array`,items:{type:`object`,required:[`id`,`label`],properties:{id:{type:`string`},label:{type:`string`}},additionalProperties:!1}}},required:[`items`],additionalProperties:!1},defaultLayout:{maxWidth:`720px`},blocksFromData:e=>Gt(e),hydration:[],supportedTransports:[`browser`]},Xt={id:`flame-graph@1`,label:`Flame Graph`,description:`Hierarchical performance profile with interactive zoom state.`,inputSchema:{type:`object`,properties:{profile:{type:`object`}},required:[`profile`],additionalProperties:!1},defaultLayout:{maxWidth:`1200px`},blocksFromData:e=>Kt(e),hydration:[],supportedTransports:[`browser`]};function Zt(e){return e.replace(/</g,`\\u003c`).replace(/>/g,`\\u003e`).replace(/&/g,`\\u0026`).replace(/\u2028/g,`\\u2028`).replace(/\u2029/g,`\\u2029`)}function Qt(e,t){let n=[`
716
+ * {
717
+ box-sizing: border-box;
718
+ }
719
+
720
+ html {
721
+ font-size: 16px;
722
+ }
723
+
724
+ body {
725
+ margin: 0;
726
+ display: flex;
727
+ flex-direction: column;
728
+ min-height: 100vh;
729
+ background: var(--dt-bg-canvas, var(--dt-bg-primary));
730
+ color: var(--dt-text-primary);
731
+ font-family: var(--dt-font-sans);
732
+ }
733
+
734
+ .aikit-header {
735
+ position: sticky;
736
+ top: 0;
737
+ z-index: 100;
738
+ display: flex;
739
+ align-items: center;
740
+ justify-content: space-between;
741
+ gap: var(--dt-space-4);
742
+ padding: var(--dt-space-2) var(--dt-space-4);
743
+ border-bottom: 1px solid var(--dt-border-default);
744
+ background: color-mix(in srgb, var(--dt-bg-primary) 92%, transparent);
745
+ backdrop-filter: blur(14px);
746
+ }
747
+
748
+ .aikit-header-brand,
749
+ .aikit-header-actions {
750
+ flex: 0 0 10rem;
751
+ }
752
+
753
+ .aikit-header-brand {
754
+ color: var(--dt-text-primary);
755
+ font-size: var(--dt-font-size-sm);
756
+ font-weight: 700;
757
+ letter-spacing: 0.08em;
758
+ text-transform: uppercase;
759
+ }
760
+
761
+ .aikit-header-title {
762
+ flex: 1 1 auto;
763
+ min-width: 0;
764
+ color: var(--dt-text-primary);
765
+ font-size: var(--dt-font-size-lg);
766
+ font-weight: 600;
767
+ text-align: center;
768
+ white-space: nowrap;
769
+ overflow: hidden;
770
+ text-overflow: ellipsis;
771
+ }
772
+
773
+ .aikit-header-actions {
774
+ display: flex;
775
+ justify-content: flex-end;
776
+ }
777
+
778
+ .aikit-theme-toggle {
779
+ display: inline-flex;
780
+ align-items: center;
781
+ justify-content: center;
782
+ width: 2rem;
783
+ height: 2rem;
784
+ padding: 0;
785
+ border: 1px solid var(--dt-border-default);
786
+ border-radius: var(--dt-radius-md);
787
+ background: var(--dt-bg-secondary);
788
+ color: var(--dt-text-primary);
789
+ box-shadow: var(--dt-shadow-sm);
790
+ cursor: pointer;
791
+ font: inherit;
792
+ transition:
793
+ background var(--dt-transition-fast),
794
+ border-color var(--dt-transition-fast),
795
+ color var(--dt-transition-fast),
796
+ box-shadow var(--dt-transition-fast);
797
+ }
798
+
799
+ .aikit-theme-toggle:hover {
800
+ background: var(--dt-bg-tertiary);
801
+ }
802
+
803
+ .aikit-theme-toggle:focus-visible {
804
+ outline: 2px solid var(--dt-accent-fg);
805
+ outline-offset: 2px;
806
+ }
807
+
808
+ main {
809
+ flex: 1;
810
+ width: 100%;
811
+ max-width: 100%;
812
+ padding: var(--dt-space-8) var(--dt-space-4);
813
+ }
814
+
815
+ .aikit-footer {
816
+ margin-top: auto;
817
+ padding: var(--dt-space-4);
818
+ border-top: 1px solid var(--dt-border-default);
819
+ color: var(--dt-text-secondary);
820
+ font-size: var(--dt-font-size-xs);
821
+ text-align: center;
822
+ }
823
+
824
+ @supports not (background: color-mix(in srgb, white 50%, transparent)) {
825
+ .aikit-header {
826
+ background: var(--dt-bg-primary);
827
+ }
828
+ }
829
+
830
+ @media (max-width: 640px) {
831
+ .aikit-header {
832
+ flex-wrap: wrap;
833
+ }
834
+
835
+ .aikit-header-brand,
836
+ .aikit-header-actions,
837
+ .aikit-header-title {
838
+ flex: 1 1 100%;
839
+ }
840
+
841
+ .aikit-header-title {
842
+ order: 3;
843
+ text-align: left;
844
+ }
845
+
846
+ .aikit-header-actions {
847
+ justify-content: flex-start;
848
+ }
849
+ }
850
+ `,...t.filter(e=>e.trim().length>0)].join(`
851
+ `);return[` <style>${e}</style>`,` <style>${n}</style>`].join(`
852
+ `)}function $t(e){let t=Object.entries(g).map(([e,t])=>` ${e}: ${t};`).join(`
853
+ `);return[e,`html[data-theme="light"] {
854
+ color-scheme: light;
855
+ }`,`html[data-theme="dark"] {\n color-scheme: dark;\n${t}\n}`,`@media (prefers-color-scheme: dark) {\n html:not([data-theme]) {\n color-scheme: dark;\n${t}\n }\n}`].join(`
856
+
857
+ `)}function en(e){return[` <header class="aikit-header">`,` <div class="aikit-header-brand">AI Kit</div>`,` <div class="aikit-header-title">${n(e)}</div>`,` <div class="aikit-header-actions">`,` <button type="button" class="aikit-theme-toggle" aria-label="Toggle theme" onclick="toggleTheme()">`,` <span data-theme-toggle-label><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></span>`,` </button>`,` </div>`,` </header>`].join(`
858
+ `)}function tn(e){return[` <footer class="aikit-footer">`,` <span>Generated by AI Kit at ${n(e)}</span>`,` </footer>`].join(`
859
+ `)}function nn(e){return[` <script>`,` (() => {`,` const preferredTheme = ${JSON.stringify(e)};`,` const html = document.documentElement;`,` const label = () => document.querySelector("[data-theme-toggle-label]");`,` const systemTheme = () =>`,` window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches`,` ? "dark"`,` : "light";`,` const resolvedTheme = () => html.getAttribute("data-theme") || systemTheme();`,` const sunIcon = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg>';`,` const moonIcon = '<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"/></svg>';`,` const updateToggle = (theme) => {`,` const button = document.querySelector(".aikit-theme-toggle");`,` const nextTheme = theme === "dark" ? "light" : "dark";`,` if (button) {`,` button.setAttribute("aria-label", "Switch to " + nextTheme + " theme");`,` button.setAttribute("aria-pressed", String(theme === "dark"));`,` }`,` const toggleLabel = label();`,` if (toggleLabel) toggleLabel.innerHTML = theme === "dark" ? moonIcon : sunIcon;`,` };`,` const applyTheme = (theme) => {`,` html.setAttribute("data-theme", theme);`,` updateToggle(theme);`,` };`,` if (preferredTheme === "light" || preferredTheme === "dark") {`,` applyTheme(preferredTheme);`,` } else {`,` updateToggle(resolvedTheme());`,` }`,` window.toggleTheme = () => {`,` applyTheme(resolvedTheme() === "dark" ? "light" : "dark");`,` };`,` })();`,` <\/script>`].join(`
860
+ `)}function rn(e,t){if(t!==`local-interactive`)return``;let r=new Set,i=[];for(let t of e)r.has(t.entry)||(r.add(t.entry),i.push(` <script type="module" src="${n(t.entry)}"><\/script>`));return i.join(`
861
+ `)}function an(e){let t=n(e.lang??`en`),r=n(e.dir??`ltr`),i=e.colorScheme??`auto`,a=e.generatedAt??new Date().toISOString(),o=[`lang="${t}"`,`dir="${r}"`];i!==`auto`&&o.push(`data-theme="${i}"`);let s=$t(e.tokenCss??S(`light`)),c=e.islands.length>0&&e.payload?` <script type="application/json" id="surface-payload">${Zt(e.payload)}<\/script>`:``,l=rn(e.islands,e.exportPolicy),u=[nn(i),c,l].filter(Boolean).join(`
862
+ `);return[`<!DOCTYPE html>`,`<html ${o.join(` `)}>`,`<head>`,` <meta charset="utf-8">`,` <meta name="viewport" content="width=device-width, initial-scale=1">`,` <title>${n(e.title)}</title>`,Qt(s,e.css),`</head>`,`<body data-surface-nonce="${n(e.nonce)}">`,en(e.title),` <main>${e.html}</main>`,tn(a),u,`</body>`,`</html>`].filter(Boolean).join(`
863
+ `)}export{T as TemplateRegistry,Fe as allCss,v as baseCss,f as blockItems,an as buildShell,D as checklistTemplate,y as collectCss,Pe as darkTokenNames,g as darkTokens,qt as dashboardTemplateDefinition,k as dataTableTemplate,Z as defaultRegistry,j as diffViewTemplate,N as documentTemplate,P as errorTemplate,n as escapeHtml,Xt as flameGraphTemplateDefinition,L as formTemplate,a as formatValue,x as generateDarkTokenCss,S as generateTokenCss,s as inlineMarkdown,t as isError,e as isResult,Jt as kanbanTemplateDefinition,Yt as listSortTemplateDefinition,V as pickerTemplate,C as renderBlock,w as renderBlocks,Mt as renderSurface,U as reportTemplate,i as sanitizeId,r as sanitizeUrl,G as statusBoardTemplate,K as timelineTemplate,Ne as tokenNames,h as tokens,u as toneName,d as toneVar,X as treeTemplate,o as tryParseJson};