pi-roundtable-web 0.25.0 → 0.26.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.
Files changed (222) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +145 -8
  3. package/dist/account-zk4efb87.css +102 -0
  4. package/dist/chunk-account-hw49gd0d.js +1 -0
  5. package/dist/chunk-action-menu-rm5cyqkj.js +1 -0
  6. package/dist/{chunk-agent-0pm9p3nn.js → chunk-agent-b017vswv.js} +1 -1
  7. package/dist/chunk-arranged-rooms-q5v3dm1r.js +1 -0
  8. package/dist/chunk-character-creator-5dxcvd16.js +1 -0
  9. package/dist/chunk-codeeditor-pyt09fwg.js +2 -0
  10. package/dist/chunk-confirm-521yqmta.js +1 -0
  11. package/dist/{chunk-connectors-anhghy3k.js → chunk-connectors-hrm06nx8.js} +1 -1
  12. package/dist/chunk-conversations-e26rrf01.js +1 -0
  13. package/dist/{chunk-drag-q4fx9b22.js → chunk-drag-v41gx2mc.js} +1 -1
  14. package/dist/{chunk-entry-he1embgp.js → chunk-entry-jxxb3ath.js} +1 -1
  15. package/dist/{chunk-folder-list-5cp8stna.js → chunk-folder-list-b97xk12b.js} +1 -1
  16. package/dist/chunk-folds-b8q7eags.js +1 -0
  17. package/dist/chunk-gate-8k61stsc.js +1 -0
  18. package/dist/chunk-group-scene-dx6wt19m.js +1 -0
  19. package/dist/chunk-group-table-e4jr8r3a.js +1 -0
  20. package/dist/chunk-host-state-g7e7c0k5.js +1 -0
  21. package/dist/chunk-host-ui-x7k6n07v.js +939 -0
  22. package/dist/{chunk-index-bvfqjh77.js → chunk-index-014rjv9k.js} +2 -2
  23. package/dist/{chunk-index-d5abvq7v.js → chunk-index-2d0kg096.js} +2 -2
  24. package/dist/chunk-index-2qd81wbx.js +2 -0
  25. package/dist/{chunk-index-9b1kt7qw.css → chunk-index-2stynxw6.css} +1 -1
  26. package/dist/{chunk-index-gpkzhq1g.js → chunk-index-459drsft.js} +2 -2
  27. package/dist/chunk-index-4mfj596y.js +2 -0
  28. package/dist/{chunk-index-18gxy79n.js → chunk-index-66nskrdj.js} +2 -2
  29. package/dist/chunk-index-awx6nnta.js +2 -0
  30. package/dist/chunk-index-bbsytycb.js +2 -0
  31. package/dist/chunk-index-c07p8k0x.js +4 -0
  32. package/dist/chunk-index-cq1e9xdz.js +2 -0
  33. package/dist/chunk-index-d1prgfbp.js +2 -0
  34. package/dist/chunk-index-dhpt8qr9.js +2 -0
  35. package/dist/chunk-index-e5sd30xy.js +2 -0
  36. package/dist/chunk-index-g351921r.js +1 -0
  37. package/dist/chunk-index-hby0ap91.js +2 -0
  38. package/dist/chunk-index-hssjbr1k.js +2 -0
  39. package/dist/chunk-index-k2qq1gdj.js +2 -0
  40. package/dist/chunk-index-ke9ynm0n.js +2 -0
  41. package/dist/{chunk-index-s681nny9.js → chunk-index-km40bhsz.js} +2 -2
  42. package/dist/chunk-index-kpscvg85.js +2 -0
  43. package/dist/chunk-index-m0d100mg.js +2 -0
  44. package/dist/chunk-index-mb72snk9.js +2 -0
  45. package/dist/chunk-index-mjqqver5.js +4 -0
  46. package/dist/{chunk-index-zfd00hwb.js → chunk-index-nqfkwkfp.js} +2 -2
  47. package/dist/chunk-index-nwqk447w.js +2 -0
  48. package/dist/{chunk-index-wmbmmrd4.js → chunk-index-pcfhpm8v.js} +4 -4
  49. package/dist/chunk-index-q8h8xzbm.js +2 -0
  50. package/dist/chunk-index-r5vszgfs.js +2 -0
  51. package/dist/{chunk-index-27qca4mr.js → chunk-index-rhtvcbsq.js} +2 -2
  52. package/dist/chunk-index-rjv7vrwd.js +13 -0
  53. package/dist/chunk-index-v23m38p6.js +50 -0
  54. package/dist/chunk-index-va0g7d88.js +1 -0
  55. package/dist/{chunk-index-krtk6nn2.js → chunk-index-wnjp6wv0.js} +2 -2
  56. package/dist/chunk-index-xgkd15n3.js +2 -0
  57. package/dist/{chunk-index-9jqcskb4.js → chunk-index-y8rnq8zf.js} +5 -5
  58. package/dist/chunk-index-z3k18atc.js +2 -0
  59. package/dist/chunk-lang-css-6bepqpnx.js +1 -0
  60. package/dist/{chunk-lang-dockerfile-d5mzxs60.js → chunk-lang-dockerfile-hrav55t7.js} +1 -1
  61. package/dist/{chunk-lang-go-830fmhba.js → chunk-lang-go-x9ahv6e5.js} +3 -3
  62. package/dist/chunk-lang-html-8jc72zt4.js +1 -0
  63. package/dist/chunk-lang-javascript-2p2qtbnf.js +1 -0
  64. package/dist/{chunk-lang-json-5eaarz7j.js → chunk-lang-json-hsemyd0r.js} +1 -1
  65. package/dist/chunk-lang-markdown-zkwb4c9n.js +6 -0
  66. package/dist/{chunk-lang-python-fjw84w10.js → chunk-lang-python-tewx7006.js} +2 -2
  67. package/dist/{chunk-lang-rust-5rbp2zdk.js → chunk-lang-rust-0ydx84s1.js} +1 -1
  68. package/dist/{chunk-lang-shell-vzagpym3.js → chunk-lang-shell-gq1tmdz4.js} +1 -1
  69. package/dist/{chunk-lang-sql-0c2w9c2y.js → chunk-lang-sql-xt1qyycg.js} +2 -2
  70. package/dist/{chunk-lang-toml-yr9fv6eb.js → chunk-lang-toml-0hamc5fc.js} +1 -1
  71. package/dist/chunk-lang-typescript-82xf7z2e.js +1 -0
  72. package/dist/{chunk-lang-xml-eze08p42.js → chunk-lang-xml-wf6h5pt2.js} +1 -1
  73. package/dist/{chunk-lang-yaml-c4b6ft3y.js → chunk-lang-yaml-7vk521h1.js} +1 -1
  74. package/dist/chunk-layout-actions-zh7bezk7.js +1 -0
  75. package/dist/{chunk-menu-items-jrwxycr1.js → chunk-menu-items-1n9qargb.js} +2 -2
  76. package/dist/chunk-notes-t15bh04m.js +1 -0
  77. package/dist/chunk-notice-bell-w3y0h0sr.js +1 -0
  78. package/dist/chunk-notices-fa3g7qze.js +1 -0
  79. package/dist/chunk-onboarding-34v3nr17.js +1 -0
  80. package/dist/chunk-overview-km5vq375.js +1 -0
  81. package/dist/chunk-palette-a8txdgd0.js +1 -0
  82. package/dist/chunk-placement-items-wgaxsbvs.js +1 -0
  83. package/dist/chunk-profile-ypxdbsk1.js +1 -0
  84. package/dist/chunk-prompt-history-wm9dsy6s.js +1 -0
  85. package/dist/chunk-prompts-7mhhq7zs.js +1 -0
  86. package/dist/chunk-room-confirms-t11a1gsw.js +1 -0
  87. package/dist/chunk-room-menu-2tm2xtfx.js +1 -0
  88. package/dist/chunk-rooms-menu-button-wxnsxjwc.js +1 -0
  89. package/dist/chunk-schedules-2ft6xxyw.js +1 -0
  90. package/dist/{chunk-seat-menu-jv4s7hmj.js → chunk-seat-menu-d3npdtx1.js} +1 -1
  91. package/dist/chunk-sheet-hosts-vngvp7wv.js +1 -0
  92. package/dist/chunk-skill-editor-65n2hsq4.js +8 -0
  93. package/dist/chunk-skills-shkdwes8.js +1 -0
  94. package/dist/chunk-switcher-list-g6hhmr1t.js +1 -0
  95. package/dist/chunk-table-1b6bsq2y.js +1 -0
  96. package/dist/chunk-table-seats-vy1qhdks.js +1 -0
  97. package/dist/{chunk-table2d-4sje1fr0.js → chunk-table2d-n26b7gd0.js} +1 -1
  98. package/dist/{chunk-table3d-h64skazp.js → chunk-table3d-8aysyf56.js} +12 -12
  99. package/dist/chunk-transcript-355faceq.js +1 -0
  100. package/dist/chunk-where-j5qdt8a4.js +1 -0
  101. package/dist/chunk-workspace-vrbs6zx1.js +1 -0
  102. package/dist/chunk-zh-tw-zeg600bk.js +1 -0
  103. package/dist/index.html +1 -1
  104. package/dist/sw.js +1 -1
  105. package/package.json +5 -4
  106. package/src/api-types.ts +301 -4
  107. package/src/app/app.ts +196 -32
  108. package/src/app/desk.ts +47 -22
  109. package/src/app/files.ts +73 -7
  110. package/src/app/presence.ts +2 -2
  111. package/src/app/protocol.ts +63 -1
  112. package/src/app/room-log.ts +141 -14
  113. package/src/app/routes.ts +124 -26
  114. package/src/app/socket.ts +309 -77
  115. package/src/app/sockets.ts +108 -20
  116. package/src/app/surface.ts +72 -36
  117. package/src/app/uploads.ts +33 -7
  118. package/src/auth/authenticator.ts +71 -8
  119. package/src/auth/next.ts +52 -0
  120. package/src/auth/oidc-pages.ts +60 -0
  121. package/src/auth/oidc.ts +611 -0
  122. package/src/auth/sessions.ts +193 -0
  123. package/src/authz.ts +172 -0
  124. package/src/console-api.ts +122 -25
  125. package/src/console-server.ts +70 -6
  126. package/src/gate.ts +90 -0
  127. package/src/host/access.ts +161 -0
  128. package/src/host/cards.ts +99 -0
  129. package/src/host/context.ts +141 -0
  130. package/src/host/forms.ts +237 -0
  131. package/src/host/frames.ts +342 -0
  132. package/src/host/host-app.ts +176 -0
  133. package/src/host/host-context.ts +49 -0
  134. package/src/host/host-routes.ts +363 -0
  135. package/src/host/pages.ts +266 -0
  136. package/src/host/reads.ts +155 -0
  137. package/src/host/retention.ts +41 -0
  138. package/src/host/room-views.ts +137 -0
  139. package/src/host/rooms-service.ts +414 -0
  140. package/src/host/stored-json.ts +13 -0
  141. package/src/host/views.ts +103 -0
  142. package/src/i18n/zh-tw.ts +132 -0
  143. package/src/notices/api.ts +43 -0
  144. package/src/notices/mount.ts +292 -0
  145. package/src/notices/service.ts +294 -0
  146. package/src/notices/store.ts +298 -0
  147. package/src/notices/urls.ts +38 -0
  148. package/src/onboarding/api.ts +32 -0
  149. package/src/onboarding/service.ts +149 -0
  150. package/src/onboarding/steps.ts +75 -0
  151. package/src/onboarding/waivers.ts +40 -0
  152. package/src/options.ts +498 -34
  153. package/src/profile/api.ts +175 -0
  154. package/src/profile/links.ts +162 -0
  155. package/src/push/api.ts +189 -52
  156. package/src/push/dispatch.ts +156 -0
  157. package/src/push/drain.ts +139 -0
  158. package/src/push/outbox.ts +218 -0
  159. package/src/push/prefs.ts +118 -0
  160. package/src/push/sender.ts +7 -2
  161. package/src/push/triggers.ts +56 -5
  162. package/src/push/vapid.ts +19 -0
  163. package/src/push/web-push-transport.ts +106 -0
  164. package/src/push-sender/index.ts +14 -0
  165. package/src/push-sender/run.ts +118 -0
  166. package/src/push-sender/session.ts +54 -0
  167. package/src/visitors.ts +94 -6
  168. package/src/web-app.ts +674 -0
  169. package/src/web-plugin.ts +268 -26
  170. package/dist/chunk-action-menu-qe839g4b.js +0 -1
  171. package/dist/chunk-arranged-rooms-enpfswmg.js +0 -1
  172. package/dist/chunk-character-creator-6yf29xwx.js +0 -1
  173. package/dist/chunk-codeeditor-gdbdg7rp.js +0 -2
  174. package/dist/chunk-confirm-xrw7d732.js +0 -1
  175. package/dist/chunk-conversations-ry228aes.js +0 -1
  176. package/dist/chunk-folds-hff104tk.js +0 -1
  177. package/dist/chunk-group-scene-h228jdat.js +0 -1
  178. package/dist/chunk-index-0p5h2kdz.js +0 -2
  179. package/dist/chunk-index-0pt08yd9.js +0 -1
  180. package/dist/chunk-index-12bw9yj8.js +0 -2
  181. package/dist/chunk-index-2ad17eh4.js +0 -2
  182. package/dist/chunk-index-31wh5twj.js +0 -52
  183. package/dist/chunk-index-4dy94pbz.js +0 -2
  184. package/dist/chunk-index-4ecjtdy8.js +0 -13
  185. package/dist/chunk-index-4v1b7ks9.js +0 -2
  186. package/dist/chunk-index-5d8yjj4m.js +0 -2
  187. package/dist/chunk-index-89ajmxh7.js +0 -2
  188. package/dist/chunk-index-b9ny4623.js +0 -2
  189. package/dist/chunk-index-e1dr6g10.js +0 -2
  190. package/dist/chunk-index-hk3xyy20.js +0 -2
  191. package/dist/chunk-index-jm23vn03.js +0 -4
  192. package/dist/chunk-index-k7gh0jvz.js +0 -2
  193. package/dist/chunk-index-ky42ev0b.js +0 -2
  194. package/dist/chunk-index-pa2yyqh0.js +0 -2
  195. package/dist/chunk-index-pcvt668q.js +0 -2
  196. package/dist/chunk-index-pqw27eye.js +0 -1
  197. package/dist/chunk-index-ymbjrsp6.js +0 -2
  198. package/dist/chunk-lang-css-t85r8rz0.js +0 -1
  199. package/dist/chunk-lang-html-n6jparge.js +0 -1
  200. package/dist/chunk-lang-javascript-xj00cp97.js +0 -1
  201. package/dist/chunk-lang-markdown-zxx8eke8.js +0 -6
  202. package/dist/chunk-lang-typescript-8f6yywt3.js +0 -1
  203. package/dist/chunk-layout-actions-bv0chj41.js +0 -1
  204. package/dist/chunk-notes-9b7pgqfe.js +0 -1
  205. package/dist/chunk-overview-8yw71esz.js +0 -1
  206. package/dist/chunk-palette-frms7axe.js +0 -1
  207. package/dist/chunk-placement-items-fvfy9m0y.js +0 -1
  208. package/dist/chunk-prompt-history-yrqehads.js +0 -1
  209. package/dist/chunk-prompts-g6609tqx.js +0 -1
  210. package/dist/chunk-room-confirms-0a2y0925.js +0 -1
  211. package/dist/chunk-room-menu-g11q97br.js +0 -1
  212. package/dist/chunk-rooms-menu-button-h9qge48n.js +0 -1
  213. package/dist/chunk-schedules-ezmacrbj.js +0 -1
  214. package/dist/chunk-sheet-hosts-b0azyfhb.js +0 -1
  215. package/dist/chunk-skill-editor-h6k6whwg.js +0 -8
  216. package/dist/chunk-skills-gqcfhq56.js +0 -1
  217. package/dist/chunk-switcher-list-mcpamqnj.js +0 -1
  218. package/dist/chunk-table-s8cde1xz.js +0 -1
  219. package/dist/chunk-table-seats-wqkjn8bc.js +0 -1
  220. package/dist/chunk-transcript-c59c6mpm.js +0 -1
  221. package/dist/chunk-workspace-0cyspkk4.js +0 -1
  222. package/dist/chunk-zh-tw-nc93jm10.js +0 -1
@@ -1,2 +0,0 @@
1
- import{s,vn,l,r,t,p,e,n,a,He,d,_t,Q,oe,In,$e,at,Bn,ht,qn,bi,Fn,Gn,Zn}from"./chunk-index-31wh5twj.js";import{N}from"./chunk-index-5d8yjj4m.js";function K(o,i,c,m){if(!o)return;let u=o.pending.at(-1);if(u&&!u.failed)return{id:`p${u.id}`,who:"owner",author:i,text:u.text,files:[],live:!1,pending:!0};if(o.typing&&o.progress.text!==""){let h=o.agent??m;return{id:`s${o.messages.at(-1)?.id??0}`,who:"agent",agent:h,author:c(h),text:o.progress.text,files:[],live:!0,pending:!1}}let g=o.live.at(-1);if(g)return{id:`l${g.live??g.id}`,who:"agent",agent:g.agent,author:g.author,text:g.text,files:g.files,live:!0,pending:!1};for(let h=o.messages.length-1;h>=0;h-=1){let f=o.messages[h];if(!f||f.kind==="system")continue;return{id:`m${f.id}`,who:f.kind==="owner"?"owner":"agent",agent:f.agent,author:f.author,text:f.text,files:f.files,live:!1,pending:!1}}return}function B(o,i,c){return o.cardOrder.map((u)=>({id:u,card:o.cards[u]})).filter((u)=>u.card?.room===i).filter((u)=>u.card.outcome===void 0||c===void 0||u.card.after>=c)}var W=90;function Z(o,i,c,m={}){if(m.instant)return i;let u=o+c/1000*(m.cps??W);return Math.min(i,Math.max(o,u))}function O(){let o,i="",c=0,m=0;return{get shown(){return Math.floor(m)},get done(){return Math.floor(m)>=c},feed(u,g){if(u!==o){let h=i!==""&&(g.startsWith(i)||i.startsWith(g));if(o=u,!h)m=0}if(i=g,c=Array.from(g).length,m>c)m=c},step(u,g){m=Z(m,c,u,{instant:g})},finish(){m=c}}}var F=(o,i)=>Array.from(o).slice(0,i).join("");function ji(o,i){if(!o)return null;let c=i.find((m)=>m.name===o||m.key===o);return c?c.name:null}function Ki(o,i){if(!o||o.who!=="agent"||o.agent===void 0)return null;return i.includes(o.agent)?o.agent:null}function Ji(o,i,c){return c&&c.lineId===i?c.member:o}function j(o){let i=l(O()),[,c]=vn((h)=>h+1,0),m=He();i.current.feed(o?.id??"",o?.text??"");let u=o?.text??"",g=o?.id;return s(()=>{let h=i.current;if(m||u===""||g===void 0){h.finish(),c();return}let f=performance.now(),v=0,w=()=>{let x=performance.now();if(h.step(x-f,!1),f=x,c(),!h.done)v=requestAnimationFrame(w)};if(!h.done)v=requestAnimationFrame(w);return()=>cancelAnimationFrame(v)},[m,g,u]),{shown:i.current.shown,done:i.current.done,finish(){i.current.finish(),c()}}}function fi(o){let i=d((f)=>f.rooms[o]),c=d((f)=>f.principal?.name)??t("You"),m=d((f)=>{let v={};for(let w of Object.values(f.rooms))if(w.view?.kind==="agent")v[w.view.name]=w.view.displayName;return v}),u=i?.view,h=K(i,c,(f)=>(f===void 0?void 0:m[f])??f??u?.displayName??o,u?.kind==="agent"?u.name:void 0);return{room:i,view:u,line:h}}function z(o){let{loaded:i,error:c}=o,m=d((f)=>f.rooms[o.roomKey]),[u,g]=r(!1),h=l(null);return s(()=>{if(o.open&&i)h.current?.scrollTo({top:h.current.scrollHeight})},[o.open,i]),e(N,{open:o.open,title:`${o.name} · ${t("Log")}`,onClose:o.onClose,children:n("div",{className:"scene-log",ref:h,children:[c?e("p",{className:"failure-text",children:c}):null,m?.more?e("button",{type:"button",className:"secondary older",disabled:u,onClick:async()=>{g(!0),await Gn(o.roomKey),g(!1)},children:u?t("Loading…"):t("Load earlier messages")}):null,e(Zn,{roomKey:o.roomKey,enterAfter:void 0,quotable:!0})]})})}function gn(o){let{roomKey:i}=o,c=_t(),m=Q(),u=Fn(i),g=o.streams!==!1;s(()=>{if(!g)return;return c.focus(i),()=>c.focus(void 0)},[c,i,g]);let h=d((y)=>y.limits),f=d((y)=>B(y,i,y.rooms[i]?.messages.at(-1)?.id)),v=at(),{room:w,view:x,line:b}=fi(i),C=x?.kind==="agent"?x:void 0,k=C?C.name:b?.who==="agent"?b.agent:void 0,E=$e(k?v[k]:void 0),S=C?C.displayName:b?b.author:x?.displayName??i,{shown:D,done:M,finish:P}=j(b),[T,A]=r(!1),[R,H]=r(!1),I=b?.who==="owner"&&!C?{["--agent-accent"]:"var(--accent)"}:E,q=Boolean(w?.typing)&&(!b||b.who==="owner"),V=b?F(b.text,D):"";return n("section",{className:"scene-box","data-open":o.open||void 0,"data-collapsed":R||void 0,"data-who":b?.who,style:I,"aria-label":t("Log"),children:[n("header",{className:"scene-tab",children:[C||b?.who==="agent"?e("span",{className:"scene-chip",children:e(oe,{spec:k?v[k]:void 0,name:k??S,size:34,live:!1})}):null,e("strong",{className:"scene-name",children:S}),n("span",{className:"scene-tools",children:[o.onBack?e("button",{type:"button",className:"icon-button","aria-label":t("Back to the whole table"),onClick:o.onBack,children:e(a,{name:"back"})}):null,o.onMenu?e("button",{type:"button",className:"icon-button scene-more","aria-label":t("More"),"aria-haspopup":"menu",onClick:(y)=>o.onMenu?.(y.currentTarget),children:e(a,{name:"more"})}):null,n("button",{type:"button",className:"icon-button scene-log-button","aria-label":t("Log"),"aria-haspopup":"dialog",onClick:()=>A(!0),children:[e(a,{name:"conversations"}),e("span",{children:t("Log")})]}),e("button",{type:"button",className:"icon-button scene-collapse","aria-label":R?t("Show the message box"):t("Hide the message box"),"aria-expanded":!R,onClick:()=>H((y)=>!y),children:e(a,{name:"menu"})})]})]}),n("div",{className:"scene-body",children:[e("div",{className:"scene-line","data-live":b?.live||void 0,"aria-live":"polite",...M?{}:{role:"button",tabIndex:0,title:t("Tap to show the whole message"),onClick:P,onKeyDown:(y)=>{if(y.key==="Enter"||y.key===" ")y.preventDefault(),P()}},children:b?n(p,{children:[C&&b.who==="owner"?e("span",{className:"scene-from",children:b.author}):null,e(ht,{source:V}),M?e(bi,{files:b.files}):null]}):null}),q&&w?e(Bn,{name:S,progress:w.progress}):null,f.map(({id:y,card:L})=>e("div",{className:"scene-card",children:e(qn,{card:L,timeZone:m.timeZone})},y))]}),x?.readOnly?null:e("div",{className:"scene-composer",children:e(In,{draftKey:i,name:x?.displayName??i,limits:h,stoppable:Boolean(w?.stoppable),onSend:(y,L)=>c.say(i,y,L),onStop:()=>c.send({type:"stop",room:i})},i)}),e(z,{roomKey:i,open:T,loaded:u.loaded,error:u.error,name:x?.displayName??i,onClose:()=>A(!1)})]})}
2
- export{ji,Ki,Ji,fi,gn};