@mndrk/agx 2.0.22 → 2.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
- package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__3fe0b1a1._.js → [root-of-the-server]__d2c48923._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_d743f11d._.js → _8bbe2ac1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_cf5fdbfb._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_d021529a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_agents_page_tsx_f5f08ed8._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
- package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/.next/server/pages/404.html +1 -1
- package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/2a3594d4cb2efe79.css +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/78f6cef7d2129d30.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/81704a1c525bf2ee.js +1 -0
- package/cloud-runtime/standalone/app/agents/page.tsx +19 -214
- package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +99 -91
- package/package.json +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_2da02644._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_60f7e403._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_icons_001a8448._.js +0 -3
- package/cloud-runtime/standalone/.next/static/chunks/1f1b912fe2e3d5bd.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/4b3358c52d01a3f9.css +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/5488a71a8515e8b2.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/5ce01dbd17ce3bb2.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/b649593a57df218f.js +0 -1
- /package/cloud-runtime/standalone/.next/static/{H3MuYxcqCPfZoSC2uYW8f → R2CPNTvy5domQF90j_DYV}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/.next/static/{H3MuYxcqCPfZoSC2uYW8f → R2CPNTvy5domQF90j_DYV}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/.next/static/{H3MuYxcqCPfZoSC2uYW8f → R2CPNTvy5domQF90j_DYV}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,55436,e=>{"use strict";let t=(0,e.i(75254).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);e.s(["Search",()=>t],55436)},27612,e=>{"use strict";let t=(0,e.i(75254).default)("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);e.s(["Trash2",()=>t],27612)},11132,e=>{"use strict";var t=e.i(18050),s=e.i(71645);let a={name:"",description:""},r={name:"",path:"",notes:""};function l(){let[e,t]=(0,s.useState)(a),[l,i]=(0,s.useState)([r]),[n,o]=(0,s.useState)(!1),[d,c]=(0,s.useState)(null),p=(0,s.useCallback)((e,t,s)=>{i(a=>a.map((a,r)=>r===e?{...a,[t]:s}:a))},[]),x=(0,s.useCallback)(()=>{i(e=>[...e,{...r}])},[]),m=(0,s.useCallback)(e=>{i(t=>t.filter((t,s)=>s!==e))},[]),u=(0,s.useCallback)(()=>{t(a),i([r]),c(null)},[]),h=(0,s.useCallback)(e=>{t({name:e.name||"",description:e.description||""}),e.repos&&e.repos.length>0?i(e.repos.map(e=>({id:e.id,name:e.name||"",path:e.path||"",git_url:e.git_url||"",notes:e.notes||""}))):i([r]),c(null)},[]);return{form:e,setForm:t,repos:l,handleRepoChange:p,addRepo:x,removeRepo:m,resetForm:u,hydrateFromProject:h,isSubmitting:n,setIsSubmitting:o,formError:d,setFormError:c}}function i(e,t){let s=t.filter(e=>e.name.trim()&&e.path.trim()).map(e=>({...e.id?{id:e.id}:{},name:e.name.trim(),path:e.path.trim(),...e.git_url?.trim()?{git_url:e.git_url.trim()}:{},notes:e.notes.trim()||void 0}));return{name:e.name.trim(),description:e.description.trim()||void 0,repos:s.length?s:void 0}}function n({form:e,repos:a,isEditingProject:r,isSubmitting:l,onFieldChange:i,onRepoChange:n,onAddRepo:o,onRemoveRepo:d}){let[c,p]=(0,s.useState)([]),x=(0,s.useRef)(0);(0,s.useEffect)(()=>{r?p([]):p(a.map((e,t)=>t)),x.current=a.length},[r,a.length]),(0,s.useEffect)(()=>{if(!r){x.current=a.length;return}let e=x.current;p(t=>{let s=t.filter(e=>e<a.length);return a.length>e&&s.push(...Array.from({length:a.length-e},(t,s)=>e+s)),s}),x.current=a.length},[r,a.length]);let m=(0,s.useCallback)(e=>{p(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e])},[]),u=(0,s.useCallback)(e=>!r||c.includes(e),[c,r]);return(0,t.jsxs)("div",{className:"space-y-6",children:[(0,t.jsx)("div",{className:"grid gap-4",children:(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Project Name"}),(0,t.jsx)("input",{value:e.name,onChange:e=>i("name",e.target.value),className:"input w-full",placeholder:"e.g. AGX Cloud",disabled:l})]})}),(0,t.jsxs)("label",{className:"space-y-1.5 block",children:[(0,t.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Description"}),(0,t.jsx)("textarea",{value:e.description,onChange:e=>i("description",e.target.value),className:"input w-full h-24 resize-none",placeholder:"What is this project about?",disabled:l})]}),(0,t.jsxs)("div",{className:"space-y-4",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--card-border)] pb-2",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"Repositories"}),(0,t.jsx)("button",{type:"button",onClick:o,className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:l,children:"+ Add Repository"})]}),(0,t.jsx)("div",{className:"space-y-4",children:a.map((e,s)=>(0,t.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 space-y-3 relative group",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between",children:[(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"text-xs font-bold text-[var(--foreground)] uppercase",children:["Repo #",s+1]}),r&&!u(s)?(0,t.jsxs)("div",{className:"mt-1 text-sm text-[var(--muted-foreground)]",children:[(0,t.jsx)("div",{children:e.name||"Unnamed repository"}),(0,t.jsx)("div",{className:"truncate",children:e.path||"No local path set"})]}):null]}),(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[r&&(0,t.jsx)("button",{type:"button",onClick:()=>m(s),className:"text-xs font-semibold text-[var(--primary)] hover:underline",disabled:l,children:u(s)?"Done":"Edit"}),a.length>1&&(0,t.jsx)("button",{type:"button",onClick:()=>d(s),className:"text-xs font-semibold text-[var(--destructive)] hover:underline",disabled:l,children:"Remove"})]})]}),u(s)?(0,t.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,t.jsx)("input",{value:e.name,onChange:e=>n(s,"name",e.target.value),placeholder:"Name (e.g. Frontend)",className:"input text-sm",disabled:l}),(0,t.jsx)("input",{value:e.path,onChange:e=>n(s,"path",e.target.value),placeholder:"Local path (mandatory)",className:"input text-sm",disabled:l}),(0,t.jsx)("div",{className:"md:col-span-2",children:(0,t.jsx)("textarea",{value:e.notes,onChange:e=>n(s,"notes",e.target.value),placeholder:"Repo-specific rules and notes (placeholder for conventions, constraints, ownership, deploy notes...)",className:"input text-sm w-full min-h-24 resize-y",disabled:l})})]}):null]},s))})]})]})}function o({isOpen:e,onClose:a,onSubmit:r,editingProject:l,form:i,repos:o,isSubmitting:d,formError:c,onFieldChange:p,onRepoChange:x,onAddRepo:m,onRemoveRepo:u}){let[h,b]=(0,s.useState)([]);return((0,s.useEffect)(()=>{let e=!1;return async function(){if(!l)return b([]);try{let t=await fetch(`/api/projects/${l.id}/memory?producer=system`),s=t.ok?await t.json():{memory:[]};e||b(s.memory??[])}catch{e||b([])}}(),()=>{e=!0}},[l]),e)?(0,t.jsx)("div",{className:"modal-backdrop p-2 sm:p-4 z-50 overflow-y-auto flex items-center justify-center",onClick:e=>e.target===e.currentTarget&&a(),children:(0,t.jsxs)("div",{className:"modal-content w-full max-w-4xl mx-2 sm:mx-auto bg-[var(--card-bg)] rounded-3xl border border-[var(--card-border)] shadow-2xl animate-scale-in flex flex-col max-h-[90vh]",children:[(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-b border-[var(--card-border)] flex items-center justify-between flex-shrink-0",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("h2",{className:"text-xl font-bold",children:l?"Edit Project":"Create New Project"}),(0,t.jsx)("p",{className:"text-xs text-[var(--muted-foreground)] mt-0.5",children:l?"Update your project settings and repositories.":"Define a new project and connect repositories."})]}),(0,t.jsx)("button",{onClick:a,className:"p-2 rounded-xl hover:bg-[var(--muted)]/50 transition-colors",children:(0,t.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,t.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]}),(0,t.jsxs)("div",{className:"flex-1 overflow-y-auto p-4 sm:p-8",children:[l&&(0,t.jsx)("div",{className:"mb-6",children:(0,t.jsxs)("div",{className:"rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 p-4",children:[(0,t.jsx)("h3",{className:"text-sm font-bold uppercase tracking-widest text-[var(--muted-foreground)]",children:"System-Generated Project Knowledge"}),h.length>0?(0,t.jsx)("div",{className:"mt-3 space-y-2",children:h.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-xl border border-[var(--card-border)] bg-white px-3 py-2 text-sm text-[var(--foreground)]",children:[(0,t.jsx)("div",{children:e.content}),e.created_at?(0,t.jsx)("div",{className:"mt-1 text-[11px] text-[var(--muted-foreground)]",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,t.jsx)("p",{className:"mt-2 text-sm text-[var(--muted-foreground)]",children:"No system-generated project knowledge candidates yet."})]})}),(0,t.jsx)(n,{form:i,repos:o,isEditingProject:!!l,isSubmitting:d,onFieldChange:p,onRepoChange:x,onAddRepo:m,onRemoveRepo:u}),c&&(0,t.jsx)("div",{className:"mt-6 p-4 rounded-xl bg-[var(--destructive-muted)] border border-[var(--destructive)]/20 text-sm text-[var(--destructive)]",children:c})]}),(0,t.jsxs)("div",{className:"px-4 py-4 sm:px-8 sm:py-6 border-t border-[var(--card-border)] flex items-center justify-end gap-3 flex-shrink-0",children:[(0,t.jsx)("button",{onClick:a,className:"px-6 py-2 rounded-xl border border-[var(--card-border)] hover:bg-[var(--muted)]/50 transition-colors text-sm font-medium",children:"Cancel"}),(0,t.jsx)("button",{onClick:r,disabled:d,className:"btn-primary px-8 py-2 shadow-lg shadow-[var(--primary)]/20 min-w-[120px]",children:d?(0,t.jsxs)("span",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"spinner w-3 h-3 border-2 border-white/20 border-t-white"}),"Saving..."]}):l?"Save Changes":"Create Project"})]})]})}):null}e.s(["createProjectPayload",()=>i,"default",()=>o,"useProjectFormState",()=>l])},68542,31245,27025,54238,e=>{"use strict";var t=e.i(18050),s=e.i(71645),a=e.i(64659),r=e.i(63059),l=e.i(88081),i=e.i(75254);let n=(0,i.default)("bot",[["path",{d:"M12 8V4H8",key:"hb8ula"}],["rect",{width:"16",height:"12",x:"4",y:"8",rx:"2",key:"enze0r"}],["path",{d:"M2 14h2",key:"vft8re"}],["path",{d:"M20 14h2",key:"4cs60a"}],["path",{d:"M15 13v2",key:"1xurst"}],["path",{d:"M9 13v2",key:"rq6x2g"}]]);e.s(["Bot",()=>n],31245);let o=(0,i.default)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]]);e.s(["Folder",()=>o],27025);let d=(0,i.default)("folder-git-2",[["path",{d:"M18 19a5 5 0 0 1-5-5v8",key:"sz5oeg"}],["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v5",key:"1w6njk"}],["circle",{cx:"13",cy:"12",r:"2",key:"1j92g6"}],["circle",{cx:"20",cy:"19",r:"2",key:"1obnsp"}]]),c=(0,i.default)("panel-left-close",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}],["path",{d:"m16 15-3-3 3-3",key:"14y99z"}]]);var p=e.i(88699),x=e.i(7233),m=e.i(55436),u=e.i(27612);let h=(0,i.default)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]]);var b=e.i(37727),g=e.i(22016),j=e.i(25459),f=e.i(11132);function v({threads:e,participants:i=[],activeThreadId:v,isLoading:w,isCreating:k,onSelectThread:y,onCreateThread:N,onRenameThread:C,onDeleteThread:_,deletingThreadId:S=null,renamingThreadId:I=null,activeParticipantIds:z=[],onToggleParticipantActive:M,visible:P=!1,isRestoringActiveThread:A=!1,onToggle:R,onSearch:D,projects:L=[],onCreateProject:F,onUpdateProject:T,onDeleteProject:E,onAddAgentToProject:$,onRemoveAgentFromProject:K,onAddAgentViaForm:V,onReorderProjectAgents:B,onUpdateParticipant:U,onSelectProject:W}){let H,O,q=(0,s.useRef)(null),[G,J]=(0,s.useState)(new Set),[X,Y]=(0,s.useState)(null),[Z,Q]=(0,s.useState)(new Set),[ee,et]=(0,s.useState)(!1),[es,ea]=(0,s.useState)(null),[er,el]=(0,s.useState)(null),ei=(0,f.useProjectFormState)(),[en,eo]=(0,s.useState)(null),ed=(0,s.useCallback)(e=>{e&&(e.focus(),e.select())},[]),[ec,ep]=(0,s.useState)(null),[ex,em]=(0,s.useState)(null),eu=ex?i.find(e=>e.id===ex)??null:null,[eh,eb]=(0,s.useState)(null),[eg,ej]=(0,s.useState)(null),ef=e=>{J(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},ev=async()=>{if(!es&&!er)return;if(!ei.form.name.trim())return void ei.setFormError("Project name is required");let e=ei.repos.find(e=>e.name.trim()&&!e.path.trim());if(e)return void ei.setFormError(`Local path is required for repository "${e.name}"`);ei.setFormError(null),ei.setIsSubmitting(!0);let t=(0,f.createProjectPayload)(ei.form,ei.repos);er?await T?.(er.id,t):await F?.(t,es?.threadId),ei.setIsSubmitting(!1),ea(null),el(null)},ew=async e=>{ei.resetForm();try{let t=await fetch(`/api/projects/${e}`);if(!t.ok)throw Error("Failed to load project");let s=(await t.json()).project;el(s),ei.hydrateFromProject(s)}catch(e){console.error("Failed to load project settings",e)}};(0,s.useEffect)(()=>{let e=!1;async function t(){if(eh?.repoId)try{let t=await fetch(`/api/repos/${eh.repoId}/knowledge?producer=system`),s=t.ok?await t.json():{knowledge:[]};e||eb(e=>e&&e.repoId===eh.repoId?{...e,generatedKnowledge:s.knowledge??[],isLoadingKnowledge:!1}:e)}catch{e||eb(e=>e&&e.repoId===eh.repoId?{...e,generatedKnowledge:[],isLoadingKnowledge:!1}:e)}}return eh?.repoId&&t(),()=>{e=!0}},[eh?.repoId]);let ek=X?L.find(e=>e.id===X.projectId):null,ey=new Set(ek?.agents.map(e=>e.agent_id)??[]),eN=X?i.filter(e=>!ey.has(e.id)):[],eC=e.length>0,e_=!!P,eS=[...e].sort((e,t)=>(e.title??"").localeCompare(t.title??"")),eI=L.filter(e=>!e.is_default),ez=eS.filter(e=>!eI.some(t=>t.thread_ids?.includes(e.id)));!function({focusTarget:e,shouldFocus:t}){(0,s.useEffect)(()=>{if(!t||"u"<typeof document)return;let s=e.current;if(!s||s instanceof HTMLButtonElement&&s.disabled)return;let a=document.activeElement;if(!(a&&(s===a||s.contains(a))))try{s.focus({preventScroll:!0})}catch{s.focus()}},[e,t])}({focusTarget:q,shouldFocus:e_&&!(w&&!eC||A&&eC)&&!eC&&!k});let eM=()=>{eo({title:"Create thread",placeholder:"Thread title",defaultValue:"",onSubmit:e=>void N({title:e})})};return e_?(0,t.jsxs)("aside",{id:"workspace-sidebar",className:"workspace-sidebar","aria-label":"Workspace sidebar","aria-busy":w?"true":void 0,children:[(0,t.jsxs)("div",{className:"workspace-sidebar__brand",children:[(0,t.jsx)("div",{className:"flex items-center justify-center mr-2","aria-hidden":"true",children:(0,t.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[(0,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})}),R&&(0,t.jsx)("button",{type:"button",onClick:R,"aria-label":"Hide threads",title:"Hide threads",className:"ml-auto inline-flex h-7 w-7 items-center justify-center rounded-md text-slate-400 transition-all hover:bg-slate-100 hover:text-slate-600",children:(0,t.jsx)(c,{className:"h-4 w-4",strokeWidth:1.75})})]}),(0,t.jsxs)("div",{className:"workspace-sidebar__content",children:[D&&(0,t.jsx)("div",{className:"px-3 pt-2 pb-1",children:(0,t.jsxs)("button",{type:"button",onClick:D,className:"flex items-center gap-2 w-full h-8 px-2.5 rounded-lg border border-slate-200 bg-white text-slate-400 text-xs hover:border-slate-300 hover:text-slate-500 transition-all",children:[(0,t.jsx)(m.Search,{className:"h-3.5 w-3.5 shrink-0",strokeWidth:1.75}),(0,t.jsx)("span",{children:"Search..."}),(0,t.jsx)("kbd",{className:"ml-auto text-[10px] font-sans font-medium text-slate-300 bg-slate-50 border border-slate-200 rounded px-1 py-0.5",children:"⌘K"})]})}),(0,t.jsx)("nav",{className:"workspace-sidebar__section",style:{gap:0,marginTop:"1.5rem"},children:(0,t.jsxs)(g.default,{href:"/agents",className:"workspace-sidebar__section-link",children:[(0,t.jsx)(n,{size:13,className:"flex-shrink-0"}),"Manage Agents"]})}),(0,t.jsxs)("nav",{className:"workspace-sidebar__section",children:[(0,t.jsxs)("div",{className:"workspace-sidebar__section-header",children:[(0,t.jsx)("p",{className:"workspace-sidebar__section-label",children:"Projects"}),(0,t.jsx)("div",{className:"workspace-sidebar__header-actions",children:(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__action",onClick:()=>{ei.resetForm(),el(null),ea({})},"aria-label":"Create project",title:"Create project",children:(0,t.jsx)(x.Plus,{size:14})})})]}),eI.map(e=>{let s=G.has(e.id),n=eS.filter(t=>e.thread_ids?.includes(t.id));return(0,t.jsxs)("div",{children:[(0,t.jsxs)("div",{className:"workspace-sidebar__workspace-item group",children:[(0,t.jsxs)("button",{type:"button",className:"workspace-sidebar__nav-item workspace-sidebar__workspace-nav-item",onClick:()=>{W?.(e.id),ef(e.id)},children:[s?(0,t.jsx)(a.ChevronDown,{size:14,className:"flex-shrink-0 text-slate-400",onClick:t=>{t.stopPropagation(),ef(e.id)}}):(0,t.jsx)(r.ChevronRight,{size:14,className:"flex-shrink-0 text-slate-400",onClick:t=>{t.stopPropagation(),ef(e.id)}}),(0,t.jsx)(o,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title",children:e.name})]}),(0,t.jsxs)("div",{className:"workspace-sidebar__workspace-actions",children:[(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__workspace-action",onClick:()=>void ew(e.id),"aria-label":`Open project settings for ${e.name}`,title:"Project settings",children:(0,t.jsx)(p.Pencil,{size:12})}),(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__workspace-action workspace-sidebar__workspace-action--delete",onClick:()=>{var t;let s;return t=e.id,s=L.find(e=>e.id===t),void ep({title:"Delete project",message:`Delete "${s?.name??"project"}"? Its agents will move to the Default project.`,onConfirm:()=>void E?.(t)})},"aria-label":`Delete project ${e.name}`,title:`Delete project ${e.name}`,children:(0,t.jsx)(u.Trash2,{size:12})})]})]}),s&&(0,t.jsxs)("div",{className:"pl-4 py-0.5 flex flex-col gap-0.5",children:[(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:n[0]?(0,t.jsxs)("button",{type:"button",className:`workspace-sidebar__nav-item ${n[0].id===v?"workspace-sidebar__nav-item--active":""}`,onClick:()=>y(n[0].id),"aria-current":n[0].id===v?"page":void 0,children:[(0,t.jsx)(l.Hash,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs",children:"Thread"})]}):(0,t.jsxs)("button",{type:"button",className:"workspace-sidebar__nav-item",onClick:eM,children:[(0,t.jsx)(l.Hash,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs",children:"Thread"})]})}),(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item",children:(0,t.jsxs)(g.default,{href:`/projects/${e.slug}`,className:"workspace-sidebar__nav-item",children:[(0,t.jsx)(h,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs",children:"Board"})]})}),(0,t.jsxs)("div",{className:"pt-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2 py-1",children:[(0,t.jsx)("p",{className:"text-[10px] font-medium text-slate-400 uppercase tracking-wide",children:"Repos"}),(0,t.jsxs)("div",{className:"flex items-center gap-2",children:[(0,t.jsx)("span",{className:"text-[10px] text-slate-300",children:e.repos.length}),(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__action text-slate-300 hover:text-white",onClick:()=>eb({projectId:e.id,projectName:e.name,repoId:null,name:"",path:"",gitUrl:"",notes:"",generatedKnowledge:[],isLoadingKnowledge:!1,isSaving:!1,error:null}),"aria-label":"Add repo",title:"Add repo",children:(0,t.jsx)(x.Plus,{size:12})})]})]}),e.repos.length>0?e.repos.map(s=>(0,t.jsxs)("div",{className:"workspace-sidebar__workspace-item group/repo flex items-center",children:[(0,t.jsxs)("button",{type:"button",className:"workspace-sidebar__nav-item ml-2 min-w-0 flex-1 text-left",onClick:()=>eb({projectId:e.id,projectName:e.name,repoId:s.id,name:s.name,path:s.path||"",gitUrl:s.git_url||"",notes:s.notes||"",generatedKnowledge:[],isLoadingKnowledge:!0,isSaving:!1,error:null}),children:[(0,t.jsx)(d,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs truncate",children:s.name})]}),(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__action opacity-0 group-hover/repo:opacity-100 transition-opacity flex-shrink-0 text-slate-400 hover:text-red-400",onClick:async t=>{t.stopPropagation();let a=e.repos.filter(e=>e.id!==s.id).map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}));await T?.(e.id,{repos:a})},"aria-label":"Delete repo",title:"Delete repo",children:(0,t.jsx)(u.Trash2,{size:12})})]},`${e.id}:${s.name}:${s.path??""}`)):(0,t.jsx)("p",{className:"pl-4 py-1 text-[11px] text-slate-400",children:"No repos"})]}),(0,t.jsxs)("div",{className:"pt-1",children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-2 py-1",children:[(0,t.jsx)("p",{className:"text-[10px] font-medium text-slate-400 uppercase tracking-wide",children:"Agents"}),(0,t.jsx)("button",{type:"button",className:"workspace-sidebar__action opacity-0 group-hover:opacity-100 transition-opacity",onClick:()=>{var t;return t=e.id,void(V?V(t):(Q(new Set),Y({projectId:t})))},"aria-label":"Add agent",title:"Add agent",children:(0,t.jsx)(x.Plus,{size:12})})]}),e.agents.length>0?e.agents.map((s,a)=>{let r=i.find(e=>e.id===s.agent_id),l=eg?.projectId===e.id&&eg?.agentId===s.agent_id,n=eg?.projectId===e.id&&eg?.overIndex===a&&!l;return(0,t.jsx)("div",{draggable:!0,onDragStart:t=>{t.dataTransfer.effectAllowed="move",ej({projectId:e.id,agentId:s.agent_id,overIndex:a})},onDragOver:t=>{t.preventDefault(),eg&&eg.projectId===e.id&&ej(e=>e?{...e,overIndex:a}:null)},onDragEnd:()=>{if(eg&&eg.projectId===e.id&&B){let t=e.agents.map(e=>e.agent_id),s=t.indexOf(eg.agentId),a=eg.overIndex;if(-1!==s&&s!==a){let r=[...t],[l]=r.splice(s,1);r.splice(a,0,l),B(e.id,r)}}ej(null)},className:`flex items-center ${n?"border-t-2 border-slate-400":"border-t-2 border-transparent"} ${l?"opacity-40":""}`,children:(0,t.jsxs)("button",{type:"button",className:"workspace-sidebar__nav-item ml-2 flex-1 min-w-0",onClick:()=>em(s.agent_id),children:[(0,t.jsx)("span",{className:"cursor-grab text-slate-300 hover:text-slate-500 flex-shrink-0 mr-0.5",title:"Drag to reorder",children:"⠿"}),(0,t.jsx)("img",{src:(0,j.agentAvatarUrl)(s.agent_id,16,r?.color),alt:"",className:"w-4 h-4 rounded-full flex-shrink-0"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title text-xs truncate",children:r?.name??s.agent_id}),0===a&&(0,t.jsx)("span",{className:"ml-auto text-[9px] text-slate-400 font-medium flex-shrink-0",title:"Default responder (top agent responds first)",children:"DEFAULT"})]})},s.agent_id)}):(0,t.jsx)("p",{className:"pl-4 py-1 text-[11px] text-slate-400",children:"No agents"})]})]})]},e.id)}),ez.length>0&&(0,t.jsxs)("div",{className:"pt-3",children:[(0,t.jsx)("p",{className:"px-1 py-1 text-[10px] font-medium text-slate-400 uppercase tracking-wide",children:"Unassigned Threads"}),ez.map(e=>{let s=e.id===v,a=e.title?.trim()||"Untitled thread";return(0,t.jsx)("div",{className:"workspace-sidebar__workspace-item group",children:(0,t.jsxs)("button",{type:"button",className:`workspace-sidebar__nav-item workspace-sidebar__workspace-nav-item ${s?"workspace-sidebar__nav-item--active workspace-sidebar__workspace-nav-item--active":""}`,onClick:()=>y(e.id),"aria-current":s?"page":void 0,children:[(0,t.jsx)(l.Hash,{size:12,className:"flex-shrink-0 text-slate-400"}),(0,t.jsx)("span",{className:"workspace-sidebar__workspace-title",children:a})]})},e.id)})]})]})]}),(0,t.jsx)("div",{className:"mt-auto px-3 pb-3",children:(0,t.jsxs)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center gap-2 w-full py-2 rounded-lg text-white text-sm font-medium transition-colors",style:{backgroundColor:"#5865F2"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",children:[(0,t.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})}),"Join Discord"]})}),eh&&(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30 p-4",onClick:()=>{eh.isSaving||eb(null)},children:(0,t.jsxs)("div",{className:"w-full max-w-lg rounded-2xl border border-slate-200 bg-white shadow-2xl",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-start justify-between gap-4 border-b border-slate-100 px-5 py-4",children:[(0,t.jsxs)("div",{className:"min-w-0",children:[(0,t.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-[0.18em] text-slate-400",children:eh.projectName}),(0,t.jsx)("h3",{className:"truncate text-base font-semibold text-slate-900",children:eh.repoId?eh.name||"Repository":"Add Repository"})]}),(0,t.jsx)("button",{type:"button",className:"rounded-md p-1 text-slate-400 transition-colors hover:bg-slate-100 hover:text-slate-600",onClick:()=>{eh.isSaving||eb(null)},"aria-label":"Close repo details",disabled:eh.isSaving,children:(0,t.jsx)(b.X,{size:16})})]}),(0,t.jsxs)("div",{className:"space-y-4 px-5 py-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-slate-400",children:"Name"}),(0,t.jsx)("input",{value:eh.name,onChange:e=>eb(t=>t?{...t,name:e.target.value,error:null}:t),className:"w-full rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 text-sm text-slate-700",disabled:eh.isSaving})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-slate-400",children:"Path"}),(0,t.jsx)("input",{value:eh.path,onChange:e=>eb(t=>t?{...t,path:e.target.value,error:null}:t),className:"w-full rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 font-mono text-xs text-slate-700",disabled:eh.isSaving})]}),(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-slate-400",children:"Repo Notes"}),(0,t.jsx)("textarea",{value:eh.notes,onChange:e=>eb(t=>t?{...t,notes:e.target.value,error:null}:t),className:"min-h-28 w-full rounded-lg border border-slate-200 bg-slate-50 px-3 py-3 text-sm text-slate-700 whitespace-pre-wrap",disabled:eh.isSaving,placeholder:"Repo-specific rules, notes, conventions, deployment constraints..."})]}),eh.repoId?(0,t.jsxs)("div",{children:[(0,t.jsx)("p",{className:"mb-1 text-[11px] font-semibold uppercase tracking-[0.18em] text-slate-400",children:"System-Generated Repo Knowledge"}),eh.isLoadingKnowledge?(0,t.jsx)("p",{className:"text-sm text-slate-400",children:"Loading generated knowledge…"}):eh.generatedKnowledge.length>0?(0,t.jsx)("div",{className:"space-y-2",children:eh.generatedKnowledge.slice(0,5).map(e=>(0,t.jsxs)("div",{className:"rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 text-sm text-slate-700",children:[(0,t.jsx)("div",{children:e.content}),e.created_at?(0,t.jsx)("div",{className:"mt-1 text-[11px] text-slate-400",children:new Date(e.created_at).toLocaleString()}):null]},e.id))}):(0,t.jsx)("p",{className:"text-sm text-slate-400",children:"No generated repo knowledge yet."})]}):null,eh.error?(0,t.jsx)("p",{className:"text-xs text-red-600",children:eh.error}):null,(0,t.jsxs)("div",{className:"flex justify-end gap-2 border-t border-slate-100 pt-4",children:[(0,t.jsx)("button",{type:"button",className:"rounded-lg px-3 py-2 text-sm text-slate-600 transition-colors hover:bg-slate-100",onClick:()=>eb(null),disabled:eh.isSaving,children:"Cancel"}),(0,t.jsx)("button",{type:"button",className:"rounded-lg bg-slate-900 px-3 py-2 text-sm font-medium text-white transition-colors hover:bg-slate-800 disabled:cursor-not-allowed disabled:opacity-60",disabled:eh.isSaving||!T,onClick:async()=>{let e=L.find(e=>e.id===eh.projectId);if(!e)return void eb(e=>e?{...e,error:"Project not found."}:e);let t=eh.name.trim(),s=eh.path.trim();if(!t)return void eb(e=>e?{...e,error:"Repo name is required."}:e);if(!s)return void eb(e=>e?{...e,error:"Repo path is required."}:e);eb(e=>e?{...e,isSaving:!0,error:null}:e);try{let a=eh.repoId?e.repos.map(e=>e.id===eh.repoId?{id:e.id,name:t,path:s,git_url:eh.gitUrl.trim()||void 0,notes:eh.notes.trim()||void 0}:{id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes}):[...e.repos.map(e=>({id:e.id,name:e.name,path:e.path,git_url:e.git_url,notes:e.notes})),{name:t,path:s,git_url:eh.gitUrl.trim()||void 0,notes:eh.notes.trim()||void 0}];await T?.(e.id,{repos:a}),eb(null)}catch(e){eb(t=>t?{...t,isSaving:!1,error:e instanceof Error?e.message:"Failed to save repo details."}:t)}},children:eh.isSaving?"Saving...":eh.repoId?"Save":"Add Repo"})]})]})]})}),X&&!ee&&(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>Y(null),children:(0,t.jsxs)("div",{className:"bg-white rounded-xl shadow-xl border border-slate-200 w-80 max-h-[70vh] flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-slate-100",children:[(0,t.jsxs)("h3",{className:"text-sm font-medium text-slate-900",children:["Add to ",ek?.name??"project"]}),(0,t.jsx)("button",{type:"button",className:"text-slate-400 hover:text-slate-600",onClick:()=>Y(null),children:(0,t.jsx)(b.X,{size:16})})]}),(0,t.jsxs)("div",{className:"overflow-y-auto py-1 flex-1",children:[(0,t.jsxs)("button",{type:"button",className:"w-full flex items-center gap-3 px-4 py-2.5 text-sm text-slate-700 hover:bg-slate-50 transition-colors border-b border-slate-100",onClick:()=>et(!0),children:[(0,t.jsx)(x.Plus,{size:14,className:"text-slate-400"}),(0,t.jsx)("span",{className:"text-xs font-medium",children:"Create new agent"})]}),0===eN.length?(0,t.jsx)("p",{className:"px-4 py-6 text-xs text-slate-400 text-center",children:"All agents are already in this project"}):eN.map(e=>{let s=Z.has(e.id);return(0,t.jsxs)("button",{type:"button",className:`w-full flex items-center gap-3 px-4 py-2.5 text-sm transition-colors ${s?"bg-slate-100 text-slate-900":"text-slate-700 hover:bg-slate-50"}`,onClick:()=>{Q(t=>{let s=new Set(t);return s.has(e.id)?s.delete(e.id):s.add(e.id),s})},children:[(0,t.jsx)("div",{className:`w-4 h-4 rounded border flex-shrink-0 flex items-center justify-center ${s?"bg-slate-900 border-slate-900":"border-slate-300"}`,children:s&&(0,t.jsx)("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none",children:(0,t.jsx)("path",{d:"M2 5l2 2 4-4",stroke:"white",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),(0,t.jsx)("img",{src:(0,j.agentAvatarUrl)(e.id,24,e.color),alt:"",className:"w-6 h-6 rounded-full flex-shrink-0"}),(0,t.jsxs)("div",{className:"min-w-0 flex-1 text-left",children:[(0,t.jsx)("div",{className:"truncate font-medium text-xs",children:e.name}),(0,t.jsx)("div",{className:"truncate text-[11px] text-slate-400",children:e.model})]})]},e.id)})]}),eN.length>0&&(0,t.jsxs)("div",{className:"px-4 py-3 border-t border-slate-100 flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-slate-500 hover:text-slate-700 transition-colors",onClick:()=>Y(null),children:"Cancel"}),(0,t.jsxs)("button",{type:"button",disabled:0===Z.size,className:"px-3 py-1.5 text-xs font-medium text-white bg-slate-900 rounded-lg hover:bg-slate-800 disabled:opacity-40 disabled:cursor-not-allowed transition-colors",onClick:()=>{for(let e of Z)$?.(X.projectId,e);Y(null)},children:["Add ",Z.size>0?`(${Z.size})`:""]})]})]})}),ee&&(0,t.jsx)(j.AgentForm,{title:"Create new agent",initial:{name:"",provider:"claude",model:"",identity:"",skills:[]},submitLabel:"Create & Add",projects:L?.filter(e=>!e.is_default).map(t=>{let s=(t.thread_ids??[]).map(t=>e.find(e=>e.id===t)?.title?.trim()).filter(Boolean).join(", ")||"No thread";return{id:t.id,name:t.name,label:`${s} › ${t.name}`}}),initialProjectIds:X?[X.projectId]:[],onSubmit:async(e,t)=>{let s=["#D97706","#2563EB","#059669","#DC2626","#7C3AED","#DB2777","#0891B2"],a=s[i.length%s.length],r=e.name.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,""),l=t?.[0],n=await fetch("/api/participants",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:r,name:e.name,provider:e.provider,model:e.model,color:e.color??a,...e.identity?{identity:e.identity}:{},skills:e.skills??[],...l?{projectId:l}:{}})});if(n.ok){let e=await n.json().catch(()=>({})),s="string"==typeof e?.id&&e.id.trim()?e.id.trim():r;for(let e of(t??[]).slice(1))$?.(e,s);et(!1),Y(null)}},onCancel:()=>{et(!1)}}),en&&(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>eo(null),children:(0,t.jsxs)("div",{className:"bg-white rounded-xl shadow-xl border border-slate-200 w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-slate-100",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-slate-900",children:en.title}),(0,t.jsx)("button",{type:"button",className:"text-slate-400 hover:text-slate-600",onClick:()=>eo(null),children:(0,t.jsx)(b.X,{size:16})})]}),(0,t.jsxs)("form",{className:"px-4 py-4 flex flex-col gap-3",onSubmit:e=>{e.preventDefault();let t=new FormData(e.currentTarget),s=t.get("value")?.trim();s&&(en.onSubmit(s),eo(null))},children:[(0,t.jsx)("input",{ref:ed,name:"value",type:"text",defaultValue:en.defaultValue,placeholder:en.placeholder,className:"w-full px-3 py-2 text-sm border border-slate-200 rounded-lg outline-none focus:border-slate-400 focus:ring-1 focus:ring-slate-200 transition-all"}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-slate-500 hover:text-slate-700 transition-colors",onClick:()=>eo(null),children:"Cancel"}),(0,t.jsx)("button",{type:"submit",className:"px-3 py-1.5 text-xs font-medium text-white bg-slate-900 rounded-lg hover:bg-slate-800 transition-colors",children:en.defaultValue?"Save":"Create"})]})]})]})}),ec&&(0,t.jsx)("div",{className:"fixed inset-0 z-50 flex items-center justify-center bg-black/30",onClick:()=>ep(null),children:(0,t.jsxs)("div",{className:"bg-white rounded-xl shadow-xl border border-slate-200 w-80 flex flex-col",onClick:e=>e.stopPropagation(),children:[(0,t.jsxs)("div",{className:"flex items-center justify-between px-4 py-3 border-b border-slate-100",children:[(0,t.jsx)("h3",{className:"text-sm font-medium text-slate-900",children:ec.title}),(0,t.jsx)("button",{type:"button",className:"text-slate-400 hover:text-slate-600",onClick:()=>ep(null),children:(0,t.jsx)(b.X,{size:16})})]}),(0,t.jsxs)("div",{className:"px-4 py-4 flex flex-col gap-4",children:[(0,t.jsx)("p",{className:"text-sm text-slate-600",children:ec.message}),(0,t.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs text-slate-500 hover:text-slate-700 transition-colors",onClick:()=>ep(null),children:"Cancel"}),(0,t.jsx)("button",{type:"button",className:"px-3 py-1.5 text-xs font-medium text-white bg-red-600 rounded-lg hover:bg-red-700 transition-colors",onClick:()=>{ec.onConfirm(),ep(null)},children:"Delete"})]})]})]})}),(es||er)&&(0,t.jsx)(f.default,{isOpen:!0,onClose:()=>{ei.resetForm(),ea(null),el(null)},onSubmit:()=>void ev(),editingProject:er,form:ei.form,repos:ei.repos,isSubmitting:ei.isSubmitting,formError:ei.formError,onFieldChange:(e,t)=>ei.setForm(s=>({...s,[e]:t})),onRepoChange:ei.handleRepoChange,onAddRepo:ei.addRepo,onRemoveRepo:ei.removeRepo}),eu&&(H=L.filter(e=>e.agents.some(e=>e.agent_id===eu.id)),O=L.filter(e=>!e.agents.some(e=>e.agent_id===eu.id)),(0,t.jsx)(j.AgentForm,{title:"Edit agent",initial:{name:eu.name,provider:eu.provider,model:eu.model||"",identity:eu.identity||"",color:eu.color,skills:eu.skills||[]},agentId:eu.id,submitLabel:"Save",projectMemberships:{current:H.map(e=>({id:e.id,name:e.name,is_default:!!e.is_default})),available:O.map(e=>({id:e.id,name:e.name}))},onAddToProject:$?e=>$(e,eu.id):void 0,onRemoveFromProject:K?e=>K(e,eu.id):void 0,onSubmit:async e=>{U&&await U({...eu,name:e.name,provider:e.provider,model:e.model,color:e.color??eu.color,...e.identity?{identity:e.identity}:{},skills:e.skills??[]}),em(null)},onCancel:()=>em(null)}))]}):(0,t.jsxs)("aside",{id:"workspace-sidebar",className:"workspace-sidebar workspace-sidebar--collapsed","aria-label":"Workspace sidebar",children:[(0,t.jsx)("div",{className:"workspace-sidebar__brand",children:(0,t.jsx)("button",{type:"button",onClick:R,className:"workspace-sidebar__brand-icon p-0 bg-transparent hover:bg-transparent border-none outline-none","aria-label":"Show threads",title:"Show threads",children:(0,t.jsxs)("svg",{width:"52",height:"31",viewBox:"0 0 64 38",fill:"none",xmlns:"http://www.w3.org/2000/svg",className:"transition-transform hover:scale-105",children:[(0,t.jsx)("rect",{width:"64",height:"38",rx:"8",fill:"black"}),(0,t.jsxs)("g",{stroke:"white",strokeWidth:"2.5",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,t.jsx)("path",{d:"M 14 27 C 17 16 19 10 20 8 C 21 12 23 20 25 27"}),(0,t.jsx)("path",{d:"M 16 20 C 19 19 21 21 23 20"}),(0,t.jsx)("path",{d:"M 40 13 C 35 10 30 13 30 19 C 30 25 34 28 38 27 C 40 26 40 22 40 20 L 36 20"}),(0,t.jsx)("path",{d:"M 46 11 C 48 16 51 22 54 27"}),(0,t.jsx)("path",{d:"M 54 11 C 52 16 49 22 46 27"})]})]})})}),(0,t.jsx)("div",{className:"mt-auto p-2",children:(0,t.jsx)("a",{href:"https://discord.gg/G9afUYKKY3",target:"_blank",rel:"noopener noreferrer",className:"flex items-center justify-center w-8 h-8 rounded-lg text-white transition-colors",style:{backgroundColor:"#5865F2"},onMouseEnter:e=>e.currentTarget.style.backgroundColor="#4752C4",onMouseLeave:e=>e.currentTarget.style.backgroundColor="#5865F2",title:"Join Discord",children:(0,t.jsx)("svg",{width:"14",height:"14",viewBox:"0 0 71 55",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M60.1 4.9A58.5 58.5 0 0045.4.2a.2.2 0 00-.2.1 40.8 40.8 0 00-1.8 3.7 54 54 0 00-16.2 0A37.4 37.4 0 0025.4.3a.2.2 0 00-.2-.1A58.4 58.4 0 0010.5 4.9a.2.2 0 00-.1.1C1.5 18.7-.9 32.2.3 45.5v.1a58.8 58.8 0 0017.7 9a.2.2 0 00.3-.1 42 42 0 003.6-5.9.2.2 0 00-.1-.3 38.8 38.8 0 01-5.5-2.6.2.2 0 01 0-.4l1.1-.9a.2.2 0 01.2 0 42 42 0 0035.6 0 .2.2 0 01.2 0l1.1.9a.2.2 0 010 .4 36.4 36.4 0 01-5.5 2.6.2.2 0 00-.1.3 47.2 47.2 0 003.6 5.9.2.2 0 00.3.1 58.6 58.6 0 0017.7-9v-.1c1.4-15.2-2.4-28.4-10-40.1a.2.2 0 00-.1-.1zM23.7 37.3c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7zm23.3 0c-3.5 0-6.3-3.2-6.3-7s2.8-7 6.3-7 6.4 3.2 6.3 7-2.8 7-6.3 7z"})})})})]})}e.s(["WorkspaceSidebar",()=>v],68542);let w="agx-chat:uiSettings",k={threadSidebarVisible:!1};function y(){return void 0!==window.localStorage}function N(){if(!y())return{...k};let e=window.localStorage.getItem(w);if(!e)return{...k};try{let t=JSON.parse(e);return{...k,threadSidebarVisible:"boolean"==typeof t.threadSidebarVisible&&t.threadSidebarVisible}}catch{return{...k}}}function C(){return N().threadSidebarVisible}function _(e){var t={...N(),threadSidebarVisible:e};if(y())try{window.localStorage.setItem(w,JSON.stringify(t))}catch{}}e.s(["loadWorkspaceSidebarVisible",()=>C,"persistWorkspaceSidebarVisible",()=>_],54238)}]);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|