dorkos 0.87.0 → 0.88.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 (88) hide show
  1. package/dist/bin/cli.js +1345 -39
  2. package/dist/client/assets/{AboutPage-BSUaz4JJ.js → AboutPage-xqba6OSc.js} +1 -1
  3. package/dist/client/assets/AdapterIcon-BfxdKjYz.js +1 -0
  4. package/dist/client/assets/{AppearancePage-CXOeapnY.js → AppearancePage-MXRyK6j4.js} +1 -1
  5. package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-BnlmhnMf.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-D6lj5D9_.js} +3 -3
  6. package/dist/client/assets/{BlintzCanvas-CPvaejf6.js → BlintzCanvas-BmTo8WiT.js} +1 -1
  7. package/dist/client/assets/{CanvasCsvContent-BQMcLeXX.js → CanvasCsvContent-C57uDWEL.js} +1 -1
  8. package/dist/client/assets/{CanvasFileContent-DZAWEzyp.js → CanvasFileContent-1qt_NtYW.js} +2 -2
  9. package/dist/client/assets/{CanvasModel3dContent-CU-0WLIz.js → CanvasModel3dContent-CJ2bwQjt.js} +2 -2
  10. package/dist/client/assets/{CodeMirrorDiff-B705Z174.js → CodeMirrorDiff-6LU4OiJj.js} +1 -1
  11. package/dist/client/assets/{CodeMirrorEditor-CnoVRaAX.js → CodeMirrorEditor-Jq49Np0j.js} +1 -1
  12. package/dist/client/assets/{ConnectionAccessLists-CLulSQsd.js → ConnectionAccessLists-uBJL31Ay.js} +1 -1
  13. package/dist/client/assets/ConnectionsPage-BAcGLK2V.js +11 -0
  14. package/dist/client/assets/{ConventionPage-CPTqeeNZ.js → ConventionPage-DdKmGIcU.js} +3 -3
  15. package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-C3cf2ADt.js → FloatingTanStackRouterDevtools-CqogiFob-9LderCq4.js} +1 -1
  16. package/dist/client/assets/HandlePage-C6lAHsBo.js +1 -0
  17. package/dist/client/assets/{LexicalField-ClgIzBq7.js → LexicalField-DsPLNKLN.js} +1 -1
  18. package/dist/client/assets/{ManagesPage-CKzcFzKR.js → ManagesPage-C34dzjEv.js} +1 -1
  19. package/dist/client/assets/{Model3dViewer-CVVsdftR.js → Model3dViewer-PXpUR_oW.js} +1 -1
  20. package/dist/client/assets/NamePage-C0Mhnk4v.js +1 -0
  21. package/dist/client/assets/{NotificationsPage-D3m6Jrm2.js → NotificationsPage-CTPdo_E9.js} +1 -1
  22. package/dist/client/assets/{PermissionsPage-CviWqCJ3.js → PermissionsPage-Ij8O_uFN.js} +1 -1
  23. package/dist/client/assets/{PersonalityPopover-BN1CFq8D.js → PersonalityPopover-D0pS2YVR.js} +1 -1
  24. package/dist/client/assets/PhotoPage-DK8jrI66.js +1 -0
  25. package/dist/client/assets/{RoomsPage-CoZd-4Xe.js → RoomsPage-C_jMQGJC.js} +1 -1
  26. package/dist/client/assets/{RunsOnPopover-91nKS6qj.js → RunsOnPopover-Dj0c45ua.js} +1 -1
  27. package/dist/client/assets/{SessionsPage-DDrQLNW-.js → SessionsPage-BMABy-lt.js} +2 -2
  28. package/dist/client/assets/{SkillsPage-2H6QD77F.js → SkillsPage-CSUclnmu.js} +1 -1
  29. package/dist/client/assets/{TasksPage-ocRUPiec.js → TasksPage-COCsTj5k.js} +1 -1
  30. package/dist/client/assets/{ToolsPage-q3wxIc3n.js → ToolsPage-CIgwvhZM.js} +2 -2
  31. package/dist/client/assets/{TopologyGraph-DeRqfLBW.js → TopologyGraph-BOcP_UPd.js} +3 -3
  32. package/dist/client/assets/{agent-browser-C7Q5muxI.js → agent-browser-Cm6bXvCt.js} +1 -1
  33. package/dist/client/assets/{highlighted-body-KPVGNVTW-CYowLe07.js → highlighted-body-KPVGNVTW-CmLzbGDT.js} +1 -1
  34. package/dist/client/assets/{index-BX9en7bH.js → index-20DQ0WIE.js} +1 -1
  35. package/dist/client/assets/{index-6F4HxV-x.js → index-B5b98af8.js} +1 -1
  36. package/dist/client/assets/{index-SGZRUhq4.js → index-B9kyvuKW.js} +1 -1
  37. package/dist/client/assets/{index-CpZi173j.js → index-BndjtRZA.js} +1 -1
  38. package/dist/client/assets/{index-CCLVR1so.js → index-BvuOztsk.js} +1 -1
  39. package/dist/client/assets/{index-BwbRY8dK.js → index-BxfmjO0b.js} +1 -1
  40. package/dist/client/assets/{index-qWahGPGi.js → index-C4GR43mL.js} +1 -1
  41. package/dist/client/assets/{index-1dt_mWBC.js → index-C7jBVjvK.js} +1 -1
  42. package/dist/client/assets/{index-DsRm4kZF.js → index-CLJKvTfN.js} +1 -1
  43. package/dist/client/assets/{index-GiEn7nQQ.js → index-CQzyikQJ.js} +1 -1
  44. package/dist/client/assets/{index-BeqTVkgE.js → index-CRom-Nt5.js} +1 -1
  45. package/dist/client/assets/{index-VLhj4QNP.js → index-CV_tZl11.js} +1 -1
  46. package/dist/client/assets/{index-otf5JgVx.js → index-Cd9I6lUD.js} +1 -1
  47. package/dist/client/assets/{index-CKHPMgwE.js → index-CqP01Nbn.js} +1 -1
  48. package/dist/client/assets/{index-sMuUIc_W.js → index-D1Y7OlGq.js} +2 -2
  49. package/dist/client/assets/index-D5zhwLA1.js +1 -0
  50. package/dist/client/assets/{index-snpaQsNQ.js → index-D6Noae7w.js} +1 -1
  51. package/dist/client/assets/{index-CxZB8Cqj.js → index-DArP7LVM.js} +1 -1
  52. package/dist/client/assets/{index-BkFaL4dr.js → index-DBrS_qK1.js} +1 -1
  53. package/dist/client/assets/{index-D8fmSjjO.js → index-DIAn8UxO.js} +1 -1
  54. package/dist/client/assets/{index-34_CucI4.js → index-DOZ6l8Os.js} +1 -1
  55. package/dist/client/assets/{index-CbxbAPgT.js → index-DWOxbvGH.js} +1 -1
  56. package/dist/client/assets/{index-D_Pj9S7y.js → index-D_3Gtukh.js} +1 -1
  57. package/dist/client/assets/{index-Da-4WWcu.js → index-DpN4Unzc.js} +1 -1
  58. package/dist/client/assets/{index-DT3ci-3h.js → index-DrRfKYSH.js} +1 -1
  59. package/dist/client/assets/index-DtWF2VPM.css +1 -0
  60. package/dist/client/assets/{index-D45q57-5.js → index-Gs10j_MB.js} +1 -1
  61. package/dist/client/assets/{index-CvQeke9n.js → index-GxKQ7usg.js} +3 -3
  62. package/dist/client/assets/{index-B4TIVWAq.js → index-_1qDsPCM.js} +431 -436
  63. package/dist/client/assets/{index-CuEwCZKH.js → index-irBM12M1.js} +5 -5
  64. package/dist/client/assets/{index-BzVyUKXW.js → index-mHL0gmHU.js} +3 -3
  65. package/dist/client/assets/{index-Cm0G2vDh.js → index-noUdLKRN.js} +1 -1
  66. package/dist/client/assets/{index-Bv_P5_tJ.js → index-r8MCK2Zn.js} +1 -1
  67. package/dist/client/assets/{index-B029XwR8.js → index-rEcs1cWl.js} +1 -1
  68. package/dist/client/assets/{index-CEw2JwVz.js → index-vlk24smC.js} +1 -1
  69. package/dist/client/assets/{index-C0oow5Fn.js → index-wIEie2VH.js} +1 -1
  70. package/dist/client/assets/{index-DDagpuEn.js → index-wpJKx9Mi.js} +1 -1
  71. package/dist/client/assets/{room-files-source-C3tzeG6y.js → room-files-source-Tt08gsJM.js} +2 -2
  72. package/dist/client/assets/{soul-file-tc6-HkDy.js → soul-file-BWnNRUqb.js} +1 -1
  73. package/dist/client/assets/{use-personality-commit-vpAu5T8A.js → use-personality-commit-CKnXk3oQ.js} +1 -1
  74. package/dist/client/index.html +2 -2
  75. package/dist/drizzle/0116_unshared_connections_ready.sql +27 -0
  76. package/dist/drizzle/0117_session_limits.sql +12 -0
  77. package/dist/drizzle/meta/0116_snapshot.json +9146 -0
  78. package/dist/drizzle/meta/0117_snapshot.json +9226 -0
  79. package/dist/drizzle/meta/_journal.json +14 -0
  80. package/dist/server/index.js +35580 -32939
  81. package/dist/server/index.js.map +2 -2
  82. package/package.json +5 -5
  83. package/dist/client/assets/ConnectionsPage-5Yc0-dNp.js +0 -1
  84. package/dist/client/assets/HandlePage-CUJPQsdv.js +0 -1
  85. package/dist/client/assets/NamePage-CYHYXhrs.js +0 -1
  86. package/dist/client/assets/PhotoPage-ytqVZP3t.js +0 -1
  87. package/dist/client/assets/index-BUcM96PD.css +0 -1
  88. package/dist/client/assets/index-CqfEH_t6.js +0 -1
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/dist/server/index.js.map
3
- size: 40973823 bytes
4
- sha256: 92b5a85b6ea46cfb264e1b4c7a9b22339e4925ad63f0c8b201a2a896bd38a9ce
3
+ size: 41262657 bytes
4
+ sha256: 12b020303b21d5d18b3a978dabf4e4b2e3b8d7992c0e76d00d19e5e1b4ee5089
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dorkos",
3
- "version": "0.87.0",
3
+ "version": "0.88.0",
4
4
  "description": "You, multiplied. All your agents in one place: Claude Code, Codex, and OpenCode. See every session, approve what your agents do, and run them on a schedule. Self-hosted, MIT.",
5
5
  "license": "MIT",
6
6
  "author": "Dorian Collier",
@@ -83,13 +83,13 @@
83
83
  "tsx": "^4.23.13",
84
84
  "typescript": "^5.9.3",
85
85
  "vitest": "^4.1.11",
86
- "@dorkos/db": "0.0.0",
87
- "@dorkos/harness": "0.0.0",
88
86
  "@dorkos/eslint-config": "0.0.0",
89
- "@dorkos/server": "0.0.0",
90
- "@dorkos/shared": "0.0.0",
87
+ "@dorkos/harness": "0.0.0",
91
88
  "@dorkos/marketplace": "0.0.0",
92
89
  "@dorkos/typescript-config": "0.0.0",
90
+ "@dorkos/server": "0.0.0",
91
+ "@dorkos/shared": "0.0.0",
92
+ "@dorkos/db": "0.0.0",
93
93
  "@dorkos/client": "0.0.0"
94
94
  },
95
95
  "scripts": {
@@ -1 +0,0 @@
1
- import{ad as G,cV as H,r,dv as K,aE as Y,j as e,dw as F,aj as I,dx as E,dy as Z,W as L,cq as J,cr as Q,cs as X,dz as ee,dA as se,B as M,dB as ae,dC as te,dD as R,aD as ne,dE as ie,dF as _,dG as re,dH as ce,dI as de,dJ as oe,dK as le,dL as me,dM as ue,dN as xe,dO as pe,dP as ge,dQ as he,dR as fe,dS as je,P as ye,dT as ve,dU as Ne,dV as Ce,dW as be,dX as Te,dY as Ie,dZ as we,d_ as Ae,d$ as U,aY as N,e0 as Se,e1 as ke,e2 as De,e3 as Re,e4 as Pe,e5 as $,u as Ee,a as Me}from"./index-B4TIVWAq.js";import{A as Be}from"./ConnectionAccessLists-CLulSQsd.js";import"./agent-browser-C7Q5muxI.js";function ze(){const t=G();return H({mutationFn:i=>t.testBinding(i),meta:{errorLabel:"Test failed"}})}const Oe={connected:E.connected,disconnected:Z.warning,error:E.error,connecting:E.starting};function Fe(t){const i=[];return t.canInitiate&&i.push("Can start conversations"),t.canReply||i.push("Cannot reply"),t.canReceive||i.push("Cannot receive"),i.join(" · ")}function Le({binding:t,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:p,errorMessage:g,chatDisplayName:h,lastMessageAt:o,onTogglePause:f,onTest:n,onEdit:m,onRemove:u}){const[a,d]=r.useState(!1),[j,v]=r.useState(!1),x=t.enabled===!1,[w,A]=r.useState(0);r.useEffect(()=>{if(!o||x)return;const C=setInterval(()=>A(s=>s+1),6e4);return()=>clearInterval(C)},[o,x]);const B=h?`${i} · ${h}`:i,S=K({sessionStrategy:t.sessionStrategy,chatDisplayName:h,channelType:t.channelType}),k=t.canInitiate||!t.canReply||!t.canReceive,z=k?Fe(t):"",D=r.useMemo(()=>x?"Paused — no messages routing":o?`Last received ${Y(o).toLowerCase()}`:"No recent activity",[x,o,w]),O=async()=>{v(!0);try{await n()}finally{v(!1)}};return e.jsxs("div",{className:I("relative rounded-xl border px-4 py-3 transition-colors",p==="error"&&!x&&"border-red-500/50 bg-red-500/[0.02]",x&&"opacity-60"),children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(F,{iconId:y,adapterType:l,size:32}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-2.5 rounded-full ring-2",x?"bg-muted-foreground/40":Oe[p])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"truncate text-sm font-medium",children:B}),x&&e.jsx(L,{variant:"secondary",children:"Paused"})]}),x?e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D}):p==="error"&&g?e.jsx("p",{className:"text-xs text-red-600 dark:text-red-400",children:g}):e.jsxs(e.Fragment,{children:[S&&e.jsx("p",{className:"text-muted-foreground truncate text-xs italic",children:S}),e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D})]})]}),k&&e.jsxs(J,{children:[e.jsx(Q,{asChild:!0,children:e.jsx(L,{variant:"outline",children:"Restricted"})}),e.jsx(X,{children:z})]}),e.jsxs(ee,{children:[e.jsx(se,{asChild:!0,children:e.jsxs(M,{variant:"ghost",size:"icon-md",responsive:!1,className:"h-8 w-8 shrink-0",children:[e.jsx(ae,{className:"size-4"}),e.jsx("span",{className:"sr-only",children:"Actions"})]})}),e.jsxs(te,{align:"end",children:[e.jsxs(R,{onClick:O,disabled:j||x,children:[j?e.jsx(ne,{className:"mr-2"}):e.jsx(ie,{className:"mr-2 size-(--size-icon-sm)"}),"Send test"]}),e.jsx(_,{}),e.jsx(R,{onClick:()=>f(!t.enabled),children:x?e.jsxs(e.Fragment,{children:[e.jsx(re,{className:"mr-2 size-4"}),"Resume"]}):e.jsxs(e.Fragment,{children:[e.jsx(ce,{className:"mr-2 size-4"}),"Pause"]})}),e.jsx(_,{}),e.jsx(R,{onClick:m,children:"Edit"}),e.jsx(R,{onClick:()=>d(!0),className:"text-destructive focus:text-destructive",children:"Remove"})]})]})]}),e.jsx(de,{open:a,onOpenChange:d,children:e.jsxs(oe,{children:[e.jsxs(le,{children:[e.jsx(me,{children:"Remove connection"}),e.jsxs(ue,{children:["Remove the connection to ",i,"? The agent will no longer receive messages from it."]})]}),e.jsxs(xe,{children:[e.jsx(pe,{children:"Cancel"}),e.jsx(ge,{onClick:()=>{u(),d(!1)},className:"bg-red-600 hover:bg-red-700",children:"Remove"})]})]})})]})}function _e({binding:t,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:p,errorMessage:g,onTogglePause:h,onTest:o,onEdit:f,onRemove:n}){const{data:m=[]}=he(t.adapterId),u=t.chatId?m.find(j=>j.chatId===t.chatId):void 0,a=(u==null?void 0:u.displayName)??(t.chatId?`#${t.chatId.slice(-4)}`:void 0),d=r.useMemo(()=>{if(u)return u.lastMessageAt;if(m.length!==0)return m.reduce((j,v)=>v.lastMessageAt>j?v.lastMessageAt:j,m[0].lastMessageAt)},[u,m]);return e.jsx(Le,{binding:t,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:p,errorMessage:g,chatDisplayName:a,lastMessageAt:d,onTogglePause:h,onTest:o,onEdit:f,onRemove:n})}function q({catalog:t,boundAdapterIds:i,onSelectIntegration:y,onRequestSetup:l,disabled:p}){const[g,h]=r.useState(!1),o=r.useMemo(()=>t.flatMap(a=>a.instances.map(d=>({id:d.id,displayName:d.status.displayName??a.manifest.displayName,label:d.label,state:d.status.state,isDisabled:d.status.state==="error"||!d.enabled,alreadyBound:i.has(d.id),iconId:a.manifest.iconId,adapterType:a.manifest.type}))),[t,i]),f=r.useMemo(()=>t.filter(a=>!a.manifest.deprecated&&(a.instances.length===0||a.manifest.multiInstance)),[t]);function n(a){y(a),h(!1)}function m(a){h(!1),l(a)}const u=o.length===0&&f.length===0;return e.jsxs(fe,{open:g,onOpenChange:h,children:[e.jsx(je,{asChild:!0,children:e.jsxs(M,{variant:"outline",size:"sm",disabled:p,children:[e.jsx(ye,{className:"mr-1.5 size-3.5"}),"Add connection"]})}),e.jsx(ve,{className:"w-72 p-0",align:"start",children:e.jsx("div",{className:"max-h-64 overflow-y-auto",children:u?e.jsx("div",{className:"px-3 py-4 text-center",children:e.jsx("p",{className:"text-muted-foreground text-sm",children:"No connections available"})}):e.jsxs(e.Fragment,{children:[o.length>0&&e.jsx("div",{className:"py-1",children:o.map(a=>e.jsxs("button",{disabled:a.isDisabled||a.alreadyBound,onClick:()=>n(a.id),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50"),children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(F,{iconId:a.iconId,adapterType:a.adapterType,size:20,className:"text-muted-foreground"}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-1.5 rounded-full ring-[1.5px]",E[a.state])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"truncate font-medium",children:a.displayName}),a.label&&e.jsx("p",{className:"text-muted-foreground truncate text-xs",children:a.label})]}),e.jsx("span",{className:"text-muted-foreground/60 text-xs",children:a.alreadyBound?"Connected":Ne[a.state]})]},a.id))}),f.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"border-t"}),e.jsxs("div",{className:"py-1",children:[e.jsx("p",{className:"text-muted-foreground px-3 py-1 text-xs font-medium",children:"Available to set up"}),f.map(a=>e.jsxs("button",{onClick:()=>m(a.manifest),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent"),children:[e.jsx(F,{iconId:a.manifest.iconId,adapterType:a.manifest.type,size:14,className:"text-muted-foreground shrink-0"}),e.jsx("span",{className:"truncate font-medium",children:a.manifest.displayName})]},a.manifest.type))]})]})]})})})]})}const P={open:!1,binding:null,adapterName:""},W={open:!1};function $e({agent:t}){const i=Ce(),{data:y=[]}=be(),{data:l=[]}=Te(i),p=Ie(),g=we(),h=ze(),o=Ae(),f=U(),[n,m]=r.useState(P),[u,a]=r.useState(W),d=y.filter(s=>s.agentId===t.id),j=r.useMemo(()=>{const s=new Map;for(const c of l)for(const b of c.instances){const T=b.status.state,V=T==="connected"||T==="error"?T:T==="starting"||T==="stopping"||T==="reconnecting"?"connecting":"disconnected";s.set(b.id,{state:V,name:b.status.displayName??c.manifest.displayName,iconId:c.manifest.iconId,adapterType:c.manifest.type,errorMessage:b.status.lastError??void 0})}return s},[l]),v=r.useCallback(s=>j.get(s)??{state:"disconnected",name:s,adapterType:s},[j]),x=r.useMemo(()=>new Set(d.map(s=>s.adapterId)),[d]),w=r.useCallback(async s=>{try{await p.mutateAsync({adapterId:s,agentId:t.id,sessionStrategy:"per-chat",label:"",canInitiate:!1,canReply:!0,canReceive:!0}),N.success("Connection added")}catch{}},[t.id,p]),A=r.useCallback(s=>{a({open:!0,manifest:s})},[]),B=r.useCallback(s=>{m({open:!0,binding:s,adapterName:v(s.adapterId).name})},[v]),S=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed")}catch{}},[g]),k=r.useCallback(async(s,c)=>{try{await o.mutateAsync({id:s,updates:{enabled:c}}),N.success(c?"Connection resumed":"Connection paused")}catch{}},[o]),z=r.useCallback(async s=>{const c=await h.mutateAsync(s);return c.ok?N.success(`Test OK: routed in ${c.latencyMs}ms`):N.error(`Test failed: ${c.reason??"unknown error"}`),c},[h]),D=r.useCallback(async s=>{if(n.binding)try{await o.mutateAsync({id:n.binding.id,updates:Se(s)}),N.success("Connection updated"),m(P)}catch{}},[n.binding,o]),O=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed"),m(P)}catch{}},[g]),C=e.jsxs(e.Fragment,{children:[n.binding&&e.jsx(ke,{open:n.open,onOpenChange:s=>{s||m(P)},mode:"edit",initialValues:{adapterId:n.binding.adapterId,agentId:n.binding.agentId,sessionStrategy:n.binding.sessionStrategy,label:n.binding.label,permissionMode:n.binding.permissionMode,chatId:n.binding.chatId,channelType:n.binding.channelType,canInitiate:n.binding.canInitiate,canReply:n.binding.canReply,canReceive:n.binding.canReceive,notifyOnTaskComplete:n.binding.notifyOnTaskComplete},adapterName:n.adapterName,agentName:De(t),bindingId:n.binding.id,onConfirm:D,onDelete:O,isPending:o.isPending||g.isPending}),u.manifest&&e.jsx(Re,{open:u.open,onOpenChange:s=>{s||a(W)},manifest:u.manifest,existingAdapterIds:l.flatMap(s=>s.instances.map(c=>c.id))})]});return i?l.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"No connections available"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"To connect this agent to Telegram, Slack, or a webhook, add a connection first. It will appear here as soon as it’s ready."})]}),e.jsx(M,{variant:"outline",size:"sm",onClick:()=>f("messaging"),children:"Add a connection"})]}),C]}):d.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Let this agent reach the outside world"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Connect Telegram, Slack, or a webhook so this agent can send and receive messages while you are away."})]}),e.jsx(q,{catalog:l,boundAdapterIds:x,onSelectIntegration:w,onRequestSetup:A,disabled:p.isPending})]}),C]}):e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"space-y-2",children:d.map(s=>{const c=v(s.adapterId);return e.jsx(_e,{binding:s,integrationName:c.name,integrationIconId:c.iconId,integrationAdapterType:c.adapterType,adapterState:c.state,errorMessage:c.errorMessage,onTogglePause:b=>k(s.id,b),onTest:()=>z(s.id),onEdit:()=>B(s),onRemove:()=>S(s.id)},s.id)})}),e.jsx(q,{catalog:l,boundAdapterIds:x,onSelectIntegration:w,onRequestSetup:A,disabled:p.isPending}),C]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx(Pe,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Messaging is off"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Connections link this agent to messaging platforms. Turn on Messaging in Settings to get started."})]}),e.jsx(M,{variant:"outline",size:"sm",onClick:()=>f("messaging"),children:"Open Messaging settings"})]}),C]})}function Ve({member:t}){const{agent:i,isPending:y}=Ee(t),l=U();return y?e.jsx(Me,{className:"h-32 w-full"}):i?e.jsxs("div",{className:"space-y-6",children:[e.jsx(Be,{agentId:i.id,onManage:()=>l("accounts")}),e.jsxs("section",{"aria-labelledby":"agent-messaging-access",className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("h3",{id:"agent-messaging-access",className:"text-sm font-semibold",children:"Messaging"}),e.jsx("p",{className:"text-muted-foreground mt-0.5 text-xs",children:"Places where people can reach this agent."})]}),e.jsx($e,{agent:i})]})]}):e.jsx("p",{className:"text-muted-foreground text-sm",children:"Couldn’t read this agent’s connections."})}export{Ve as ConnectionsPage};
@@ -1 +0,0 @@
1
- import{j as r,i}from"./index-B4TIVWAq.js";function o({member:e}){return r.jsx(i,{member:e})}export{o as HandlePage};
@@ -1 +0,0 @@
1
- import{j as r,h as o}from"./index-B4TIVWAq.js";function a({member:e}){return r.jsx(o,{member:e})}export{a as NamePage};
@@ -1 +0,0 @@
1
- import{j as t,k as r}from"./index-B4TIVWAq.js";function i({member:o}){return t.jsx(r,{member:o})}export{i as PhotoPage};