pi-roundtable-web 0.28.0 → 0.29.0
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.
- package/CHANGELOG.md +22 -0
- package/README.md +4 -4
- package/dist/chunk-account-9616x405.js +1 -0
- package/dist/{chunk-action-menu-qpp9bdxh.js → chunk-action-menu-q5y7xpry.js} +1 -1
- package/dist/chunk-agent-x74xezyt.js +1 -0
- package/dist/{chunk-arranged-rooms-6rdkk8t1.js → chunk-arranged-rooms-9prq46vh.js} +1 -1
- package/dist/chunk-bulk-actions-5dc4m9ad.js +1 -0
- package/dist/chunk-character-creator-wf02eg0h.js +1 -0
- package/dist/{chunk-codeeditor-jgj32247.js → chunk-codeeditor-239ss6a2.js} +2 -2
- package/dist/chunk-confirm-bhrx9195.js +1 -0
- package/dist/chunk-connectors-k77pd9by.js +37 -0
- package/dist/{chunk-conversations-fb071rez.js → chunk-conversations-ftcpaqw1.js} +1 -1
- package/dist/chunk-council-sheet-a5e6tspr.js +2 -0
- package/dist/chunk-council-view-6593rqbr.js +1 -0
- package/dist/{chunk-drag-04qfef58.js → chunk-drag-7873fvzw.js} +1 -1
- package/dist/{chunk-entry-mws704mc.js → chunk-entry-5zmjxadx.js} +1 -1
- package/dist/chunk-folder-list-h9hmbm8e.js +1 -0
- package/dist/chunk-folds-vxq86t1s.js +1 -0
- package/dist/{chunk-gate-vxetvn8t.js → chunk-gate-fa6za28z.js} +1 -1
- package/dist/chunk-host-icons-y6frbzqt.js +1 -0
- package/dist/chunk-host-picture-fqg55rbr.js +1 -0
- package/dist/chunk-host-state-65tdhkyq.js +1 -0
- package/dist/{chunk-host-ui-pc9r24e3.js → chunk-host-ui-233kz7qp.js} +1 -1
- package/dist/{chunk-index-5hbq6g2e.css → chunk-index-1652v386.css} +1 -1
- package/dist/chunk-index-2c00zf3z.js +2 -0
- package/dist/chunk-index-2dhrqvba.js +2 -0
- package/dist/chunk-index-2s4bkrz3.js +2 -0
- package/dist/{chunk-index-v8mma5np.js → chunk-index-2ypaqwjy.js} +2 -2
- package/dist/{chunk-index-7qd604rq.js → chunk-index-35zqk1zr.js} +2 -2
- package/dist/chunk-index-39qq37j5.js +2 -0
- package/dist/{chunk-index-2hvn2kte.js → chunk-index-3tjmyd1h.js} +2 -2
- package/dist/{chunk-index-2tr41qht.js → chunk-index-4eag6s50.js} +2 -2
- package/dist/{chunk-index-2y8r4s4f.js → chunk-index-4jnn2g09.js} +2 -2
- package/dist/{chunk-index-q5fyrtx4.js → chunk-index-4krm48hm.js} +1 -1
- package/dist/{chunk-index-zj0gjcvr.js → chunk-index-4re5prfp.js} +2 -2
- package/dist/chunk-index-57teqgct.js +2 -0
- package/dist/{chunk-index-e2gy763y.js → chunk-index-5ssncptg.js} +2 -2
- package/dist/{chunk-index-20xgx0k2.js → chunk-index-7c9fn21n.js} +2 -2
- package/dist/{chunk-index-p7jkr7gv.js → chunk-index-7k5895sn.js} +5 -5
- package/dist/chunk-index-93f3e06v.js +2 -0
- package/dist/chunk-index-9m9v1p7s.js +2 -0
- package/dist/{chunk-index-3yy10a5h.js → chunk-index-a8c0ap8g.js} +2 -2
- package/dist/chunk-index-a8nqn3y0.js +3 -0
- package/dist/chunk-index-am7ghh75.js +120 -0
- package/dist/{chunk-index-rgf4rvns.js → chunk-index-amspdq2j.js} +3 -3
- package/dist/{chunk-index-s53bxwkk.js → chunk-index-aycxt14t.js} +2 -2
- package/dist/{chunk-index-jc3r4qam.js → chunk-index-bjeg3e2j.js} +2 -2
- package/dist/chunk-index-cttrqfm8.js +2 -0
- package/dist/chunk-index-dajanzxc.js +1 -0
- package/dist/chunk-index-e2eeckhh.js +2 -0
- package/dist/{chunk-index-rsd8rftk.js → chunk-index-e46652wf.js} +2 -2
- package/dist/chunk-index-ek98d2rn.js +2 -0
- package/dist/{chunk-index-n0cmnwd2.js → chunk-index-en5dm1zv.js} +2 -2
- package/dist/{chunk-index-zcfr8jdv.js → chunk-index-evhaaqzk.js} +12 -12
- package/dist/{chunk-index-2syyyjnq.js → chunk-index-f4gqzfkv.js} +2 -2
- package/dist/{chunk-index-3gfbhmpb.js → chunk-index-gj3n4dh5.js} +2 -2
- package/dist/chunk-index-gp4chnp3.js +2 -0
- package/dist/{chunk-index-v9gbt5tz.js → chunk-index-h2a42p6s.js} +3 -3
- package/dist/{chunk-index-zt19fdmc.js → chunk-index-haac6nbt.js} +2 -2
- package/dist/{chunk-index-gwkhs8s3.js → chunk-index-hef4gwtb.js} +2 -2
- package/dist/chunk-index-mg96sqpk.js +2 -0
- package/dist/chunk-index-nsya88fn.js +1 -0
- package/dist/{chunk-index-6cg8xp1c.js → chunk-index-ntt3em2k.js} +1 -1
- package/dist/chunk-index-pcbkp62w.js +2 -0
- package/dist/{chunk-index-5t2jkecy.js → chunk-index-pfs6rm6w.js} +2 -2
- package/dist/{chunk-index-x60n1me6.js → chunk-index-pgxgq61x.js} +2 -2
- package/dist/{chunk-index-s9p27f9b.js → chunk-index-q33ppq0j.js} +3 -3
- package/dist/{chunk-index-fepsbhr6.js → chunk-index-r0hk9kyd.js} +2 -2
- package/dist/{chunk-index-2822z600.js → chunk-index-rr73h4kc.js} +3 -3
- package/dist/{chunk-index-e35v554x.js → chunk-index-rtz4936v.js} +1 -1
- package/dist/chunk-index-smz90j6p.js +2 -0
- package/dist/{chunk-index-c7dbvkrq.js → chunk-index-teyx2hz7.js} +2 -2
- package/dist/{chunk-index-4t6vnwap.js → chunk-index-v6h43553.js} +2 -2
- package/dist/chunk-index-vzqwn3wp.js +2 -0
- package/dist/chunk-index-wt2asefx.js +50 -0
- package/dist/chunk-index-x4tq9btg.js +2 -0
- package/dist/chunk-index-y6p8j3zv.js +2 -0
- package/dist/chunk-index-yvcdg5hh.js +2 -0
- package/dist/{chunk-index-m81362sc.js → chunk-index-zdzzf3fp.js} +1 -1
- package/dist/chunk-index-zeqfnkty.js +2 -0
- package/dist/chunk-index-zpwb8mkk.js +2 -0
- package/dist/chunk-lang-css-avzhvm72.js +1 -0
- package/dist/{chunk-lang-dockerfile-n4bt8jbt.js → chunk-lang-dockerfile-2p7e3ssz.js} +1 -1
- package/dist/{chunk-lang-go-9k4y107e.js → chunk-lang-go-zxp9k517.js} +3 -3
- package/dist/chunk-lang-html-red02gep.js +1 -0
- package/dist/chunk-lang-javascript-n33kmjcx.js +1 -0
- package/dist/{chunk-lang-json-hr12bzs1.js → chunk-lang-json-zmym50rg.js} +1 -1
- package/dist/{chunk-lang-markdown-ttzcpgkg.js → chunk-lang-markdown-ww2kcs85.js} +4 -4
- package/dist/{chunk-lang-python-ntj8maem.js → chunk-lang-python-ng1zdtd4.js} +2 -2
- package/dist/{chunk-lang-rust-gv8y859d.js → chunk-lang-rust-6ynhxjdd.js} +1 -1
- package/dist/{chunk-lang-shell-5zzs09b7.js → chunk-lang-shell-39t9bz2s.js} +1 -1
- package/dist/{chunk-lang-sql-6vmze4pg.js → chunk-lang-sql-w875ejpg.js} +2 -2
- package/dist/{chunk-lang-toml-tt0d4rw9.js → chunk-lang-toml-b8ckgkg5.js} +1 -1
- package/dist/chunk-lang-typescript-qf8acbb2.js +1 -0
- package/dist/{chunk-lang-xml-r2sbqnjv.js → chunk-lang-xml-bz91cjp1.js} +1 -1
- package/dist/{chunk-lang-yaml-ex31qbph.js → chunk-lang-yaml-g9zy0tdv.js} +1 -1
- package/dist/chunk-layout-actions-fyzzzeyp.js +1 -0
- package/dist/chunk-menu-items-yvnk3vds.js +1 -0
- package/dist/chunk-mode-toggle-ccv271hm.js +1 -0
- package/dist/{chunk-note-row-40ypghn9.js → chunk-note-row-314py1pp.js} +3 -3
- package/dist/{chunk-notes-a8nqffbf.js → chunk-notes-4rnrddzw.js} +1 -1
- package/dist/{chunk-notice-bell-rdnfmtf2.js → chunk-notice-bell-z9wgamnz.js} +1 -1
- package/dist/{chunk-notices-tefx93s6.js → chunk-notices-mtn7pg1z.js} +1 -1
- package/dist/{chunk-onboarding-wvh0s3vg.js → chunk-onboarding-f3hhxgg4.js} +1 -1
- package/dist/{chunk-overview-zrx3bpwf.js → chunk-overview-qmepntrr.js} +1 -1
- package/dist/chunk-palette-edkn1ypq.js +1 -0
- package/dist/chunk-placement-items-trsa5t23.js +1 -0
- package/dist/{chunk-profile-tyb48b79.js → chunk-profile-pwfq0wns.js} +1 -1
- package/dist/chunk-prompt-history-xp9hmeqt.js +1 -0
- package/dist/chunk-prompts-a56qvytg.js +1 -0
- package/dist/chunk-room-confirms-gqpkz4h0.js +1 -0
- package/dist/{chunk-room-menu-ha1evv71.js → chunk-room-menu-1m2c2ekt.js} +1 -1
- package/dist/chunk-rooms-menu-button-tcvda1gq.js +1 -0
- package/dist/{chunk-schedules-a5pewkhd.js → chunk-schedules-kwnw7p8v.js} +1 -1
- package/dist/{chunk-seat-menu-eh3ymmks.js → chunk-seat-menu-m2n9nvv0.js} +1 -1
- package/dist/chunk-sheet-hosts-pr8xktyq.js +29 -0
- package/dist/{chunk-shortcut-help-bh9ntk9s.js → chunk-shortcut-help-sbvrds1m.js} +2 -2
- package/dist/{chunk-shortcuts-6em0atk9.js → chunk-shortcuts-8705p7q3.js} +1 -1
- package/dist/{chunk-skill-editor-e43mwz01.js → chunk-skill-editor-7xy09sq1.js} +2 -2
- package/dist/chunk-skills-cnc25x7q.js +1 -0
- package/dist/{chunk-start-over-line-xd1v2p0g.js → chunk-start-over-line-97zdd9pb.js} +2 -2
- package/dist/{chunk-switcher-list-dtfh87zy.js → chunk-switcher-list-ehsn2wsk.js} +1 -1
- package/dist/{chunk-tab-dot-qd640mjr.js → chunk-tab-dot-gkpe06q8.js} +1 -1
- package/dist/chunk-table-av3kh3tt.js +1 -0
- package/dist/{chunk-table2d-5nrhfwft.js → chunk-table2d-5x3jptp9.js} +1 -1
- package/dist/{chunk-table3d-5cb66d99.js → chunk-table3d-rsvajx7r.js} +172 -172
- package/dist/chunk-thread-actions-7xtkegwm.js +1 -0
- package/dist/{chunk-thread-cards-kgt22sbp.js → chunk-thread-cards-grzszfha.js} +1 -1
- package/dist/{chunk-thread-list-j2v1pqkz.js → chunk-thread-list-9bjjac3j.js} +2 -2
- package/dist/{chunk-transcript-a0p3vwh6.js → chunk-transcript-t5szb8r0.js} +1 -1
- package/dist/{chunk-waiting-chip-58ttx9av.js → chunk-waiting-chip-d8b6a0p8.js} +2 -2
- package/dist/chunk-waiting-ts3kxjvv.js +1 -0
- package/dist/chunk-where-3d3ncsa5.js +1 -0
- package/dist/{chunk-workspace-d34njy4p.js → chunk-workspace-ct6hvn0z.js} +2 -2
- package/dist/chunk-zh-tw-v9v1eerm.js +1 -0
- package/dist/index.html +1 -1
- package/dist/sw.js +1 -1
- package/package.json +3 -3
- package/src/api-types.ts +39 -0
- package/src/app/rooms.ts +30 -2
- package/src/app/routes.ts +26 -2
- package/src/app/skill-group-routes.ts +126 -0
- package/src/authz.ts +1 -0
- package/src/i18n/zh-tw.ts +31 -2
- package/src/push/channel.ts +1 -0
- package/src/web-plugin.ts +1 -0
- package/dist/chunk-account-678dgbww.js +0 -1
- package/dist/chunk-agent-x0yvvdq2.js +0 -1
- package/dist/chunk-bulk-actions-zbwdaxtc.js +0 -1
- package/dist/chunk-character-creator-215psy17.js +0 -1
- package/dist/chunk-confirm-2pzrt272.js +0 -1
- package/dist/chunk-connectors-zha2d834.js +0 -37
- package/dist/chunk-council-sheet-k5fycefd.js +0 -2
- package/dist/chunk-folder-list-qxhmczwv.js +0 -1
- package/dist/chunk-folds-b7asegfs.js +0 -1
- package/dist/chunk-group-scene-63yhh1mh.js +0 -1
- package/dist/chunk-group-table-zy4hmgk3.js +0 -1
- package/dist/chunk-host-icons-tyktazzz.js +0 -1
- package/dist/chunk-host-picture-ebhejn2k.js +0 -1
- package/dist/chunk-host-state-wajep0yr.js +0 -1
- package/dist/chunk-index-1af8vsyb.js +0 -2
- package/dist/chunk-index-254701sm.js +0 -3
- package/dist/chunk-index-31m1b2f5.js +0 -2
- package/dist/chunk-index-5vatmakn.js +0 -2
- package/dist/chunk-index-6yra9kdq.js +0 -2
- package/dist/chunk-index-9bdstf8t.js +0 -2
- package/dist/chunk-index-acj4xxgq.js +0 -100
- package/dist/chunk-index-aexy023z.js +0 -2
- package/dist/chunk-index-bef0fc2m.js +0 -2
- package/dist/chunk-index-c6tphrjr.js +0 -1
- package/dist/chunk-index-cn49mawx.js +0 -50
- package/dist/chunk-index-gcmmwh8t.js +0 -2
- package/dist/chunk-index-h2vhv4kh.js +0 -2
- package/dist/chunk-index-h9ccz1r3.js +0 -2
- package/dist/chunk-index-n0ejy0wd.js +0 -2
- package/dist/chunk-index-nkdg1dfz.js +0 -7
- package/dist/chunk-index-qxynr1hf.js +0 -2
- package/dist/chunk-index-r7fdgzy1.js +0 -2
- package/dist/chunk-index-sdcpf5dp.js +0 -2
- package/dist/chunk-index-sm7kfb07.js +0 -2
- package/dist/chunk-index-sw9r4aa4.js +0 -2
- package/dist/chunk-index-t5bmsqqd.js +0 -1
- package/dist/chunk-index-vsfsv8hd.js +0 -2
- package/dist/chunk-index-wxft0aqb.js +0 -2
- package/dist/chunk-index-zvvwxkev.js +0 -2
- package/dist/chunk-lang-css-7q1dtpgm.js +0 -1
- package/dist/chunk-lang-html-xgvba8rn.js +0 -1
- package/dist/chunk-lang-javascript-vgxmgd0a.js +0 -1
- package/dist/chunk-lang-typescript-2v652sh5.js +0 -1
- package/dist/chunk-layout-actions-bfqtg71d.js +0 -1
- package/dist/chunk-menu-items-rztgekfj.js +0 -1
- package/dist/chunk-mode-toggle-m5kgb7c7.js +0 -1
- package/dist/chunk-palette-5xtdvy9a.js +0 -1
- package/dist/chunk-placement-items-rgyrktvy.js +0 -1
- package/dist/chunk-prompt-history-wv0vdsjv.js +0 -1
- package/dist/chunk-prompts-75hgb0t0.js +0 -1
- package/dist/chunk-room-confirms-bcvhpcry.js +0 -1
- package/dist/chunk-rooms-menu-button-ej3a2hyc.js +0 -1
- package/dist/chunk-sheet-hosts-d5zbwbbr.js +0 -29
- package/dist/chunk-skills-vp107wrp.js +0 -1
- package/dist/chunk-table-svb2xhfd.js +0 -1
- package/dist/chunk-thread-actions-926eab0w.js +0 -1
- package/dist/chunk-waiting-cdyz7r1g.js +0 -1
- package/dist/chunk-where-9jp6g029.js +0 -1
- package/dist/chunk-zh-tw-y3jb20wc.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{Vr}from"./chunk-index-wt2asefx.js";import{Qr}from"./chunk-index-2s4bkrz3.js";import{ds,hs,io,ro,ps,ms}from"./chunk-index-2c00zf3z.js";var re=Vr,ie=(s)=>{for(let n=s;n;n=n.parentElement){let{overflowY:a}=getComputedStyle(n);if((a==="auto"||a==="scroll")&&n.scrollHeight>n.clientHeight)return n}return document.scrollingElement??document.documentElement};function de(s){let{item:n,root:a,key:f,mode:C}=s,m=ie(a),O=m===document.scrollingElement||m===document.documentElement,A=()=>O?0:m.getBoundingClientRect().top,j=()=>O?window.innerHeight:m.clientHeight,x=(e)=>e-A()+m.scrollTop,c=(e)=>{let t=e.getBoundingClientRect();return{top:x(t.top),height:t.height}},u=document.createElement("div");u.className="drop-line",u.setAttribute("aria-hidden","true");let z=[],P=[],v=[],g=[],R=[],B={top:0,bottom:0},D=()=>{let e=[...a.querySelectorAll("[data-drop-item], [data-folder-block]")].map((t)=>[t,t.style.transform]);for(let[t]of e)t.style.removeProperty("transform");try{G()}finally{for(let[t,r]of e)if(r)t.style.transform=r}},G=()=>{if(C==="room"){P=[...a.querySelectorAll("[data-drop-zone]")],z=P.map((t)=>{let{top:r,height:T}=c(t);return{id:t.dataset.zoneId??"",kind:t.dataset.dropZone,...t.dataset.folder?{folder:t.dataset.folder}:{},top:r,bottom:r+T,items:t.dataset.collapsed===void 0?[...t.querySelectorAll("[data-drop-item]")].map((o)=>({key:o.dataset.key??"",...c(o)})):[]}});return}v=[...a.querySelectorAll(":scope > [data-folder-block]")],g=v.map((t)=>({key:t.dataset.key??"",...c(t)})),R=v.map((t)=>({key:t.dataset.key??"",...c(t.querySelector("[data-folder-head]")??t)}));let e=c(a);B={top:e.top,bottom:e.top+e.height}};Qr(!0);let J=n.getBoundingClientRect().top;n.setAttribute("data-lifted",""),a.setAttribute("data-reordering","");let F=n.getBoundingClientRect().top-J;if(F)m.scrollTop+=F;D();let Q=x(s.y),I={x:0,y:s.y},Z=!1,p=0,h,d,q={type:"cancel"};try{n.setPointerCapture(s.pointerId)}catch{}let _=()=>{p=0;let e=x(I.y),t=e-Q;if(Math.abs(t)>re)Z=!0;n.style.transform=`translate3d(0, ${t}px, 0)`;let r;if(C==="room"){let o=ds(z,f,e);q=o?{type:"room",drop:o}:{type:"cancel"};let H=o?z.indexOf(o.zone):-1;r=P[H];let y=r?.contains(n)??!1,E=o?.zone.kind!=="rest";if(!E&&y)r=void 0;let i=o&&E?o.zone.items:[],M=y?[...r.querySelectorAll("[data-drop-item]")]:[],U=i.findIndex((l)=>l.key===f),ee=o?ro(i.map((l)=>l.key),f,o.before):0,te=i.length>1?Math.max(0,(i[1]?.top??0)-(i[0]?.top??0)-(i[0]?.height??0)):0,X=y&&U>=0?io(i,U,ee,te):[];for(let l of document.querySelectorAll("[data-drop-item]:not([data-lifted])"))l.style.removeProperty("transform");if(M.forEach((l,k)=>{if(X[k])l.style.transform=`translate3d(0, ${X[k]}px, 0)`}),r&&o&&!y&&E){let l=o.before===null?void 0:o.zone.items.find((ne)=>ne.key===o.before),k=c(r).top,oe=l?l.top-k:o.zone.items.length?c(r).height:0;u.style.top=`${oe}px`,r.append(u)}else u.remove();if(o?.zone.kind==="folder"&&o.zone.items.length===0&&r?.dataset.collapsed!==void 0){if(d?.zone!==o.zone.id){if(d)clearTimeout(d.timer);let l=o.zone.folder??"";d={zone:o.zone.id,timer:setTimeout(()=>{s.open(l),requestAnimationFrame(()=>requestAnimationFrame(()=>{D(),w()}))},ms)}}}else if(d)clearTimeout(d.timer),d=void 0}else{let o=hs(R,B,f,e);q=o?{type:"folder",before:o.before}:{type:"cancel"};let H=g.findIndex((i)=>i.key===f),y=o?ro(g.map((i)=>i.key),f,o.before):H,E=io(g,H,y,12);v.forEach((i,M)=>{if(i!==n)i.style.transform=E[M]?`translate3d(0, ${E[M]}px, 0)`:""})}if(r!==h)h?.removeAttribute("data-drop-target"),r?.setAttribute("data-drop-target",""),h=r;let T=ps(I.y,A(),A()+j());if(T)m.scrollTop+=T,w()},w=()=>{if(!p)p=requestAnimationFrame(_)},L=(e)=>{W(),s.done(e)},S=(e)=>e.pointerId===s.pointerId,K=(e)=>{if(!S(e))return;e.stopPropagation(),e.preventDefault(),I={x:e.clientX,y:e.clientY},w()},N=(e)=>{if(!S(e))return;if(e.stopPropagation(),p)cancelAnimationFrame(p),_();L(Z?q:{type:"tap"})},V=(e)=>{if(S(e))L({type:"cancel"})},Y=(e)=>{if(e.key!=="Escape")return;e.preventDefault(),e.stopPropagation(),L({type:"cancel"})},b=(e)=>e.preventDefault();function W(){if(Qr(!1),window.removeEventListener("pointermove",K,!0),window.removeEventListener("pointerup",N,!0),window.removeEventListener("pointercancel",V,!0),window.removeEventListener("keydown",Y,!0),window.removeEventListener("touchmove",b,!0),window.removeEventListener("contextmenu",b,!0),p)cancelAnimationFrame(p);if(d)clearTimeout(d.timer);h?.removeAttribute("data-drop-target"),u.remove(),n.removeAttribute("data-lifted"),n.style.removeProperty("transform"),a.removeAttribute("data-reordering");for(let e of a.querySelectorAll("[data-drop-item], [data-folder-block]"))e.style.removeProperty("transform");try{n.releasePointerCapture(s.pointerId)}catch{}}return window.addEventListener("pointermove",K,!0),window.addEventListener("pointerup",N,!0),window.addEventListener("pointercancel",V,!0),window.addEventListener("keydown",Y,!0),window.addEventListener("touchmove",b,{capture:!0,passive:!1}),window.addEventListener("contextmenu",b,!0),w(),()=>L({type:"cancel"})}export{de as lift};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Ct,
|
|
1
|
+
import{Ct,Gt}from"./chunk-index-pgxgq61x.js";import{p}from"./chunk-index-wt2asefx.js";function H(){try{let c=document.createElement("canvas");return!!(c.getContext("webgl2")||c.getContext("webgl"))}catch{return!1}}function x(c,n){return[c,n.includes("?")?n.slice(n.indexOf("?")):""].some((d)=>{let u=new URLSearchParams(d).get("nogl");return u!==null&&u!=="0"&&u!=="false"})}async function I(c,n,T){let d=n.variant==="compact",u=n.labels??Gt,l=new Map,E=(e)=>{l.clear();for(let t of e)l.set(t.id,{...t})};E(n.seats);let f={t:n.theme,s:n.scheme},a=null,o=document.createElement("div");o.className="rt-table",o.dataset.variant=d?"compact":"full";let g=document.createElement("div");g.className="rt-table-stage",o.appendChild(g);let r=null,y=!1,A=()=>!d&&(Boolean(n.listBelow)||y);c.appendChild(o);let m=new Map,S=()=>{if(!A()){r?.remove(),r=null,m.clear(),delete o.dataset.list;return}if(!r)r=document.createElement("ul"),r.className="rt-table-list",r.setAttribute("aria-label",u.table),o.appendChild(r),o.dataset.list="";for(let e of[...m.keys()])if(!l.has(e))m.delete(e);for(let e of l.values()){let t=m.get(e.id);if(!t){t=document.createElement("button"),t.type="button",t.dataset.seat=e.id;let s=e.id;t.addEventListener("click",(i)=>{let b=l.get(s);if(b)n.onSeatClick({id:b.id,name:b.name,at:Ct(i,i.currentTarget)})}),m.set(e.id,t)}t.textContent=u.seat(e.name,e.state??"idle"),t.style.setProperty("--seat",e.color)}r.replaceChildren(...[...l.values()].map((e)=>{let t=document.createElement("li"),s=m.get(e.id);if(s)t.appendChild(s);return t}))};S();let w=(e)=>{y=!e,S(),n.onNames?.(e)},v=async()=>{let{createTable2D:e}=await (p("5x3jptp9"),import("./chunk-table2d-5x3jptp9.js"));a=e(g,{...n,theme:f.t,scheme:f.s,seats:[...l.values()]}),w(!0)},C=async()=>{let{createTable3D:e}=await (p("rsvajx7r"),import("./chunk-table3d-rsvajx7r.js"));a=e(g,{...n,theme:f.t,scheme:f.s,seats:[...l.values()],onNames:w},()=>{a?.dispose(),v()})};if(d||T==="svg"||T!=="webgl"&&(x(location.search,location.hash)||!H()))await v();else try{await C()}catch{await v()}let M,L=n.onSeatMenu;if(L&&!d){let{attachSeatMenu:e}=await (p("m2n9nvv0"),import("./chunk-seat-menu-m2n9nvv0.js"));M=e(o,(t,s,i)=>{let b=t instanceof Element?t.closest("[data-seat]")?.dataset.seat:void 0,h=l.get(b??a?.seatAt?.(s,i)??"");return h?{id:h.id,name:h.name}:void 0},L)}return{get kind(){return a.kind},setTheme(e,t){f={t:e,s:t},a.setTheme(e,t)},setSeats(e){E(e),S(),a.setSeats(e)},setState(e,t){let s=l.get(e);if(s)s.state=t;S(),a.setState(e,t)},setMark:(e,t)=>a.setMark(e,t),setAvatar(e,t,s){let i=l.get(e);if(i)if(i.avatarSvg=t,s===void 0)delete i.talkSvg;else i.talkSvg=s;return a.setAvatar(e,t,s)},setReducedMotion:(e)=>a.setReducedMotion(e),resetCamera:()=>a.resetCamera(),focus:(e,t)=>a.focus(e,t),focused:()=>a.focused(),seatAt:(e,t)=>a.seatAt?.(e,t)??null,getStats:()=>a.getStats(),dispose(){M?.(),a?.dispose(),o.remove()}}}export{I as mountRoundTable};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p,o,L,t,K,g,e,n,s,Ke,d,ge,Ue,Gn,kn}from"./chunk-index-wt2asefx.js";import{Sr,kr,_r,Tr}from"./chunk-index-nsya88fn.js";import"./chunk-index-4krm48hm.js";import{Ft}from"./chunk-index-4eag6s50.js";import{$i}from"./chunk-index-7c9fn21n.js";var v=()=>(p("fyzzzeyp"),import("./chunk-layout-actions-fyzzzeyp.js")),k=(a)=>(p("trsa5t23"),import("./chunk-placement-items-trsa5t23.js")).then((r)=>r.folderMenu(a)),F=(a)=>({mode:"folder",key:a,item:(r)=>r.closest("[data-folder-block]"),root:(r)=>r.closest("[data-folder-block]")?.parentElement??null,onDrop:(r)=>{if(r.type==="folder")v().then((i)=>i.placeFolderBefore(a,r.before))},open:_r});function b(a){let{id:r,name:i}=a,m=Sr().has(r),l=a.holdsActive||!m,c=L(),h=Ft(()=>k(r),F(r)),N=(u)=>{k(r).then((f)=>{if(!f)return;let y=u.getBoundingClientRect();ge({...f,at:{x:y.left,y:y.bottom},via:"key",source:u})},()=>{return})};return n("section",{className:"folder","aria-label":i,"data-folder-block":"","data-key":r,"data-drop-zone":"folder","data-zone-id":r,"data-folder":r,"data-collapsed":l?void 0:"",children:[n("header",{className:"folder-head","data-folder-head":"",...h,children:[n("button",{type:"button",className:"folder-toggle","aria-expanded":l,"aria-controls":c,"aria-label":l?t("Collapse {name}",{name:i}):t("Expand {name}",{name:i}),onClick:()=>kr(r),children:[e(s,{name:"chevron",size:16,className:"folder-chevron","data-open":l||void 0}),e("strong",{children:i}),e("span",{className:"meta",children:K(a.count,"{count} room","{count} rooms")}),l?null:a.stack]}),a.muted==="none"?null:e(s,{name:"bell-off",size:14,className:"muted-mark","data-partial":a.muted==="some"||void 0,role:"img","aria-hidden":!1,"aria-label":a.muted==="all"?t("Notifications are off"):t("Some notifications are off")}),l?null:a.summary,e("button",{type:"button",className:"icon-button folder-more","aria-haspopup":"menu","aria-label":t("Folder menu"),onClick:(u)=>N(u.currentTarget),children:e(s,{name:"more",size:18})})]}),e("div",{id:c,className:"folder-body",hidden:!l,children:l?a.count===0?e("p",{className:"meta folder-empty",children:t("No rooms in this folder yet.")}):a.children:null})]})}var R=4;function S(a){let r=a.rooms.slice(0,R),i=d((l)=>r.map((c)=>l.rooms[c]?.view),r.join(",")),m=a.rooms.length-r.length;return n("span",{className:"folder-stack","aria-hidden":"true",children:[i.map((l)=>l?e("span",{className:"folder-stack-item",children:e(Ue,{view:l,size:28})},l.key):null),m>0?n("span",{className:"folder-stack-more",children:["+",m]}):null]})}function M(a){let r=d((i)=>({waiting:a.rooms.reduce((m,l)=>m+Ke(i,l),0),typing:a.rooms.some((m)=>i.rooms[m]?.typing)}),a.rooms.join(","));return n(g,{children:[r.typing?e(Gn,{}):null,r.waiting?e(kn,{count:r.waiting}):null]})}function w(a){return d((r)=>$i(a,(i)=>r.rooms[i]?.view?.muted===!0),a.join(","))}function U(a){let r=a.folders.map((i)=>i.id).join(",");return o(()=>{if(a.listed)Tr(r?r.split(","):[])},[a.listed,r]),e(g,{children:a.folders.map((i)=>e(C,{folder:i,...a},i.id))})}function C(a){let{folder:r}=a,i=w(r.rooms);return e(b,{id:r.id,name:r.name,count:r.rooms.length,holdsActive:a.active!==void 0&&r.rooms.includes(a.active),muted:i,summary:e(M,{rooms:r.rooms}),stack:e(S,{rooms:r.rooms}),children:a.rooms(r.rooms)})}export{U as FolderList};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Sr,wr,kr,_r,Tr}from"./chunk-index-nsya88fn.js";export{wr as collapsedNow,_r as expandFolder,Tr as pruneCollapsed,kr as toggleCollapsed,Sr as useCollapsed};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t,e,n,s,x}from"./chunk-index-
|
|
1
|
+
import{t,e,n,s,x}from"./chunk-index-wt2asefx.js";import{Xn,un}from"./chunk-index-bjeg3e2j.js";function l({steps:p}){return n("div",{className:"page",children:[e("header",{className:"page-head",children:e("h1",{children:t("Finish setting up")})}),e("p",{className:"meta",children:t("These steps come first. The rest of the app opens when they are done.")}),e("ul",{className:"menu",children:p.map((a)=>e("li",{children:n("a",{className:"menu-item menu-link",href:x(a.open.page),children:[n("span",{className:"menu-text",children:[e("strong",{children:Xn(a)}),un(a)?e("span",{className:"meta",children:un(a)}):null]}),e(s,{name:"chevron",size:16})]})},a.id))})]})}export{l as GatePage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./chunk-index-ntt3em2k.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{lt}from"./chunk-index-h2a42p6s.js";export{lt as HostPicture};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{mo,ze,go,Oo,yo,bo,vo,rn,pr,xo,ma}from"./chunk-index-hef4gwtb.js";export{xo as keepCards,pr as keepReads,vo as noCards,bo as noReads,ma as onFrame,rn as seedUnread,mo as subscribeHost,Oo as totalUnread,yo as unreadCounts,go as unreadOf,ze as useHost};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j,A,o,z,$e,C,a,r,t,K,g,e,n,s,x,fn,O,l,de,d,f,v,m,k,T,Wt,Xn,Et,_,Xr,xe,Yt,Yi,wt,gn,$t,J,xn,Ur,Ce,we}from"./chunk-index-cn49mawx.js";import{$n}from"./chunk-index-zt19fdmc.js";import{Ui,Ho,Ze,Vi}from"./chunk-index-2y8r4s4f.js";import{q}from"./chunk-index-qxynr1hf.js";import{Ie,Oo,yo,on,ur,bo}from"./chunk-index-gwkhs8s3.js";import{lt,ct}from"./chunk-index-v9gbt5tz.js";import{Mr}from"./chunk-index-2822z600.js";import"./chunk-index-6cg8xp1c.js";import{Te}from"./chunk-index-e35v554x.js";import{ie}from"./chunk-index-sw9r4aa4.js";import"./chunk-index-m81362sc.js";function Je(c){let i={};for(let u of c)if(u.type==="multiselect")i[u.name]=[...Ve(u.initial)];else i[u.name]=Ve(u.initial)[0]??"";return i}var Ve=(c)=>c===void 0?[]:typeof c==="string"?[c]:[...c];function je(c,i){let u={};for(let p of c){let y=i[p.name];if(y===void 0||y===""||y.length===0)continue;u[p.name]=y}return u}function Ke(c){let{field:i,value:u}=c,[p,y]=r(""),N=i.search?i.options.filter((h)=>h.label.toLowerCase().includes(p.trim().toLowerCase())):i.options,H=i.search?e("input",{type:"search",value:p,placeholder:t("Search…"),"aria-label":t("Search {name}",{name:i.label}),onChange:(h)=>y(h.target.value)}):null;if(i.type==="select")return n(g,{children:[H,n(Te,{id:c.id,value:String(u),required:i.required===!0,"aria-describedby":c.described,...i.search?{size:6}:{},onChange:(h)=>c.onChange(h.target.value),children:[i.required?null:e("option",{value:"",children:t("None")}),N.map((h)=>e("option",{value:h.value,children:h.label},h.value))]})]});let b=new Set(Array.isArray(u)?u:[]);return n(g,{children:[H,e("fieldset",{"aria-describedby":c.described,children:N.map((h)=>n("label",{children:[e("input",{type:"checkbox",checked:b.has(h.value),onChange:(S)=>{let w=new Set(b);if(S.target.checked)w.add(h.value);else w.delete(h.value);c.onChange(i.options.filter((I)=>w.has(I.value)).map((I)=>I.value))}}),h.label]},h.value))})]})}function et(c){let{field:i,value:u}=c,p=z(),y="hint"in i?i.hint:void 0,N=c.error||y?`${p}-note`:void 0,H;if("options"in i)H=e(Ke,{field:i,id:p,value:u,described:N,onChange:c.onChange});else if(i.type==="textarea")H=e("textarea",{id:p,rows:5,value:String(u),maxLength:i.max??8000,required:i.required===!0,"aria-describedby":N,onChange:(b)=>c.onChange(b.target.value)});else H=e("input",{id:p,type:i.type==="url"?"url":"text",value:String(u),maxLength:i.max??500,required:i.required===!0,"aria-describedby":N,onChange:(b)=>c.onChange(b.target.value)});return n("div",{className:"host-field",children:[i.type==="multiselect"?e("span",{className:"field-label",children:i.label}):e("label",{htmlFor:p,children:i.label}),H,c.error||y?e("span",{id:`${p}-note`,className:c.error?"field-error":"hint",role:c.error?"alert":void 0,children:c.error??y}):null]})}function me(c){let{spec:i}=c,[u,p]=r(()=>Je(i.fields)),[y,N]=r(!1),[H,b]=r();return n("form",{className:"host-form",onSubmit:async(S)=>{if(S.preventDefault(),y)return;N(!0),b(void 0);try{b(await c.onSubmit(je(i.fields,u)))}catch(w){b({error:d(w)})}finally{N(!1)}},children:[i.fields.map((S)=>e(et,{field:S,value:u[S.name]??"",error:H?.field===S.name?H.error:void 0,onChange:(w)=>p((I)=>({...I,[S.name]:w}))},S.name)),H&&!i.fields.some((S)=>S.name===H.field)?e(m,{message:H.error}):null,n("div",{className:"actions",children:[c.onCancel?e("button",{type:"button",className:"secondary",disabled:y,onClick:c.onCancel,children:t("Cancel")}):null,e("button",{type:"submit",disabled:y,children:i.submit})]})]})}function tt(c){if(!c.ok)return{error:Ui(c.error),...c.field?{field:c.field}:{}};if(c.notice)f(c.notice);if(c.open)Vi(c.open);return}function re(c){let[i,u]=r(),[p,y]=r(!1),N=async(b,h)=>tt(await c.run(b,h)),H=async(b)=>{if(b.form||b.confirm){u(b);return}y(!0);try{let h=await N(b,{});if(h)f(h.error,"danger")}catch(h){f(d(h),"danger")}finally{y(!1)}};if(c.actions.length===0)return null;return n("div",{className:c.className??"host-actions",children:[c.actions.map((b)=>e("button",{type:"button",className:b.style==="danger"?"danger":b.style==="secondary"?"secondary":"",disabled:p,onClick:()=>H(b),children:b.label},b.id)),i?.form?e(ie,{open:!0,title:i.form.title,onClose:()=>u(void 0),children:e(me,{spec:i.form,onCancel:()=>u(void 0),onSubmit:async(b)=>{let h=await N(i,b);if(!h)u(void 0);return h}})}):i?e(q,{open:!0,title:i.label,confirmLabel:i.label,tone:i.style==="danger"?"danger":"primary",onConfirm:async()=>{let b=await N(i,{});if(b)throw Error(b.error)},onClose:()=>u(void 0),children:e("p",{children:i.confirm})}):null]})}var Oe=/^file:([A-Za-z0-9_-]{1,64})$/;function Pe(c){let i=URL.parse(c,document.baseURI);return i!==null&&i.origin===window.location.origin}function nt({id:c,alt:i}){return e("img",{className:"file-image",src:`api/files/${encodeURIComponent(c)}`,alt:i,loading:"lazy",decoding:"async",onError:(u)=>{let p=document.createElement("span");p.textContent=i||t("Image"),u.currentTarget.replaceWith(p)}})}var ne=j(function({source:i}){return e("div",{className:"prose",children:e(Wt,{remarkPlugins:[Et],urlTransform:(u)=>Oe.test(u)?u:Xn(u),components:{a:({href:u,children:p})=>u&&/^https?:\/\//.test(u)&&!Pe(u)?e("a",{href:u,target:"_blank",rel:"noreferrer noopener",children:p}):u&&Pe(u)?e("a",{href:u,children:p}):e("span",{children:p}),img:({src:u,alt:p})=>{let y=typeof u==="string"?Oe.exec(u):null;return y?.[1]?e(nt,{id:y[1],alt:p??""}):e("span",{children:p})},pre:Xr,table:({children:u})=>e("div",{className:"table-wrap",children:e("table",{children:u})})},children:i})})});function rt(c){switch(c??"open"){case"working":return t("Working…");case"done":return t("Done");case"superseded":return t("Replaced");case"expired":return t("Expired");default:return""}}var ke=(c)=>(c.state??"open")==="open";function ae(c){let{card:i}=c,u=rt(i.state);return n("article",{className:"host-card","data-tone":i.tone??"note","data-state":i.state??"open",children:[n("header",{children:[e("h3",{children:i.title}),u?e(T,{tone:i.state==="working"?"busy":"plain",children:u}):null]}),i.body?e(ne,{source:i.body}):null,i.links?.length?e("div",{className:"host-card-links",children:i.links.map((p)=>e("a",{href:p.url,...p.url.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:p.label},`${p.url}`))}):null,ke(i)&&i.buttons?.length?e(re,{actions:i.buttons,run:c.run}):null]})}lt();function ot(){let[c,i]=r(()=>$n().toString());return o(()=>{let u=()=>i($n().toString());return window.addEventListener("popstate",u),window.addEventListener("hashchange",u),()=>{window.removeEventListener("popstate",u),window.removeEventListener("hashchange",u)}},[]),c}function st(c){if(!c.ok)return{error:Ui(c.error),...c.field?{field:c.field}:{}};if(c.notice)f(c.notice);if(c.open)Vi(c.open);return}function it(c){let{section:i}=c;switch(i.kind){case"markdown":return e(ne,{source:i.text});case"card":return e(ae,{card:i.card,run:c.run});case"form":return n("section",{className:"stack",children:[e("h2",{className:"section-title",children:i.form.title}),e(me,{spec:i.form,onSubmit:(u)=>c.submit(i.action,u)})]});case"list":return n("section",{className:"stack",children:[i.title?e("h2",{className:"section-title",children:i.title}):null,i.rows.length===0?e(k,{children:t("Nothing here.")}):null,e("ul",{className:"host-list",children:dt(i.rows).map(([u,p])=>n("li",{children:[p.attention?e("span",{className:"attention-dot",role:"img","aria-label":t("Needs attention")}):null,n("div",{className:"host-list-main",children:[p.open?e("a",{href:p.open,...p.open.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:p.title}):e("strong",{children:p.title}),p.subtitle?e("span",{children:p.subtitle}):null]}),p.actions?.length?e(re,{actions:p.actions,run:c.run}):null]},u))})]})}}function at({routeKey:c}){let i=c??"",u=ot(),p=Ie((w)=>w.pages[i]??0),[y,N]=r(0),[H,b]=r({});o(()=>{let w=!0;return Ze.page(i,Object.fromEntries(new URLSearchParams(u))).then((I)=>w&&b({page:I}),(I)=>{if(!w)return;let V=I instanceof de&&I.status===404;b((P)=>({...V||!P.page?{}:{page:P.page},error:d(I),gone:V}))}),()=>{w=!1}},[i,u,p,y]);let h=async(w,I)=>{let V=await Ze.pageAct(i,{action:w,input:I}),P=st(V);if(!P)N((F)=>F+1);return P},S=async(w,I)=>{let V=await Ze.pageAct(i,{action:w.id,input:I});if(V.ok)N((P)=>P+1);return V};if(H.gone)return e("div",{className:"page",children:e(k,{children:t("This page is not available.")})});if(!H.page)return e("div",{className:"page",children:H.error?e(m,{message:H.error}):e(v,{})});return n("div",{className:"page",children:[e("header",{className:"page-head",children:e("h1",{children:H.page.title})}),H.error?e(m,{message:H.error}):null,H.page.sections.map((w,I)=>e(it,{section:w,run:S,submit:h},I))]})}function dt(c){let i=new Map;return c.map((u)=>{let p=i.get(u.title)??0;return i.set(u.title,p+1),[`${u.title}:${p}`,u]})}var ut=/https?:\/\/[^\s<>"']+/g,mt=/[.,;:!?)\]}\u3001\u3002\uff0c\uff1b\uff1a\uff01\uff1f\uff09\u300d\u300f]+$/;function ft(c){let i=c.replace(mt,""),u=URL.parse(i);return u&&(u.protocol==="https:"||u.protocol==="http:")?i:""}function _e({text:c}){let i=[],u=0;for(let p of c.matchAll(ut)){let y=ft(p[0]);if(y==="")continue;let N=p.index;if(N>u)i.push(c.slice(u,N));i.push(e("a",{href:y,target:"_blank",rel:"noreferrer noopener",children:y},`${N}`)),u=N+y.length}if(u<c.length)i.push(c.slice(u));return e("span",{className:"plain",children:i})}var qe=j(function(i){let{message:u}=i,p=u.authorKind??"external";if(p==="notice")return n("li",{className:"host-notice","data-mid":u.id,"data-highlight":i.highlighted||void 0,"data-enter":i.enter||void 0,children:[e(s,{name:"bell",size:14}),e(ne,{source:u.text}),e("time",{dateTime:u.at,children:Yt(u.at,i.timeZone)})]});let y=p==="member"&&u.principalId!==void 0&&u.principalId===i.me;return n("li",{className:"message","data-mid":u.id,"data-author":p,"data-mine":y||void 0,"data-header":i.header||void 0,"data-enter":i.enter||void 0,"data-unread":i.unread||void 0,"data-highlight":i.highlighted||void 0,children:[y?null:e("span",{className:"message-avatar",children:i.header?e(ct,{picture:u.picture,name:u.author}):null}),n("div",{className:"message-main",children:[i.header?n("div",{className:"message-meta",children:[e("strong",{children:u.author}),u.authorLabel?e("span",{className:"label-chip",children:u.authorLabel}):null,e("time",{dateTime:u.at,children:Yt(u.at,i.timeZone)})]}):null,n("div",{className:"bubble",children:[u.text?p==="assistant"?e(ne,{source:u.text}):e(_e,{text:u.text}):null,e($t,{files:u.files}),u.expiredFiles?e("p",{className:"message-expired",children:K(u.expiredFiles,"{count} file was removed","{count} files were removed")}):null]}),u.edited?e("span",{className:"message-edited",children:t("edited")}):null]})]})});var pt=1500,gt=96,fe=new Set,Ne=new Map;function ht(c){if(document.visibilityState!=="visible")return!1;return!c||c.scrollHeight-c.scrollTop-c.clientHeight<gt}function ze(c){if(!(c instanceof Element))return;let i=c.closest("[data-unread][data-mid]");return i?Number(i.dataset.mid):void 0}function De(c){let{room:i,scroller:u,messages:p,began:y,enterAfter:N,me:H,shared:b}=c,h=a({seen:void 0,watched:new Set}),[,S]=r(0),w=Ne.get(i)??fe;if(N!==void 0&&p){let L=h.current;L.seen??=N;let M=ht(u.current),G=L.seen;for(let E of p){if(E.id<=L.seen)continue;if(M)L.watched.add(E.id);G=Math.max(G,E.id)}L.seen=G}let I=C(()=>{if(y===void 0||N===void 0||!p)return fe;let L=new Set;for(let M of p){if(M.id===0||M.id<=y)continue;if(M.kind==="system"||M.note)continue;if(M.authorKind==="notice")continue;if(M.principalId===void 0?M.kind==="owner"&&!b:M.principalId===H)continue;if(h.current.watched.has(M.id)||w.has(M.id))continue;L.add(M.id)}return L.size===0?fe:L},[p,y,N,H,b,w]),V=A((L)=>{let M=Ne.get(i)??fe;if(M.has(L))return;Ne.set(i,new Set(M).add(L)),S((G)=>G+1)},[i]),P=I.size>0;o(()=>{let L=u.current;if(!L||!P)return;let M=(E)=>{if(E.pointerType==="touch")return;let B=ze(E.target);if(B!==void 0)V(B)},G=(E)=>{let B=ze(E.target);if(B!==void 0)V(B)};return L.addEventListener("pointerover",M,{passive:!0}),L.addEventListener("focusin",G,{passive:!0}),L.addEventListener("click",G,{passive:!0}),()=>{L.removeEventListener("pointerover",M),L.removeEventListener("focusin",G),L.removeEventListener("click",G)}},[u,V,P]);let F=a(new Map),U=[...I].join(",");return o(()=>{let L=u.current,M=F.current;for(let[W,Z]of M)if(!I.has(W))clearTimeout(Z),M.delete(W);if(!L||!P||typeof IntersectionObserver!=="function"||!matchMedia("(pointer: coarse)").matches)return;let G=(W)=>{let Z=M.get(W);if(Z===void 0)return;clearTimeout(Z),M.delete(W)},E=new IntersectionObserver((W)=>{for(let Z of W){let te=Number(Z.target.dataset.mid),le=Z.rootBounds;if(!(Z.isIntersecting&&(Z.intersectionRatio>=0.5||le!==null&&Z.intersectionRect.height>=le.height*0.5))){G(te);continue}if(M.has(te))continue;M.set(te,setTimeout(()=>{if(M.delete(te),document.visibilityState==="visible")V(te)},pt))}},{root:L,threshold:[0,0.25,0.5,0.75,1]}),B=[...L.querySelectorAll("[data-unread][data-mid]")];for(let W of B)E.observe(W);let X=()=>{if(document.visibilityState!=="visible")return;for(let W of B)E.unobserve(W),E.observe(W)};return document.addEventListener("visibilitychange",X),()=>{document.removeEventListener("visibilitychange",X),E.disconnect()}},[u,V,P,U]),o(()=>{let L=F.current;return()=>{for(let M of L.values())clearTimeout(M);L.clear()}},[]),I}lt();var bt=3;function yt({marks:c}){let[i,u]=r(!1);return n("li",{className:"seen",children:[n("button",{type:"button",className:"seen-toggle","aria-expanded":i,onClick:()=>u((p)=>!p),children:[c.slice(0,bt).map((p)=>e(ct,{picture:{principal:p.principal},name:p.name,size:16},p.principal)),e("span",{children:t("Seen by {count}",{count:c.length})})]}),i?e("span",{className:"seen-names",children:c.map((p)=>p.name).join(t(", "))}):null]})}function vt(c,i){let u=we(),p=l((y)=>y.connects);o(()=>{let y=i.current;if(!y)return;let N=0,H=0,b,h,S=()=>{if(h=void 0,document.visibilityState!=="visible")return;let V=y.getBoundingClientRect(),P=0;for(let U of y.querySelectorAll("[data-mid]")){let L=U.getBoundingClientRect();if(L.bottom>V.top&&L.top<V.bottom-4)P=Math.max(P,Number(U.dataset.mid))}if(P<=N)return;let F=H+1000-Date.now();if(F>0){clearTimeout(b),b=setTimeout(w,F);return}if(u.send({type:"read",room:c,upTo:P}))N=P,H=Date.now()},w=()=>{if(h===void 0)h=requestAnimationFrame(S)};y.addEventListener("scroll",w,{passive:!0}),document.addEventListener("visibilitychange",w),window.addEventListener("resize",w);let I=new MutationObserver(w);return I.observe(y,{childList:!0,subtree:!0}),w(),()=>{if(y.removeEventListener("scroll",w),document.removeEventListener("visibilitychange",w),window.removeEventListener("resize",w),I.disconnect(),clearTimeout(b),h!==void 0)cancelAnimationFrame(h)}},[u,c,i,p])}function pe(c){let{roomKey:i}=c;vt(i,c.scroller);let u=l((w)=>w.principal?.id),p=l((w)=>w.rooms[i]?.messages),y=Ie((w)=>w.reads[i]??Oo),N=Ie((w)=>w.cursor[i]),H=a(void 0);if(H.current===void 0&&N!==void 0)H.current=N;let b=l((w)=>w.rooms[i]?.view?.notes===!0),h=De({room:i,scroller:c.scroller,messages:p,began:H.current,enterAfter:c.enterAfter,me:u,shared:c.host===!0||b}),S=C(()=>{let I=(p??[]).filter((F)=>F.kind!=="system"),V=H.current===void 0?void 0:I.find((F)=>F.id>(H.current??0)&&(F.principalId===void 0||F.principalId!==u))?.id,P=new Map;for(let F of y){if(F.principal===u)continue;let U=I.findLast((L)=>L.id<=F.upTo);if(U)P.set(U.id,[...P.get(U.id)??[],F])}return{before:(F)=>F.id===V?e("li",{className:"new-divider",children:e("span",{children:t("New messages")})}):null,after:(F)=>{let U=P.get(F.id);return U?e(yt,{marks:U}):null},unread:(F)=>h.has(F.id),...c.host?{message:(F,U)=>F.kind==="system"&&F.authorKind===void 0?void 0:e(qe,{message:F,header:U.header,enter:U.enter,unread:U.unread,timeZone:U.timeZone,me:u,highlighted:c.highlight===F.id})}:{}}},[p,y,u,c.host,c.highlight,h]);return e(xn,{roomKey:i,enterAfter:c.enterAfter,quotable:c.quotable,decor:S})}lt();var kt=20,Nt=2600,Ue;function Ht(c,i,u){let p=l((b)=>b.connects),y=Ie((b)=>b.rooms[c]??0),[N,H]=r({view:void 0,error:void 0,gone:!1});return o(()=>{let b=!0;return Ze.open(i,u).then((h)=>{if(!b)return;O.dispatch({type:"history_loaded",room:c,messages:h.messages,more:h.more,older:!1}),ur(c,h.reads,h.cursor),bo(c,h.cards),H({view:h,error:void 0,gone:!1})},(h)=>{if(!b)return;let S=h instanceof de&&h.status===404;H((w)=>({view:S?void 0:w.view,error:d(h),gone:S}))}),()=>{b=!1}},[c,i,u,p,y]),N}function Rt(c){let{header:i}=c;return n(g,{children:[i.banner?e("p",{className:"host-banner","data-tone":i.banner.tone,role:"status",children:i.banner.text}):null,i.fields.length?e("dl",{className:"host-head-fields",children:i.fields.map((u)=>n("div",{children:[e("dt",{children:u.label}),e("dd",{children:u.link?e("a",{href:u.link,...u.link.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:u.value}):u.value})]},`${u.label}:${u.value}`))}):null,e(re,{className:"host-actions bar",actions:i.actions,run:c.run})]})}function At(c){let i=Ie((S)=>S.cards[c.room]??yo),u=Ce("(min-width: 720px) and (min-height: 760px)"),[p,y]=r();if(i.length===0)return null;let N=i.filter((S)=>ke(S)||S.state==="working"),H=i.filter((S)=>!N.includes(S)),b=p??(u&&N.length>0),h=N[0];return n("div",{className:"host-cards","data-open":b||void 0,children:[n("button",{type:"button",className:"host-cards-toggle","aria-expanded":b,onClick:()=>y(!b),children:[e(s,{name:"chevron",size:14}),h?n("span",{children:[e("strong",{children:K(N.length,"{count} card waiting","{count} cards waiting")}),`: ${h.title}`]}):e("span",{children:t("Earlier cards ({count})",{count:H.length})})]}),b?n("div",{className:"host-cards-body",children:[N.map((S)=>e(ae,{card:S,run:c.run(S.id)},S.id)),H.length?n("details",{className:"host-cards-older",children:[e("summary",{children:t("Earlier cards ({count})",{count:H.length})}),H.map((S)=>e(ae,{card:S,run:c.run(S.id)},S.id))]}):null]}):null]})}function St({roomKey:c}){let i=we(),u=Ho(c),p=u?.kind??"",y=u?.id??"",{view:N,error:H,gone:b}=Ht(c,p,y),h=l((R)=>R.rooms[c]),S=l((R)=>R.limits),w=l((R)=>R.connects),I=l((R)=>R.connection==="open"),V=a(null),P=a(null),{away:F,onScroll:U,onGrow:L,toEnd:M}=Ur(V),[G,E]=r(!1),[B,X]=r(),[W,Z]=r(Ue),[te,le]=r(!1),[Re,Ae]=r(),he=a(void 0),oe=a(void 0),Q=N!==void 0;if(o(()=>{if(!u||b||!Q)return;return i.send({type:"subscribe",room:c}),i.focus(c),()=>{i.focus(void 0),i.send({type:"unsubscribe",room:c})}},[i,c,w,b,Q]),Q&&he.current===void 0)he.current=h?.messages.at(-1)?.id??0;$e(()=>{if(Q)M(!1)},[Q]),$e(()=>{let R=V.current;if(R&&oe.current!==void 0)R.scrollTop+=R.scrollHeight-oe.current,oe.current=void 0},[h?.messages[0]?.id]),o(()=>{let R=P.current;if(!R||typeof ResizeObserver>"u")return;let D=new ResizeObserver(L);return D.observe(R),()=>D.disconnect()},[L]);let be=A(async()=>{let R=O.getState().rooms[c]?.messages[0];if(!R)return!1;let D=await Ze.older(p,y,R.id,fn);return O.dispatch({type:"history_loaded",room:c,messages:D.messages,more:D.more,older:!0}),ur(c,D.reads,void 0),D.more},[c,p,y]),ce=a(void 0);o(()=>{let R=()=>{let D=Number($n().get("message"));ce.current=Number.isSafeInteger(D)&&D>0?D:void 0};return R(),window.addEventListener("popstate",R),()=>window.removeEventListener("popstate",R)},[]);let ye=h?.messages[0]?.id,Ee=h?.more===!0;o(()=>{let R=ce.current,D=V.current;if(!Q||R===void 0||!D)return;let Y=D.querySelector(`[data-mid="${R}"]`);if(Y){ce.current=void 0,Y.scrollIntoView({block:"center"}),Ae(R),requestAnimationFrame(()=>D.dispatchEvent(new Event("scroll"))),setTimeout(()=>Ae(void 0),Nt);return}if(ye!==void 0&&R<ye&&Ee){let se=0;(async()=>{if(se+=1,!await be().catch(()=>!1)||se>=kt)ce.current=void 0})()}},[Q,ye,Ee,h?.messages.length,be]);let Se=(R,D={},Y)=>Ze.act(p,y,{action:R.id,...Y===void 0?{}:{card:Y},input:D}),We=(R,D)=>Se(R,D),Qe=(R)=>(D,Y)=>Se(D,Y,R);if(b||!Q&&!H&&!u)return e("section",{className:"room",children:n("div",{className:"page",children:[e(k,{children:t("This room is not available.")}),e("a",{className:"back",href:x("rooms"),children:t("Back to rooms")})]})});let ee=N?.access.send??[],ve=ee.length>1,Le=ve&&te,Me=W&&ee.includes(W)?W:ee.includes("turn")?"turn":ee[0],Fe=Le||Me==="turn",Ye=Fe?N?.wording?.turn?.placeholder??t("Ask AI…"):N?.wording?.note?.placeholder??t("Write an internal note…"),ue=N?.header.title??c,Xe=h?.messages??[];return n("section",{className:"room",onDragOver:(R)=>{if(ee.length&&R.dataTransfer.types.includes("Files"))R.preventDefault()},onDrop:(R)=>{if(!ee.length||!R.dataTransfer.files.length)return;R.preventDefault(),X([...R.dataTransfer.files])},children:[n("header",{className:"room-head",children:[e("a",{className:"icon-button room-back",href:x("rooms"),"aria-label":t("Back to rooms"),children:e(s,{name:"back"})}),e(ct,{name:ue,size:40}),n("div",{className:"room-title",children:[e("h1",{children:ue}),e("span",{className:"room-status","data-working":h?.typing||void 0,children:h?.typing?t("Working…"):t("Host room")})]})]}),!I?n("div",{className:"offline-banner",role:"status",children:[e("span",{className:"spinner","aria-hidden":"true"}),t("Reconnecting… messages wait here until it is back.")]}):null,N?e(Rt,{header:N.header,run:We}):null,e("div",{className:"room-scroll",ref:V,onScroll:U,children:n("div",{className:"room-content",ref:P,children:[H?e(m,{message:H}):null,!Q&&!H?e(v,{}):null,h?.more?e("button",{type:"button",className:"secondary older",disabled:G,onClick:async()=>{E(!0),oe.current=V.current?.scrollHeight;try{await be()}catch(R){oe.current=void 0,f(d(R),"danger")}finally{E(!1)}},children:G?t("Loading…"):t("Load earlier messages")}):null,Q&&Xe.length===0?e(k,{children:t("No messages yet.")}):null,e(pe,{roomKey:c,enterAfter:he.current,quotable:!1,scroller:V,host:!0,highlight:Re}),h?.typing?e(gn,{name:ue,progress:h.progress}):null]})}),F?n("button",{type:"button",className:"to-end",onClick:()=>M(!0),children:[e(s,{name:"send",size:16,style:{transform:"rotate(180deg)"}}),t("Latest")]}):null,N?e(At,{room:c,run:Qe}):null,N&&ee.length===0?e("p",{className:"room-note",children:t("You can read this room but not write in it.")}):null,N&&ee.length>0?e(g,{children:e(wt,{draftKey:c,name:ue,placeholder:Ye,onAddressed:le,...ve?{above:e(Mr,{on:Fe,label:N?.wording?.turn?.label??t("@AI"),...Le?{locked:t("The message starts with @AI, so the knight answers.")}:{},onChange:(R)=>{let D=R?"turn":"note";Ue=D,Z(D)}})}:{},limits:S,stoppable:Boolean(h?.stoppable),onSend:(R,D,Y)=>{if(ve&&Y){let se=Yi(R);i.say(c,se===""&&D.length===0?R:se,D,"turn")}else i.say(c,R,D,Me);M(!0)},onStop:()=>i.send({type:"stop",room:c}),...B?{incoming:B,onIncomingTaken:()=>X(void 0)}:{}},c)}):null]})}lt();function ge({room:c}){let i=Ie((u)=>u.unread[c]??0);if(i<=0)return null;return e("span",{className:"unread-mark",role:"img","aria-label":K(i,"{count} unread message","{count} unread messages"),children:i>99?"99+":i})}lt();var Lt=6,Ct=250;function He(c){let{kind:i}=c,{timeZone:u}=_(),{now:p}=J(),y=l((E)=>E.connects),N=Ie((E)=>E.lists[i]??0),[H,b]=r(""),[h,S]=r(""),[w,I]=r(),[V,P]=r(),[F,U]=r(),[L,M]=r(!1);o(()=>{let E=setTimeout(()=>S(H.trim()),Ct);return()=>clearTimeout(E)},[H]),o(()=>{let E=!0;return Ze.list(i,h||void 0).then((B)=>{if(!E)return;on(Object.fromEntries(B.rooms.map((X)=>[X.key,X.unread??0]))),I(B.rooms),P(B.cursor),U(void 0)},(B)=>E&&U(d(B))),()=>{E=!1}},[i,h,y,N]);let G=async()=>{if(!V||L)return;M(!0);try{let E=await Ze.list(i,h||void 0,V);on(Object.fromEntries(E.rooms.map((B)=>[B.key,B.unread??0]))),I((B)=>[...B??[],...E.rooms]),P(E.cursor)}catch(E){U(d(E))}finally{M(!1)}};return n("section",{className:"stack",children:[n("h2",{className:"section-title",children:[c.icon?e(s,{name:c.icon,size:14,className:"section-icon"}):null,c.label]}),w&&(w.length>=Lt||h||H)?e("input",{type:"search",className:"kind-filter",value:H,placeholder:t("Search {name}",{name:c.label}),"aria-label":t("Search {name}",{name:c.label}),onChange:(E)=>b(E.target.value)}):null,F?e(m,{message:F}):null,!w&&!F?n("div",{className:"stack","aria-busy":"true",children:[e("div",{className:"skeleton"}),e("div",{className:"skeleton"})]}):null,w&&w.length===0?e(k,{children:h?t("Nothing matches."):t("No rooms yet.")}):null,w&&w.length>0?e("ul",{className:"room-list",children:w.map((E)=>e("li",{children:n("a",{className:"room-row",href:x("room",E.key),"aria-current":E.key===c.active?"page":void 0,children:[n("span",{className:"kind-row-picture",children:[e(ct,{picture:E.picture,name:E.title,size:44}),E.attention?e("span",{className:"attention-dot",role:"img","aria-label":t("Needs attention")}):null]}),n("span",{className:"room-row-main",children:[n("span",{className:"room-row-top",children:[e("strong",{children:E.title}),e(ge,{room:E.key}),e("span",{className:"room-row-time",children:E.lastAt?xe(E.lastAt,p,u):""})]}),e("span",{className:"room-row-preview",children:e("span",{children:E.subtitle??""})})]}),e(s,{name:"chevron",size:16,className:"room-row-chevron"})]})},E.key))}):null,V?e("button",{type:"button",className:"secondary",disabled:L,onClick:G,children:L?t("Loading…"):t("Show more")}):null]})}function Be(c){return c.kinds.map((i)=>e(He,{kind:i.kind,label:i.label,...i.icon?{icon:i.icon}:{},active:c.active},i.kind))}function Ge(){let c=(_().pages??[]).filter((i)=>i.place==="settings");if(c.length===0)return null;return n("section",{className:"card stack",children:[e("h2",{children:t("More settings")}),c.map((i)=>n("a",{className:"menu-item menu-link",href:x("p",i.id),children:[e("span",{className:"menu-text",children:e("strong",{children:i.label})}),e(s,{name:"chevron",size:16})]},i.id))]})}export{Be as HostKinds,at as HostPage,St as HostRoomPage,Ge as HostSettingsPages,pe as ReadLog,ge as UnreadMark};
|
|
1
|
+
import{j,E,o,L,Ne,C,a,r,t,K,g,e,n,s,x,fn,O,d,fe,l,f,v,m,k,T,Zt,Dn,Et,_,Dr,Se,Wt,gn,At,On,Nt,J,Sn,Ce,rr,Ee}from"./chunk-index-wt2asefx.js";import{Ln}from"./chunk-index-haac6nbt.js";import{Bi,Wo,Ze,Fi}from"./chunk-index-4jnn2g09.js";import{D}from"./chunk-index-y6p8j3zv.js";import{ze,bo,vo,rn,pr,xo}from"./chunk-index-hef4gwtb.js";import{at,lt}from"./chunk-index-h2a42p6s.js";import{Er}from"./chunk-index-rr73h4kc.js";import"./chunk-index-ntt3em2k.js";import{Te}from"./chunk-index-rtz4936v.js";import{ne}from"./chunk-index-57teqgct.js";import"./chunk-index-zdzzf3fp.js";function Je(c){let i={};for(let u of c)if(u.type==="multiselect")i[u.name]=[...Ve(u.initial)];else i[u.name]=Ve(u.initial)[0]??"";return i}var Ve=(c)=>c===void 0?[]:typeof c==="string"?[c]:[...c];function je(c,i){let u={};for(let p of c){let y=i[p.name];if(y===void 0||y===""||y.length===0)continue;u[p.name]=y}return u}function Ke(c){let{field:i,value:u}=c,[p,y]=r(""),N=i.search?i.options.filter((h)=>h.label.toLowerCase().includes(p.trim().toLowerCase())):i.options,H=i.search?e("input",{type:"search",value:p,placeholder:t("Search…"),"aria-label":t("Search {name}",{name:i.label}),onChange:(h)=>y(h.target.value)}):null;if(i.type==="select")return n(g,{children:[H,n(Te,{id:c.id,value:String(u),required:i.required===!0,"aria-describedby":c.described,...i.search?{size:6}:{},onChange:(h)=>c.onChange(h.target.value),children:[i.required?null:e("option",{value:"",children:t("None")}),N.map((h)=>e("option",{value:h.value,children:h.label},h.value))]})]});let b=new Set(Array.isArray(u)?u:[]);return n(g,{children:[H,e("fieldset",{"aria-describedby":c.described,children:N.map((h)=>n("label",{children:[e("input",{type:"checkbox",checked:b.has(h.value),onChange:(S)=>{let w=new Set(b);if(S.target.checked)w.add(h.value);else w.delete(h.value);c.onChange(i.options.filter((V)=>w.has(V.value)).map((V)=>V.value))}}),h.label]},h.value))})]})}function et(c){let{field:i,value:u}=c,p=L(),y="hint"in i?i.hint:void 0,N=c.error||y?`${p}-note`:void 0,H;if("options"in i)H=e(Ke,{field:i,id:p,value:u,described:N,onChange:c.onChange});else if(i.type==="textarea")H=e("textarea",{id:p,rows:5,value:String(u),maxLength:i.max??8000,required:i.required===!0,"aria-describedby":N,onChange:(b)=>c.onChange(b.target.value)});else H=e("input",{id:p,type:i.type==="url"?"url":"text",value:String(u),maxLength:i.max??500,required:i.required===!0,"aria-describedby":N,onChange:(b)=>c.onChange(b.target.value)});return n("div",{className:"host-field",children:[i.type==="multiselect"?e("span",{className:"field-label",children:i.label}):e("label",{htmlFor:p,children:i.label}),H,c.error||y?e("span",{id:`${p}-note`,className:c.error?"field-error":"hint",role:c.error?"alert":void 0,children:c.error??y}):null]})}function ue(c){let{spec:i}=c,[u,p]=r(()=>Je(i.fields)),[y,N]=r(!1),[H,b]=r();return n("form",{className:"host-form",onSubmit:async(S)=>{if(S.preventDefault(),y)return;N(!0),b(void 0);try{b(await c.onSubmit(je(i.fields,u)))}catch(w){b({error:l(w)})}finally{N(!1)}},children:[i.fields.map((S)=>e(et,{field:S,value:u[S.name]??"",error:H?.field===S.name?H.error:void 0,onChange:(w)=>p((V)=>({...V,[S.name]:w}))},S.name)),H&&!i.fields.some((S)=>S.name===H.field)?e(m,{message:H.error}):null,n("div",{className:"actions",children:[c.onCancel?e("button",{type:"button",className:"secondary",disabled:y,onClick:c.onCancel,children:t("Cancel")}):null,e("button",{type:"submit",disabled:y,children:i.submit})]})]})}function tt(c){if(!c.ok)return{error:Bi(c.error),...c.field?{field:c.field}:{}};if(c.notice)f(c.notice);if(c.open)Fi(c.open);return}function oe(c){let[i,u]=r(),[p,y]=r(!1),N=async(b,h)=>tt(await c.run(b,h)),H=async(b)=>{if(b.form||b.confirm){u(b);return}y(!0);try{let h=await N(b,{});if(h)f(h.error,"danger")}catch(h){f(l(h),"danger")}finally{y(!1)}};if(c.actions.length===0)return null;return n("div",{className:c.className??"host-actions",children:[c.actions.map((b)=>e("button",{type:"button",className:b.style==="danger"?"danger":b.style==="secondary"?"secondary":"",disabled:p,onClick:()=>H(b),children:b.label},b.id)),i?.form?e(ne,{open:!0,title:i.form.title,onClose:()=>u(void 0),children:e(ue,{spec:i.form,onCancel:()=>u(void 0),onSubmit:async(b)=>{let h=await N(i,b);if(!h)u(void 0);return h}})}):i?e(D,{open:!0,title:i.label,confirmLabel:i.label,tone:i.style==="danger"?"danger":"primary",onConfirm:async()=>{let b=await N(i,{});if(b)throw Error(b.error)},onClose:()=>u(void 0),children:e("p",{children:i.confirm})}):null]})}var Oe=/^file:([A-Za-z0-9_-]{1,64})$/;function Pe(c){let i=URL.parse(c,document.baseURI);return i!==null&&i.origin===window.location.origin}function nt({id:c,alt:i}){return e("img",{className:"file-image",src:`api/files/${encodeURIComponent(c)}`,alt:i,loading:"lazy",decoding:"async",onError:(u)=>{let p=document.createElement("span");p.textContent=i||t("Image"),u.currentTarget.replaceWith(p)}})}var re=j(function({source:i}){return e("div",{className:"prose",children:e(Zt,{remarkPlugins:[Et],urlTransform:(u)=>Oe.test(u)?u:Dn(u),components:{a:({href:u,children:p})=>u&&/^https?:\/\//.test(u)&&!Pe(u)?e("a",{href:u,target:"_blank",rel:"noreferrer noopener",children:p}):u&&Pe(u)?e("a",{href:u,children:p}):e("span",{children:p}),img:({src:u,alt:p})=>{let y=typeof u==="string"?Oe.exec(u):null;return y?.[1]?e(nt,{id:y[1],alt:p??""}):e("span",{children:p})},pre:Dr,table:({children:u})=>e("div",{className:"table-wrap",children:e("table",{children:u})})},children:i})})});function rt(c){switch(c??"open"){case"working":return t("Working…");case"done":return t("Done");case"superseded":return t("Replaced");case"expired":return t("Expired");default:return""}}var we=(c)=>(c.state??"open")==="open";function ae(c){let{card:i}=c,u=rt(i.state);return n("article",{className:"host-card","data-tone":i.tone??"note","data-state":i.state??"open",children:[n("header",{children:[e("h3",{children:i.title}),u?e(T,{tone:i.state==="working"?"busy":"plain",children:u}):null]}),i.body?e(re,{source:i.body}):null,i.links?.length?e("div",{className:"host-card-links",children:i.links.map((p)=>e("a",{href:p.url,...p.url.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:p.label},`${p.url}`))}):null,we(i)&&i.buttons?.length?e(oe,{actions:i.buttons,run:c.run}):null]})}at();function ot(){let[c,i]=r(()=>Ln().toString());return o(()=>{let u=()=>i(Ln().toString());return window.addEventListener("popstate",u),window.addEventListener("hashchange",u),()=>{window.removeEventListener("popstate",u),window.removeEventListener("hashchange",u)}},[]),c}function st(c){if(!c.ok)return{error:Bi(c.error),...c.field?{field:c.field}:{}};if(c.notice)f(c.notice);if(c.open)Fi(c.open);return}function it(c){let{section:i}=c;switch(i.kind){case"markdown":return e(re,{source:i.text});case"card":return e(ae,{card:i.card,run:c.run});case"form":return n("section",{className:"stack",children:[e("h2",{className:"section-title",children:i.form.title}),e(ue,{spec:i.form,onSubmit:(u)=>c.submit(i.action,u)})]});case"list":return n("section",{className:"stack",children:[i.title?e("h2",{className:"section-title",children:i.title}):null,i.rows.length===0?e(k,{children:t("Nothing here.")}):null,e("ul",{className:"host-list",children:dt(i.rows).map(([u,p])=>n("li",{children:[p.attention?e("span",{className:"attention-dot",role:"img","aria-label":t("Needs attention")}):null,n("div",{className:"host-list-main",children:[p.open?e("a",{href:p.open,...p.open.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:p.title}):e("strong",{children:p.title}),p.subtitle?e("span",{children:p.subtitle}):null]}),p.actions?.length?e(oe,{actions:p.actions,run:c.run}):null]},u))})]})}}function ct({routeKey:c}){let i=c??"",u=ot(),p=ze((w)=>w.pages[i]??0),[y,N]=r(0),[H,b]=r({});o(()=>{let w=!0;return Ze.page(i,Object.fromEntries(new URLSearchParams(u))).then((V)=>w&&b({page:V}),(V)=>{if(!w)return;let P=V instanceof fe&&V.status===404;b((q)=>({...P||!q.page?{}:{page:q.page},error:l(V),gone:P}))}),()=>{w=!1}},[i,u,p,y]);let h=async(w,V)=>{let P=await Ze.pageAct(i,{action:w,input:V}),q=st(P);if(!q)N((I)=>I+1);return q},S=async(w,V)=>{let P=await Ze.pageAct(i,{action:w.id,input:V});if(P.ok)N((q)=>q+1);return P};if(H.gone)return e("div",{className:"page",children:e(k,{children:t("This page is not available.")})});if(!H.page)return e("div",{className:"page",children:H.error?e(m,{message:H.error}):e(v,{})});return n("div",{className:"page",children:[e("header",{className:"page-head",children:e("h1",{children:H.page.title})}),H.error?e(m,{message:H.error}):null,H.page.sections.map((w,V)=>e(it,{section:w,run:S,submit:h},V))]})}function dt(c){let i=new Map;return c.map((u)=>{let p=i.get(u.title)??0;return i.set(u.title,p+1),[`${u.title}:${p}`,u]})}var ut=/https?:\/\/[^\s<>"']+/g,mt=/[.,;:!?)\]}\u3001\u3002\uff0c\uff1b\uff1a\uff01\uff1f\uff09\u300d\u300f]+$/;function ft(c){let i=c.replace(mt,""),u=URL.parse(i);return u&&(u.protocol==="https:"||u.protocol==="http:")?i:""}function _e({text:c}){let i=[],u=0;for(let p of c.matchAll(ut)){let y=ft(p[0]);if(y==="")continue;let N=p.index;if(N>u)i.push(c.slice(u,N));i.push(e("a",{href:y,target:"_blank",rel:"noreferrer noopener",children:y},`${N}`)),u=N+y.length}if(u<c.length)i.push(c.slice(u));return e("span",{className:"plain",children:i})}var qe=j(function(i){let{message:u}=i,p=u.authorKind??"external";if(p==="notice")return n("li",{className:"host-notice","data-mid":u.id,"data-highlight":i.highlighted||void 0,"data-enter":i.enter||void 0,children:[e(s,{name:"bell",size:14}),e(re,{source:u.text}),e("time",{dateTime:u.at,children:Wt(u.at,i.timeZone)})]});let y=p==="member"&&u.principalId!==void 0&&u.principalId===i.me;return n("li",{className:"message","data-mid":u.id,"data-author":p,"data-mine":y||void 0,"data-header":i.header||void 0,"data-enter":i.enter||void 0,"data-unread":i.unread||void 0,"data-highlight":i.highlighted||void 0,children:[y?null:e("span",{className:"message-avatar",children:i.header?e(lt,{picture:u.picture,name:u.author}):null}),n("div",{className:"message-main",children:[i.header?n("div",{className:"message-meta",children:[e("strong",{children:u.author}),u.authorLabel?e("span",{className:"label-chip",children:u.authorLabel}):null,e("time",{dateTime:u.at,children:Wt(u.at,i.timeZone)})]}):null,n("div",{className:"bubble",children:[u.text?p==="assistant"?e(re,{source:u.text}):e(_e,{text:u.text}):null,e(Nt,{files:u.files}),u.expiredFiles?e("p",{className:"message-expired",children:K(u.expiredFiles,"{count} file was removed","{count} files were removed")}):null]}),u.edited?e("span",{className:"message-edited",children:t("edited")}):null]})]})});var pt=1500,gt=96,me=new Set,ke=new Map;function ht(c){if(document.visibilityState!=="visible")return!1;return!c||c.scrollHeight-c.scrollTop-c.clientHeight<gt}function De(c){if(!(c instanceof Element))return;let i=c.closest("[data-unread][data-mid]");return i?Number(i.dataset.mid):void 0}function Ue(c){let{room:i,scroller:u,messages:p,began:y,enterAfter:N,me:H,shared:b}=c,h=a({seen:void 0,watched:new Set}),[,S]=r(0),w=ke.get(i)??me;if(N!==void 0&&p){let M=h.current;M.seen??=N;let F=ht(u.current),G=M.seen;for(let A of p){if(A.id<=M.seen)continue;if(F)M.watched.add(A.id);G=Math.max(G,A.id)}M.seen=G}let V=C(()=>{if(y===void 0||N===void 0||!p)return me;let M=new Set;for(let F of p){if(F.id===0||F.id<=y)continue;if(F.kind==="system"||F.note)continue;if(F.authorKind==="notice")continue;if(F.principalId===void 0?F.kind==="owner"&&!b:F.principalId===H)continue;if(h.current.watched.has(F.id)||w.has(F.id))continue;M.add(F.id)}return M.size===0?me:M},[p,y,N,H,b,w]),P=E((M)=>{let F=ke.get(i)??me;if(F.has(M))return;ke.set(i,new Set(F).add(M)),S((G)=>G+1)},[i]),q=V.size>0;o(()=>{let M=u.current;if(!M||!q)return;let F=(A)=>{if(A.pointerType==="touch")return;let B=De(A.target);if(B!==void 0)P(B)},G=(A)=>{let B=De(A.target);if(B!==void 0)P(B)};return M.addEventListener("pointerover",F,{passive:!0}),M.addEventListener("focusin",G,{passive:!0}),M.addEventListener("click",G,{passive:!0}),()=>{M.removeEventListener("pointerover",F),M.removeEventListener("focusin",G),M.removeEventListener("click",G)}},[u,P,q]);let I=a(new Map),U=[...V].join(",");return o(()=>{let M=u.current,F=I.current;for(let[W,Z]of F)if(!V.has(W))clearTimeout(Z),F.delete(W);if(!M||!q||typeof IntersectionObserver!=="function"||!matchMedia("(pointer: coarse)").matches)return;let G=(W)=>{let Z=F.get(W);if(Z===void 0)return;clearTimeout(Z),F.delete(W)},A=new IntersectionObserver((W)=>{for(let Z of W){let te=Number(Z.target.dataset.mid),le=Z.rootBounds;if(!(Z.isIntersecting&&(Z.intersectionRatio>=0.5||le!==null&&Z.intersectionRect.height>=le.height*0.5))){G(te);continue}if(F.has(te))continue;F.set(te,setTimeout(()=>{if(F.delete(te),document.visibilityState==="visible")P(te)},pt))}},{root:M,threshold:[0,0.25,0.5,0.75,1]}),B=[...M.querySelectorAll("[data-unread][data-mid]")];for(let W of B)A.observe(W);let X=()=>{if(document.visibilityState!=="visible")return;for(let W of B)A.unobserve(W),A.observe(W)};return document.addEventListener("visibilitychange",X),()=>{document.removeEventListener("visibilitychange",X),A.disconnect()}},[u,P,q,U]),o(()=>{let M=I.current;return()=>{for(let F of M.values())clearTimeout(F);M.clear()}},[]),V}at();var bt=3;function yt({marks:c}){let[i,u]=r(!1);return n("li",{className:"seen",children:[n("button",{type:"button",className:"seen-toggle","aria-expanded":i,onClick:()=>u((p)=>!p),children:[c.slice(0,bt).map((p)=>e(lt,{picture:{principal:p.principal},name:p.name,size:16},p.principal)),e("span",{children:t("Seen by {count}",{count:c.length})})]}),i?e("span",{className:"seen-names",children:c.map((p)=>p.name).join(t(", "))}):null]})}function vt(c,i){let u=Ee(),p=d((y)=>y.connects);o(()=>{let y=i.current;if(!y)return;let N=0,H=0,b,h,S=()=>{if(h=void 0,document.visibilityState!=="visible")return;let P=y.getBoundingClientRect(),q=0;for(let U of y.querySelectorAll("[data-mid]")){let M=U.getBoundingClientRect();if(M.bottom>P.top&&M.top<P.bottom-4)q=Math.max(q,Number(U.dataset.mid))}if(q<=N)return;let I=H+1000-Date.now();if(I>0){clearTimeout(b),b=setTimeout(w,I);return}if(u.send({type:"read",room:c,upTo:q}))N=q,H=Date.now()},w=()=>{if(h===void 0)h=requestAnimationFrame(S)};y.addEventListener("scroll",w,{passive:!0}),document.addEventListener("visibilitychange",w),window.addEventListener("resize",w);let V=new MutationObserver(w);return V.observe(y,{childList:!0,subtree:!0}),w(),()=>{if(y.removeEventListener("scroll",w),document.removeEventListener("visibilitychange",w),window.removeEventListener("resize",w),V.disconnect(),clearTimeout(b),h!==void 0)cancelAnimationFrame(h)}},[u,c,i,p])}function pe(c){let{roomKey:i}=c;vt(i,c.scroller);let u=d((w)=>w.principal?.id),p=d((w)=>w.rooms[i]?.messages),y=ze((w)=>w.reads[i]??bo),N=ze((w)=>w.cursor[i]),H=a(void 0);if(H.current===void 0&&N!==void 0)H.current=N;let b=d((w)=>w.rooms[i]?.view?.notes===!0),h=Ue({room:i,scroller:c.scroller,messages:p,began:H.current,enterAfter:c.enterAfter,me:u,shared:c.host===!0||b}),S=C(()=>{let V=(p??[]).filter((I)=>I.kind!=="system"),P=H.current===void 0?void 0:V.find((I)=>I.id>(H.current??0)&&(I.principalId===void 0||I.principalId!==u))?.id,q=new Map;for(let I of y){if(I.principal===u)continue;let U=V.findLast((M)=>M.id<=I.upTo);if(U)q.set(U.id,[...q.get(U.id)??[],I])}return{before:(I)=>I.id===P?e("li",{className:"new-divider",children:e("span",{children:t("New messages")})}):null,after:(I)=>{let U=q.get(I.id);return U?e(yt,{marks:U}):null},unread:(I)=>h.has(I.id),...c.host?{message:(I,U)=>I.kind==="system"&&I.authorKind===void 0?void 0:e(qe,{message:I,header:U.header,enter:U.enter,unread:U.unread,timeZone:U.timeZone,me:u,highlighted:c.highlight===I.id})}:{}}},[p,y,u,c.host,c.highlight,h]);return e(Sn,{roomKey:i,enterAfter:c.enterAfter,quotable:c.quotable,decor:S})}at();var wt=20,kt=2600,$e;function Ht(c,i,u){let p=d((b)=>b.connects),y=ze((b)=>b.rooms[c]??0),[N,H]=r({view:void 0,error:void 0,gone:!1});return o(()=>{let b=!0;return Ze.open(i,u).then((h)=>{if(!b)return;O.dispatch({type:"history_loaded",room:c,messages:h.messages,more:h.more,older:!1}),pr(c,h.reads,h.cursor),xo(c,h.cards),H({view:h,error:void 0,gone:!1})},(h)=>{if(!b)return;let S=h instanceof fe&&h.status===404;H((w)=>({view:S?void 0:w.view,error:l(h),gone:S}))}),()=>{b=!1}},[c,i,u,p,y]),N}function Rt(c){let{header:i}=c;return n(g,{children:[i.banner?e("p",{className:"host-banner","data-tone":i.banner.tone,role:"status",children:i.banner.text}):null,i.fields.length?e("dl",{className:"host-head-fields",children:i.fields.map((u)=>n("div",{children:[e("dt",{children:u.label}),e("dd",{children:u.link?e("a",{href:u.link,...u.link.startsWith("/")?{}:{target:"_blank",rel:"noreferrer noopener"},children:u.value}):u.value})]},`${u.label}:${u.value}`))}):null,e(oe,{className:"host-actions bar",actions:i.actions,run:c.run})]})}function St(c){let i=ze((S)=>S.cards[c.room]??vo),u=Ce("(min-width: 720px) and (min-height: 760px)"),[p,y]=r();if(i.length===0)return null;let N=i.filter((S)=>we(S)||S.state==="working"),H=i.filter((S)=>!N.includes(S)),b=p??(u&&N.length>0),h=N[0];return n("div",{className:"host-cards","data-open":b||void 0,children:[n("button",{type:"button",className:"host-cards-toggle","aria-expanded":b,onClick:()=>y(!b),children:[e(s,{name:"chevron",size:14}),h?n("span",{children:[e("strong",{children:K(N.length,"{count} card waiting","{count} cards waiting")}),`: ${h.title}`]}):e("span",{children:t("Earlier cards ({count})",{count:H.length})})]}),b?n("div",{className:"host-cards-body",children:[N.map((S)=>e(ae,{card:S,run:c.run(S.id)},S.id)),H.length?n("details",{className:"host-cards-older",children:[e("summary",{children:t("Earlier cards ({count})",{count:H.length})}),H.map((S)=>e(ae,{card:S,run:c.run(S.id)},S.id))]}):null]}):null]})}function Lt({roomKey:c}){let i=Ee(),u=Wo(c),p=u?.kind??"",y=u?.id??"",{view:N,error:H,gone:b}=Ht(c,p,y),h=d((R)=>R.rooms[c]),S=d((R)=>R.limits),w=d((R)=>R.connects),V=d((R)=>R.connection==="open"),P=a(null),q=a(null),{away:I,onScroll:U,onGrow:M,toEnd:F}=rr(P),[G,A]=r(!1),[B,X]=r(),[W,Z]=r($e),[te,le]=r(!1),[Re,Ae]=r(),he=a(void 0),se=a(void 0),Q=N!==void 0;if(o(()=>{if(!u||b||!Q)return;return i.send({type:"subscribe",room:c}),i.focus(c),()=>{i.focus(void 0),i.send({type:"unsubscribe",room:c})}},[i,c,w,b,Q]),Q&&he.current===void 0)he.current=h?.messages.at(-1)?.id??0;Ne(()=>{if(Q)F(!1)},[Q]),Ne(()=>{let R=P.current;if(R&&se.current!==void 0)R.scrollTop+=R.scrollHeight-se.current,se.current=void 0},[h?.messages[0]?.id]),o(()=>{let R=q.current;if(!R||typeof ResizeObserver>"u")return;let z=new ResizeObserver(M);return z.observe(R),()=>z.disconnect()},[M]);let be=E(async()=>{let R=O.getState().rooms[c]?.messages[0];if(!R)return!1;let z=await Ze.older(p,y,R.id,fn);return O.dispatch({type:"history_loaded",room:c,messages:z.messages,more:z.more,older:!0}),pr(c,z.reads,void 0),z.more},[c,p,y]),ce=a(void 0);o(()=>{let R=()=>{let z=Number(Ln().get("message"));ce.current=Number.isSafeInteger(z)&&z>0?z:void 0};return R(),window.addEventListener("popstate",R),()=>window.removeEventListener("popstate",R)},[]);let ye=h?.messages[0]?.id,Le=h?.more===!0;o(()=>{let R=ce.current,z=P.current;if(!Q||R===void 0||!z)return;let Y=z.querySelector(`[data-mid="${R}"]`);if(Y){ce.current=void 0,Y.scrollIntoView({block:"center"}),Ae(R),requestAnimationFrame(()=>z.dispatchEvent(new Event("scroll"))),setTimeout(()=>Ae(void 0),kt);return}if(ye!==void 0&&R<ye&&Le){let ie=0;(async()=>{if(ie+=1,!await be().catch(()=>!1)||ie>=wt)ce.current=void 0})()}},[Q,ye,Le,h?.messages.length,be]);let Me=(R,z={},Y)=>Ze.act(p,y,{action:R.id,...Y===void 0?{}:{card:Y},input:z}),We=(R,z)=>Me(R,z),Qe=(R)=>(z,Y)=>Me(z,Y,R);if(b||!Q&&!H&&!u)return e("section",{className:"room",children:n("div",{className:"page",children:[e(k,{children:t("This room is not available.")}),e("a",{className:"back",href:x("rooms"),children:t("Back to rooms")})]})});let ee=N?.access.send??[],ve=ee.length>1,Fe=ve&&te,xe=W&&ee.includes(W)?W:ee.includes("turn")?"turn":ee[0],Ie=Fe||xe==="turn",Ye=Ie?N?.wording?.turn?.placeholder??t("Ask AI…"):N?.wording?.note?.placeholder??t("Write an internal note…"),de=N?.header.title??c,Xe=h?.messages??[];return n("section",{className:"room",onDragOver:(R)=>{if(ee.length&&R.dataTransfer.types.includes("Files"))R.preventDefault()},onDrop:(R)=>{if(!ee.length||!R.dataTransfer.files.length)return;R.preventDefault(),X([...R.dataTransfer.files])},children:[n("header",{className:"room-head",children:[e("a",{className:"icon-button room-back",href:x("rooms"),"aria-label":t("Back to rooms"),children:e(s,{name:"back"})}),e(lt,{name:de,size:40}),n("div",{className:"room-title",children:[e("h1",{children:de}),e("span",{className:"room-status","data-working":h?.typing||void 0,children:h?.typing?t("Working…"):t("Host room")})]})]}),!V?n("div",{className:"offline-banner",role:"status",children:[e("span",{className:"spinner","aria-hidden":"true"}),t("Reconnecting… messages wait here until it is back.")]}):null,N?e(Rt,{header:N.header,run:We}):null,e("div",{className:"room-scroll",ref:P,onScroll:U,children:n("div",{className:"room-content",ref:q,children:[H?e(m,{message:H}):null,!Q&&!H?e(v,{}):null,h?.more?e("button",{type:"button",className:"secondary older",disabled:G,onClick:async()=>{A(!0),se.current=P.current?.scrollHeight;try{await be()}catch(R){se.current=void 0,f(l(R),"danger")}finally{A(!1)}},children:G?t("Loading…"):t("Load earlier messages")}):null,Q&&Xe.length===0?e(k,{children:t("No messages yet.")}):null,e(pe,{roomKey:c,enterAfter:he.current,quotable:!1,scroller:P,host:!0,highlight:Re}),h?.typing?e(On,{name:de,progress:h.progress}):null]})}),I?n("button",{type:"button",className:"to-end",onClick:()=>F(!0),children:[e(s,{name:"send",size:16,style:{transform:"rotate(180deg)"}}),t("Latest")]}):null,N?e(St,{room:c,run:Qe}):null,N&&ee.length===0?e("p",{className:"room-note",children:t("You can read this room but not write in it.")}):null,N&&ee.length>0?e(g,{children:e(At,{draftKey:c,name:de,placeholder:Ye,onAddressed:le,...ve?{above:e(Er,{on:Ie,label:N?.wording?.turn?.label??t("@AI"),...Fe?{locked:t("The message starts with @AI, so the knight answers.")}:{},onChange:(R)=>{let z=R?"turn":"note";$e=z,Z(z)}})}:{},limits:S,stoppable:Boolean(h?.stoppable),onSend:(R,z,Y)=>{if(ve&&Y){let ie=gn(R);i.say(c,ie===""&&z.length===0?R:ie,z,"turn")}else i.say(c,R,z,xe);F(!0)},onStop:()=>i.send({type:"stop",room:c}),...B?{incoming:B,onIncomingTaken:()=>X(void 0)}:{}},c)}):null]})}at();function ge({room:c}){let i=ze((u)=>u.unread[c]??0);if(i<=0)return null;return e("span",{className:"unread-mark",role:"img","aria-label":K(i,"{count} unread message","{count} unread messages"),children:i>99?"99+":i})}at();var Ct=6,Tt=250;function He(c){let{kind:i}=c,{timeZone:u}=_(),{now:p}=J(),y=d((A)=>A.connects),N=ze((A)=>A.lists[i]??0),[H,b]=r(""),[h,S]=r(""),[w,V]=r(),[P,q]=r(),[I,U]=r(),[M,F]=r(!1);o(()=>{let A=setTimeout(()=>S(H.trim()),Tt);return()=>clearTimeout(A)},[H]),o(()=>{let A=!0;return Ze.list(i,h||void 0).then((B)=>{if(!A)return;rn(Object.fromEntries(B.rooms.map((X)=>[X.key,X.unread??0]))),V(B.rooms),q(B.cursor),U(void 0)},(B)=>A&&U(l(B))),()=>{A=!1}},[i,h,y,N]);let G=async()=>{if(!P||M)return;F(!0);try{let A=await Ze.list(i,h||void 0,P);rn(Object.fromEntries(A.rooms.map((B)=>[B.key,B.unread??0]))),V((B)=>[...B??[],...A.rooms]),q(A.cursor)}catch(A){U(l(A))}finally{F(!1)}};return n("section",{className:"stack",children:[n("h2",{className:"section-title",children:[c.icon?e(s,{name:c.icon,size:14,className:"section-icon"}):null,c.label]}),w&&(w.length>=Ct||h||H)?e("input",{type:"search",className:"kind-filter",value:H,placeholder:t("Search {name}",{name:c.label}),"aria-label":t("Search {name}",{name:c.label}),onChange:(A)=>b(A.target.value)}):null,I?e(m,{message:I}):null,!w&&!I?n("div",{className:"stack","aria-busy":"true",children:[e("div",{className:"skeleton"}),e("div",{className:"skeleton"})]}):null,w&&w.length===0?e(k,{children:h?t("Nothing matches."):t("No rooms yet.")}):null,w&&w.length>0?e("ul",{className:"room-list",children:w.map((A)=>e("li",{children:n("a",{className:"room-row",href:x("room",A.key),"aria-current":A.key===c.active?"page":void 0,children:[n("span",{className:"kind-row-picture",children:[e(lt,{picture:A.picture,name:A.title,size:44}),A.attention?e("span",{className:"attention-dot",role:"img","aria-label":t("Needs attention")}):null]}),n("span",{className:"room-row-main",children:[n("span",{className:"room-row-top",children:[e("strong",{children:A.title}),e(ge,{room:A.key}),e("span",{className:"room-row-time",children:A.lastAt?Se(A.lastAt,p,u):""})]}),e("span",{className:"room-row-preview",children:e("span",{children:A.subtitle??""})})]}),e(s,{name:"chevron",size:16,className:"room-row-chevron"})]})},A.key))}):null,P?e("button",{type:"button",className:"secondary",disabled:M,onClick:G,children:M?t("Loading…"):t("Show more")}):null]})}function Be(c){return c.kinds.map((i)=>e(He,{kind:i.kind,label:i.label,...i.icon?{icon:i.icon}:{},active:c.active},i.kind))}function Ge(){let c=(_().pages??[]).filter((i)=>i.place==="settings");if(c.length===0)return null;return n("section",{className:"card stack",children:[e("h2",{children:t("More settings")}),c.map((i)=>n("a",{className:"menu-item menu-link",href:x("p",i.id),children:[e("span",{className:"menu-text",children:e("strong",{children:i.label})}),e(s,{name:"chevron",size:16})]},i.id))]})}export{Be as HostKinds,ct as HostPage,Lt as HostRoomPage,Ge as HostSettingsPages,pe as ReadLog,ge as UnreadMark};
|