openpond 0.0.67 → 0.0.68

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 (173) hide show
  1. package/dist/chunks/{actions-command-DZ6D7JTO.js → actions-command-DLOKFA34.js} +2 -1
  2. package/dist/chunks/{app-layer-MAATABDM.js → app-layer-K7NAOLDL.js} +4 -3
  3. package/dist/chunks/{app-server-runtime-CJFOO54B.js → app-server-runtime-OFZZIWAB.js} +9 -8
  4. package/dist/chunks/{apps-L23POEUT.js → apps-5VSVJLM7.js} +4 -3
  5. package/dist/chunks/{chunk-DEEQG5MY.js → chunk-HFQHD35D.js} +1 -1
  6. package/dist/chunks/{chunk-MHUN6LXO.js → chunk-HNY7OSDY.js} +1 -1
  7. package/dist/chunks/{chunk-7OQFWODA.js → chunk-IG72OKNB.js} +39883 -23453
  8. package/dist/chunks/{chunk-2N57HMVR.js → chunk-KLD7NT5J.js} +1 -1
  9. package/dist/chunks/{chunk-WYDVQOBL.js → chunk-MLWNI3WG.js} +1352 -3538
  10. package/dist/chunks/{chunk-RN7MVPC6.js → chunk-MUS7KPXK.js} +1643 -1100
  11. package/dist/chunks/{chunk-EJURKADM.js → chunk-N6FKRVAT.js} +1 -1
  12. package/dist/chunks/{chunk-XIFRFL4T.js → chunk-NA4L2HQM.js} +33 -33
  13. package/dist/chunks/{chunk-CWCMYSX2.js → chunk-OOJP442J.js} +19 -3
  14. package/dist/chunks/{chunk-BPII37IS.js → chunk-OQLYO7TA.js} +584 -77
  15. package/dist/chunks/{chunk-J3PSR6F6.js → chunk-PSGEH4FC.js} +3 -3
  16. package/dist/chunks/{chunk-PLDCQVNW.js → chunk-TBEBLKCQ.js} +2 -2
  17. package/dist/chunks/{chunk-42WUHGKD.js → chunk-TSDVA7QP.js} +14 -3
  18. package/dist/chunks/{chunk-Z3SXHGOC.js → chunk-WEB37YVJ.js} +1 -1
  19. package/dist/chunks/chunk-X7ZG4TSW.js +3063 -0
  20. package/dist/chunks/{chunk-BYAPLT37.js → chunk-Z2ZWHU7O.js} +4 -2
  21. package/dist/chunks/{cli-6N2QZCOF.js → cli-6WFY2ULA.js} +8 -7
  22. package/dist/chunks/{core-commands-5TW5I3Z6.js → core-commands-HQ3HL34W.js} +5 -4
  23. package/dist/chunks/{desktop-test-JG6XDUTT.js → desktop-test-RU6SRARQ.js} +4 -3
  24. package/dist/chunks/{extension-UUM4ELAF.js → extension-4KFKWMC4.js} +554 -70
  25. package/dist/chunks/{help-JFQVVETR.js → help-ZUCPOR22.js} +1 -1
  26. package/dist/chunks/{opchat-3772JCGJ.js → opchat-AZX7SYM7.js} +4 -3
  27. package/dist/chunks/{organizations-USWBONDO.js → organizations-GV6Z7G4J.js} +7 -6
  28. package/dist/chunks/{profile-2MYIXRUK.js → profile-TSLGZPUI.js} +8 -7
  29. package/dist/chunks/{project-agent-VDKGFG5V.js → project-agent-SHIQZWPY.js} +7 -6
  30. package/dist/chunks/{sandbox-command-M5W3VWVP.js → sandbox-command-TRS66NUT.js} +4 -3
  31. package/dist/chunks/{sandbox-template-25SKARVM.js → sandbox-template-RVWXD5O3.js} +7 -6
  32. package/dist/chunks/{src-KYP4COYD.js → src-Q3BOITLJ.js} +5 -4
  33. package/dist/chunks/{src-7RDE5SYD.js → src-VUJ6EBOU.js} +3863 -762
  34. package/dist/chunks/{teams-bot-BJJISVOG.js → teams-bot-CLCMGBW5.js} +4 -3
  35. package/dist/chunks/{workspaces-EQTHCFVV.js → workspaces-IIPITOCV.js} +2 -2
  36. package/dist/cli.js +13 -13
  37. package/dist/client.d.ts +1 -1
  38. package/dist/hosted-chat.d.ts +5 -0
  39. package/dist/index.js +14543 -14121
  40. package/dist/skills/openpond-refiner-authoring/SKILL.md +29 -0
  41. package/dist/skills/openpond-refiner-authoring/references/core-boundary.md +5 -0
  42. package/dist/skills/openpond-refiner-authoring/references/review-profile.md +7 -0
  43. package/dist/skills/openpond-refiner-authoring/references/validation-and-activation.md +5 -0
  44. package/dist/web/assets/App-D7vhbyMO.js +171 -0
  45. package/dist/web/assets/{AppDialog-B8HYaM0m.js → AppDialog-sLTPiFGX.js} +1 -1
  46. package/dist/web/assets/AppTerminalPanel-B0NCyY4L.js +2 -0
  47. package/dist/web/assets/AppsView-CzbB5pXp.css +1 -0
  48. package/dist/web/assets/AppsView-DyDyktK2.js +1 -0
  49. package/dist/web/assets/BrowserSidebar-C-PQxmQa.js +1 -0
  50. package/dist/web/assets/CartesianChart-CnerMhTr.js +53 -0
  51. package/dist/web/assets/CollaborationTabs-BfVlyLmR.css +1 -0
  52. package/dist/web/assets/CollaborationTabs-DJEp6dux.js +1 -0
  53. package/dist/web/assets/CommandMenu-B5lGz8rG.js +1 -0
  54. package/dist/web/assets/CommunityView-DQJaHBa5.js +1 -0
  55. package/dist/web/assets/ComposerCreateImproveStrip-7hBR2bdV.js +1 -0
  56. package/dist/web/assets/GetStartedView-l1Cz1e7g.js +1 -0
  57. package/dist/web/assets/LabModelVersionDetailPage-D2PfI3-r.js +1 -0
  58. package/dist/web/assets/LabSkillSidebar-jlX5I_D5.js +1 -0
  59. package/dist/web/assets/LabsRoute-D3w6nPSa.css +1 -0
  60. package/dist/web/assets/LabsRoute-VOgPrf94.js +2 -0
  61. package/dist/web/assets/MainChatThread-B1nXTMAf.js +2 -0
  62. package/dist/web/assets/MainPane-DxVcMBFo.js +6 -0
  63. package/dist/web/assets/MarkdownText-B3njGyZS.js +9 -0
  64. package/dist/web/assets/{Messages-CWoU5OZ2.js → Messages-yBS4UHWl.js} +6 -6
  65. package/dist/web/assets/NativeSkillSidebar-DaD52aW1.js +1 -0
  66. package/dist/web/assets/NewExperienceSwitcher-C7X_K5Xl.js +1 -0
  67. package/dist/web/assets/NewProjectDialog-NuPVF2Y7.js +1 -0
  68. package/dist/web/assets/OutputsPage-Bmof4Tdv.js +1 -0
  69. package/dist/web/assets/ProjectsPage-D7opg6ff.js +1 -0
  70. package/dist/web/assets/ProjectsPage-DdG-U9ZW.css +1 -0
  71. package/dist/web/assets/RightChatPanelStack-BzsNeSwx.js +1 -0
  72. package/dist/web/assets/RightSidebarHomePanel-D8dAMHcp.js +1 -0
  73. package/dist/web/assets/ScheduledWorkPage-Dkjhof6t.js +1 -0
  74. package/dist/web/assets/SettingsView-CWTAUy2b.js +6 -0
  75. package/dist/web/assets/{TeamChatView-Cst9bXqE.js → TeamChatView-DIxvrgai.js} +2 -2
  76. package/dist/web/assets/{TerminalOverlay-72oJPCbi.js → TerminalOverlay-Cd0Sp9LD.js} +3 -3
  77. package/dist/web/assets/TrainingCreationPanel-DACYaOny.js +1 -0
  78. package/dist/web/assets/TrainingDraftPanel-DBWJW8ZD.js +1 -0
  79. package/dist/web/assets/UsageSettingsSection-B3sbqaUV.js +7 -0
  80. package/dist/web/assets/UsageSettingsSection-Csg3diiE.css +1 -0
  81. package/dist/web/assets/{MainPane-BfVDe9f7.css → WorkSidebarPanel-Bky_Rqcx.css} +1 -1
  82. package/dist/web/assets/WorkSidebarPanel-D4yXQ64j.js +1 -0
  83. package/dist/web/assets/WorkspaceDiffPanel-CBgPVF1P.js +14 -0
  84. package/dist/web/assets/WorkspaceEnvironmentMenu-Bp-9V7Jq.js +32 -0
  85. package/dist/web/assets/WorkspaceGitDialogs-BxU5Uhpz.js +1 -0
  86. package/dist/web/assets/{WorkspaceMonacoEditor-CxD40rNT.js → WorkspaceMonacoEditor-Db_sWYFt.js} +3 -3
  87. package/dist/web/assets/activity-BzKyRXbd.js +1 -0
  88. package/dist/web/assets/arrow-up-right-DaIxkG4K.js +1 -0
  89. package/dist/web/assets/chat-file-links-wORSEipQ.js +1 -0
  90. package/dist/web/assets/chevron-up-C8-qSzck.js +1 -0
  91. package/dist/web/assets/clipboard-BTRsPPaK.js +1 -0
  92. package/dist/web/assets/cloud-upload-BYXHJoKd.js +1 -0
  93. package/dist/web/assets/{cssMode-CJPZShEy.js → cssMode-Be446Wgi.js} +1 -1
  94. package/dist/web/assets/desktop-files-BQj1J-ob.js +1 -0
  95. package/dist/web/assets/figtree-latin-CEHu_veL.woff2 +0 -0
  96. package/dist/web/assets/folder-open-KtKTXn4w.js +1 -0
  97. package/dist/web/assets/folder-plus-9-Xcli22.js +1 -0
  98. package/dist/web/assets/git-branch-CLGxzDjJ.js +1 -0
  99. package/dist/web/assets/git-commit-horizontal-CmVYsUnh.js +1 -0
  100. package/dist/web/assets/{htmlMode-fp60PdLB.js → htmlMode-DTjTyBB_.js} +1 -1
  101. package/dist/web/assets/index-AzqEDIEY.css +1 -0
  102. package/dist/web/assets/index-C5uP_Gug.js +1 -0
  103. package/dist/web/assets/index-DqWw2ymf.js +9 -0
  104. package/dist/web/assets/info-BLmP4K0e.js +1 -0
  105. package/dist/web/assets/{jsonMode-9tQDt87U.js → jsonMode-Z-2iim-u.js} +1 -1
  106. package/dist/web/assets/{lspLanguageFeatures-DhOXsUmI.js → lspLanguageFeatures-Cr2iCfG2.js} +1 -1
  107. package/dist/web/assets/minimize-2-CWA6iO3r.js +1 -0
  108. package/dist/web/assets/{monaco.contribution-D3sQBkAF.js → monaco.contribution-BtMcDmCM.js} +2 -2
  109. package/dist/web/assets/{monaco.contribution-DRNDpuUQ.js → monaco.contribution-Cac9eBUk.js} +2 -2
  110. package/dist/web/assets/{monaco.contribution-BCc7daQX.js → monaco.contribution-NtjNqMdv.js} +2 -2
  111. package/dist/web/assets/{monaco.contribution-BPct5K1-.js → monaco.contribution-YhqlKmCp.js} +2 -2
  112. package/dist/web/assets/play-DYSQH2rx.js +1 -0
  113. package/dist/web/assets/{python-CO5ats2F.js → python-CNqOWXNv.js} +1 -1
  114. package/dist/web/assets/refresh-cw-DMysDKOA.js +1 -0
  115. package/dist/web/assets/save-HPZ4ZiDi.js +1 -0
  116. package/dist/web/assets/square-D-mpY1a-.js +1 -0
  117. package/dist/web/assets/{toggleHighContrast-7mdj7cLQ.js → toggleHighContrast-Bccdn3Qi.js} +1 -1
  118. package/dist/web/assets/{training-BQVNUTZA.css → training-daZlCtKV.css} +1 -1
  119. package/dist/web/assets/{training-model-data-V8276E5q.js → training-model-data-CKOkpBBL.js} +1 -1
  120. package/dist/web/assets/{tsMode-qx-y8781.js → tsMode-BhcKJxhG.js} +1 -1
  121. package/dist/web/assets/upload-DE7xaWVj.js +1 -0
  122. package/dist/web/assets/useLocalAgentSchedules-C0J--_MD.js +1 -0
  123. package/dist/web/assets/wifi-off-CrCfhll9.js +1 -0
  124. package/dist/web/assets/{workers-DC-vdMwa.js → workers-DCaGzukk.js} +1 -1
  125. package/dist/web/assets/{yaml-Bu611qJb.js → yaml-CCfH63KB.js} +1 -1
  126. package/dist/web/index.html +2 -2
  127. package/package.json +1 -1
  128. package/dist/web/assets/AppsView-DIhprTIC.css +0 -1
  129. package/dist/web/assets/AppsView-DzVZTM0y.js +0 -1
  130. package/dist/web/assets/BrowserSidebar-BobBdHTm.js +0 -1
  131. package/dist/web/assets/CommandMenu-pp69WTbf.js +0 -1
  132. package/dist/web/assets/CommunityView-D1V7y3l5.js +0 -1
  133. package/dist/web/assets/ComposerCreateImproveStrip-Dv5RKQaG.js +0 -1
  134. package/dist/web/assets/GetStartedView-DXmHN_BA.js +0 -1
  135. package/dist/web/assets/LabModelVersionDetailPage-BDN4AQVt.js +0 -1
  136. package/dist/web/assets/LabSkillSidebar-DYR_pq0Q.js +0 -1
  137. package/dist/web/assets/LabsRoute-CFXaPC-i.js +0 -3
  138. package/dist/web/assets/LabsRoute-DDTgtCul.css +0 -1
  139. package/dist/web/assets/MainChatThread-C1XrdeAC.js +0 -2
  140. package/dist/web/assets/MainPane-D8Mu6Nf3.js +0 -6
  141. package/dist/web/assets/MarkdownText-D5-tAHVZ.js +0 -9
  142. package/dist/web/assets/NativeSkillSidebar-cKgCM5s9.js +0 -1
  143. package/dist/web/assets/NewProjectDialog-B4wrkUrZ.js +0 -1
  144. package/dist/web/assets/OutputsPage-DoJz_FcJ.js +0 -1
  145. package/dist/web/assets/RightChatPanelStack-goxULcZy.js +0 -1
  146. package/dist/web/assets/ScheduledWorkPage-DLtJnU9O.js +0 -1
  147. package/dist/web/assets/SettingsView-M-_wJvH1.js +0 -6
  148. package/dist/web/assets/TrainingCreationPanel-BK8T_q3X.js +0 -1
  149. package/dist/web/assets/TrainingDraftPanel-DSZ8e9ve.js +0 -1
  150. package/dist/web/assets/UsageSettingsSection-Co0UH4EJ.js +0 -59
  151. package/dist/web/assets/UsageSettingsSection-O8VK0qBL.css +0 -1
  152. package/dist/web/assets/WorkspaceDiffPanel-OcpOQdEE.js +0 -14
  153. package/dist/web/assets/WorkspaceEnvironmentMenu-Cg_VY5XS.js +0 -32
  154. package/dist/web/assets/WorkspaceGitDialogs-ApPWIEpT.js +0 -1
  155. package/dist/web/assets/arrow-up-right-DtR75sMi.js +0 -1
  156. package/dist/web/assets/chevron-up-DH33C_vT.js +0 -1
  157. package/dist/web/assets/cloud-upload-Cp4pi0X7.js +0 -1
  158. package/dist/web/assets/folder-open-hEq-0bAV.js +0 -1
  159. package/dist/web/assets/folder-plus-ClgoqsjW.js +0 -1
  160. package/dist/web/assets/git-branch-CLBU2IM9.js +0 -1
  161. package/dist/web/assets/git-commit-horizontal-CpOgDvCh.js +0 -1
  162. package/dist/web/assets/index-2rbiOiLR.js +0 -179
  163. package/dist/web/assets/index-BWqDWo3b.js +0 -1
  164. package/dist/web/assets/index-CHqMtVfF.css +0 -1
  165. package/dist/web/assets/info-D3L7JgSo.js +0 -1
  166. package/dist/web/assets/play-DUBpqm-k.js +0 -1
  167. package/dist/web/assets/refresh-cw-D7OfmCic.js +0 -1
  168. package/dist/web/assets/save-CJN-WmnU.js +0 -1
  169. package/dist/web/assets/square-Bx9UTvNe.js +0 -1
  170. package/dist/web/assets/upload-Bp6EKIYv.js +0 -1
  171. package/dist/web/assets/useLocalAgentSchedules-CZ1tgG1x.js +0 -1
  172. package/dist/web/assets/wifi-off-DovWnIF6.js +0 -1
  173. /package/dist/chunks/{chunk-K4JEWEJQ.js → chunk-7FW2CVYN.js} +0 -0
@@ -1,3 +1,3 @@
1
- import{j as t,cf as X,X as R,r as o,cg as le,ch as G,as as re,a2 as E,p as ce,ay as de,aA as me,ci as ue,cj as ge,ck as he,aG as fe,cl as xe,cm as ve}from"./index-2rbiOiLR.js";/* empty css */import{R as L,f as U}from"./MainPane-D8Mu6Nf3.js";import{T as ye,B as T,b as N}from"./MarkdownText-D5-tAHVZ.js";import{R as Y}from"./refresh-cw-D7OfmCic.js";import{r as Ce}from"./index-BWqDWo3b.js";import"./cloud-upload-Cp4pi0X7.js";import"./arrow-up-right-DtR75sMi.js";import"./square-Bx9UTvNe.js";import"./folder-open-hEq-0bAV.js";function be(e,l){const s=new Set(Array.from(e.matchAll(/(?:^|\s)@([a-zA-Z0-9_-]+)/g),n=>(n[1]??"").toLowerCase()));return l.filter(n=>{const c=n.handle?.toLowerCase(),r=n.name.toLowerCase().replace(/[^a-z0-9_-]+/g,"-");return c&&s.has(c)||s.has(r)}).map(n=>n.userId)}function je(e){return t.jsxs("div",{className:"team-chat-composer-reply",role:"status",children:[t.jsx(L,{size:15,"aria-hidden":"true"}),t.jsxs("button",{type:"button",className:"team-chat-composer-reply-target","aria-label":`Jump to message from ${e.authorLabel}`,onClick:e.onJump,children:[t.jsxs("strong",{children:["Replying to ",e.authorLabel]}),t.jsx("span",{children:X(e.target)})]}),t.jsx("button",{type:"button",className:"team-chat-icon-button","aria-label":"Cancel reply","data-tooltip":"Cancel reply",onClick:e.onCancel,children:t.jsx(R,{size:14})})]})}function we(e){return t.jsxs("button",{type:"button",className:"team-chat-message-reply-quote","aria-label":`Jump to replied message from ${e.authorLabel}`,onClick:e.onJump,children:[t.jsx("strong",{children:e.authorLabel}),t.jsx("span",{children:X(e.target)})]})}function Te(e){const l=o.useRef(null);if(o.useEffect(()=>{if(!e.menu)return;l.current?.focus();const n=()=>e.onClose(),c=r=>{r.key==="Escape"&&n()};return window.addEventListener("click",n),window.addEventListener("blur",n),window.addEventListener("keydown",c),window.addEventListener("scroll",n,!0),()=>{window.removeEventListener("click",n),window.removeEventListener("blur",n),window.removeEventListener("keydown",c),window.removeEventListener("scroll",n,!0)}},[e.menu,e.onClose]),!e.menu||typeof document>"u")return null;const s=t.jsx("div",{className:"team-chat-message-context-menu",role:"menu","aria-label":"Message actions",style:{left:e.menu.x,top:e.menu.y},onClick:n=>n.stopPropagation(),children:t.jsxs("button",{ref:l,type:"button",role:"menuitem",onClick:()=>{e.onReply(e.menu.message),e.onClose()},children:[t.jsx(L,{size:14}),"Reply"]})});return Ce.createPortal(s,document.body)}function Me(e){const c=e.clientX||e.fallbackX,r=e.clientY||e.fallbackY;return{x:Math.max(8,Math.min(c,e.viewportWidth-150-8)),y:Math.max(8,Math.min(r,e.viewportHeight-42-8))}}function V(e){return`team-chat-message-${encodeURIComponent(e)}`}function Re(e){const[l,s]=o.useState(!1),[n,c]=o.useState(e.message.body),r=e.message.refs.find(a=>a.refType==="hosted_ai_thread"),m=e.message.refs.find(a=>a.refType==="agent_run"),y=typeof r?.preview.status=="string"?r.preview.status:null,h=typeof e.message.metadata.deliveryStatus=="string"?e.message.metadata.deliveryStatus:null,b=typeof e.message.metadata.uploadProgress=="string"?e.message.metadata.uploadProgress:null,d=!e.message.deletedAt&&!h,g=le(e.message,e.messagesById),C=g?G(g,e.membersById):null;return t.jsxs("article",{id:V(e.message.id),className:`team-chat-message${e.own?" own":""}`,tabIndex:-1,onContextMenu:a=>{if(!d)return;a.preventDefault();const x=a.currentTarget.getBoundingClientRect();e.onOpenReplyMenu(e.message,{clientX:a.clientX,clientY:a.clientY,fallbackX:x.right-12,fallbackY:x.top+24})},children:[t.jsx(Ie,{member:e.author}),t.jsxs("div",{className:"team-chat-message-content",children:[t.jsxs("header",{children:[t.jsx("strong",{children:e.author?.name??"Team member"}),t.jsx("time",{children:Se(e.message.createdAt)}),e.message.editedAt?t.jsx("span",{children:"edited"}):null,h==="sending"?t.jsx("span",{children:"sending"}):null,h==="sending"&&b?t.jsxs("span",{children:["uploaded ",b]}):null,h==="failed"?t.jsx("span",{className:"failed",children:"not sent"}):null,h==="failed"?t.jsxs("div",{className:"team-chat-message-actions visible",children:[t.jsx("button",{type:"button","data-tooltip":"Retry message","aria-label":"Retry message",onClick:()=>{e.onRetry(e.message)},children:t.jsx(Y,{size:13})}),t.jsx("button",{type:"button","data-tooltip":"Remove failed message","aria-label":"Remove failed message",onClick:()=>e.onDismissFailed(e.message),children:t.jsx(R,{size:13})})]}):d||e.own&&!e.message.deletedAt?t.jsxs("div",{className:"team-chat-message-actions",children:[d?t.jsx("button",{type:"button","data-tooltip":"Reply","aria-label":"Reply to message",onClick:()=>e.onReply(e.message),children:t.jsx(L,{size:13})}):null,e.own&&!r?t.jsx("button",{type:"button","data-tooltip":"Edit message","aria-label":"Edit message",onClick:()=>s(!0),children:t.jsx(re,{size:13})}):null,e.own?t.jsx("button",{type:"button","data-tooltip":"Delete message","aria-label":"Delete message",onClick:()=>{e.onDelete(e.message)},children:t.jsx(ye,{size:13})}):null]}):null]}),g&&C?t.jsx(we,{authorLabel:C,target:g,onJump:()=>e.onJumpToMessage(g.id)}):null,l?t.jsxs("form",{className:"team-chat-message-edit",onSubmit:a=>{a.preventDefault(),e.onEdit(e.message,n).then(x=>{x&&s(!1)})},children:[t.jsx("textarea",{autoFocus:!0,value:n,onChange:a=>c(a.currentTarget.value),onKeyDown:a=>{a.key==="Escape"&&(a.preventDefault(),s(!1),c(e.message.body))}}),t.jsxs("div",{children:[t.jsx("button",{type:"button",onClick:()=>s(!1),children:"Cancel"}),t.jsx("button",{type:"submit",disabled:!n.trim(),children:"Save"})]})]}):t.jsx("div",{className:e.message.deletedAt?"deleted":"",children:e.message.deletedAt?"Message deleted":e.message.body}),!e.message.deletedAt&&e.message.attachments.length>0?t.jsx(Ae,{message:e.message,connection:e.connection}):null,r?t.jsxs("button",{type:"button",className:"team-chat-thread-link",onClick:()=>{e.onOpenAiThread(r.refId)},children:[t.jsx(E,{size:14}),t.jsx("span",{children:"Thread"}),y&&y!=="completed"?t.jsx("small",{children:K(y)}):null,t.jsx("span",{"aria-hidden":"true",children:"›"})]}):null,m?t.jsxs("button",{type:"button",className:"team-chat-thread-link",onClick:()=>{e.onOpenAgentConversation(m.refId)},children:[t.jsx(T,{size:14}),t.jsx("span",{children:"Agent run"}),t.jsx("small",{children:K(String(m.preview.status??"queued"))}),t.jsx("span",{"aria-hidden":"true",children:"›"})]}):null]})]})}function Ae(e){const l=new Map(Array.isArray(e.message.metadata.localAttachmentPreviews)?e.message.metadata.localAttachmentPreviews.flatMap(s=>{if(!s||typeof s!="object")return[];const n=s;return typeof n.id=="string"&&typeof n.url=="string"?[[n.id,n.url]]:[]}):[]);return t.jsx("div",{className:"team-chat-message-images",children:e.message.attachments.map(s=>t.jsx(Pe,{attachmentId:s.id,alt:s.name,teamId:e.message.teamId,connection:e.connection,localUrl:l.get(s.clientAttachmentId)??null},s.id))})}function Pe(e){const[l,s]=o.useState(e.localUrl),[n,c]=o.useState(!1),r=o.useRef(0);async function m(){if(!e.connection||e.localUrl){e.localUrl||c(!0);return}c(!1);try{const y=await ce.teamChatAttachmentDownload(e.connection,e.teamId,e.attachmentId);s(y.url)}catch{s(null),c(!0)}}return o.useEffect(()=>{s(e.localUrl),c(!1),r.current=0,e.localUrl||m()},[e.attachmentId,e.connection,e.localUrl,e.teamId]),l?t.jsx("a",{href:l,target:"_blank",rel:"noreferrer","aria-label":`Open ${e.alt}`,children:t.jsx("img",{src:l,alt:e.alt,loading:"lazy",onError:()=>{if(!e.localUrl&&r.current<1){r.current+=1,m();return}s(null),c(!0)}})}):n?t.jsx("button",{type:"button",className:"team-chat-message-image-retry","aria-label":`Retry ${e.alt}`,"data-tooltip":"Retry image",onClick:()=>{r.current=0,e.localUrl?(c(!1),s(e.localUrl)):m()},children:t.jsx(Y,{size:18})}):t.jsx("div",{className:"team-chat-message-image-loading",role:"status","aria-label":`Loading ${e.alt}`})}function K(e){return e==="pending"?"Starting":e==="running"?"Responding":e==="failed"?"Failed":e==="interrupted"?"Interrupted":e==="cancelled"?"Cancelled":e}function Ie({member:e}){if(e?.image)return t.jsx("img",{className:"team-chat-avatar",src:e.image,alt:""});const l=(e?.name??"T").split(/\s+/).slice(0,2).map(s=>s[0]?.toUpperCase()??"").join("");return t.jsx("span",{className:"team-chat-avatar fallback",children:l})}function Se(e){const l=new Date(e);return Number.isFinite(l.getTime())?l.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}):""}const z={value:"none",label:"No project",detail:"Team conversation",options:[],busy:!1},D={value:"local",label:"Local",detail:"Local execution",options:[],action:{value:"local",label:"Local",detail:"Local execution",disabled:!1},busy:!1},Q=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"]);function ke(e,l){return!l||e===l?e:e?`${l}
1
+ import{j as t,r as o}from"./index-DqWw2ymf.js";/* empty css */import{c8 as X,X as R,c9 as le,ca as Y,af as re,aj as E,o as ce,am as de,ao as me,cb as ue,cc as ge,cd as he,av as fe,ce as xe,cf as ve}from"./App-D7vhbyMO.js";import{R as L,g as U}from"./MainPane-DxVcMBFo.js";import{M as N}from"./MarkdownText-B3njGyZS.js";import{T as Ce,B as T}from"./chat-file-links-wORSEipQ.js";import{R as G}from"./refresh-cw-DMysDKOA.js";import{r as ye}from"./index-C5uP_Gug.js";import"./cloud-upload-BYXHJoKd.js";import"./arrow-up-right-DaIxkG4K.js";import"./square-D-mpY1a-.js";import"./desktop-files-BQj1J-ob.js";function be(e,l){const s=new Set(Array.from(e.matchAll(/(?:^|\s)@([a-zA-Z0-9_-]+)/g),n=>(n[1]??"").toLowerCase()));return l.filter(n=>{const c=n.handle?.toLowerCase(),r=n.name.toLowerCase().replace(/[^a-z0-9_-]+/g,"-");return c&&s.has(c)||s.has(r)}).map(n=>n.userId)}function je(e){return t.jsxs("div",{className:"team-chat-composer-reply",role:"status",children:[t.jsx(L,{size:15,"aria-hidden":"true"}),t.jsxs("button",{type:"button",className:"team-chat-composer-reply-target","aria-label":`Jump to message from ${e.authorLabel}`,onClick:e.onJump,children:[t.jsxs("strong",{children:["Replying to ",e.authorLabel]}),t.jsx("span",{children:X(e.target)})]}),t.jsx("button",{type:"button",className:"team-chat-icon-button","aria-label":"Cancel reply","data-tooltip":"Cancel reply",onClick:e.onCancel,children:t.jsx(R,{size:14})})]})}function we(e){return t.jsxs("button",{type:"button",className:"team-chat-message-reply-quote","aria-label":`Jump to replied message from ${e.authorLabel}`,onClick:e.onJump,children:[t.jsx("strong",{children:e.authorLabel}),t.jsx("span",{children:X(e.target)})]})}function Te(e){const l=o.useRef(null);if(o.useEffect(()=>{if(!e.menu)return;l.current?.focus();const n=()=>e.onClose(),c=r=>{r.key==="Escape"&&n()};return window.addEventListener("click",n),window.addEventListener("blur",n),window.addEventListener("keydown",c),window.addEventListener("scroll",n,!0),()=>{window.removeEventListener("click",n),window.removeEventListener("blur",n),window.removeEventListener("keydown",c),window.removeEventListener("scroll",n,!0)}},[e.menu,e.onClose]),!e.menu||typeof document>"u")return null;const s=t.jsx("div",{className:"team-chat-message-context-menu",role:"menu","aria-label":"Message actions",style:{left:e.menu.x,top:e.menu.y},onClick:n=>n.stopPropagation(),children:t.jsxs("button",{ref:l,type:"button",role:"menuitem",onClick:()=>{e.onReply(e.menu.message),e.onClose()},children:[t.jsx(L,{size:14}),"Reply"]})});return ye.createPortal(s,document.body)}function Me(e){const c=e.clientX||e.fallbackX,r=e.clientY||e.fallbackY;return{x:Math.max(8,Math.min(c,e.viewportWidth-150-8)),y:Math.max(8,Math.min(r,e.viewportHeight-42-8))}}function V(e){return`team-chat-message-${encodeURIComponent(e)}`}function Re(e){const[l,s]=o.useState(!1),[n,c]=o.useState(e.message.body),r=e.message.refs.find(a=>a.refType==="hosted_ai_thread"),m=e.message.refs.find(a=>a.refType==="agent_run"),C=typeof r?.preview.status=="string"?r.preview.status:null,h=typeof e.message.metadata.deliveryStatus=="string"?e.message.metadata.deliveryStatus:null,b=typeof e.message.metadata.uploadProgress=="string"?e.message.metadata.uploadProgress:null,d=!e.message.deletedAt&&!h,g=le(e.message,e.messagesById),y=g?Y(g,e.membersById):null;return t.jsxs("article",{id:V(e.message.id),className:`team-chat-message${e.own?" own":""}`,tabIndex:-1,onContextMenu:a=>{if(!d)return;a.preventDefault();const x=a.currentTarget.getBoundingClientRect();e.onOpenReplyMenu(e.message,{clientX:a.clientX,clientY:a.clientY,fallbackX:x.right-12,fallbackY:x.top+24})},children:[t.jsx(Ie,{member:e.author}),t.jsxs("div",{className:"team-chat-message-content",children:[t.jsxs("header",{children:[t.jsx("strong",{children:e.author?.name??"Team member"}),t.jsx("time",{children:Se(e.message.createdAt)}),e.message.editedAt?t.jsx("span",{children:"edited"}):null,h==="sending"?t.jsx("span",{children:"sending"}):null,h==="sending"&&b?t.jsxs("span",{children:["uploaded ",b]}):null,h==="failed"?t.jsx("span",{className:"failed",children:"not sent"}):null,h==="failed"?t.jsxs("div",{className:"team-chat-message-actions visible",children:[t.jsx("button",{type:"button","data-tooltip":"Retry message","aria-label":"Retry message",onClick:()=>{e.onRetry(e.message)},children:t.jsx(G,{size:13})}),t.jsx("button",{type:"button","data-tooltip":"Remove failed message","aria-label":"Remove failed message",onClick:()=>e.onDismissFailed(e.message),children:t.jsx(R,{size:13})})]}):d||e.own&&!e.message.deletedAt?t.jsxs("div",{className:"team-chat-message-actions",children:[d?t.jsx("button",{type:"button","data-tooltip":"Reply","aria-label":"Reply to message",onClick:()=>e.onReply(e.message),children:t.jsx(L,{size:13})}):null,e.own&&!r?t.jsx("button",{type:"button","data-tooltip":"Edit message","aria-label":"Edit message",onClick:()=>s(!0),children:t.jsx(re,{size:13})}):null,e.own?t.jsx("button",{type:"button","data-tooltip":"Delete message","aria-label":"Delete message",onClick:()=>{e.onDelete(e.message)},children:t.jsx(Ce,{size:13})}):null]}):null]}),g&&y?t.jsx(we,{authorLabel:y,target:g,onJump:()=>e.onJumpToMessage(g.id)}):null,l?t.jsxs("form",{className:"team-chat-message-edit",onSubmit:a=>{a.preventDefault(),e.onEdit(e.message,n).then(x=>{x&&s(!1)})},children:[t.jsx("textarea",{autoFocus:!0,value:n,onChange:a=>c(a.currentTarget.value),onKeyDown:a=>{a.key==="Escape"&&(a.preventDefault(),s(!1),c(e.message.body))}}),t.jsxs("div",{children:[t.jsx("button",{type:"button",onClick:()=>s(!1),children:"Cancel"}),t.jsx("button",{type:"submit",disabled:!n.trim(),children:"Save"})]})]}):t.jsx("div",{className:e.message.deletedAt?"deleted":"",children:e.message.deletedAt?"Message deleted":e.message.body}),!e.message.deletedAt&&e.message.attachments.length>0?t.jsx(Ae,{message:e.message,connection:e.connection}):null,r?t.jsxs("button",{type:"button",className:"team-chat-thread-link",onClick:()=>{e.onOpenAiThread(r.refId)},children:[t.jsx(E,{size:14}),t.jsx("span",{children:"Thread"}),C&&C!=="completed"?t.jsx("small",{children:K(C)}):null,t.jsx("span",{"aria-hidden":"true",children:"›"})]}):null,m?t.jsxs("button",{type:"button",className:"team-chat-thread-link",onClick:()=>{e.onOpenAgentConversation(m.refId)},children:[t.jsx(T,{size:14}),t.jsx("span",{children:"Agent run"}),t.jsx("small",{children:K(String(m.preview.status??"queued"))}),t.jsx("span",{"aria-hidden":"true",children:"›"})]}):null]})]})}function Ae(e){const l=new Map(Array.isArray(e.message.metadata.localAttachmentPreviews)?e.message.metadata.localAttachmentPreviews.flatMap(s=>{if(!s||typeof s!="object")return[];const n=s;return typeof n.id=="string"&&typeof n.url=="string"?[[n.id,n.url]]:[]}):[]);return t.jsx("div",{className:"team-chat-message-images",children:e.message.attachments.map(s=>t.jsx(Pe,{attachmentId:s.id,alt:s.name,teamId:e.message.teamId,connection:e.connection,localUrl:l.get(s.clientAttachmentId)??null},s.id))})}function Pe(e){const[l,s]=o.useState(e.localUrl),[n,c]=o.useState(!1),r=o.useRef(0);async function m(){if(!e.connection||e.localUrl){e.localUrl||c(!0);return}c(!1);try{const C=await ce.teamChatAttachmentDownload(e.connection,e.teamId,e.attachmentId);s(C.url)}catch{s(null),c(!0)}}return o.useEffect(()=>{s(e.localUrl),c(!1),r.current=0,e.localUrl||m()},[e.attachmentId,e.connection,e.localUrl,e.teamId]),l?t.jsx("a",{href:l,target:"_blank",rel:"noreferrer","aria-label":`Open ${e.alt}`,children:t.jsx("img",{src:l,alt:e.alt,loading:"lazy",onError:()=>{if(!e.localUrl&&r.current<1){r.current+=1,m();return}s(null),c(!0)}})}):n?t.jsx("button",{type:"button",className:"team-chat-message-image-retry","aria-label":`Retry ${e.alt}`,"data-tooltip":"Retry image",onClick:()=>{r.current=0,e.localUrl?(c(!1),s(e.localUrl)):m()},children:t.jsx(G,{size:18})}):t.jsx("div",{className:"team-chat-message-image-loading",role:"status","aria-label":`Loading ${e.alt}`})}function K(e){return e==="pending"?"Starting":e==="running"?"Responding":e==="failed"?"Failed":e==="interrupted"?"Interrupted":e==="cancelled"?"Cancelled":e}function Ie({member:e}){if(e?.image)return t.jsx("img",{className:"team-chat-avatar",src:e.image,alt:""});const l=(e?.name??"T").split(/\s+/).slice(0,2).map(s=>s[0]?.toUpperCase()??"").join("");return t.jsx("span",{className:"team-chat-avatar fallback",children:l})}function Se(e){const l=new Date(e);return Number.isFinite(l.getTime())?l.toLocaleTimeString([],{hour:"numeric",minute:"2-digit"}):""}const z={value:"none",label:"No project",detail:"Team conversation",options:[],busy:!1},D={value:"local",label:"Local",detail:"Local execution",options:[],action:{value:"local",label:"Local",detail:"Local execution",disabled:!1},busy:!1},Q=new Set(["codex","openai","xai","openrouter","deepseek","zai","moonshot","together","groq","custom-openai-compatible"]);function ke(e,l){return!l||e===l?e:e?`${l}
2
2
 
3
- ${e}`:l}function _e(){return t.jsx("section",{className:"team-chat-view team-chat-pro-view","aria-label":"Team Chat",children:t.jsxs("div",{className:"team-chat-pro-content",children:[t.jsx("span",{className:"team-chat-pro-icon","aria-hidden":"true",children:t.jsx(E,{size:22})}),t.jsx("h1",{children:"Team Chat"}),t.jsx("p",{children:"Team Chat is available with Pro mode."}),t.jsx("small",{children:"Create or join a Pro team to chat with teammates, coordinate work, and share agents."})]})})}function Fe(e){de(e.error);const[l,s]=o.useState(""),[n,c]=o.useState(!1),[r,m]=o.useState(null),[y,h]=o.useState(null),[b,d]=o.useState(0),g=o.useRef(null),C=o.useRef(!0),a=o.useRef(e.detail?.thread.id??null);a.current=e.detail?.thread.id??null;const{confirmAction:x,confirmDialog:O,resolveConfirmDialog:A}=me(),P=o.useMemo(()=>new Map(e.members.map(i=>[i.userId,i])),[e.members]),B=o.useMemo(()=>new Map((e.detail?.messages??[]).map(i=>[i.id,i])),[e.detail?.messages]),Z=e.detail?.thread.id??null,q=r?.threadId===Z?B.get(r.message.id)??r.message:null,M=q?.deletedAt?null:q,j=M?ue(M):null,$=j?G(j,P):null,p=e.detail?ge(e.detail.thread,e.currentUserId):"Team",I=Q.has(e.provider)?e.provider:"codex",_=I===e.provider?e.model:"gpt-5.6-sol",ee=o.useMemo(()=>he({hostedActions:e.agents,profile:e.profile,teamId:e.teamId}),[e.agents,e.profile,e.teamId]),te=e.detail?.messages.at(-1)?.sequence??0;o.useEffect(()=>{if(!C.current)return;const i=g.current;i&&(i.scrollTop=i.scrollHeight)},[te,e.detail?.thread.id]);const F=o.useCallback(i=>{i.deletedAt||i.id.startsWith("pending:")||typeof i.metadata.deliveryStatus=="string"||(m({threadId:i.threadId,message:i}),c(!1),h(null),d(f=>f+1))},[]),ne=o.useCallback(()=>h(null),[]),ae=o.useCallback((i,f)=>{const v=Me({...f,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight});h({message:i,...v})},[]),W=o.useCallback(i=>{const f=document.getElementById(V(i));f&&(f.scrollIntoView({behavior:"smooth",block:"center"}),f.focus({preventScroll:!0}))},[]);async function se(i=[],f=null){if(i.some(u=>u.kind!=="image"||!["image/png","image/jpeg","image/webp","image/gif"].includes(u.mediaType)))return e.showToast("Team chat supports PNG, JPEG, WebP, and GIF images.","error"),!1;let v=f;if(M&&v)return e.showToast("Remove the agent action before replying to a message.","error"),!1;if(xe(v)){const u=ve(v);if(!u)throw new Error("The selected profile agent is missing its profile id.");if(!await x({title:`Publish ${v.label??v.name??"agent"} to Team?`,body:`This will upload the committed agent source to ${e.teamName??"this Team"}, create its hosted runtime, and then send your message.`,confirmLabel:"Publish and send",tone:"default"}))return!1;v=await e.onPublishProfileAgent(u)}const S=v?.approvalPolicy?.risk;let J=null;if(v?.approvalPolicy?.required&&S&&S!=="read"){const u=S==="destructive";if(!await x({title:u?"Approve destructive action?":"Approve external write?",body:`${v.label??v.name??"This agent action"} will use the workspace connection to ${u?"perform a destructive operation":"write external data"}. Approve this run only?`,confirmLabel:u?"Approve destructive action":"Approve write",tone:u?"danger":"default"}))return!1;J=crypto.randomUUID()}const k=l,oe=e.detail?.thread.id??null,w=M,H=()=>{a.current===oe&&(s(u=>ke(u,k)),w&&m(u=>u??{threadId:w.threadId,message:w}))};s(""),w&&m(null);try{const u=await e.onSendMessage({body:k,useModel:n,providerId:I,modelId:_,mentionUserIds:be(k,e.members),attachments:i,replyToMessage:w,selectedActionKey:v?.id??null,approvalId:J});return u?n&&c(!1):H(),u}catch(u){throw H(),u}}return t.jsxs("section",{className:"team-chat-view",children:[t.jsxs("div",{className:"team-chat-main conversation-surface-main",children:[t.jsxs("div",{className:"team-chat-messages conversation-message-scroll",role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":e.loading,"aria-label":p,tabIndex:0,ref:g,onScroll:i=>{const f=i.currentTarget;C.current=f.scrollHeight-f.scrollTop-f.clientHeight<72},children:[e.detail?.hasMoreBefore?t.jsx("button",{type:"button",className:"team-chat-load-older",disabled:e.loading,onClick:()=>{e.onLoadMoreMessages()},children:e.loading?"Loading...":"Load older messages"}):null,e.loading&&!e.detail?t.jsx("div",{className:"team-chat-empty",children:"Loading messages..."}):e.detail?.messages.length?e.detail.messages.map(i=>t.jsx(Re,{message:i,author:i.authorUserId?P.get(i.authorUserId)??null:null,own:i.authorUserId===e.currentUserId,onOpenAiThread:e.onOpenAiThread,onOpenAgentConversation:e.onOpenAgentConversation,onEdit:e.onEditMessage,onDelete:e.onDeleteMessage,onRetry:e.onRetryMessage,onDismissFailed:e.onDismissFailedMessage,membersById:P,messagesById:B,onReply:F,onOpenReplyMenu:ae,onJumpToMessage:W,connection:e.connection},i.id)):t.jsx("div",{className:"team-chat-empty",children:"No messages yet"})]}),t.jsxs("div",{className:"team-chat-composer-shell conversation-composer-shell",children:[j&&$?t.jsx(je,{authorLabel:$,target:j,onCancel:()=>m(null),onJump:()=>W(j.id)}):null,t.jsx(U,{mode:"dock",surface:"team",teamUseModel:n,teamUseModelLocked:!!j,teamMentionMembers:e.members.filter(i=>i.userId!==e.currentUserId),actionCatalog:ee,onTeamUseModelChange:c,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:e.busy,running:!1,focusRequestId:b,submissionScopeKey:`team:${e.detail?.thread.id??"none"}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:I,model:_,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:s,showToast:e.showToast,onSubmit:async(i,f)=>se(i??[],f??null),onStop:()=>!1})]})]}),t.jsx(Te,{menu:y,onClose:ne,onReply:F}),t.jsx(fe,{state:O,onResolve:A})]})}function We(e){const[l,s]=o.useState(""),n=e.agentConversation,c=o.useRef(null),r=o.useRef(null),m=o.useRef(null),y=n.messages.at(-1)?.sequence??0,h=["pending","queued","running"].includes(n.run.status);o.useEffect(()=>{const d=c.current;d&&(d.scrollTop=d.scrollHeight)},[y,n.run.status]),o.useEffect(()=>{r.current?.focus();const d=g=>{g.key==="Escape"&&(g.preventDefault(),e.onCloseAgentConversation())};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[e.onCloseAgentConversation]);async function b(d){const g=m.current??crypto.randomUUID();m.current=g;const C=await e.onSendAgentTurn({body:d??l,clientRequestId:g});return C&&(m.current=null,s("")),C}return t.jsxs("aside",{className:"workspace-diff-panel team-ai-thread-panel","aria-label":`${n.agent.name} run`,children:[e.onResizeStart?t.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize agent run panel",onPointerDown:e.onResizeStart}):null,t.jsxs("header",{children:[t.jsxs("div",{children:[t.jsx(T,{size:15}),t.jsx("strong",{children:n.agent.name}),t.jsx("span",{children:n.run.status})]}),t.jsx("button",{ref:r,type:"button",className:"team-chat-icon-button","aria-label":"Close agent run",onClick:e.onCloseAgentConversation,children:t.jsx(R,{size:16})})]}),t.jsxs("div",{className:"team-ai-thread-messages",ref:c,role:"log","aria-live":"polite","aria-relevant":"additions text",tabIndex:0,children:[n.messages.map(d=>t.jsxs("article",{className:`team-ai-message ${d.role}`,children:[t.jsxs("div",{className:"team-ai-message-author",children:[d.role==="assistant"?t.jsx(T,{size:14}):null,t.jsx("strong",{children:d.role==="user"?"Team member":n.agent.name})]}),t.jsx(N,{connection:e.connection,content:d.body})]},d.id)),n.messages.length===0?t.jsx("div",{className:"team-chat-empty",children:"The agent run is starting."}):null]}),t.jsx("div",{className:"team-ai-thread-composer",children:t.jsx(U,{mode:"dock",surface:"team",teamUseModel:!1,teamUseModelLocked:!0,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:e.busy||h,running:h,interruptRunningTurnBeforeSteer:!1,submissionScopeKey:`team-agent:${n.conversationId}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:e.provider,model:e.model,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:d=>{m.current=null,s(d)},showToast:e.showToast,onSubmit:async(d,g,C,a)=>b(a?.promptOverride),onStop:()=>!1})})]})}function Je(e){const[l,s]=o.useState(""),n=e.aiThread,c=new Map(e.members.map(a=>[a.userId,a])),r=n.turns.at(-1)??null,m=o.useRef(null),y=n.messages.at(-1)?.sequence??0,h=o.useRef(null),b=Q.has(e.provider)?e.provider:"codex",d=b===e.provider?e.model:"gpt-5.6-sol",g=!!(n.activeTurn&&(n.activeTurn.status==="pending"||n.activeTurn.status==="running"));o.useEffect(()=>{const a=m.current;a&&(a.scrollTop=a.scrollHeight)},[y,n.activeTurn?.partialBody]),o.useEffect(()=>{h.current?.focus();const a=x=>{x.key==="Escape"&&(x.preventDefault(),e.onCloseAiThread())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[e.onCloseAiThread]);async function C(a){const x=await e.onSendAiTurn({body:a??l,providerId:b,modelId:d});return x&&s(""),x}return t.jsxs("aside",{className:"workspace-diff-panel team-ai-thread-panel","aria-label":"AI thread",children:[e.onResizeStart?t.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-label":"Resize AI thread panel","aria-orientation":"vertical",onPointerDown:e.onResizeStart}):null,t.jsxs("header",{children:[t.jsxs("div",{children:[t.jsx(E,{size:15}),t.jsx("strong",{children:"AI thread"}),t.jsxs("span",{children:[n.messages.length," messages"]})]}),t.jsx("button",{ref:h,type:"button",className:"team-chat-icon-button","data-tooltip":"Close thread","aria-label":"Close thread",onClick:e.onCloseAiThread,children:t.jsx(R,{size:16})})]}),t.jsxs("div",{className:"team-ai-thread-messages",ref:m,role:"log","aria-live":"polite","aria-relevant":"additions text",tabIndex:0,children:[n.messages.map(a=>t.jsxs("article",{className:`team-ai-message ${a.role}`,children:[t.jsxs("div",{className:"team-ai-message-author",children:[a.role==="assistant"?t.jsx(T,{size:14}):null,t.jsx("strong",{children:a.role==="assistant"?"Model":a.createdByUserId?c.get(a.createdByUserId)?.name??"Team member":"Team member"})]}),t.jsx(N,{connection:e.connection,content:a.body})]},a.id)),n.activeTurn?.partialBody?t.jsxs("article",{className:"team-ai-message assistant streaming",children:[t.jsxs("div",{className:"team-ai-message-author",children:[t.jsx(T,{size:14}),t.jsx("strong",{children:"Model"}),t.jsx("span",{children:n.activeTurn.status})]}),t.jsx(N,{connection:e.connection,content:n.activeTurn.partialBody})]}):n.activeTurn?t.jsx("div",{className:"team-ai-running",children:n.activeTurn.status==="pending"?"Starting model...":"Model is responding..."}):r&&["failed","interrupted","cancelled"].includes(r.status)?t.jsx("div",{className:`team-ai-turn-state ${r.status}`,children:r.status==="failed"?"Model response failed":r.status==="interrupted"?"Model response was interrupted":"Model response was cancelled"}):null]}),t.jsx("div",{className:"team-ai-thread-composer",children:t.jsx(U,{mode:"dock",surface:"team",teamUseModel:!0,teamUseModelLocked:!0,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:g,running:g,submissionScopeKey:`team-ai:${n.conversationId}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:b,model:d,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:s,showToast:e.showToast,onSubmit:async(a,x,O,A)=>C(A?.promptOverride),onStop:e.onStopAiTurn})})]})}export{We as TeamAgentConversationPanel,Je as TeamAiThreadPanel,_e as TeamChatProView,Fe as TeamChatView,ke as restoreFailedTeamChatPrompt};
3
+ ${e}`:l}function We(){return t.jsx("section",{className:"team-chat-view team-chat-pro-view","aria-label":"Team Chat",children:t.jsxs("div",{className:"team-chat-pro-content",children:[t.jsx("span",{className:"team-chat-pro-icon","aria-hidden":"true",children:t.jsx(E,{size:22})}),t.jsx("h1",{children:"Team Chat"}),t.jsx("p",{children:"Team Chat is available with Pro mode."}),t.jsx("small",{children:"Create or join a Pro team to chat with teammates, coordinate work, and share agents."})]})})}function Je(e){de(e.error);const[l,s]=o.useState(""),[n,c]=o.useState(!1),[r,m]=o.useState(null),[C,h]=o.useState(null),[b,d]=o.useState(0),g=o.useRef(null),y=o.useRef(!0),a=o.useRef(e.detail?.thread.id??null);a.current=e.detail?.thread.id??null;const{confirmAction:x,confirmDialog:O,resolveConfirmDialog:A}=me(),P=o.useMemo(()=>new Map(e.members.map(i=>[i.userId,i])),[e.members]),B=o.useMemo(()=>new Map((e.detail?.messages??[]).map(i=>[i.id,i])),[e.detail?.messages]),Z=e.detail?.thread.id??null,q=r?.threadId===Z?B.get(r.message.id)??r.message:null,M=q?.deletedAt?null:q,j=M?ue(M):null,$=j?Y(j,P):null,p=e.detail?ge(e.detail.thread,e.currentUserId):"Team",I=Q.has(e.provider)?e.provider:"codex",_=I===e.provider?e.model:"gpt-5.6-sol",ee=o.useMemo(()=>he({hostedActions:e.agents,profile:e.profile,teamId:e.teamId}),[e.agents,e.profile,e.teamId]),te=e.detail?.messages.at(-1)?.sequence??0;o.useEffect(()=>{if(!y.current)return;const i=g.current;i&&(i.scrollTop=i.scrollHeight)},[te,e.detail?.thread.id]);const F=o.useCallback(i=>{i.deletedAt||i.id.startsWith("pending:")||typeof i.metadata.deliveryStatus=="string"||(m({threadId:i.threadId,message:i}),c(!1),h(null),d(f=>f+1))},[]),ne=o.useCallback(()=>h(null),[]),ae=o.useCallback((i,f)=>{const v=Me({...f,viewportWidth:window.innerWidth,viewportHeight:window.innerHeight});h({message:i,...v})},[]),W=o.useCallback(i=>{const f=document.getElementById(V(i));f&&(f.scrollIntoView({behavior:"smooth",block:"center"}),f.focus({preventScroll:!0}))},[]);async function se(i=[],f=null){if(i.some(u=>u.kind!=="image"||!["image/png","image/jpeg","image/webp","image/gif"].includes(u.mediaType)))return e.showToast("Team chat supports PNG, JPEG, WebP, and GIF images.","error"),!1;let v=f;if(M&&v)return e.showToast("Remove the agent action before replying to a message.","error"),!1;if(xe(v)){const u=ve(v);if(!u)throw new Error("The selected profile agent is missing its profile id.");if(!await x({title:`Publish ${v.label??v.name??"agent"} to Team?`,body:`This will upload the committed agent source to ${e.teamName??"this Team"}, create its hosted runtime, and then send your message.`,confirmLabel:"Publish and send",tone:"default"}))return!1;v=await e.onPublishProfileAgent(u)}const S=v?.approvalPolicy?.risk;let J=null;if(v?.approvalPolicy?.required&&S&&S!=="read"){const u=S==="destructive";if(!await x({title:u?"Approve destructive action?":"Approve external write?",body:`${v.label??v.name??"This agent action"} will use the workspace connection to ${u?"perform a destructive operation":"write external data"}. Approve this run only?`,confirmLabel:u?"Approve destructive action":"Approve write",tone:u?"danger":"default"}))return!1;J=crypto.randomUUID()}const k=l,oe=e.detail?.thread.id??null,w=M,H=()=>{a.current===oe&&(s(u=>ke(u,k)),w&&m(u=>u??{threadId:w.threadId,message:w}))};s(""),w&&m(null);try{const u=await e.onSendMessage({body:k,useModel:n,providerId:I,modelId:_,mentionUserIds:be(k,e.members),attachments:i,replyToMessage:w,selectedActionKey:v?.id??null,approvalId:J});return u?n&&c(!1):H(),u}catch(u){throw H(),u}}return t.jsxs("section",{className:"team-chat-view",children:[t.jsxs("div",{className:"team-chat-main conversation-surface-main",children:[t.jsxs("div",{className:"team-chat-messages conversation-message-scroll",role:"log","aria-live":"polite","aria-relevant":"additions text","aria-busy":e.loading,"aria-label":p,tabIndex:0,ref:g,onScroll:i=>{const f=i.currentTarget;y.current=f.scrollHeight-f.scrollTop-f.clientHeight<72},children:[e.detail?.hasMoreBefore?t.jsx("button",{type:"button",className:"team-chat-load-older",disabled:e.loading,onClick:()=>{e.onLoadMoreMessages()},children:e.loading?"Loading...":"Load older messages"}):null,e.loading&&!e.detail?t.jsx("div",{className:"team-chat-empty",children:"Loading messages..."}):e.detail?.messages.length?e.detail.messages.map(i=>t.jsx(Re,{message:i,author:i.authorUserId?P.get(i.authorUserId)??null:null,own:i.authorUserId===e.currentUserId,onOpenAiThread:e.onOpenAiThread,onOpenAgentConversation:e.onOpenAgentConversation,onEdit:e.onEditMessage,onDelete:e.onDeleteMessage,onRetry:e.onRetryMessage,onDismissFailed:e.onDismissFailedMessage,membersById:P,messagesById:B,onReply:F,onOpenReplyMenu:ae,onJumpToMessage:W,connection:e.connection},i.id)):t.jsx("div",{className:"team-chat-empty",children:"No messages yet"})]}),t.jsxs("div",{className:"team-chat-composer-shell conversation-composer-shell",children:[j&&$?t.jsx(je,{authorLabel:$,target:j,onCancel:()=>m(null),onJump:()=>W(j.id)}):null,t.jsx(U,{mode:"dock",surface:"team",teamUseModel:n,teamUseModelLocked:!!j,teamMentionMembers:e.members.filter(i=>i.userId!==e.currentUserId),actionCatalog:ee,onTeamUseModelChange:c,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:e.busy,running:!1,focusRequestId:b,submissionScopeKey:`team:${e.detail?.thread.id??"none"}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:I,model:_,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:s,showToast:e.showToast,onSubmit:async(i,f)=>se(i??[],f??null),onStop:()=>!1})]})]}),t.jsx(Te,{menu:C,onClose:ne,onReply:F}),t.jsx(fe,{state:O,onResolve:A})]})}function He(e){const[l,s]=o.useState(""),n=e.agentConversation,c=o.useRef(null),r=o.useRef(null),m=o.useRef(null),C=n.messages.at(-1)?.sequence??0,h=["pending","queued","running"].includes(n.run.status);o.useEffect(()=>{const d=c.current;d&&(d.scrollTop=d.scrollHeight)},[C,n.run.status]),o.useEffect(()=>{r.current?.focus();const d=g=>{g.key==="Escape"&&(g.preventDefault(),e.onCloseAgentConversation())};return window.addEventListener("keydown",d),()=>window.removeEventListener("keydown",d)},[e.onCloseAgentConversation]);async function b(d){const g=m.current??crypto.randomUUID();m.current=g;const y=await e.onSendAgentTurn({body:d??l,clientRequestId:g});return y&&(m.current=null,s("")),y}return t.jsxs("aside",{className:"workspace-diff-panel team-ai-thread-panel","aria-label":`${n.agent.name} run`,children:[e.onResizeStart?t.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-orientation":"vertical","aria-label":"Resize agent run panel",onPointerDown:e.onResizeStart}):null,t.jsxs("header",{children:[t.jsxs("div",{children:[t.jsx(T,{size:15}),t.jsx("strong",{children:n.agent.name}),t.jsx("span",{children:n.run.status})]}),t.jsx("button",{ref:r,type:"button",className:"team-chat-icon-button","aria-label":"Close agent run",onClick:e.onCloseAgentConversation,children:t.jsx(R,{size:16})})]}),t.jsxs("div",{className:"team-ai-thread-messages",ref:c,role:"log","aria-live":"polite","aria-relevant":"additions text",tabIndex:0,children:[n.messages.map(d=>t.jsxs("article",{className:`team-ai-message ${d.role}`,children:[t.jsxs("div",{className:"team-ai-message-author",children:[d.role==="assistant"?t.jsx(T,{size:14}):null,t.jsx("strong",{children:d.role==="user"?"Team member":n.agent.name})]}),t.jsx(N,{connection:e.connection,content:d.body})]},d.id)),n.messages.length===0?t.jsx("div",{className:"team-chat-empty",children:"The agent run is starting."}):null]}),t.jsx("div",{className:"team-ai-thread-composer",children:t.jsx(U,{mode:"dock",surface:"team",teamUseModel:!1,teamUseModelLocked:!0,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:e.busy||h,running:h,interruptRunningTurnBeforeSteer:!1,submissionScopeKey:`team-agent:${n.conversationId}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:e.provider,model:e.model,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:d=>{m.current=null,s(d)},showToast:e.showToast,onSubmit:async(d,g,y,a)=>b(a?.promptOverride),onStop:()=>!1})})]})}function Ke(e){const[l,s]=o.useState(""),n=e.aiThread,c=new Map(e.members.map(a=>[a.userId,a])),r=n.turns.at(-1)??null,m=o.useRef(null),C=n.messages.at(-1)?.sequence??0,h=o.useRef(null),b=Q.has(e.provider)?e.provider:"codex",d=b===e.provider?e.model:"gpt-5.6-sol",g=!!(n.activeTurn&&(n.activeTurn.status==="pending"||n.activeTurn.status==="running"));o.useEffect(()=>{const a=m.current;a&&(a.scrollTop=a.scrollHeight)},[C,n.activeTurn?.partialBody]),o.useEffect(()=>{h.current?.focus();const a=x=>{x.key==="Escape"&&(x.preventDefault(),e.onCloseAiThread())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[e.onCloseAiThread]);async function y(a){const x=await e.onSendAiTurn({body:a??l,providerId:b,modelId:d});return x&&s(""),x}return t.jsxs("aside",{className:"workspace-diff-panel team-ai-thread-panel","aria-label":"AI thread",children:[e.onResizeStart?t.jsx("div",{className:"workspace-diff-resize-handle",role:"separator","aria-label":"Resize AI thread panel","aria-orientation":"vertical",onPointerDown:e.onResizeStart}):null,t.jsxs("header",{children:[t.jsxs("div",{children:[t.jsx(E,{size:15}),t.jsx("strong",{children:"AI thread"}),t.jsxs("span",{children:[n.messages.length," messages"]})]}),t.jsx("button",{ref:h,type:"button",className:"team-chat-icon-button","data-tooltip":"Close thread","aria-label":"Close thread",onClick:e.onCloseAiThread,children:t.jsx(R,{size:16})})]}),t.jsxs("div",{className:"team-ai-thread-messages",ref:m,role:"log","aria-live":"polite","aria-relevant":"additions text",tabIndex:0,children:[n.messages.map(a=>t.jsxs("article",{className:`team-ai-message ${a.role}`,children:[t.jsxs("div",{className:"team-ai-message-author",children:[a.role==="assistant"?t.jsx(T,{size:14}):null,t.jsx("strong",{children:a.role==="assistant"?"Model":a.createdByUserId?c.get(a.createdByUserId)?.name??"Team member":"Team member"})]}),t.jsx(N,{connection:e.connection,content:a.body})]},a.id)),n.activeTurn?.partialBody?t.jsxs("article",{className:"team-ai-message assistant streaming",children:[t.jsxs("div",{className:"team-ai-message-author",children:[t.jsx(T,{size:14}),t.jsx("strong",{children:"Model"}),t.jsx("span",{children:n.activeTurn.status})]}),t.jsx(N,{connection:e.connection,content:n.activeTurn.partialBody})]}):n.activeTurn?t.jsx("div",{className:"team-ai-running",children:n.activeTurn.status==="pending"?"Starting model...":"Model is responding..."}):r&&["failed","interrupted","cancelled"].includes(r.status)?t.jsx("div",{className:`team-ai-turn-state ${r.status}`,children:r.status==="failed"?"Model response failed":r.status==="interrupted"?"Model response was interrupted":"Model response was cancelled"}):null]}),t.jsx("div",{className:"team-ai-thread-composer",children:t.jsx(U,{mode:"dock",surface:"team",teamUseModel:!0,teamUseModelLocked:!0,prompt:l,contextWindowStatus:e.contextWindowStatus,busy:g,running:g,submissionScopeKey:`team-ai:${n.conversationId}`,showProjectFooter:!1,connection:e.connection,providerSettings:e.providerSettings,provider:b,model:d,projectTarget:z,workspaceTarget:D,codexPermissionMode:e.codexPermissionMode,codexReasoningEffort:e.codexReasoningEffort,openPondCommandAccessMode:e.openPondCommandAccessMode,onProviderChange:e.onProviderChange,onProviderSetupOpen:e.onOpenProviderSettings,onProjectTargetChange:()=>{},onWorkspaceTargetChange:()=>{},onModelChange:e.onModelChange,onCodexPermissionModeChange:e.onCodexPermissionModeChange,onCodexReasoningEffortChange:e.onCodexReasoningEffortChange,onOpenPondCommandAccessModeChange:e.onOpenPondCommandAccessModeChange,onPromptChange:s,showToast:e.showToast,onSubmit:async(a,x,O,A)=>y(A?.promptOverride),onStop:e.onStopAiTurn})})]})}export{He as TeamAgentConversationPanel,Ke as TeamAiThreadPanel,We as TeamChatProView,Je as TeamChatView,ke as restoreFailedTeamChatPrompt};