(()=>{if(typeof window>"u"||!window.React)return;const{useMemo:u}=window.React,o={built:"ok",partial:"partial",stub:"idle",duplicate:"warn","needs-design-refresh":"warn","not-yet-designed":"fail"},r={built:"Built",partial:"Partial",stub:"Stub",duplicate:"Duplicate","needs-design-refresh":"Needs design refresh","not-yet-designed":"Not yet designed"};function c({streamId:a,subPageId:e}){return React.createElement("button",{type:"button",className:"sb-open mono",onClick:()=>window.NAV?.go(a,e)},"Open \u2192")}function m({rollup:a}){return a?React.createElement("div",{className:"sb-rollup"},React.createElement("div",{className:"sb-rollup-total mono"},a.total," sub-page",a.total===1?"":"s"," audited"),React.createElement("div",{className:"sb-rollup-chips"},a.statusOrder.map(e=>{const s=a.byStatus[e]||0;return s?React.createElement("span",{key:e,className:`sb-rollup-chip status-chip st-${o[e]||"idle"}`},React.createElement("span",{className:"status-dot","aria-hidden":"true"}),r[e]||e,React.createElement("span",{className:"mono"},s)):null}))):null}function p({rollup:a}){if(!a)return null;const e=Object.values(a.byStream).sort((s,t)=>s.streamLabel.localeCompare(t.streamLabel));return React.createElement("div",{className:"sb-streams"},React.createElement("div",{className:"sb-streams-head mono ink-faint"},"Per-stream rollup"),React.createElement("div",{className:"sb-streams-body"},e.map(s=>React.createElement("div",{key:s.streamId,className:"sb-stream-row"},React.createElement("span",{className:"sb-stream-name"},s.streamLabel),React.createElement("span",{className:"mono ink-faint"},s.total),a.statusOrder.map(t=>s[t]?React.createElement("span",{key:t,className:`sb-stream-mini status-chip st-${o[t]||"idle"}`},s[t]):null)))))}function b({status:a,entries:e}){return e.length?React.createElement("div",{className:"sb-group"},React.createElement("div",{className:"sb-group-head"},typeof MIcon=="function"?React.createElement(MIcon,{name:"insights",size:16}):null,React.createElement("span",{className:`status-chip st-${o[a]||"idle"}`},React.createElement("span",{className:"status-dot","aria-hidden":"true"}),r[a]||a),React.createElement("span",{className:"mono ink-faint"},e.length)),React.createElement("div",{className:"sb-group-body"},e.map(s=>React.createElement("div",{key:`${s.streamId}:${s.subPageId}`,className:`sb-card status-${o[s.status]||"idle"}`},React.createElement("div",{className:"sb-card-head"},React.createElement("span",{className:"sb-card-name"},s.streamLabel," ",React.createElement("span",{className:"ink-faint"},"\xB7")," ",s.subPageLabel),React.createElement("span",{className:"mono ink-faint"},s.kindId||"\u2014")),s.note?React.createElement("div",{className:"sb-card-note"},s.note):null,React.createElement(c,{streamId:s.streamId,subPageId:s.subPageId}))))):null}function v(){const a=window.DASHBOARD_STATUS||{},e=typeof window.soundboardRollup=="function"?window.soundboardRollup():null,s=u(()=>{const t=e?.statusOrder||["built","partial","stub","duplicate","needs-design-refresh","not-yet-designed"],n={};return t.forEach(i=>{n[i]=[]}),Object.keys(a).forEach(i=>{const d=a[i];n[d.status]||(n[d.status]=[]),n[d.status].push(d)}),Object.keys(n).forEach(i=>{n[i].sort((d,l)=>(d.streamLabel+d.subPageLabel).localeCompare(l.streamLabel+l.subPageLabel))}),{order:t,g:n}},[a,e]);return Object.keys(a).length?React.createElement("div",{className:"view view-soundboard"},React.createElement(m,{rollup:e}),React.createElement(p,{rollup:e}),s.order.map(t=>React.createElement(b,{key:t,status:t,entries:s.g[t]||[]}))):React.createElement("div",{className:"view view-soundboard sb-empty"},"window.DASHBOARD_STATUS is empty \u2014 soundboard-status.js did not load, or the audit produced zero entries.")}window.VIEWS=window.VIEWS||{},window.VIEWS.soundboard=v,Array.isArray(window.VIEW_OPTIONS)&&!window.VIEW_OPTIONS.some(a=>a.value==="soundboard")&&window.VIEW_OPTIONS.push({value:"soundboard",label:"Soundboard",icon:"insights"})})();
