`),X=[`WHIP`,`WHEP`,`HLS`,`FLV`];function Z(e){return e===`BACKEND_KIND_CLOUDFLARE`?E:A}function Q(e){return e.targets?.length??0}function $(e){return(()=>{var t=I(),n=t.firstChild,a=n.firstChild,s=a.nextSibling;return o(t,r(O,{class:`size-6 text-muted-foreground/60`}),n),o(a,()=>e.authed?`暂无在线房间`:`房间列表需登录`),o(s,()=>e.authed?`创建一个房间后,分发拓扑会出现在这里。`:`登录后可查看与管理房间分发拓扑。`),o(t,r(i,{get when(){return!e.authed},get children(){return r(M,{to:`/login`,class:`btn btn-outline btn-sm mt-1`,children:`去登录`})}}),null),t})()}var ee=()=>{let t=N(),[a,_]=s([]),[C,E]=s([]),[O,A]=s(`demo`),M;n(()=>{l.getConfig().then(e=>_(e.backends||[])).catch(()=>{});let e=M;if(e&&!window.matchMedia(`(prefers-reduced-motion: reduce)`).matches){let t=Array.from(e.querySelectorAll(`[data-parallax]`)),n=0,r=0,i=0,a=0,o=0,s=t=>{let i=e.getBoundingClientRect();n=(t.clientX-i.left)/i.width-.5,r=(t.clientY-i.top)/i.height-.5,e.style.setProperty(`--mx`,`${t.clientX-i.left}px`),e.style.setProperty(`--my`,`${t.clientY-i.top}px`)},c=()=>{n=0,r=0},l=()=>{i+=(n-i)*.08,a+=(r-a)*.08;for(let e of t){let t=Number(e.dataset.parallax||0);e.style.transform=`translate3d(${(i*t).toFixed(2)}px, ${(a*t).toFixed(2)}px, 0)`}o=requestAnimationFrame(l)};e.addEventListener(`mousemove`,s),e.addEventListener(`mouseleave`,c),o=requestAnimationFrame(l),b(()=>{e.removeEventListener(`mousemove`,s),e.removeEventListener(`mouseleave`,c),cancelAnimationFrame(o)})}}),w(()=>{p.check()&&p.isAuthed()&&l.listRooms().then(e=>E(e.rooms||[])).catch(()=>{})});let P=e=>t({to:e,search:{room:O()}});return(()=>{var n=K(),s=n.firstChild,l=s.firstChild.nextSibling.nextSibling,_=s.nextSibling,b=_.firstChild,w=b.nextSibling;return h(e=>M=e,s),o(l,r(g,{get children(){return L()}}),null),o(l,r(g,{delay:1,get children(){return R()}}),null),o(l,r(g,{delay:2,get children(){return z()}}),null),o(l,r(g,{delay:3,class:`mt-10`,get children(){var e=V(),t=e.firstChild,n=t.firstChild,a=n.firstChild;return o(e,r(u,{}),t),o(n,r(F,{class:`size-4 shrink-0 text-muted-foreground`}),a),a.$$keydown=e=>{e.key===`Enter`&&P(`/room`)},a.$$input=e=>A(e.currentTarget.value),o(t,r(x,{class:`h-11 sm:w-auto`,onClick:()=>P(`/room`),get children(){return[`进入房间`,r(T,{class:`size-4`})]}}),null),o(t,r(x,{variant:`outline`,class:`h-11`,onClick:()=>P(`/publish`),get children(){return[r(D,{class:`size-4`}),`开始直播`]}}),null),o(e,r(i,{get when(){return p.isAuthed()},get children(){var e=B(),t=e.firstChild,n=t.firstChild.nextSibling,r=t.nextSibling,i=r.firstChild.nextSibling,a=r.nextSibling.firstChild.nextSibling;return o(n,()=>p.role()),o(i,()=>p.can(`room:publish`)?`ON`:`OFF`),o(a,()=>p.can(`room:chat`)?`ON`:`OFF`),c(e=>{var t=p.can(`room:publish`)?`text-success`:`opacity-50`,n=p.can(`room:chat`)?`text-success`:`opacity-50`;return t!==e.e&&d(i,e.e=t),n!==e.t&&d(a,e.t=n),e},{e:void 0,t:void 0}),e}}),null),c(()=>a.value=O()),e}}),null),o(l,r(g,{delay:4,class:`mt-12`,get children(){var t=H(),n=t.firstChild,r=n.firstChild,i=n.nextSibling.firstChild;return o(r,()=>a().length||`–`),o(i,(()=>{var t=e(()=>!!p.isAuthed());return()=>t()?C().length:`–`})()),t}}),null),o(n,r(S,{items:[`WHIP → SFU`,`SRS FAN-OUT`,`WHEP / HLS / FLV`,`CLOUDFLARE REALTIME`,`WEBRTC LOW-LATENCY`,`一路推流 · 多端扇出`,`FAN-OUT CONSOLE`]}),_),o(b,r(g,{get children(){var e=U();return e.firstChild,o(e,r(x,{variant:`ghost`,size:`sm`,class:`hidden sm:inline-flex`,onClick:()=>t({to:`/rooms`}),get children(){return[`全部`,r(T,{class:`size-3.5`})]}}),null),e}}),null),o(b,r(i,{get when(){return C().length>0},get fallback(){return r($,{get authed(){return p.isAuthed()}})},get children(){var e=W();return o(e,r(m,{get each(){return C()},children:(e,n)=>r(g,{get delay(){return Math.min(n()+1,5)},get children(){var i=q(),a=i.firstChild,s=a.nextSibling,c=s.firstChild,l=c.nextSibling,u=l.firstChild,d=s.nextSibling;return o(a,()=>String(n()+1).padStart(2,`0`)),o(i,r(y,{get active(){return Q(e)>0}}),s),o(c,()=>e.name),o(l,()=>Q(e),u),o(l,()=>Q(e)>0?`live`:`idle`,null),o(d,r(x,{size:`sm`,variant:`outline`,class:`flex-1 sm:flex-none`,onClick:()=>t({to:`/room`,search:{room:e.name}}),children:`进入`}),null),o(d,r(x,{size:`sm`,class:`flex-1 sm:flex-none`,onClick:()=>t({to:`/publish`,search:{room:e.name}}),children:`直播`}),null),i}})})),e}}),null),o(w,r(g,{get children(){var t=G(),n=t.firstChild,s=n.firstChild,l=s.firstChild,p=n.nextSibling,h=p.nextSibling,g=h.firstChild.nextSibling,_=h.nextSibling,y=_.firstChild;return o(t,r(u,{}),n),o(s,r(k,{class:`size-4 text-acid-lime`}),l),o(n,r(v,{variant:`muted`,get children(){return[e(()=>a().length),` 路`]}}),null),o(p,r(i,{get when(){return a().length>0},get fallback(){return J()},get children(){return r(m,{get each(){return a()},children:e=>{let t=Z(e.kind);return(()=>{var n=Y(),i=n.firstChild,a=i.firstChild,s=a.nextSibling.firstChild,l=s.nextSibling,u=i.nextSibling;return o(a,r(t,{class:`size-4`})),o(s,()=>e.name),o(l,()=>e.primary?`primary sfu`:`standby`),o(u,r(f,{get active(){return e.configured}}),null),o(u,r(v,{get variant(){return e.configured?`success`:`muted`},get children(){return e.configured?`在线`:`未配置`}}),null),c(()=>d(n,`flex items-center justify-between gap-3 border p-3 transition-colors ${e.configured?`border-line bg-background/50`:`border-line/60 bg-background/20 opacity-70`}`)),n})()}})}})),o(g,r(m,{each:X,children:e=>r(v,{variant:`outline`,class:`font-mono`,children:e})})),o(_,r(j,{class:`mt-px size-4 shrink-0 text-success`}),y),t}})),n})()};C([`input`,`keydown`]);export{ee as Home};