octomux 1.0.7 → 1.0.9
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/dist/assets/TaskDetail-DwEaxpJc.js +1 -0
- package/dist/assets/index-Ct-i9Kci.js +2 -0
- package/dist/assets/index-SCRVdJLu.css +1 -0
- package/dist/index.html +2 -2
- package/dist-server/index.js +5 -5
- package/dist-server/orchestrator-prompt.md +27 -0
- package/package.json +1 -1
- package/dist/assets/TaskDetail-2gFAGaIH.js +0 -1
- package/dist/assets/index-C5ybRypn.css +0 -1
- package/dist/assets/index-DnKWWiii.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e,r as n}from"./vendor-react-BZ8ItZjw.js";import{c as re,D as ae,a as ie,b as oe,d as le,e as de,L as A,T as X,B as u,f as m,I as K,P as Y,g as ee,h as te,u as ce,S as ue,i as xe,E as he}from"./index-Ct-i9Kci.js";import{TerminalView as se}from"./TerminalView-CguHyqU9.js";import{b as me,a as pe,d as fe}from"./vendor-router-DRLGqALp.js";import"./vendor-ui-BEZHWVRx.js";import"./vendor-xterm-DvXGiZvM.js";function ge({agents:i,activeIndex:x,onSelect:r,onAddAgent:t,onStopAgent:d,canAddAgent:h}){return e.jsxs("div",{className:"flex items-center gap-1 border-b border-border px-1 pb-1",children:[i.filter(a=>a.status!=="stopped").map(a=>e.jsxs("div",{className:"group flex items-center",children:[e.jsxs("button",{className:re("rounded-t-md px-3 py-1.5 text-sm transition-colors",a.window_index===x?"bg-accent text-foreground":"text-muted-foreground hover:text-foreground"),onClick:()=>r(a.window_index),children:[a.label,a.status==="running"&&e.jsx("span",{className:`ml-1.5 inline-block h-1.5 w-1.5 rounded-full ${a.hook_activity==="waiting"?"bg-amber-500":a.hook_activity==="idle"?"bg-zinc-400":"animate-pulse bg-green-400"}`})]}),a.status==="running"&&e.jsx("button",{className:"ml-0.5 hidden rounded p-0.5 text-muted-foreground hover:text-destructive group-hover:inline-flex",onClick:l=>{l.stopPropagation(),d(a.id)},title:"Stop agent",children:e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("path",{d:"M18 6 6 18"}),e.jsx("path",{d:"m6 6 12 12"})]})})]},a.id)),h&&e.jsx(je,{onAdd:t})]})}function je({onAdd:i}){const[x,r]=n.useState(!1),[t,d]=n.useState("");function h(){i(t.trim()||void 0),d(""),r(!1)}function a(){i()}return e.jsxs(ae,{open:x,onOpenChange:r,children:[e.jsxs("div",{className:"flex items-center gap-0.5",children:[e.jsx("button",{className:"rounded-t-md px-2 py-1.5 text-sm text-muted-foreground hover:text-foreground",onClick:a,title:"Add agent without prompt",children:"+"}),e.jsx(ie,{render:e.jsx("button",{className:"rounded px-1 py-1 text-xs text-muted-foreground hover:text-foreground",title:"Add agent with prompt"}),children:"..."})]}),e.jsxs(oe,{className:"sm:max-w-md",children:[e.jsx(le,{children:e.jsx(de,{children:"Add Agent"})}),e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{htmlFor:"agent-prompt",children:"Initial Prompt (optional)"}),e.jsx(X,{id:"agent-prompt",placeholder:"Write tests for the authentication module...",rows:3,value:t,onChange:l=>d(l.target.value)})]}),e.jsxs("div",{className:"flex justify-end gap-2",children:[e.jsx(u,{variant:"ghost",onClick:()=>r(!1),children:"Cancel"}),e.jsx(u,{onClick:h,children:"Add Agent"})]})]})]})]})}function ve({task:i,onSaved:x,onStart:r}){const[t,d]=n.useState(i.title),[h,a]=n.useState(i.description),[l,p]=n.useState(i.repo_path),[j,E]=n.useState(i.branch??""),[f,I]=n.useState(i.base_branch??""),[c,b]=n.useState(i.initial_prompt??""),[N,O]=n.useState(!!i.initial_prompt),[z,v]=n.useState([]),[M,k]=n.useState(""),[y,L]=n.useState(!1),[C,T]=n.useState(!1),[w,U]=n.useState(null),[J,G]=n.useState(!1),[P,D]=n.useState(!1),[H,F]=n.useState(null),[S,_]=n.useState(!1),R=n.useRef(f);R.current=f,n.useEffect(()=>{const s=l.trim();if(!s){v([]);return}let g=!1;const B=setTimeout(async()=>{try{const[Z,ne]=await Promise.all([m.listBranches(s),m.getDefaultBranch(s)]);g||(v(Z),R.current||I(ne.branch))}catch{g||v([])}},300);return()=>{g=!0,clearTimeout(B)}},[l]);const $=z.filter(s=>s.toLowerCase().includes(M.toLowerCase())),W=n.useCallback(async s=>{G(!0);try{const g=await m.browse(s);U(g)}catch{}finally{G(!1)}},[]);n.useEffect(()=>{C&&!w&&W()},[C,w,W]);function V(s){p(s),T(!1)}async function Q(){if(!(!t.trim()||!h.trim()||!l.trim())){D(!0),F(null),_(!1);try{await m.updateTask(i.id,{title:t.trim(),description:h.trim(),repo_path:l.trim(),branch:j.trim()||void 0,base_branch:f.trim()||void 0,initial_prompt:c.trim()||void 0}),_(!0),x(),setTimeout(()=>_(!1),2e3)}catch(s){F(s.message)}finally{D(!1)}}}const o=t.trim()&&h.trim()&&l.trim()&&!P;return e.jsx("div",{className:"mx-auto max-w-2xl p-6",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{htmlFor:"edit-title",children:"Title"}),e.jsx(K,{id:"edit-title",value:t,onChange:s=>d(s.target.value),placeholder:"Task title"})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{htmlFor:"edit-description",children:"Description"}),e.jsx(X,{id:"edit-description",value:h,onChange:s=>a(s.target.value),placeholder:"Task description",rows:3})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{htmlFor:"edit-repo-path",children:"Repository Path"}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(K,{id:"edit-repo-path",className:"flex-1 font-mono text-sm",value:l,onChange:s=>p(s.target.value),placeholder:"/Users/you/projects/my-repo"}),e.jsxs(Y,{open:C,onOpenChange:T,children:[e.jsx(ee,{render:e.jsx(u,{type:"button",variant:"outline",className:"shrink-0",children:"Browse"})}),e.jsx(te,{align:"end",side:"bottom",sideOffset:4,className:"w-[420px] p-0",children:e.jsx(we,{data:w,loading:J,onNavigate:W,onSelect:V})})]})]})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{htmlFor:"edit-branch",children:"Branch Name"}),e.jsx(K,{id:"edit-branch",className:"font-mono text-sm",value:j,onChange:s=>E(s.target.value),placeholder:"feat/my-feature"})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx(A,{children:"Base Branch"}),e.jsxs(Y,{open:y,onOpenChange:L,children:[e.jsx(ee,{render:e.jsxs("button",{type:"button",className:"flex h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",children:[e.jsx("span",{className:f?"font-mono text-xs":"text-muted-foreground",children:f||"Select base branch..."}),e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-muted-foreground",children:e.jsx("path",{d:"m6 9 6 6 6-6"})})]})}),e.jsx(te,{align:"start",side:"bottom",sideOffset:4,className:"w-[--trigger-width] p-0",children:e.jsxs("div",{className:"flex flex-col",children:[e.jsx("div",{className:"border-b border-border px-3 py-2",children:e.jsx("input",{type:"text",placeholder:"Search branches...",className:"w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground",value:M,onChange:s=>k(s.target.value),autoFocus:!0})}),e.jsxs("div",{className:"max-h-[200px] overflow-y-auto",children:[$.length===0&&e.jsx("div",{className:"px-3 py-3 text-center text-xs text-muted-foreground",children:z.length===0?"Select a repository first":"No matching branches"}),$.map(s=>e.jsx("button",{type:"button",className:`flex w-full items-center px-3 py-1.5 text-left text-sm hover:bg-muted transition-colors ${s===f?"bg-muted font-medium":""}`,onClick:()=>{I(s),k(""),L(!1)},children:e.jsx("span",{className:"font-mono text-xs truncate",children:s})},s))]})]})})]})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("button",{type:"button",className:"w-fit cursor-pointer border-0 bg-transparent p-0 text-xs text-muted-foreground outline-0 ring-0 hover:text-foreground transition-colors text-left focus:outline-0 focus:ring-0 focus-visible:outline-0 focus-visible:ring-0",onClick:()=>O(!N),children:N?"- Hide initial prompt":"+ Add initial prompt"}),N&&e.jsx(X,{id:"edit-initial-prompt",placeholder:"Custom prompt to send to the agent on start...",rows:4,value:c,onChange:s=>b(s.target.value)})]}),H&&e.jsx("p",{className:"text-sm text-destructive",children:H}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(u,{onClick:Q,disabled:!o,children:P?"Saving...":"Save"}),e.jsx(u,{variant:"outline",onClick:r,children:"Start"}),S&&e.jsx("span",{className:"text-sm text-emerald-500",children:"Saved"})]})]})})}function we({data:i,loading:x,onNavigate:r,onSelect:t}){return!i&&x?e.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"Loading..."}):i?e.jsxs("div",{className:"flex flex-col",children:[e.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[e.jsx("button",{type:"button",disabled:!i.parent,className:"shrink-0 rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-30 disabled:hover:bg-transparent",onClick:()=>i.parent&&r(i.parent),children:e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsx("path",{d:"m15 18-6-6 6-6"})})}),e.jsx("span",{className:"font-mono text-xs text-muted-foreground truncate direction-rtl text-left",children:i.current})]}),e.jsxs("div",{className:"max-h-[280px] overflow-y-auto",children:[i.entries.length===0&&e.jsx("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:"No subdirectories"}),i.entries.map(d=>e.jsxs("button",{type:"button",className:"flex w-full items-center gap-2 px-3 py-1.5 text-left text-sm hover:bg-muted transition-colors",onClick:()=>r(d.path),onDoubleClick:()=>d.isGit&&t(d.path),children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:d.isGit?"text-emerald-500":"text-muted-foreground",children:e.jsx("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"})}),e.jsxs("span",{className:"font-mono text-xs truncate",children:[d.name,e.jsx("span",{className:"text-muted-foreground",children:"/"})]}),d.isGit&&e.jsx("span",{className:"ml-auto shrink-0 rounded bg-emerald-500/10 px-1.5 py-0.5 text-[10px] font-medium text-emerald-600 dark:text-emerald-400",children:"git"})]},d.path))]}),e.jsxs("div",{className:"flex items-center justify-between border-t border-border px-3 py-2",children:[e.jsxs("div",{className:"flex flex-col truncate mr-2",children:[e.jsx("span",{className:"font-mono text-[10px] text-muted-foreground truncate",children:i.current}),e.jsx("span",{className:"text-[10px] text-muted-foreground/60",children:"Double-click a git repo to select it"})]}),e.jsx(u,{type:"button",size:"sm",className:"shrink-0 h-7 text-xs",onClick:()=>t(i.current),children:"Select"})]})]}):null}const q=new Map;function _e(){q.clear()}function Be(){var V,Q;const{id:i}=me(),x=pe(),r=i??"",{task:t,loading:d,error:h,refresh:a}=ce(r),[l,p]=n.useState(null),[j,E]=n.useState(!1),[f,I]=n.useState(!1),[c,b]=n.useState("agents"),[N,O]=n.useState(!1),[z]=fe(),v=z.get("agent"),[M,k]=n.useState(null),y=(t==null?void 0:t.user_window_index)??M,L=n.useRef(r),C=n.useRef(l),T=n.useRef(c);C.current=l,T.current=c,n.useEffect(()=>{const o=L.current;if(o!==r){q.set(o,{activeWindow:C.current,mode:T.current});const s=q.get(r);p((s==null?void 0:s.activeWindow)??null),b((s==null?void 0:s.mode)??"agents"),k(null),L.current=r}},[r]),n.useEffect(()=>{r&&q.set(r,{activeWindow:l,mode:c})},[r,l,c]);const w=((Q=(V=t==null?void 0:t.agents)==null?void 0:V[0])==null?void 0:Q.window_index)??null;n.useEffect(()=>{if(v&&(t!=null&&t.agents)){const o=t.agents.find(s=>s.id===v);if(o){p(o.window_index);return}}l===null&&w!==null&&p(w)},[w,l,v,t==null?void 0:t.agents]),n.useEffect(()=>{t&&t.status!=="running"&&(b("agents"),k(null))},[t==null?void 0:t.status]);const U=n.useCallback(async o=>{if(r)try{const s=await m.addAgent(r,o?{prompt:o}:void 0);p(s.window_index),a()}catch(s){console.error("Failed to add agent:",s)}},[r,a]),J=n.useCallback(async o=>{if(r)try{const s=(t==null?void 0:t.agents)||[],g=s.find(B=>B.id===o);if(await m.stopAgent(r,o),g&&g.window_index===l){const B=s.find(Z=>Z.id!==o&&Z.status!=="stopped");B&&p(B.window_index)}a()}catch(s){console.error("Failed to stop agent:",s)}},[r,a,t,l]),G=n.useCallback(async()=>{if(r)try{await m.updateTask(r,{status:"closed"}),a()}catch(o){console.error("Failed to close task:",o)}},[r,a]),P=n.useCallback(async()=>{if(r)try{await m.startTask(r),a()}catch(o){console.error("Failed to start task:",o)}},[r,a]),D=n.useCallback(async()=>{if(r){E(!0);try{await m.updateTask(r,{status:"running"}),a()}catch(o){console.error("Failed to resume task:",o)}finally{E(!1)}}},[r,a]),H=n.useCallback(async()=>{if(c==="editor"){b("agents");return}if(y===null){if(N)return;O(!0);try{const o=await m.createUserTerminal(r);k(o.user_window_index),a()}catch(o){console.error("Failed to create user terminal:",o);return}finally{O(!1)}}b("editor")},[c,y,r,N,a]);if(d)return e.jsx("div",{className:"flex h-full items-center justify-center text-muted-foreground",children:"Loading..."});if(!t)return e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-4",children:[e.jsx("p",{className:"text-destructive",children:h||"Task not found"}),e.jsx(u,{variant:"outline",onClick:()=>x("/"),children:"Back to Dashboard"})]});const F=t.agents||[],S=t.status==="running",_=t.status==="draft",R=(t.status==="closed"||t.status==="error")&&!!t.worktree,$=t.status==="running"||t.status==="setting_up",W=!!t.tmux_session&&F.length>0&&l!==null&&$;return e.jsxs("div",{className:"flex h-full flex-col",children:[e.jsxs("div",{className:"flex items-center justify-between border-b border-border px-3 py-2 sm:px-4 sm:py-3",children:[e.jsxs("div",{className:"flex items-center gap-2 sm:gap-3 min-w-0",children:[e.jsxs(u,{variant:"ghost",size:"sm",className:"shrink-0",onClick:()=>x("/"),children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","data-icon":"inline-start",children:e.jsx("path",{d:"m15 18-6-6 6-6"})}),e.jsx("span",{className:"hidden sm:inline",children:"Tasks"})]}),e.jsxs("div",{className:"min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h1",{className:"truncate text-base font-semibold sm:text-lg",children:t.title}),e.jsx(ue,{status:t.derived_status||t.status})]}),e.jsx("p",{className:"hidden max-w-xl truncate text-xs text-muted-foreground sm:block",children:t.description})]})]}),e.jsxs("div",{className:"flex shrink-0 items-center gap-1 sm:gap-2",children:[t.pr_url&&e.jsxs("a",{href:t.pr_url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400 hover:underline sm:text-sm",children:["PR #",t.pr_number]}),R&&e.jsx(u,{variant:"default",size:"sm",disabled:j,onClick:D,children:j?"...":"Resume"}),S&&!!t.tmux_session&&e.jsxs(u,{variant:c==="editor"?"default":"outline",size:"sm",onClick:H,children:[e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("polyline",{points:"16 18 22 12 16 6"}),e.jsx("polyline",{points:"8 6 2 12 8 18"})]}),e.jsx("span",{className:"hidden sm:inline",children:"Editor"})]}),_&&e.jsx(u,{variant:"default",size:"sm",onClick:P,children:"Start"}),S&&e.jsx(u,{variant:"ghost",size:"sm",className:"text-destructive hover:text-destructive",onClick:G,children:"Close"})]})]}),t.error&&e.jsx("div",{className:"border-b border-destructive/30 bg-destructive/10 px-4 py-2 text-sm text-destructive",children:t.error}),e.jsxs("div",{className:"border-b border-border",children:[e.jsxs("button",{onClick:()=>I(o=>!o),className:"flex w-full items-center gap-1.5 px-4 py-1.5 text-xs text-muted-foreground hover:bg-muted/50",children:[e.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:`transition-transform ${f?"rotate-90":""}`,children:e.jsx("path",{d:"m9 18 6-6-6-6"})}),"Details"]}),f&&e.jsxs("div",{className:"grid grid-cols-[auto_1fr] gap-x-6 gap-y-1 px-4 pb-3 text-xs",children:[t.repo_path&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"Repo"}),e.jsx("span",{className:"font-mono text-muted-foreground",children:t.repo_path})]}),t.branch&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"Branch"}),e.jsx("span",{className:"font-mono text-muted-foreground",children:t.branch})]}),t.base_branch&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"Base"}),e.jsx(xe,{variant:"outline",className:"w-fit text-xs font-normal",children:t.base_branch})]}),t.pr_url&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"PR"}),e.jsxs("a",{href:t.pr_url,target:"_blank",rel:"noopener noreferrer",className:"text-blue-400 hover:underline",children:["#",t.pr_number," — ",t.pr_url]})]}),t.created_at&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"Created"}),e.jsx("span",{className:"text-muted-foreground",children:new Date(t.created_at).toLocaleString()})]}),t.updated_at&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"text-muted-foreground",children:"Updated"}),e.jsx("span",{className:"text-muted-foreground",children:new Date(t.updated_at).toLocaleString()})]})]})]}),W?e.jsxs("div",{className:c==="agents"?"flex min-h-0 flex-1 flex-col":"hidden",children:[e.jsx(ge,{agents:F,activeIndex:l,onSelect:p,onAddAgent:U,onStopAgent:J,canAddAgent:S}),e.jsx("div",{className:"min-h-0 flex-1 overflow-hidden p-1",children:e.jsx(se,{taskId:t.id,windowIndex:l,visible:c==="agents"})})]}):_?e.jsx("div",{className:"min-h-0 flex-1 overflow-y-auto",children:e.jsx(ve,{task:t,onSaved:a,onStart:P})}):e.jsx("div",{className:c==="agents"?"flex flex-1 flex-col items-center justify-center gap-3 text-muted-foreground":"hidden",children:t.status==="setting_up"?"Setting up terminal...":t.status==="closed"||t.status==="error"?e.jsxs(e.Fragment,{children:[e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",className:"text-muted-foreground/50",children:[e.jsx("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}),e.jsx("path",{d:"m7 8 4 4-4 4"}),e.jsx("path",{d:"M13 16h4"})]}),e.jsx("span",{className:"text-sm",children:"Terminal session ended"}),R&&e.jsx(u,{variant:"default",size:"sm",disabled:j,onClick:D,children:j?"Resuming...":"Resume"})]}):e.jsx(he,{icon:e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[e.jsx("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}),e.jsx("path",{d:"m7 8 4 4-4 4"}),e.jsx("path",{d:"M13 16h4"})]}),heading:"No agents running",subtext:"Add an agent to start working on this task",action:S?e.jsx(u,{variant:"default",size:"sm",onClick:()=>U(),children:"Add Agent"}):void 0})}),y!==null&&c==="editor"&&e.jsx("div",{className:"flex min-h-0 flex-1 flex-col",children:e.jsx("div",{className:"min-h-0 flex-1 overflow-hidden p-1",children:e.jsx(se,{taskId:t.id,windowIndex:y})})})]})}export{_e as _resetPerTaskUiState,Be as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalView-CguHyqU9.js","assets/vendor-react-BZ8ItZjw.js","assets/vendor-xterm-DvXGiZvM.js","assets/vendor-xterm-DYP7pi_n.css","assets/TaskDetail-DwEaxpJc.js","assets/vendor-router-DRLGqALp.js","assets/vendor-ui-BEZHWVRx.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
var _r=Object.defineProperty;var zr=(e,r,s)=>r in e?_r(e,r,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[r]=s;var St=(e,r,s)=>zr(e,typeof r!="symbol"?r+"":r,s);import{c as f,d as Ar,r as m,j as t,e as Rr}from"./vendor-react-BZ8ItZjw.js";import{u as Lr,a as Je,b as Mr,L as Gt,O as Br,R as Ir,c as tt,B as Pr}from"./vendor-router-DRLGqALp.js";import{u as Or,m as Dr,B as $r,P as Vr,a as Wr,b as Fr,c as Hr,d as Gr,D as Yr,e as Ur,f as qr,g as Kr,h as Xr,i as Jr,j as Zr,I as Qr}from"./vendor-ui-BEZHWVRx.js";(function(){const r=document.createElement("link").relList;if(r&&r.supports&&r.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const l of a)if(l.type==="childList")for(const u of l.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&o(u)}).observe(document,{childList:!0,subtree:!0});function s(a){const l={};return a.integrity&&(l.integrity=a.integrity),a.referrerPolicy&&(l.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?l.credentials="include":a.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function o(a){if(a.ep)return;a.ep=!0;const l=s(a);fetch(a.href,l)}})();const es="modulepreload",ts=function(e){return"/"+e},Tt={},Yt=function(r,s,o){let a=Promise.resolve();if(s&&s.length>0){let u=function(i){return Promise.all(i.map(p=>Promise.resolve(p).then(n=>({status:"fulfilled",value:n}),n=>({status:"rejected",reason:n}))))};document.getElementsByTagName("link");const d=document.querySelector("meta[property=csp-nonce]"),c=(d==null?void 0:d.nonce)||(d==null?void 0:d.getAttribute("nonce"));a=u(s.map(i=>{if(i=ts(i),i in Tt)return;Tt[i]=!0;const p=i.endsWith(".css"),n=p?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${i}"]${n}`))return;const b=document.createElement("link");if(b.rel=p?"stylesheet":es,p||(b.as="script"),b.crossOrigin="",b.href=i,c&&b.setAttribute("nonce",c),document.head.appendChild(b),p)return new Promise((z,E)=>{b.addEventListener("load",z),b.addEventListener("error",()=>E(new Error(`Unable to preload CSS for ${i}`)))})}))}function l(u){const d=new Event("vite:preloadError",{cancelable:!0});if(d.payload=u,window.dispatchEvent(d),!d.defaultPrevented)throw u}return a.then(u=>{for(const d of u||[])d.status==="rejected"&&l(d.reason);return r().catch(l)})};function rs(e){if(typeof document>"u")return;let r=document.head||document.getElementsByTagName("head")[0],s=document.createElement("style");s.type="text/css",r.appendChild(s),s.styleSheet?s.styleSheet.cssText=e:s.appendChild(document.createTextNode(e))}const ss=e=>{switch(e){case"success":return as;case"info":return ls;case"warning":return is;case"error":return cs;default:return null}},os=Array(12).fill(0),ns=({visible:e,className:r})=>f.createElement("div",{className:["sonner-loading-wrapper",r].filter(Boolean).join(" "),"data-visible":e},f.createElement("div",{className:"sonner-spinner"},os.map((s,o)=>f.createElement("div",{className:"sonner-loading-bar",key:`spinner-bar-${o}`})))),as=f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},f.createElement("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zm3.857-9.809a.75.75 0 00-1.214-.882l-3.483 4.79-1.88-1.88a.75.75 0 10-1.06 1.061l2.5 2.5a.75.75 0 001.137-.089l4-5.5z",clipRule:"evenodd"})),is=f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",height:"20",width:"20"},f.createElement("path",{fillRule:"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003zM12 8.25a.75.75 0 01.75.75v3.75a.75.75 0 01-1.5 0V9a.75.75 0 01.75-.75zm0 8.25a.75.75 0 100-1.5.75.75 0 000 1.5z",clipRule:"evenodd"})),ls=f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},f.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-7-4a1 1 0 11-2 0 1 1 0 012 0zM9 9a.75.75 0 000 1.5h.253a.25.25 0 01.244.304l-.459 2.066A1.75 1.75 0 0010.747 15H11a.75.75 0 000-1.5h-.253a.25.25 0 01-.244-.304l.459-2.066A1.75 1.75 0 009.253 9H9z",clipRule:"evenodd"})),cs=f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",height:"20",width:"20"},f.createElement("path",{fillRule:"evenodd",d:"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-5a.75.75 0 01.75.75v4.5a.75.75 0 01-1.5 0v-4.5A.75.75 0 0110 5zm0 10a1 1 0 100-2 1 1 0 000 2z",clipRule:"evenodd"})),ds=f.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"},f.createElement("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),f.createElement("line",{x1:"6",y1:"6",x2:"18",y2:"18"})),us=()=>{const[e,r]=f.useState(document.hidden);return f.useEffect(()=>{const s=()=>{r(document.hidden)};return document.addEventListener("visibilitychange",s),()=>window.removeEventListener("visibilitychange",s)},[]),e};let lt=1;class ms{constructor(){this.subscribe=r=>(this.subscribers.push(r),()=>{const s=this.subscribers.indexOf(r);this.subscribers.splice(s,1)}),this.publish=r=>{this.subscribers.forEach(s=>s(r))},this.addToast=r=>{this.publish(r),this.toasts=[...this.toasts,r]},this.create=r=>{var s;const{message:o,...a}=r,l=typeof(r==null?void 0:r.id)=="number"||((s=r.id)==null?void 0:s.length)>0?r.id:lt++,u=this.toasts.find(c=>c.id===l),d=r.dismissible===void 0?!0:r.dismissible;return this.dismissedToasts.has(l)&&this.dismissedToasts.delete(l),u?this.toasts=this.toasts.map(c=>c.id===l?(this.publish({...c,...r,id:l,title:o}),{...c,...r,id:l,dismissible:d,title:o}):c):this.addToast({title:o,...a,dismissible:d,id:l}),l},this.dismiss=r=>(r?(this.dismissedToasts.add(r),requestAnimationFrame(()=>this.subscribers.forEach(s=>s({id:r,dismiss:!0})))):this.toasts.forEach(s=>{this.subscribers.forEach(o=>o({id:s.id,dismiss:!0}))}),r),this.message=(r,s)=>this.create({...s,message:r}),this.error=(r,s)=>this.create({...s,message:r,type:"error"}),this.success=(r,s)=>this.create({...s,type:"success",message:r}),this.info=(r,s)=>this.create({...s,type:"info",message:r}),this.warning=(r,s)=>this.create({...s,type:"warning",message:r}),this.loading=(r,s)=>this.create({...s,type:"loading",message:r}),this.promise=(r,s)=>{if(!s)return;let o;s.loading!==void 0&&(o=this.create({...s,promise:r,type:"loading",message:s.loading,description:typeof s.description!="function"?s.description:void 0}));const a=Promise.resolve(r instanceof Function?r():r);let l=o!==void 0,u;const d=a.then(async i=>{if(u=["resolve",i],f.isValidElement(i))l=!1,this.create({id:o,type:"default",message:i});else if(fs(i)&&!i.ok){l=!1;const n=typeof s.error=="function"?await s.error(`HTTP error! status: ${i.status}`):s.error,b=typeof s.description=="function"?await s.description(`HTTP error! status: ${i.status}`):s.description,E=typeof n=="object"&&!f.isValidElement(n)?n:{message:n};this.create({id:o,type:"error",description:b,...E})}else if(i instanceof Error){l=!1;const n=typeof s.error=="function"?await s.error(i):s.error,b=typeof s.description=="function"?await s.description(i):s.description,E=typeof n=="object"&&!f.isValidElement(n)?n:{message:n};this.create({id:o,type:"error",description:b,...E})}else if(s.success!==void 0){l=!1;const n=typeof s.success=="function"?await s.success(i):s.success,b=typeof s.description=="function"?await s.description(i):s.description,E=typeof n=="object"&&!f.isValidElement(n)?n:{message:n};this.create({id:o,type:"success",description:b,...E})}}).catch(async i=>{if(u=["reject",i],s.error!==void 0){l=!1;const p=typeof s.error=="function"?await s.error(i):s.error,n=typeof s.description=="function"?await s.description(i):s.description,z=typeof p=="object"&&!f.isValidElement(p)?p:{message:p};this.create({id:o,type:"error",description:n,...z})}}).finally(()=>{l&&(this.dismiss(o),o=void 0),s.finally==null||s.finally.call(s)}),c=()=>new Promise((i,p)=>d.then(()=>u[0]==="reject"?p(u[1]):i(u[1])).catch(p));return typeof o!="string"&&typeof o!="number"?{unwrap:c}:Object.assign(o,{unwrap:c})},this.custom=(r,s)=>{const o=(s==null?void 0:s.id)||lt++;return this.create({jsx:r(o),id:o,...s}),o},this.getActiveToasts=()=>this.toasts.filter(r=>!this.dismissedToasts.has(r.id)),this.subscribers=[],this.toasts=[],this.dismissedToasts=new Set}}const re=new ms,ps=(e,r)=>{const s=(r==null?void 0:r.id)||lt++;return re.addToast({title:e,...r,id:s}),s},fs=e=>e&&typeof e=="object"&&"ok"in e&&typeof e.ok=="boolean"&&"status"in e&&typeof e.status=="number",hs=ps,gs=()=>re.toasts,xs=()=>re.getActiveToasts(),Le=Object.assign(hs,{success:re.success,info:re.info,warning:re.warning,error:re.error,custom:re.custom,message:re.message,promise:re.promise,dismiss:re.dismiss,loading:re.loading},{getHistory:gs,getToasts:xs});rs("[data-sonner-toaster][dir=ltr],html[dir=ltr]{--toast-icon-margin-start:-3px;--toast-icon-margin-end:4px;--toast-svg-margin-start:-1px;--toast-svg-margin-end:0px;--toast-button-margin-start:auto;--toast-button-margin-end:0;--toast-close-button-start:0;--toast-close-button-end:unset;--toast-close-button-transform:translate(-35%, -35%)}[data-sonner-toaster][dir=rtl],html[dir=rtl]{--toast-icon-margin-start:4px;--toast-icon-margin-end:-3px;--toast-svg-margin-start:0px;--toast-svg-margin-end:-1px;--toast-button-margin-start:0;--toast-button-margin-end:auto;--toast-close-button-start:unset;--toast-close-button-end:0;--toast-close-button-transform:translate(35%, -35%)}[data-sonner-toaster]{position:fixed;width:var(--width);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;--gray1:hsl(0, 0%, 99%);--gray2:hsl(0, 0%, 97.3%);--gray3:hsl(0, 0%, 95.1%);--gray4:hsl(0, 0%, 93%);--gray5:hsl(0, 0%, 90.9%);--gray6:hsl(0, 0%, 88.7%);--gray7:hsl(0, 0%, 85.8%);--gray8:hsl(0, 0%, 78%);--gray9:hsl(0, 0%, 56.1%);--gray10:hsl(0, 0%, 52.3%);--gray11:hsl(0, 0%, 43.5%);--gray12:hsl(0, 0%, 9%);--border-radius:8px;box-sizing:border-box;padding:0;margin:0;list-style:none;outline:0;z-index:999999999;transition:transform .4s ease}@media (hover:none) and (pointer:coarse){[data-sonner-toaster][data-lifted=true]{transform:none}}[data-sonner-toaster][data-x-position=right]{right:var(--offset-right)}[data-sonner-toaster][data-x-position=left]{left:var(--offset-left)}[data-sonner-toaster][data-x-position=center]{left:50%;transform:translateX(-50%)}[data-sonner-toaster][data-y-position=top]{top:var(--offset-top)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--offset-bottom)}[data-sonner-toast]{--y:translateY(100%);--lift-amount:calc(var(--lift) * var(--gap));z-index:var(--z-index);position:absolute;opacity:0;transform:var(--y);touch-action:none;transition:transform .4s,opacity .4s,height .4s,box-shadow .2s;box-sizing:border-box;outline:0;overflow-wrap:anywhere}[data-sonner-toast][data-styled=true]{padding:16px;background:var(--normal-bg);border:1px solid var(--normal-border);color:var(--normal-text);border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:var(--width);font-size:13px;display:flex;align-items:center;gap:6px}[data-sonner-toast]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-y-position=top]{top:0;--y:translateY(-100%);--lift:1;--lift-amount:calc(1 * var(--gap))}[data-sonner-toast][data-y-position=bottom]{bottom:0;--y:translateY(100%);--lift:-1;--lift-amount:calc(var(--lift) * var(--gap))}[data-sonner-toast][data-styled=true] [data-description]{font-weight:400;line-height:1.4;color:#3f3f3f}[data-rich-colors=true][data-sonner-toast][data-styled=true] [data-description]{color:inherit}[data-sonner-toaster][data-sonner-theme=dark] [data-description]{color:#e8e8e8}[data-sonner-toast][data-styled=true] [data-title]{font-weight:500;line-height:1.5;color:inherit}[data-sonner-toast][data-styled=true] [data-icon]{display:flex;height:16px;width:16px;position:relative;justify-content:flex-start;align-items:center;flex-shrink:0;margin-left:var(--toast-icon-margin-start);margin-right:var(--toast-icon-margin-end)}[data-sonner-toast][data-promise=true] [data-icon]>svg{opacity:0;transform:scale(.8);transform-origin:center;animation:sonner-fade-in .3s ease forwards}[data-sonner-toast][data-styled=true] [data-icon]>*{flex-shrink:0}[data-sonner-toast][data-styled=true] [data-icon] svg{margin-left:var(--toast-svg-margin-start);margin-right:var(--toast-svg-margin-end)}[data-sonner-toast][data-styled=true] [data-content]{display:flex;flex-direction:column;gap:2px}[data-sonner-toast][data-styled=true] [data-button]{border-radius:4px;padding-left:8px;padding-right:8px;height:24px;font-size:12px;color:var(--normal-bg);background:var(--normal-text);margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end);border:none;font-weight:500;cursor:pointer;outline:0;display:flex;align-items:center;flex-shrink:0;transition:opacity .4s,box-shadow .2s}[data-sonner-toast][data-styled=true] [data-button]:focus-visible{box-shadow:0 0 0 2px rgba(0,0,0,.4)}[data-sonner-toast][data-styled=true] [data-button]:first-of-type{margin-left:var(--toast-button-margin-start);margin-right:var(--toast-button-margin-end)}[data-sonner-toast][data-styled=true] [data-cancel]{color:var(--normal-text);background:rgba(0,0,0,.08)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-styled=true] [data-cancel]{background:rgba(255,255,255,.3)}[data-sonner-toast][data-styled=true] [data-close-button]{position:absolute;left:var(--toast-close-button-start);right:var(--toast-close-button-end);top:0;height:20px;width:20px;display:flex;justify-content:center;align-items:center;padding:0;color:var(--gray12);background:var(--normal-bg);border:1px solid var(--gray4);transform:var(--toast-close-button-transform);border-radius:50%;cursor:pointer;z-index:1;transition:opacity .1s,background .2s,border-color .2s}[data-sonner-toast][data-styled=true] [data-close-button]:focus-visible{box-shadow:0 4px 12px rgba(0,0,0,.1),0 0 0 2px rgba(0,0,0,.2)}[data-sonner-toast][data-styled=true] [data-disabled=true]{cursor:not-allowed}[data-sonner-toast][data-styled=true]:hover [data-close-button]:hover{background:var(--gray2);border-color:var(--gray5)}[data-sonner-toast][data-swiping=true]::before{content:'';position:absolute;left:-100%;right:-100%;height:100%;z-index:-1}[data-sonner-toast][data-y-position=top][data-swiping=true]::before{bottom:50%;transform:scaleY(3) translateY(50%)}[data-sonner-toast][data-y-position=bottom][data-swiping=true]::before{top:50%;transform:scaleY(3) translateY(-50%)}[data-sonner-toast][data-swiping=false][data-removed=true]::before{content:'';position:absolute;inset:0;transform:scaleY(2)}[data-sonner-toast][data-expanded=true]::after{content:'';position:absolute;left:0;height:calc(var(--gap) + 1px);bottom:100%;width:100%}[data-sonner-toast][data-mounted=true]{--y:translateY(0);opacity:1}[data-sonner-toast][data-expanded=false][data-front=false]{--scale:var(--toasts-before) * 0.05 + 1;--y:translateY(calc(var(--lift-amount) * var(--toasts-before))) scale(calc(-1 * var(--scale)));height:var(--front-toast-height)}[data-sonner-toast]>*{transition:opacity .4s}[data-sonner-toast][data-x-position=right]{right:0}[data-sonner-toast][data-x-position=left]{left:0}[data-sonner-toast][data-expanded=false][data-front=false][data-styled=true]>*{opacity:0}[data-sonner-toast][data-visible=false]{opacity:0;pointer-events:none}[data-sonner-toast][data-mounted=true][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset)));height:var(--initial-height)}[data-sonner-toast][data-removed=true][data-front=true][data-swipe-out=false]{--y:translateY(calc(var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=true]{--y:translateY(calc(var(--lift) * var(--offset) + var(--lift) * -100%));opacity:0}[data-sonner-toast][data-removed=true][data-front=false][data-swipe-out=false][data-expanded=false]{--y:translateY(40%);opacity:0;transition:transform .5s,opacity .2s}[data-sonner-toast][data-removed=true][data-front=false]::before{height:calc(var(--initial-height) + 20%)}[data-sonner-toast][data-swiping=true]{transform:var(--y) translateY(var(--swipe-amount-y,0)) translateX(var(--swipe-amount-x,0));transition:none}[data-sonner-toast][data-swiped=true]{user-select:none}[data-sonner-toast][data-swipe-out=true][data-y-position=bottom],[data-sonner-toast][data-swipe-out=true][data-y-position=top]{animation-duration:.2s;animation-timing-function:ease-out;animation-fill-mode:forwards}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=left]{animation-name:swipe-out-left}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=right]{animation-name:swipe-out-right}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=up]{animation-name:swipe-out-up}[data-sonner-toast][data-swipe-out=true][data-swipe-direction=down]{animation-name:swipe-out-down}@keyframes swipe-out-left{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) - 100%));opacity:0}}@keyframes swipe-out-right{from{transform:var(--y) translateX(var(--swipe-amount-x));opacity:1}to{transform:var(--y) translateX(calc(var(--swipe-amount-x) + 100%));opacity:0}}@keyframes swipe-out-up{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) - 100%));opacity:0}}@keyframes swipe-out-down{from{transform:var(--y) translateY(var(--swipe-amount-y));opacity:1}to{transform:var(--y) translateY(calc(var(--swipe-amount-y) + 100%));opacity:0}}@media (max-width:600px){[data-sonner-toaster]{position:fixed;right:var(--mobile-offset-right);left:var(--mobile-offset-left);width:100%}[data-sonner-toaster][dir=rtl]{left:calc(var(--mobile-offset-left) * -1)}[data-sonner-toaster] [data-sonner-toast]{left:0;right:0;width:calc(100% - var(--mobile-offset-left) * 2)}[data-sonner-toaster][data-x-position=left]{left:var(--mobile-offset-left)}[data-sonner-toaster][data-y-position=bottom]{bottom:var(--mobile-offset-bottom)}[data-sonner-toaster][data-y-position=top]{top:var(--mobile-offset-top)}[data-sonner-toaster][data-x-position=center]{left:var(--mobile-offset-left);right:var(--mobile-offset-right);transform:none}}[data-sonner-toaster][data-sonner-theme=light]{--normal-bg:#fff;--normal-border:var(--gray4);--normal-text:var(--gray12);--success-bg:hsl(143, 85%, 96%);--success-border:hsl(145, 92%, 87%);--success-text:hsl(140, 100%, 27%);--info-bg:hsl(208, 100%, 97%);--info-border:hsl(221, 91%, 93%);--info-text:hsl(210, 92%, 45%);--warning-bg:hsl(49, 100%, 97%);--warning-border:hsl(49, 91%, 84%);--warning-text:hsl(31, 92%, 45%);--error-bg:hsl(359, 100%, 97%);--error-border:hsl(359, 100%, 94%);--error-text:hsl(360, 100%, 45%)}[data-sonner-toaster][data-sonner-theme=light] [data-sonner-toast][data-invert=true]{--normal-bg:#000;--normal-border:hsl(0, 0%, 20%);--normal-text:var(--gray1)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast][data-invert=true]{--normal-bg:#fff;--normal-border:var(--gray3);--normal-text:var(--gray12)}[data-sonner-toaster][data-sonner-theme=dark]{--normal-bg:#000;--normal-bg-hover:hsl(0, 0%, 12%);--normal-border:hsl(0, 0%, 20%);--normal-border-hover:hsl(0, 0%, 25%);--normal-text:var(--gray1);--success-bg:hsl(150, 100%, 6%);--success-border:hsl(147, 100%, 12%);--success-text:hsl(150, 86%, 65%);--info-bg:hsl(215, 100%, 6%);--info-border:hsl(223, 43%, 17%);--info-text:hsl(216, 87%, 65%);--warning-bg:hsl(64, 100%, 6%);--warning-border:hsl(60, 100%, 9%);--warning-text:hsl(46, 87%, 65%);--error-bg:hsl(358, 76%, 10%);--error-border:hsl(357, 89%, 16%);--error-text:hsl(358, 100%, 81%)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]{background:var(--normal-bg);border-color:var(--normal-border);color:var(--normal-text)}[data-sonner-toaster][data-sonner-theme=dark] [data-sonner-toast] [data-close-button]:hover{background:var(--normal-bg-hover);border-color:var(--normal-border-hover)}[data-rich-colors=true][data-sonner-toast][data-type=success]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=success] [data-close-button]{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-rich-colors=true][data-sonner-toast][data-type=info]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=info] [data-close-button]{background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=warning] [data-close-button]{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-rich-colors=true][data-sonner-toast][data-type=error]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}[data-rich-colors=true][data-sonner-toast][data-type=error] [data-close-button]{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.sonner-loading-wrapper{--size:16px;height:var(--size);width:var(--size);position:absolute;inset:0;z-index:10}.sonner-loading-wrapper[data-visible=false]{transform-origin:center;animation:sonner-fade-out .2s ease forwards}.sonner-spinner{position:relative;top:50%;left:50%;height:var(--size);width:var(--size)}.sonner-loading-bar{animation:sonner-spin 1.2s linear infinite;background:var(--gray11);border-radius:6px;height:8%;left:-10%;position:absolute;top:-3.9%;width:24%}.sonner-loading-bar:first-child{animation-delay:-1.2s;transform:rotate(.0001deg) translate(146%)}.sonner-loading-bar:nth-child(2){animation-delay:-1.1s;transform:rotate(30deg) translate(146%)}.sonner-loading-bar:nth-child(3){animation-delay:-1s;transform:rotate(60deg) translate(146%)}.sonner-loading-bar:nth-child(4){animation-delay:-.9s;transform:rotate(90deg) translate(146%)}.sonner-loading-bar:nth-child(5){animation-delay:-.8s;transform:rotate(120deg) translate(146%)}.sonner-loading-bar:nth-child(6){animation-delay:-.7s;transform:rotate(150deg) translate(146%)}.sonner-loading-bar:nth-child(7){animation-delay:-.6s;transform:rotate(180deg) translate(146%)}.sonner-loading-bar:nth-child(8){animation-delay:-.5s;transform:rotate(210deg) translate(146%)}.sonner-loading-bar:nth-child(9){animation-delay:-.4s;transform:rotate(240deg) translate(146%)}.sonner-loading-bar:nth-child(10){animation-delay:-.3s;transform:rotate(270deg) translate(146%)}.sonner-loading-bar:nth-child(11){animation-delay:-.2s;transform:rotate(300deg) translate(146%)}.sonner-loading-bar:nth-child(12){animation-delay:-.1s;transform:rotate(330deg) translate(146%)}@keyframes sonner-fade-in{0%{opacity:0;transform:scale(.8)}100%{opacity:1;transform:scale(1)}}@keyframes sonner-fade-out{0%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(.8)}}@keyframes sonner-spin{0%{opacity:1}100%{opacity:.15}}@media (prefers-reduced-motion){.sonner-loading-bar,[data-sonner-toast],[data-sonner-toast]>*{transition:none!important;animation:none!important}}.sonner-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transform-origin:center;transition:opacity .2s,transform .2s}.sonner-loader[data-visible=false]{opacity:0;transform:scale(.8) translate(-50%,-50%)}");function Fe(e){return e.label!==void 0}const bs=3,vs="24px",ws="16px",Et=4e3,ys=356,ks=14,js=45,Ns=200;function be(...e){return e.filter(Boolean).join(" ")}function Cs(e){const[r,s]=e.split("-"),o=[];return r&&o.push(r),s&&o.push(s),o}const Ss=e=>{var r,s,o,a,l,u,d,c,i;const{invert:p,toast:n,unstyled:b,interacting:z,setHeights:E,visibleToasts:S,heights:_,index:T,toasts:se,expanded:X,removeToast:J,defaultRichColors:Z,closeButton:P,style:Q,cancelButtonStyle:v,actionButtonStyle:O,className:ge="",descriptionClassName:ve="",duration:oe,position:F,gap:ue,expandByDefault:H,classNames:j,icons:M,closeButtonAriaLabel:ee="Close toast"}=e,[ne,h]=f.useState(null),[te,xe]=f.useState(null),[y,A]=f.useState(!1),[k,R]=f.useState(!1),[q,L]=f.useState(!1),[B,me]=f.useState(!1),[pe,ae]=f.useState(!1),[w,I]=f.useState(0),[Ze,De]=f.useState(0),Se=f.useRef(n.duration||oe||Et),bt=f.useRef(null),we=f.useRef(null),vr=T===0,wr=T+1<=S,ie=n.type,ze=n.dismissible!==!1,yr=n.className||"",kr=n.descriptionClassName||"",$e=f.useMemo(()=>_.findIndex(N=>N.toastId===n.id)||0,[_,n.id]),jr=f.useMemo(()=>{var N;return(N=n.closeButton)!=null?N:P},[n.closeButton,P]),vt=f.useMemo(()=>n.duration||oe||Et,[n.duration,oe]),Qe=f.useRef(0),Ae=f.useRef(0),wt=f.useRef(0),Re=f.useRef(null),[Nr,Cr]=F.split("-"),yt=f.useMemo(()=>_.reduce((N,$,G)=>G>=$e?N:N+$.height,0),[_,$e]),kt=us(),Sr=n.invert||p,et=ie==="loading";Ae.current=f.useMemo(()=>$e*ue+yt,[$e,yt]),f.useEffect(()=>{Se.current=vt},[vt]),f.useEffect(()=>{A(!0)},[]),f.useEffect(()=>{const N=we.current;if(N){const $=N.getBoundingClientRect().height;return De($),E(G=>[{toastId:n.id,height:$,position:n.position},...G]),()=>E(G=>G.filter(le=>le.toastId!==n.id))}},[E,n.id]),f.useLayoutEffect(()=>{if(!y)return;const N=we.current,$=N.style.height;N.style.height="auto";const G=N.getBoundingClientRect().height;N.style.height=$,De(G),E(le=>le.find(W=>W.toastId===n.id)?le.map(W=>W.toastId===n.id?{...W,height:G}:W):[{toastId:n.id,height:G,position:n.position},...le])},[y,n.title,n.description,E,n.id,n.jsx,n.action,n.cancel]);const ke=f.useCallback(()=>{R(!0),I(Ae.current),E(N=>N.filter($=>$.toastId!==n.id)),setTimeout(()=>{J(n)},Ns)},[n,J,E,Ae]);f.useEffect(()=>{if(n.promise&&ie==="loading"||n.duration===1/0||n.type==="loading")return;let N;return X||z||kt?(()=>{if(wt.current<Qe.current){const le=new Date().getTime()-Qe.current;Se.current=Se.current-le}wt.current=new Date().getTime()})():(()=>{Se.current!==1/0&&(Qe.current=new Date().getTime(),N=setTimeout(()=>{n.onAutoClose==null||n.onAutoClose.call(n,n),ke()},Se.current))})(),()=>clearTimeout(N)},[X,z,n,ie,kt,ke]),f.useEffect(()=>{n.delete&&(ke(),n.onDismiss==null||n.onDismiss.call(n,n))},[ke,n.delete]);function Tr(){var N;if(M!=null&&M.loading){var $;return f.createElement("div",{className:be(j==null?void 0:j.loader,n==null||($=n.classNames)==null?void 0:$.loader,"sonner-loader"),"data-visible":ie==="loading"},M.loading)}return f.createElement(ns,{className:be(j==null?void 0:j.loader,n==null||(N=n.classNames)==null?void 0:N.loader),visible:ie==="loading"})}const Er=n.icon||(M==null?void 0:M[ie])||ss(ie);var jt,Nt;return f.createElement("li",{tabIndex:0,ref:we,className:be(ge,yr,j==null?void 0:j.toast,n==null||(r=n.classNames)==null?void 0:r.toast,j==null?void 0:j.default,j==null?void 0:j[ie],n==null||(s=n.classNames)==null?void 0:s[ie]),"data-sonner-toast":"","data-rich-colors":(jt=n.richColors)!=null?jt:Z,"data-styled":!(n.jsx||n.unstyled||b),"data-mounted":y,"data-promise":!!n.promise,"data-swiped":pe,"data-removed":k,"data-visible":wr,"data-y-position":Nr,"data-x-position":Cr,"data-index":T,"data-front":vr,"data-swiping":q,"data-dismissible":ze,"data-type":ie,"data-invert":Sr,"data-swipe-out":B,"data-swipe-direction":te,"data-expanded":!!(X||H&&y),"data-testid":n.testId,style:{"--index":T,"--toasts-before":T,"--z-index":se.length-T,"--offset":`${k?w:Ae.current}px`,"--initial-height":H?"auto":`${Ze}px`,...Q,...n.style},onDragEnd:()=>{L(!1),h(null),Re.current=null},onPointerDown:N=>{N.button!==2&&(et||!ze||(bt.current=new Date,I(Ae.current),N.target.setPointerCapture(N.pointerId),N.target.tagName!=="BUTTON"&&(L(!0),Re.current={x:N.clientX,y:N.clientY})))},onPointerUp:()=>{var N,$,G;if(B||!ze)return;Re.current=null;const le=Number(((N=we.current)==null?void 0:N.style.getPropertyValue("--swipe-amount-x").replace("px",""))||0),Ve=Number((($=we.current)==null?void 0:$.style.getPropertyValue("--swipe-amount-y").replace("px",""))||0),W=new Date().getTime()-((G=bt.current)==null?void 0:G.getTime()),de=ne==="x"?le:Ve,We=Math.abs(de)/W;if(Math.abs(de)>=js||We>.11){I(Ae.current),n.onDismiss==null||n.onDismiss.call(n,n),xe(ne==="x"?le>0?"right":"left":Ve>0?"down":"up"),ke(),me(!0);return}else{var fe,he;(fe=we.current)==null||fe.style.setProperty("--swipe-amount-x","0px"),(he=we.current)==null||he.style.setProperty("--swipe-amount-y","0px")}ae(!1),L(!1),h(null)},onPointerMove:N=>{var $,G,le;if(!Re.current||!ze||(($=window.getSelection())==null?void 0:$.toString().length)>0)return;const W=N.clientY-Re.current.y,de=N.clientX-Re.current.x;var We;const fe=(We=e.swipeDirections)!=null?We:Cs(F);!ne&&(Math.abs(de)>1||Math.abs(W)>1)&&h(Math.abs(de)>Math.abs(W)?"x":"y");let he={x:0,y:0};const Ct=Te=>1/(1.5+Math.abs(Te)/20);if(ne==="y"){if(fe.includes("top")||fe.includes("bottom"))if(fe.includes("top")&&W<0||fe.includes("bottom")&&W>0)he.y=W;else{const Te=W*Ct(W);he.y=Math.abs(Te)<Math.abs(W)?Te:W}}else if(ne==="x"&&(fe.includes("left")||fe.includes("right")))if(fe.includes("left")&&de<0||fe.includes("right")&&de>0)he.x=de;else{const Te=de*Ct(de);he.x=Math.abs(Te)<Math.abs(de)?Te:de}(Math.abs(he.x)>0||Math.abs(he.y)>0)&&ae(!0),(G=we.current)==null||G.style.setProperty("--swipe-amount-x",`${he.x}px`),(le=we.current)==null||le.style.setProperty("--swipe-amount-y",`${he.y}px`)}},jr&&!n.jsx&&ie!=="loading"?f.createElement("button",{"aria-label":ee,"data-disabled":et,"data-close-button":!0,onClick:et||!ze?()=>{}:()=>{ke(),n.onDismiss==null||n.onDismiss.call(n,n)},className:be(j==null?void 0:j.closeButton,n==null||(o=n.classNames)==null?void 0:o.closeButton)},(Nt=M==null?void 0:M.close)!=null?Nt:ds):null,(ie||n.icon||n.promise)&&n.icon!==null&&((M==null?void 0:M[ie])!==null||n.icon)?f.createElement("div",{"data-icon":"",className:be(j==null?void 0:j.icon,n==null||(a=n.classNames)==null?void 0:a.icon)},n.promise||n.type==="loading"&&!n.icon?n.icon||Tr():null,n.type!=="loading"?Er:null):null,f.createElement("div",{"data-content":"",className:be(j==null?void 0:j.content,n==null||(l=n.classNames)==null?void 0:l.content)},f.createElement("div",{"data-title":"",className:be(j==null?void 0:j.title,n==null||(u=n.classNames)==null?void 0:u.title)},n.jsx?n.jsx:typeof n.title=="function"?n.title():n.title),n.description?f.createElement("div",{"data-description":"",className:be(ve,kr,j==null?void 0:j.description,n==null||(d=n.classNames)==null?void 0:d.description)},typeof n.description=="function"?n.description():n.description):null),f.isValidElement(n.cancel)?n.cancel:n.cancel&&Fe(n.cancel)?f.createElement("button",{"data-button":!0,"data-cancel":!0,style:n.cancelButtonStyle||v,onClick:N=>{Fe(n.cancel)&&ze&&(n.cancel.onClick==null||n.cancel.onClick.call(n.cancel,N),ke())},className:be(j==null?void 0:j.cancelButton,n==null||(c=n.classNames)==null?void 0:c.cancelButton)},n.cancel.label):null,f.isValidElement(n.action)?n.action:n.action&&Fe(n.action)?f.createElement("button",{"data-button":!0,"data-action":!0,style:n.actionButtonStyle||O,onClick:N=>{Fe(n.action)&&(n.action.onClick==null||n.action.onClick.call(n.action,N),!N.defaultPrevented&&ke())},className:be(j==null?void 0:j.actionButton,n==null||(i=n.classNames)==null?void 0:i.actionButton)},n.action.label):null)};function _t(){if(typeof window>"u"||typeof document>"u")return"ltr";const e=document.documentElement.getAttribute("dir");return e==="auto"||!e?window.getComputedStyle(document.documentElement).direction:e}function Ts(e,r){const s={};return[e,r].forEach((o,a)=>{const l=a===1,u=l?"--mobile-offset":"--offset",d=l?ws:vs;function c(i){["top","right","bottom","left"].forEach(p=>{s[`${u}-${p}`]=typeof i=="number"?`${i}px`:i})}typeof o=="number"||typeof o=="string"?c(o):typeof o=="object"?["top","right","bottom","left"].forEach(i=>{o[i]===void 0?s[`${u}-${i}`]=d:s[`${u}-${i}`]=typeof o[i]=="number"?`${o[i]}px`:o[i]}):c(d)}),s}const Es=f.forwardRef(function(r,s){const{id:o,invert:a,position:l="bottom-right",hotkey:u=["altKey","KeyT"],expand:d,closeButton:c,className:i,offset:p,mobileOffset:n,theme:b="light",richColors:z,duration:E,style:S,visibleToasts:_=bs,toastOptions:T,dir:se=_t(),gap:X=ks,icons:J,containerAriaLabel:Z="Notifications"}=r,[P,Q]=f.useState([]),v=f.useMemo(()=>o?P.filter(y=>y.toasterId===o):P.filter(y=>!y.toasterId),[P,o]),O=f.useMemo(()=>Array.from(new Set([l].concat(v.filter(y=>y.position).map(y=>y.position)))),[v,l]),[ge,ve]=f.useState([]),[oe,F]=f.useState(!1),[ue,H]=f.useState(!1),[j,M]=f.useState(b!=="system"?b:typeof window<"u"&&window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light"),ee=f.useRef(null),ne=u.join("+").replace(/Key/g,"").replace(/Digit/g,""),h=f.useRef(null),te=f.useRef(!1),xe=f.useCallback(y=>{Q(A=>{var k;return(k=A.find(R=>R.id===y.id))!=null&&k.delete||re.dismiss(y.id),A.filter(({id:R})=>R!==y.id)})},[]);return f.useEffect(()=>re.subscribe(y=>{if(y.dismiss){requestAnimationFrame(()=>{Q(A=>A.map(k=>k.id===y.id?{...k,delete:!0}:k))});return}setTimeout(()=>{Ar.flushSync(()=>{Q(A=>{const k=A.findIndex(R=>R.id===y.id);return k!==-1?[...A.slice(0,k),{...A[k],...y},...A.slice(k+1)]:[y,...A]})})})}),[P]),f.useEffect(()=>{if(b!=="system"){M(b);return}if(b==="system"&&(window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?M("dark"):M("light")),typeof window>"u")return;const y=window.matchMedia("(prefers-color-scheme: dark)");try{y.addEventListener("change",({matches:A})=>{M(A?"dark":"light")})}catch{y.addListener(({matches:k})=>{try{M(k?"dark":"light")}catch(R){console.error(R)}})}},[b]),f.useEffect(()=>{P.length<=1&&F(!1)},[P]),f.useEffect(()=>{const y=A=>{var k;if(u.every(L=>A[L]||A.code===L)){var q;F(!0),(q=ee.current)==null||q.focus()}A.code==="Escape"&&(document.activeElement===ee.current||(k=ee.current)!=null&&k.contains(document.activeElement))&&F(!1)};return document.addEventListener("keydown",y),()=>document.removeEventListener("keydown",y)},[u]),f.useEffect(()=>{if(ee.current)return()=>{h.current&&(h.current.focus({preventScroll:!0}),h.current=null,te.current=!1)}},[ee.current]),f.createElement("section",{ref:s,"aria-label":`${Z} ${ne}`,tabIndex:-1,"aria-live":"polite","aria-relevant":"additions text","aria-atomic":"false",suppressHydrationWarning:!0},O.map((y,A)=>{var k;const[R,q]=y.split("-");return v.length?f.createElement("ol",{key:y,dir:se==="auto"?_t():se,tabIndex:-1,ref:ee,className:i,"data-sonner-toaster":!0,"data-sonner-theme":j,"data-y-position":R,"data-x-position":q,style:{"--front-toast-height":`${((k=ge[0])==null?void 0:k.height)||0}px`,"--width":`${ys}px`,"--gap":`${X}px`,...S,...Ts(p,n)},onBlur:L=>{te.current&&!L.currentTarget.contains(L.relatedTarget)&&(te.current=!1,h.current&&(h.current.focus({preventScroll:!0}),h.current=null))},onFocus:L=>{L.target instanceof HTMLElement&&L.target.dataset.dismissible==="false"||te.current||(te.current=!0,h.current=L.relatedTarget)},onMouseEnter:()=>F(!0),onMouseMove:()=>F(!0),onMouseLeave:()=>{ue||F(!1)},onDragEnd:()=>F(!1),onPointerDown:L=>{L.target instanceof HTMLElement&&L.target.dataset.dismissible==="false"||H(!0)},onPointerUp:()=>H(!1)},v.filter(L=>!L.position&&A===0||L.position===y).map((L,B)=>{var me,pe;return f.createElement(Ss,{key:L.id,icons:J,index:B,toast:L,defaultRichColors:z,duration:(me=T==null?void 0:T.duration)!=null?me:E,className:T==null?void 0:T.className,descriptionClassName:T==null?void 0:T.descriptionClassName,invert:a,visibleToasts:_,closeButton:(pe=T==null?void 0:T.closeButton)!=null?pe:c,interacting:ue,position:y,style:T==null?void 0:T.style,unstyled:T==null?void 0:T.unstyled,classNames:T==null?void 0:T.classNames,cancelButtonStyle:T==null?void 0:T.cancelButtonStyle,actionButtonStyle:T==null?void 0:T.actionButtonStyle,closeButtonAriaLabel:T==null?void 0:T.closeButtonAriaLabel,removeToast:xe,toasts:v.filter(ae=>ae.position==L.position),heights:ge.filter(ae=>ae.position==L.position),setHeights:ve,expandByDefault:d,gap:X,expanded:oe,swipeDirections:r.swipeDirections})})):null}))}),_s="/api";async function Y(e,r){const s={};r!=null&&r.body&&(s["Content-Type"]="application/json");const o=await fetch(`${_s}${e}`,{headers:s,...r});if(!o.ok){const a=await o.json().catch(()=>({error:o.statusText}));throw new Error(a.error||o.statusText)}if(o.status!==204)return o.json()}const ce={browse:e=>Y(`/browse${e?`?path=${encodeURIComponent(e)}`:""}`),recentRepos:()=>Y("/recent-repos"),listBranches:e=>Y(`/branches?repo_path=${encodeURIComponent(e)}`),getDefaultBranch:e=>Y(`/default-branch?repo_path=${encodeURIComponent(e)}`),listTasks:()=>Y("/tasks"),getTask:e=>Y(`/tasks/${e}`),createTask:e=>Y("/tasks",{method:"POST",body:JSON.stringify(e)}),updateTask:(e,r)=>Y(`/tasks/${e}`,{method:"PATCH",body:JSON.stringify(r)}),startTask:e=>Y(`/tasks/${e}/start`,{method:"POST"}),deleteTask:e=>Y(`/tasks/${e}`,{method:"DELETE"}),addAgent:(e,r)=>Y(`/tasks/${e}/agents`,{method:"POST",body:JSON.stringify(r||{})}),stopAgent:(e,r)=>Y(`/tasks/${e}/agents/${r}`,{method:"DELETE"}),createUserTerminal:e=>Y(`/tasks/${e}/user-terminal`,{method:"POST"}),orchestratorStatus:()=>Y("/orchestrator/status"),orchestratorStart:()=>Y("/orchestrator/start",{method:"POST"}),orchestratorStop:()=>Y("/orchestrator/stop",{method:"POST"})},zs=1e4,pt=1e3;let U=null,Ue=null,Ie=pt;const Pe=new Set;function As(){return`${window.location.protocol==="https:"?"wss:":"ws:"}//${window.location.host}/ws/events`}function Ut(){(U==null?void 0:U.readyState)===WebSocket.OPEN||(U==null?void 0:U.readyState)===WebSocket.CONNECTING||(U=new WebSocket(As()),U.onopen=()=>{Ie=pt},U.onmessage=()=>{for(const e of Pe)e()},U.onclose=e=>{U=null,e.code!==1e3&&Pe.size>0&&(Ue=setTimeout(()=>{Ie=Math.min(Ie*2,zs),Ut()},Ie))},U.onerror=()=>{})}function ft(e){return Pe.add(e),Ut(),()=>{Pe.delete(e),Pe.size===0&&(Ue&&(clearTimeout(Ue),Ue=null),U==null||U.close(1e3),U=null,Ie=pt)}}function Rs(){const[e,r]=m.useState(!1),[s,o]=m.useState(!0),[a,l]=m.useState(null),u=m.useCallback(async()=>{try{const i=await ce.orchestratorStatus();r(i.running),l(null)}catch(i){l(i.message)}finally{o(!1)}},[]);m.useEffect(()=>(u(),ft(u)),[u]);const d=m.useCallback(async()=>{try{await ce.orchestratorStart(),r(!0)}catch(i){l(i.message)}},[]),c=m.useCallback(async()=>{try{await ce.orchestratorStop(),r(!1)}catch(i){l(i.message)}},[]);return{running:e,loading:s,error:a,start:d,stop:c,refresh:u}}function ht(){const[e,r]=m.useState([]),[s,o]=m.useState(!0),[a,l]=m.useState(null),u=m.useRef(""),d=m.useCallback(async()=>{try{const c=await ce.listTasks(),i=JSON.stringify(c);i!==u.current&&(u.current=i,r(c)),l(null)}catch(c){l(c.message)}finally{o(!1)}},[]);return m.useEffect(()=>(d(),ft(d)),[d]),{tasks:e,loading:s,error:a,refresh:d}}function On(e){const[r,s]=m.useState(null),[o,a]=m.useState(!0),[l,u]=m.useState(null),d=m.useRef(""),c=m.useCallback(async()=>{try{const i=await ce.getTask(e),p=JSON.stringify(i);p!==d.current&&(d.current=p,s(i)),u(null)}catch(i){u(i.message)}finally{a(!1)}},[e]);return m.useEffect(()=>(c(),ft(c)),[c]),{task:r,loading:o,error:l,refresh:c}}const rt="octomux",st="/logo.png";function Ls(e){return e.filter(r=>{const s=r.derived_status??r.status;return s==="error"||s==="needs_attention"}).length}function Ms(e){const s=document.createElement("canvas");s.width=32,s.height=32;const o=s.getContext("2d");o.drawImage(e,0,0,32,32);const a=7,l=32-a-1,u=a+1;return o.beginPath(),o.arc(l,u,a,0,2*Math.PI),o.fillStyle="#ef4444",o.fill(),o.strokeStyle="#1a1a2e",o.lineWidth=2,o.stroke(),s.toDataURL("image/png")}function ot(e){let r=document.querySelector('link[rel="icon"]');r||(r=document.createElement("link"),r.rel="icon",document.head.appendChild(r)),r.href!==e&&(r.href=e)}function Bs(e){const r=m.useRef(null);m.useEffect(()=>{const s=new Image;s.onload=()=>{r.current=Ms(s)},s.src=st},[]),m.useEffect(()=>{const s=Ls(e);document.title=s>0?`(${s}) ${rt}`:rt,s>0&&r.current?ot(r.current):ot(st)},[e]),m.useEffect(()=>()=>{document.title=rt,ot(st)},[])}const qt="octomux-notifications-enabled";function Kt(){return localStorage.getItem(qt)!=="false"}function Is(e){localStorage.setItem(qt,String(e))}function nt(e,r){var o;const s=((o=r.label.match(/\d+/))==null?void 0:o[0])??"1";return`${e.title} #${s}`}function Ps(){const{pathname:e}=Lr(),r=e.match(/^\/tasks\/([^/]+)/);return r?r[1]:null}function Os(e,r){const s=m.useRef(new Map),o=m.useRef(new Set),a=m.useRef(!1),l=Ps();m.useEffect(()=>{var d,c;if(!Kt()||e.length===0)return;const u=new Map;for(const i of e){if(!i.agents)continue;const p=i.id===l;for(const n of i.agents){if(u.set(n.id,{status:n.status,hookActivity:n.hook_activity}),!a.current)continue;const b=s.current.get(n.id);if(b&&!p){if(b.status!=="stopped"&&n.status==="stopped"){const z=i.id;Le(nt(i,n),{description:"Agent stopped",action:{label:"View",onClick:()=>r(`/tasks/${z}`)}})}if(b.hookActivity==="active"&&n.hook_activity==="idle"){const z=i.id;Le.success(nt(i,n),{description:"Agent finished",action:{label:"View",onClick:()=>r(`/tasks/${z}`)}})}}}if(a.current&&!p&&i.pending_prompts){for(const n of i.pending_prompts)if(n.status==="pending"&&!o.current.has(n.id)){o.current.add(n.id);const b=i.id,z=n.agent_id,E=(d=i.agents)==null?void 0:d.find(_=>_.id===n.agent_id),S=E?nt(i,E):`${i.title} #?`;Le.warning(S,{description:`Needs permission: ${n.tool_name}`,action:{label:"View",onClick:()=>r(`/tasks/${b}?agent=${z}`)}})}}}if(a.current){for(const i of e)if(i.id!==l&&(i.status==="closed"||i.status==="error")&&((c=i.agents)==null?void 0:c.some(n=>{const b=s.current.get(n.id);return b&&b.status!=="stopped"}))){const n=i.id;i.status==="error"?Le.error(i.title,{description:"Task errored",action:{label:"View",onClick:()=>r(`/tasks/${n}`)}}):Le.success(i.title,{description:"Task closed",action:{label:"View",onClick:()=>r(`/tasks/${n}`)}})}}if(s.current=u,!a.current){for(const i of e)if(i.pending_prompts)for(const p of i.pending_prompts)o.current.add(p.id);a.current=!0}},[e,r,l])}const zt="octomux-repo-filter",At="octomux-status-filter",Rt=["setting_up","running","error"];function Ds(e){const[r,s]=m.useState({status:localStorage.getItem(At)??"open",repo:localStorage.getItem(zt)??""}),o=m.useMemo(()=>[...new Set(e.map(c=>c.repo_path))].sort((c,i)=>{const p=c.split("/").pop()||c,n=i.split("/").pop()||i;return p.localeCompare(n)}),[e]),a=m.useMemo(()=>{const d=r.repo?e.filter(c=>c.repo_path===r.repo):e;return{open:d.filter(c=>Rt.includes(c.status)).length,closed:d.filter(c=>c.status==="closed").length,backlog:d.filter(c=>c.status==="draft").length}},[e,r.repo]),l=m.useMemo(()=>{const d=e.filter(c=>{let i;r.status==="open"?i=Rt.includes(c.status):r.status==="backlog"?i=c.status==="draft":i=c.status==="closed";const p=!r.repo||c.repo_path===r.repo;return i&&p});if(r.status==="open"){const c={needs_attention:0,working:1,running:2,setting_up:3,error:4,draft:5};d.sort((i,p)=>{const n=c[i.derived_status??i.status]??9,b=c[p.derived_status??p.status]??9;return n!==b?n-b:p.created_at.localeCompare(i.created_at)})}return d},[e,r]);function u(d,c){d==="repo"?localStorage.setItem(zt,c):d==="status"&&localStorage.setItem(At,c),s(i=>({...i,[d]:c}))}return{filters:r,setFilter:u,filtered:l,counts:a,repos:o}}function Xt(e){var r,s,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(r=0;r<a;r++)e[r]&&(s=Xt(e[r]))&&(o&&(o+=" "),o+=s)}else for(s in e)e[s]&&(o&&(o+=" "),o+=s);return o}function Jt(){for(var e,r,s=0,o="",a=arguments.length;s<a;s++)(e=arguments[s])&&(r=Xt(e))&&(o&&(o+=" "),o+=r);return o}const $s=(e,r)=>{const s=new Array(e.length+r.length);for(let o=0;o<e.length;o++)s[o]=e[o];for(let o=0;o<r.length;o++)s[e.length+o]=r[o];return s},Vs=(e,r)=>({classGroupId:e,validator:r}),Zt=(e=new Map,r=null,s)=>({nextPart:e,validators:r,classGroupId:s}),qe="-",Lt=[],Ws="arbitrary..",Fs=e=>{const r=Gs(e),{conflictingClassGroups:s,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:u=>{if(u.startsWith("[")&&u.endsWith("]"))return Hs(u);const d=u.split(qe),c=d[0]===""&&d.length>1?1:0;return Qt(d,c,r)},getConflictingClassGroupIds:(u,d)=>{if(d){const c=o[u],i=s[u];return c?i?$s(i,c):c:i||Lt}return s[u]||Lt}}},Qt=(e,r,s)=>{if(e.length-r===0)return s.classGroupId;const a=e[r],l=s.nextPart.get(a);if(l){const i=Qt(e,r+1,l);if(i)return i}const u=s.validators;if(u===null)return;const d=r===0?e.join(qe):e.slice(r).join(qe),c=u.length;for(let i=0;i<c;i++){const p=u[i];if(p.validator(d))return p.classGroupId}},Hs=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const r=e.slice(1,-1),s=r.indexOf(":"),o=r.slice(0,s);return o?Ws+o:void 0})(),Gs=e=>{const{theme:r,classGroups:s}=e;return Ys(s,r)},Ys=(e,r)=>{const s=Zt();for(const o in e){const a=e[o];gt(a,s,o,r)}return s},gt=(e,r,s,o)=>{const a=e.length;for(let l=0;l<a;l++){const u=e[l];Us(u,r,s,o)}},Us=(e,r,s,o)=>{if(typeof e=="string"){qs(e,r,s);return}if(typeof e=="function"){Ks(e,r,s,o);return}Xs(e,r,s,o)},qs=(e,r,s)=>{const o=e===""?r:er(r,e);o.classGroupId=s},Ks=(e,r,s,o)=>{if(Js(e)){gt(e(o),r,s,o);return}r.validators===null&&(r.validators=[]),r.validators.push(Vs(s,e))},Xs=(e,r,s,o)=>{const a=Object.entries(e),l=a.length;for(let u=0;u<l;u++){const[d,c]=a[u];gt(c,er(r,d),s,o)}},er=(e,r)=>{let s=e;const o=r.split(qe),a=o.length;for(let l=0;l<a;l++){const u=o[l];let d=s.nextPart.get(u);d||(d=Zt(),s.nextPart.set(u,d)),s=d}return s},Js=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Zs=e=>{if(e<1)return{get:()=>{},set:()=>{}};let r=0,s=Object.create(null),o=Object.create(null);const a=(l,u)=>{s[l]=u,r++,r>e&&(r=0,o=s,s=Object.create(null))};return{get(l){let u=s[l];if(u!==void 0)return u;if((u=o[l])!==void 0)return a(l,u),u},set(l,u){l in s?s[l]=u:a(l,u)}}},ct="!",Mt=":",Qs=[],Bt=(e,r,s,o,a)=>({modifiers:e,hasImportantModifier:r,baseClassName:s,maybePostfixModifierPosition:o,isExternal:a}),eo=e=>{const{prefix:r,experimentalParseClassName:s}=e;let o=a=>{const l=[];let u=0,d=0,c=0,i;const p=a.length;for(let S=0;S<p;S++){const _=a[S];if(u===0&&d===0){if(_===Mt){l.push(a.slice(c,S)),c=S+1;continue}if(_==="/"){i=S;continue}}_==="["?u++:_==="]"?u--:_==="("?d++:_===")"&&d--}const n=l.length===0?a:a.slice(c);let b=n,z=!1;n.endsWith(ct)?(b=n.slice(0,-1),z=!0):n.startsWith(ct)&&(b=n.slice(1),z=!0);const E=i&&i>c?i-c:void 0;return Bt(l,z,b,E)};if(r){const a=r+Mt,l=o;o=u=>u.startsWith(a)?l(u.slice(a.length)):Bt(Qs,!1,u,void 0,!0)}if(s){const a=o;o=l=>s({className:l,parseClassName:a})}return o},to=e=>{const r=new Map;return e.orderSensitiveModifiers.forEach((s,o)=>{r.set(s,1e6+o)}),s=>{const o=[];let a=[];for(let l=0;l<s.length;l++){const u=s[l],d=u[0]==="[",c=r.has(u);d||c?(a.length>0&&(a.sort(),o.push(...a),a=[]),o.push(u)):a.push(u)}return a.length>0&&(a.sort(),o.push(...a)),o}},ro=e=>({cache:Zs(e.cacheSize),parseClassName:eo(e),sortModifiers:to(e),...Fs(e)}),so=/\s+/,oo=(e,r)=>{const{parseClassName:s,getClassGroupId:o,getConflictingClassGroupIds:a,sortModifiers:l}=r,u=[],d=e.trim().split(so);let c="";for(let i=d.length-1;i>=0;i-=1){const p=d[i],{isExternal:n,modifiers:b,hasImportantModifier:z,baseClassName:E,maybePostfixModifierPosition:S}=s(p);if(n){c=p+(c.length>0?" "+c:c);continue}let _=!!S,T=o(_?E.substring(0,S):E);if(!T){if(!_){c=p+(c.length>0?" "+c:c);continue}if(T=o(E),!T){c=p+(c.length>0?" "+c:c);continue}_=!1}const se=b.length===0?"":b.length===1?b[0]:l(b).join(":"),X=z?se+ct:se,J=X+T;if(u.indexOf(J)>-1)continue;u.push(J);const Z=a(T,_);for(let P=0;P<Z.length;++P){const Q=Z[P];u.push(X+Q)}c=p+(c.length>0?" "+c:c)}return c},no=(...e)=>{let r=0,s,o,a="";for(;r<e.length;)(s=e[r++])&&(o=tr(s))&&(a&&(a+=" "),a+=o);return a},tr=e=>{if(typeof e=="string")return e;let r,s="";for(let o=0;o<e.length;o++)e[o]&&(r=tr(e[o]))&&(s&&(s+=" "),s+=r);return s},ao=(e,...r)=>{let s,o,a,l;const u=c=>{const i=r.reduce((p,n)=>n(p),e());return s=ro(i),o=s.cache.get,a=s.cache.set,l=d,d(c)},d=c=>{const i=o(c);if(i)return i;const p=oo(c,s);return a(c,p),p};return l=u,(...c)=>l(no(...c))},io=[],D=e=>{const r=s=>s[e]||io;return r.isThemeGetter=!0,r},rr=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,sr=/^\((?:(\w[\w-]*):)?(.+)\)$/i,lo=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,co=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,uo=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,mo=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,po=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,fo=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,je=e=>lo.test(e),C=e=>!!e&&!Number.isNaN(Number(e)),Ne=e=>!!e&&Number.isInteger(Number(e)),at=e=>e.endsWith("%")&&C(e.slice(0,-1)),ye=e=>co.test(e),or=()=>!0,ho=e=>uo.test(e)&&!mo.test(e),xt=()=>!1,go=e=>po.test(e),xo=e=>fo.test(e),bo=e=>!g(e)&&!x(e),vo=e=>Ce(e,ir,xt),g=e=>rr.test(e),Ee=e=>Ce(e,lr,ho),It=e=>Ce(e,To,C),wo=e=>Ce(e,dr,or),yo=e=>Ce(e,cr,xt),Pt=e=>Ce(e,nr,xt),ko=e=>Ce(e,ar,xo),He=e=>Ce(e,ur,go),x=e=>sr.test(e),Me=e=>_e(e,lr),jo=e=>_e(e,cr),Ot=e=>_e(e,nr),No=e=>_e(e,ir),Co=e=>_e(e,ar),Ge=e=>_e(e,ur,!0),So=e=>_e(e,dr,!0),Ce=(e,r,s)=>{const o=rr.exec(e);return o?o[1]?r(o[1]):s(o[2]):!1},_e=(e,r,s=!1)=>{const o=sr.exec(e);return o?o[1]?r(o[1]):s:!1},nr=e=>e==="position"||e==="percentage",ar=e=>e==="image"||e==="url",ir=e=>e==="length"||e==="size"||e==="bg-size",lr=e=>e==="length",To=e=>e==="number",cr=e=>e==="family-name",dr=e=>e==="number"||e==="weight",ur=e=>e==="shadow",Eo=()=>{const e=D("color"),r=D("font"),s=D("text"),o=D("font-weight"),a=D("tracking"),l=D("leading"),u=D("breakpoint"),d=D("container"),c=D("spacing"),i=D("radius"),p=D("shadow"),n=D("inset-shadow"),b=D("text-shadow"),z=D("drop-shadow"),E=D("blur"),S=D("perspective"),_=D("aspect"),T=D("ease"),se=D("animate"),X=()=>["auto","avoid","all","avoid-page","page","left","right","column"],J=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],Z=()=>[...J(),x,g],P=()=>["auto","hidden","clip","visible","scroll"],Q=()=>["auto","contain","none"],v=()=>[x,g,c],O=()=>[je,"full","auto",...v()],ge=()=>[Ne,"none","subgrid",x,g],ve=()=>["auto",{span:["full",Ne,x,g]},Ne,x,g],oe=()=>[Ne,"auto",x,g],F=()=>["auto","min","max","fr",x,g],ue=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],H=()=>["start","end","center","stretch","center-safe","end-safe"],j=()=>["auto",...v()],M=()=>[je,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...v()],ee=()=>[je,"screen","full","dvw","lvw","svw","min","max","fit",...v()],ne=()=>[je,"screen","full","lh","dvh","lvh","svh","min","max","fit",...v()],h=()=>[e,x,g],te=()=>[...J(),Ot,Pt,{position:[x,g]}],xe=()=>["no-repeat",{repeat:["","x","y","space","round"]}],y=()=>["auto","cover","contain",No,vo,{size:[x,g]}],A=()=>[at,Me,Ee],k=()=>["","none","full",i,x,g],R=()=>["",C,Me,Ee],q=()=>["solid","dashed","dotted","double"],L=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],B=()=>[C,at,Ot,Pt],me=()=>["","none",E,x,g],pe=()=>["none",C,x,g],ae=()=>["none",C,x,g],w=()=>[C,x,g],I=()=>[je,"full",...v()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[ye],breakpoint:[ye],color:[or],container:[ye],"drop-shadow":[ye],ease:["in","out","in-out"],font:[bo],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[ye],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[ye],shadow:[ye],spacing:["px",C],text:[ye],"text-shadow":[ye],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",je,g,x,_]}],container:["container"],columns:[{columns:[C,g,x,d]}],"break-after":[{"break-after":X()}],"break-before":[{"break-before":X()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:Z()}],overflow:[{overflow:P()}],"overflow-x":[{"overflow-x":P()}],"overflow-y":[{"overflow-y":P()}],overscroll:[{overscroll:Q()}],"overscroll-x":[{"overscroll-x":Q()}],"overscroll-y":[{"overscroll-y":Q()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:O()}],"inset-x":[{"inset-x":O()}],"inset-y":[{"inset-y":O()}],start:[{"inset-s":O(),start:O()}],end:[{"inset-e":O(),end:O()}],"inset-bs":[{"inset-bs":O()}],"inset-be":[{"inset-be":O()}],top:[{top:O()}],right:[{right:O()}],bottom:[{bottom:O()}],left:[{left:O()}],visibility:["visible","invisible","collapse"],z:[{z:[Ne,"auto",x,g]}],basis:[{basis:[je,"full","auto",d,...v()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[C,je,"auto","initial","none",g]}],grow:[{grow:["",C,x,g]}],shrink:[{shrink:["",C,x,g]}],order:[{order:[Ne,"first","last","none",x,g]}],"grid-cols":[{"grid-cols":ge()}],"col-start-end":[{col:ve()}],"col-start":[{"col-start":oe()}],"col-end":[{"col-end":oe()}],"grid-rows":[{"grid-rows":ge()}],"row-start-end":[{row:ve()}],"row-start":[{"row-start":oe()}],"row-end":[{"row-end":oe()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":F()}],"auto-rows":[{"auto-rows":F()}],gap:[{gap:v()}],"gap-x":[{"gap-x":v()}],"gap-y":[{"gap-y":v()}],"justify-content":[{justify:[...ue(),"normal"]}],"justify-items":[{"justify-items":[...H(),"normal"]}],"justify-self":[{"justify-self":["auto",...H()]}],"align-content":[{content:["normal",...ue()]}],"align-items":[{items:[...H(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...H(),{baseline:["","last"]}]}],"place-content":[{"place-content":ue()}],"place-items":[{"place-items":[...H(),"baseline"]}],"place-self":[{"place-self":["auto",...H()]}],p:[{p:v()}],px:[{px:v()}],py:[{py:v()}],ps:[{ps:v()}],pe:[{pe:v()}],pbs:[{pbs:v()}],pbe:[{pbe:v()}],pt:[{pt:v()}],pr:[{pr:v()}],pb:[{pb:v()}],pl:[{pl:v()}],m:[{m:j()}],mx:[{mx:j()}],my:[{my:j()}],ms:[{ms:j()}],me:[{me:j()}],mbs:[{mbs:j()}],mbe:[{mbe:j()}],mt:[{mt:j()}],mr:[{mr:j()}],mb:[{mb:j()}],ml:[{ml:j()}],"space-x":[{"space-x":v()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":v()}],"space-y-reverse":["space-y-reverse"],size:[{size:M()}],"inline-size":[{inline:["auto",...ee()]}],"min-inline-size":[{"min-inline":["auto",...ee()]}],"max-inline-size":[{"max-inline":["none",...ee()]}],"block-size":[{block:["auto",...ne()]}],"min-block-size":[{"min-block":["auto",...ne()]}],"max-block-size":[{"max-block":["none",...ne()]}],w:[{w:[d,"screen",...M()]}],"min-w":[{"min-w":[d,"screen","none",...M()]}],"max-w":[{"max-w":[d,"screen","none","prose",{screen:[u]},...M()]}],h:[{h:["screen","lh",...M()]}],"min-h":[{"min-h":["screen","lh","none",...M()]}],"max-h":[{"max-h":["screen","lh",...M()]}],"font-size":[{text:["base",s,Me,Ee]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,So,wo]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",at,g]}],"font-family":[{font:[jo,yo,r]}],"font-features":[{"font-features":[g]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[a,x,g]}],"line-clamp":[{"line-clamp":[C,"none",x,It]}],leading:[{leading:[l,...v()]}],"list-image":[{"list-image":["none",x,g]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",x,g]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:h()}],"text-color":[{text:h()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...q(),"wavy"]}],"text-decoration-thickness":[{decoration:[C,"from-font","auto",x,Ee]}],"text-decoration-color":[{decoration:h()}],"underline-offset":[{"underline-offset":[C,"auto",x,g]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:v()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",x,g]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",x,g]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:te()}],"bg-repeat":[{bg:xe()}],"bg-size":[{bg:y()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ne,x,g],radial:["",x,g],conic:[Ne,x,g]},Co,ko]}],"bg-color":[{bg:h()}],"gradient-from-pos":[{from:A()}],"gradient-via-pos":[{via:A()}],"gradient-to-pos":[{to:A()}],"gradient-from":[{from:h()}],"gradient-via":[{via:h()}],"gradient-to":[{to:h()}],rounded:[{rounded:k()}],"rounded-s":[{"rounded-s":k()}],"rounded-e":[{"rounded-e":k()}],"rounded-t":[{"rounded-t":k()}],"rounded-r":[{"rounded-r":k()}],"rounded-b":[{"rounded-b":k()}],"rounded-l":[{"rounded-l":k()}],"rounded-ss":[{"rounded-ss":k()}],"rounded-se":[{"rounded-se":k()}],"rounded-ee":[{"rounded-ee":k()}],"rounded-es":[{"rounded-es":k()}],"rounded-tl":[{"rounded-tl":k()}],"rounded-tr":[{"rounded-tr":k()}],"rounded-br":[{"rounded-br":k()}],"rounded-bl":[{"rounded-bl":k()}],"border-w":[{border:R()}],"border-w-x":[{"border-x":R()}],"border-w-y":[{"border-y":R()}],"border-w-s":[{"border-s":R()}],"border-w-e":[{"border-e":R()}],"border-w-bs":[{"border-bs":R()}],"border-w-be":[{"border-be":R()}],"border-w-t":[{"border-t":R()}],"border-w-r":[{"border-r":R()}],"border-w-b":[{"border-b":R()}],"border-w-l":[{"border-l":R()}],"divide-x":[{"divide-x":R()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":R()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...q(),"hidden","none"]}],"divide-style":[{divide:[...q(),"hidden","none"]}],"border-color":[{border:h()}],"border-color-x":[{"border-x":h()}],"border-color-y":[{"border-y":h()}],"border-color-s":[{"border-s":h()}],"border-color-e":[{"border-e":h()}],"border-color-bs":[{"border-bs":h()}],"border-color-be":[{"border-be":h()}],"border-color-t":[{"border-t":h()}],"border-color-r":[{"border-r":h()}],"border-color-b":[{"border-b":h()}],"border-color-l":[{"border-l":h()}],"divide-color":[{divide:h()}],"outline-style":[{outline:[...q(),"none","hidden"]}],"outline-offset":[{"outline-offset":[C,x,g]}],"outline-w":[{outline:["",C,Me,Ee]}],"outline-color":[{outline:h()}],shadow:[{shadow:["","none",p,Ge,He]}],"shadow-color":[{shadow:h()}],"inset-shadow":[{"inset-shadow":["none",n,Ge,He]}],"inset-shadow-color":[{"inset-shadow":h()}],"ring-w":[{ring:R()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:h()}],"ring-offset-w":[{"ring-offset":[C,Ee]}],"ring-offset-color":[{"ring-offset":h()}],"inset-ring-w":[{"inset-ring":R()}],"inset-ring-color":[{"inset-ring":h()}],"text-shadow":[{"text-shadow":["none",b,Ge,He]}],"text-shadow-color":[{"text-shadow":h()}],opacity:[{opacity:[C,x,g]}],"mix-blend":[{"mix-blend":[...L(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":L()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[C]}],"mask-image-linear-from-pos":[{"mask-linear-from":B()}],"mask-image-linear-to-pos":[{"mask-linear-to":B()}],"mask-image-linear-from-color":[{"mask-linear-from":h()}],"mask-image-linear-to-color":[{"mask-linear-to":h()}],"mask-image-t-from-pos":[{"mask-t-from":B()}],"mask-image-t-to-pos":[{"mask-t-to":B()}],"mask-image-t-from-color":[{"mask-t-from":h()}],"mask-image-t-to-color":[{"mask-t-to":h()}],"mask-image-r-from-pos":[{"mask-r-from":B()}],"mask-image-r-to-pos":[{"mask-r-to":B()}],"mask-image-r-from-color":[{"mask-r-from":h()}],"mask-image-r-to-color":[{"mask-r-to":h()}],"mask-image-b-from-pos":[{"mask-b-from":B()}],"mask-image-b-to-pos":[{"mask-b-to":B()}],"mask-image-b-from-color":[{"mask-b-from":h()}],"mask-image-b-to-color":[{"mask-b-to":h()}],"mask-image-l-from-pos":[{"mask-l-from":B()}],"mask-image-l-to-pos":[{"mask-l-to":B()}],"mask-image-l-from-color":[{"mask-l-from":h()}],"mask-image-l-to-color":[{"mask-l-to":h()}],"mask-image-x-from-pos":[{"mask-x-from":B()}],"mask-image-x-to-pos":[{"mask-x-to":B()}],"mask-image-x-from-color":[{"mask-x-from":h()}],"mask-image-x-to-color":[{"mask-x-to":h()}],"mask-image-y-from-pos":[{"mask-y-from":B()}],"mask-image-y-to-pos":[{"mask-y-to":B()}],"mask-image-y-from-color":[{"mask-y-from":h()}],"mask-image-y-to-color":[{"mask-y-to":h()}],"mask-image-radial":[{"mask-radial":[x,g]}],"mask-image-radial-from-pos":[{"mask-radial-from":B()}],"mask-image-radial-to-pos":[{"mask-radial-to":B()}],"mask-image-radial-from-color":[{"mask-radial-from":h()}],"mask-image-radial-to-color":[{"mask-radial-to":h()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":J()}],"mask-image-conic-pos":[{"mask-conic":[C]}],"mask-image-conic-from-pos":[{"mask-conic-from":B()}],"mask-image-conic-to-pos":[{"mask-conic-to":B()}],"mask-image-conic-from-color":[{"mask-conic-from":h()}],"mask-image-conic-to-color":[{"mask-conic-to":h()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:te()}],"mask-repeat":[{mask:xe()}],"mask-size":[{mask:y()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",x,g]}],filter:[{filter:["","none",x,g]}],blur:[{blur:me()}],brightness:[{brightness:[C,x,g]}],contrast:[{contrast:[C,x,g]}],"drop-shadow":[{"drop-shadow":["","none",z,Ge,He]}],"drop-shadow-color":[{"drop-shadow":h()}],grayscale:[{grayscale:["",C,x,g]}],"hue-rotate":[{"hue-rotate":[C,x,g]}],invert:[{invert:["",C,x,g]}],saturate:[{saturate:[C,x,g]}],sepia:[{sepia:["",C,x,g]}],"backdrop-filter":[{"backdrop-filter":["","none",x,g]}],"backdrop-blur":[{"backdrop-blur":me()}],"backdrop-brightness":[{"backdrop-brightness":[C,x,g]}],"backdrop-contrast":[{"backdrop-contrast":[C,x,g]}],"backdrop-grayscale":[{"backdrop-grayscale":["",C,x,g]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[C,x,g]}],"backdrop-invert":[{"backdrop-invert":["",C,x,g]}],"backdrop-opacity":[{"backdrop-opacity":[C,x,g]}],"backdrop-saturate":[{"backdrop-saturate":[C,x,g]}],"backdrop-sepia":[{"backdrop-sepia":["",C,x,g]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":v()}],"border-spacing-x":[{"border-spacing-x":v()}],"border-spacing-y":[{"border-spacing-y":v()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",x,g]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[C,"initial",x,g]}],ease:[{ease:["linear","initial",T,x,g]}],delay:[{delay:[C,x,g]}],animate:[{animate:["none",se,x,g]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[S,x,g]}],"perspective-origin":[{"perspective-origin":Z()}],rotate:[{rotate:pe()}],"rotate-x":[{"rotate-x":pe()}],"rotate-y":[{"rotate-y":pe()}],"rotate-z":[{"rotate-z":pe()}],scale:[{scale:ae()}],"scale-x":[{"scale-x":ae()}],"scale-y":[{"scale-y":ae()}],"scale-z":[{"scale-z":ae()}],"scale-3d":["scale-3d"],skew:[{skew:w()}],"skew-x":[{"skew-x":w()}],"skew-y":[{"skew-y":w()}],transform:[{transform:[x,g,"","none","gpu","cpu"]}],"transform-origin":[{origin:Z()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:I()}],"translate-x":[{"translate-x":I()}],"translate-y":[{"translate-y":I()}],"translate-z":[{"translate-z":I()}],"translate-none":["translate-none"],accent:[{accent:h()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:h()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",x,g]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":v()}],"scroll-mx":[{"scroll-mx":v()}],"scroll-my":[{"scroll-my":v()}],"scroll-ms":[{"scroll-ms":v()}],"scroll-me":[{"scroll-me":v()}],"scroll-mbs":[{"scroll-mbs":v()}],"scroll-mbe":[{"scroll-mbe":v()}],"scroll-mt":[{"scroll-mt":v()}],"scroll-mr":[{"scroll-mr":v()}],"scroll-mb":[{"scroll-mb":v()}],"scroll-ml":[{"scroll-ml":v()}],"scroll-p":[{"scroll-p":v()}],"scroll-px":[{"scroll-px":v()}],"scroll-py":[{"scroll-py":v()}],"scroll-ps":[{"scroll-ps":v()}],"scroll-pe":[{"scroll-pe":v()}],"scroll-pbs":[{"scroll-pbs":v()}],"scroll-pbe":[{"scroll-pbe":v()}],"scroll-pt":[{"scroll-pt":v()}],"scroll-pr":[{"scroll-pr":v()}],"scroll-pb":[{"scroll-pb":v()}],"scroll-pl":[{"scroll-pl":v()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",x,g]}],fill:[{fill:["none",...h()]}],"stroke-w":[{stroke:[C,Me,Ee,It]}],stroke:[{stroke:["none",...h()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},_o=ao(Eo);function K(...e){return _o(Jt(e))}function zo({className:e,size:r="default",...s}){return t.jsx("div",{"data-slot":"card","data-size":r,className:K("group/card flex flex-col gap-4 overflow-hidden rounded-xl bg-card py-4 text-sm text-card-foreground ring-1 ring-foreground/10 has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:gap-3 data-[size=sm]:py-3 data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl",e),...s})}function Ao({className:e,...r}){return t.jsx("div",{"data-slot":"card-header",className:K("group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-4 group-data-[size=sm]/card:px-3 has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-4 group-data-[size=sm]/card:[.border-b]:pb-3",e),...r})}function Ro({className:e,...r}){return t.jsx("div",{"data-slot":"card-title",className:K("text-base leading-snug font-medium group-data-[size=sm]/card:text-sm",e),...r})}function Lo({className:e,...r}){return t.jsx("div",{"data-slot":"card-description",className:K("text-sm text-muted-foreground",e),...r})}function Mo({className:e,...r}){return t.jsx("div",{"data-slot":"card-content",className:K("px-4 group-data-[size=sm]/card:px-3",e),...r})}const Dt=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,$t=Jt,mr=(e,r)=>s=>{var o;if((r==null?void 0:r.variants)==null)return $t(e,s==null?void 0:s.class,s==null?void 0:s.className);const{variants:a,defaultVariants:l}=r,u=Object.keys(a).map(i=>{const p=s==null?void 0:s[i],n=l==null?void 0:l[i];if(p===null)return null;const b=Dt(p)||Dt(n);return a[i][b]}),d=s&&Object.entries(s).reduce((i,p)=>{let[n,b]=p;return b===void 0||(i[n]=b),i},{}),c=r==null||(o=r.compoundVariants)===null||o===void 0?void 0:o.reduce((i,p)=>{let{class:n,className:b,...z}=p;return Object.entries(z).every(E=>{let[S,_]=E;return Array.isArray(_)?_.includes({...l,...d}[S]):{...l,...d}[S]===_})?[...i,n,b]:i},[]);return $t(e,u,c,s==null?void 0:s.class,s==null?void 0:s.className)},Bo=mr("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});function Oe({className:e,variant:r="default",render:s,...o}){return Or({defaultTagName:"span",props:Dr({className:K(Bo({variant:r}),e)},o),render:s,state:{slot:"badge",variant:r}})}const Io=mr("group/button inline-flex shrink-0 items-center justify-center rounded-lg border border-transparent bg-clip-padding text-sm font-medium whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",outline:"border-border bg-background hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:border-input dark:bg-input/30 dark:hover:bg-input/50",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 aria-expanded:bg-secondary aria-expanded:text-secondary-foreground",ghost:"hover:bg-muted hover:text-foreground aria-expanded:bg-muted aria-expanded:text-foreground dark:hover:bg-muted/50",destructive:"bg-destructive/10 text-destructive hover:bg-destructive/20 focus-visible:border-destructive/40 focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:hover:bg-destructive/30 dark:focus-visible:ring-destructive/40",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-8 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2",xs:"h-6 gap-1 rounded-[min(var(--radius-md),10px)] px-2 text-xs in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3",sm:"h-7 gap-1 rounded-[min(var(--radius-md),12px)] px-2.5 text-[0.8rem] in-data-[slot=button-group]:rounded-lg has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 [&_svg:not([class*='size-'])]:size-3.5",lg:"h-9 gap-1.5 px-2.5 has-data-[icon=inline-end]:pr-3 has-data-[icon=inline-start]:pl-3",icon:"size-8","icon-xs":"size-6 rounded-[min(var(--radius-md),10px)] in-data-[slot=button-group]:rounded-lg [&_svg:not([class*='size-'])]:size-3","icon-sm":"size-7 rounded-[min(var(--radius-md),12px)] in-data-[slot=button-group]:rounded-lg","icon-lg":"size-9"}},defaultVariants:{variant:"default",size:"default"}});function V({className:e,variant:r="default",size:s="default",...o}){return t.jsx($r,{"data-slot":"button",className:K(Io({variant:r,size:s,className:e})),...o})}const Po={draft:{label:"Draft",className:"bg-zinc-500/20 text-zinc-400 border-zinc-500/30"},setting_up:{label:"Setting up",className:"bg-yellow-500/20 text-yellow-400 border-yellow-500/30"},running:{label:"Running",className:"bg-green-500/20 text-green-400 border-green-500/30"},closed:{label:"Closed",className:"bg-blue-500/20 text-blue-400 border-blue-500/30"},error:{label:"Error",className:"bg-red-500/20 text-red-400 border-red-500/30"},working:{label:"Working",className:"bg-green-500/20 text-green-400 border-green-500/30"},needs_attention:{label:"Needs attention",className:"bg-amber-500/20 text-amber-400 border-amber-500/30"},done:{label:"Done",className:"bg-emerald-500/20 text-emerald-400 border-emerald-500/30"}},Oo={label:"Unknown",className:"bg-zinc-500/20 text-zinc-400 border-zinc-500/30"},pr=m.memo(function({status:r}){const s=Po[r]||Oo;return t.jsxs(Oe,{variant:"outline",className:s.className,children:[(r==="running"||r==="working")&&t.jsx("span",{className:"mr-1 inline-block h-1.5 w-1.5 animate-pulse rounded-full bg-green-400"}),s.label]})});function Ke(e){const r=Date.now()-new Date(e+"Z").getTime(),s=Math.floor(r/1e3);if(s<5)return"just now";if(s<60)return`${s}s ago`;const o=Math.floor(s/60);if(o<60)return`${o}m ago`;const a=Math.floor(o/60);return a<24?`${a}h ago`:`${Math.floor(a/24)}d ago`}function Do(e){const r=Date.now()-new Date(e+"Z").getTime(),s=Math.floor(r/1e3);if(s<60)return`${s}s`;const o=Math.floor(s/60);if(o<60)return`${o}m`;const a=Math.floor(o/60);return a<24?`${a}h`:`${Math.floor(a/24)}d`}const Ye={active:"bg-green-500",idle:"bg-zinc-400",waiting:"bg-amber-500"};function Vt(e){return e.hook_activity==="active"?"Active":e.hook_activity==="waiting"?"Waiting for input":e.hook_activity_updated_at?`Idle ${Do(e.hook_activity_updated_at)}`:"Idle"}function $o(e){let r=null;for(const s of e)s.hook_activity_updated_at&&(!r||s.hook_activity_updated_at>r)&&(r=s.hook_activity_updated_at);return r}const fr=m.memo(function({agents:r,pendingPrompts:s,compact:o}){const a=r.filter(d=>d.status!=="stopped"),l=s&&s.length>0,u=$o(a);return a.length===0?null:o?t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsxs("span",{className:"tabular-nums text-xs text-muted-foreground",children:[a.length," agent",a.length>1?"s":""]}),t.jsx("div",{className:"flex items-center gap-1",children:a.map(d=>t.jsx("span",{title:`${d.label}: ${Vt(d)}`,className:`inline-block h-2 w-2 rounded-full ${Ye[d.hook_activity]||Ye.active} ${d.hook_activity==="active"?"animate-pulse":""}`},d.id))}),l&&t.jsxs("span",{className:"inline-flex items-center gap-0.5 text-amber-500",title:"Needs input",children:[t.jsx("span",{className:"animate-pulse text-xs",children:"⚠"}),t.jsx("span",{className:"text-[10px] font-semibold uppercase",children:s.length})]}),u&&t.jsx("span",{className:"text-xs text-muted-foreground",children:Ke(u)})]}):t.jsxs("div",{className:"space-y-1.5",children:[t.jsxs("div",{className:"flex items-center gap-2 text-xs text-muted-foreground",children:[t.jsxs("span",{className:"tabular-nums",children:[a.length," agent",a.length>1?"s":""]}),u&&t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"text-zinc-600",children:"·"}),t.jsxs("span",{className:"tabular-nums",children:["Last active ",Ke(u)]})]}),l&&t.jsxs("span",{className:"ml-auto inline-flex items-center gap-1 rounded bg-amber-500/15 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-amber-500",children:[t.jsx("span",{className:"animate-pulse",children:"⚠"}),"Needs input"]})]}),t.jsx("div",{className:"flex flex-wrap gap-x-3 gap-y-1 text-xs",children:a.map(d=>t.jsxs("span",{className:"inline-flex items-center gap-1",children:[t.jsx("span",{className:`inline-block h-2 w-2 rounded-full ${Ye[d.hook_activity]||Ye.active} ${d.hook_activity==="active"?"animate-pulse":""}`}),t.jsx("span",{className:"text-zinc-400",children:Vt(d)}),t.jsx("span",{className:"text-zinc-500",children:d.label})]},d.id))})]})});function Vo(e){const r=Math.floor((Date.now()-new Date(e+"Z").getTime())/1e3);if(r<60)return"just now";const s=Math.floor(r/60);return s<60?`${s}m ago`:`${Math.floor(s/60)}h ago`}function Wo(e){const r=e.command||e.file_path||e.pattern||"",s=String(r);return s.length>40?s.slice(0,37)+"...":s}const Fo=m.memo(function({prompt:r,taskId:s}){const o=Je(),a=l=>{l.stopPropagation(),o(`/tasks/${s}?agent=${r.agent_id}`)};return t.jsxs("button",{onClick:a,className:"flex w-full items-center gap-2 rounded border-l-2 border-amber-500 bg-amber-500/5 px-2 py-1.5 text-left text-sm text-amber-400 hover:bg-amber-500/10",children:[t.jsx("span",{className:"animate-pulse text-amber-500",children:"⚠"}),t.jsx("span",{className:"shrink-0 rounded bg-amber-500/15 px-1.5 py-0.5 text-[10px] font-semibold uppercase tracking-wide text-amber-500",children:"Action required"}),t.jsx("span",{className:"text-zinc-400",children:r.agent_label}),t.jsxs("span",{className:"font-medium",children:[r.tool_name," ",Wo(r.tool_input)]}),t.jsx("span",{className:"ml-auto shrink-0 text-xs text-zinc-500",children:Vo(r.created_at)})]})});function Ho(e){return e.split("/").pop()||e}const Go=m.memo(function({task:r,onClose:s,onDelete:o,onResume:a}){const l=Je(),u=(r.status==="closed"||r.status==="error")&&!!r.worktree,d=r.status==="running"||r.status==="setting_up";return t.jsxs(zo,{className:"cursor-pointer transition-colors hover:bg-accent/50",onClick:()=>l(`/tasks/${r.id}`),children:[t.jsxs(Ao,{className:"px-4 py-3 pb-2",children:[t.jsxs("div",{className:"flex items-start justify-between gap-3",children:[t.jsx(Ro,{className:"min-w-0 text-base leading-snug line-clamp-2",children:r.title}),t.jsxs("div",{className:"flex shrink-0 items-center gap-2",children:[t.jsx(pr,{status:r.derived_status||r.status}),t.jsx("span",{className:"text-xs tabular-nums whitespace-nowrap text-muted-foreground",children:Ke(r.created_at)})]})]}),t.jsx(Lo,{className:"line-clamp-1",children:r.description})]}),t.jsxs(Mo,{className:"px-4 pb-3 pt-0",children:[t.jsxs("div",{className:"flex items-center justify-between text-sm",children:[t.jsxs("div",{className:"flex items-center gap-2 text-muted-foreground",children:[t.jsx(Oe,{variant:"outline",className:"text-xs font-normal",children:Ho(r.repo_path)}),r.branch&&t.jsx("span",{className:"font-mono text-xs",children:r.branch})]}),t.jsxs("div",{className:"flex items-center gap-2",children:[r.pr_url&&t.jsxs("a",{href:r.pr_url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400 hover:underline",onClick:c=>c.stopPropagation(),children:["PR #",t.jsx("span",{className:"tabular-nums",children:r.pr_number})]}),r.error&&t.jsx("span",{className:"text-xs text-destructive",title:r.error,children:"Error"}),u&&a&&t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-green-400",title:"Resume agents",onClick:c=>{c.stopPropagation(),a(r.id)},children:t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",stroke:"none",children:t.jsx("polygon",{points:"5 3 19 12 5 21 5 3"})})}),d?t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-yellow-500",title:"Close task",onClick:c=>{c.stopPropagation(),s(r.id)},children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("rect",{x:"6",y:"4",width:"4",height:"16"}),t.jsx("rect",{x:"14",y:"4",width:"4",height:"16"})]})}):t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-destructive",title:"Delete task",onClick:c=>{c.stopPropagation(),o(r.id)},children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M3 6h18"}),t.jsx("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),t.jsx("path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"})]})})]})]}),r.agents&&r.agents.length>0&&r.status==="running"&&t.jsx("div",{className:"mt-2",children:t.jsx(fr,{agents:r.agents,pendingPrompts:r.pending_prompts})}),r.pending_prompts&&r.pending_prompts.length>0&&t.jsx("div",{className:"mt-1 space-y-0.5",children:r.pending_prompts.map(c=>t.jsx(Fo,{prompt:c,taskId:r.id},c.id))})]})]})});function Xe({icon:e,heading:r,subtext:s,action:o,className:a=""}){return t.jsxs("div",{className:`flex flex-col items-center justify-center py-16 animate-in fade-in duration-300 ${a}`,children:[t.jsx("div",{className:"text-muted-foreground/40",children:e}),t.jsx("h3",{className:"mt-4 text-lg font-medium",children:r}),s&&t.jsx("p",{className:"mt-1 text-sm text-muted-foreground",children:s}),o&&t.jsx("div",{className:"mt-4",children:o})]})}function Yo(e){return e.split("/").pop()||e}const Uo=m.memo(function({task:r,onClose:s,onDelete:o,onResume:a}){var i;const l=Je(),u=(r.status==="closed"||r.status==="error")&&!!r.worktree,d=r.status==="running"||r.status==="setting_up",c=((i=r.agents)==null?void 0:i.filter(p=>p.status!=="stopped"))??[];return t.jsxs("tr",{className:"cursor-pointer border-b border-border transition-colors last:border-b-0 hover:bg-accent/50",onClick:()=>l(`/tasks/${r.id}`),children:[t.jsx("td",{className:"py-2 pr-3 pl-3",children:t.jsx(pr,{status:r.derived_status||r.status})}),t.jsx("td",{className:"py-2 pr-3",children:t.jsxs("div",{className:"min-w-0",children:[t.jsx("span",{className:"block truncate text-sm font-medium",children:r.title}),r.description&&t.jsx("span",{className:"block truncate text-xs text-muted-foreground",children:r.description})]})}),t.jsx("td",{className:"py-2 pr-3",children:t.jsx(Oe,{variant:"outline",className:"text-xs font-normal",children:Yo(r.repo_path)})}),t.jsx("td",{className:"py-2 pr-3",children:c.length>0&&r.status==="running"?t.jsx(fr,{agents:r.agents??[],pendingPrompts:r.pending_prompts,compact:!0}):t.jsx("span",{className:"tabular-nums text-xs text-muted-foreground",children:c.length>0?`${c.length} agent${c.length>1?"s":""}`:"—"})}),t.jsx("td",{className:"tabular-nums py-2 pr-3 text-xs text-muted-foreground whitespace-nowrap",children:Ke(r.created_at)}),t.jsx("td",{className:"py-2 pr-3",children:t.jsxs("div",{className:"flex items-center gap-1",onClick:p=>p.stopPropagation(),children:[r.pr_url&&t.jsxs("a",{href:r.pr_url,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-blue-400 hover:underline",children:["PR #",t.jsx("span",{className:"tabular-nums",children:r.pr_number})]}),u&&a&&t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-green-400",title:"Resume agents",onClick:()=>a(r.id),children:t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"currentColor",stroke:"none",children:t.jsx("polygon",{points:"5 3 19 12 5 21 5 3"})})}),d?t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-yellow-500",title:"Close task",onClick:()=>s(r.id),children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("rect",{x:"6",y:"4",width:"4",height:"16"}),t.jsx("rect",{x:"14",y:"4",width:"4",height:"16"})]})}):t.jsx(V,{variant:"ghost",size:"icon-xs",className:"text-muted-foreground hover:text-destructive",title:"Delete task",onClick:()=>o(r.id),children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M3 6h18"}),t.jsx("path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}),t.jsx("path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"})]})})]})})]})});function qo({tasks:e,onClose:r,onDelete:s,onResume:o}){return t.jsx("div",{className:"overflow-x-auto rounded-lg border border-border",children:t.jsxs("table",{className:"w-full text-left",children:[t.jsx("thead",{children:t.jsxs("tr",{className:"border-b border-border bg-muted/50 text-xs text-muted-foreground",children:[t.jsx("th",{className:"py-2 pr-3 pl-3 font-medium",children:"Status"}),t.jsx("th",{className:"py-2 pr-3 font-medium",children:"Task"}),t.jsx("th",{className:"py-2 pr-3 font-medium",children:"Project"}),t.jsx("th",{className:"py-2 pr-3 font-medium",children:"Agents"}),t.jsx("th",{className:"py-2 pr-3 font-medium",children:"Created"}),t.jsx("th",{className:"py-2 pr-3 font-medium",children:"Actions"})]})}),t.jsx("tbody",{children:e.map(a=>t.jsx(Uo,{task:a,onClose:r,onDelete:s,onResume:o},a.id))})]})})}function Ko({tasks:e,onClose:r,onDelete:s,onResume:o,viewMode:a,totalCount:l=0,emptyAction:u}){return e.length===0?l>0?t.jsx(Xe,{icon:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("circle",{cx:"11",cy:"11",r:"8"}),t.jsx("path",{d:"m21 21-4.3-4.3"}),t.jsx("path",{d:"M8 11h6"})]}),heading:"No matching tasks",subtext:"Try adjusting your filters or status tab"}):t.jsx(Xe,{icon:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("rect",{width:"18",height:"18",x:"3",y:"3",rx:"2"}),t.jsx("path",{d:"m7 8 4 4-4 4"}),t.jsx("path",{d:"M13 16h4"})]}),heading:"No tasks yet",subtext:"Create your first task to start running agents",action:u}):a==="table"?t.jsx(qo,{tasks:e,onClose:r,onDelete:s,onResume:o}):t.jsx("div",{className:"flex flex-col gap-2",children:e.map(d=>t.jsx(Go,{task:d,onClose:r,onDelete:s,onResume:o},d.id))})}function dt({...e}){return t.jsx(Vr,{"data-slot":"popover",...e})}function ut({...e}){return t.jsx(Wr,{"data-slot":"popover-trigger",...e})}function mt({className:e,align:r="center",alignOffset:s=0,side:o="bottom",sideOffset:a=4,...l}){return t.jsx(Fr,{children:t.jsx(Hr,{align:r,alignOffset:s,side:o,sideOffset:a,className:"isolate z-50",children:t.jsx(Gr,{"data-slot":"popover-content",className:K("z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...l})})})}function Wt(e){return e.split("/").pop()||e}function Xo({repos:e,activeRepo:r,onRepoChange:s}){const[o,a]=m.useState(!1);return t.jsxs(dt,{open:o,onOpenChange:a,children:[t.jsx(ut,{render:t.jsxs("button",{type:"button",className:"mb-1 flex items-center gap-1.5 rounded-md border border-border bg-background px-2 py-1 text-xs transition-colors hover:bg-muted",children:[r?t.jsx(Oe,{variant:"outline",className:"text-xs font-normal",children:Wt(r)}):t.jsx("span",{children:"All projects"}),t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-muted-foreground",children:t.jsx("path",{d:"m6 9 6 6 6-6"})})]})}),t.jsx(mt,{align:"end",side:"bottom",sideOffset:4,className:"w-[200px] p-0",children:t.jsxs("div",{className:"flex flex-col",children:[t.jsx("button",{type:"button",className:`px-3 py-1.5 text-left text-xs transition-colors hover:bg-muted ${r?"":"bg-muted font-medium"}`,onClick:()=>{s(""),a(!1)},children:"All projects"}),e.map(l=>t.jsx("button",{type:"button",className:`flex items-center px-3 py-1.5 text-left text-xs transition-colors hover:bg-muted ${l===r?"bg-muted font-medium":""}`,onClick:()=>{s(l),a(!1)},children:t.jsx(Oe,{variant:"outline",className:"text-xs font-normal",children:Wt(l)})},l))]})})]})}function Jo({viewMode:e,onViewChange:r}){return t.jsxs("div",{className:"mb-1 flex items-center rounded-md border border-border",children:[t.jsx("button",{type:"button",title:"Card view",className:`rounded-l-md px-1.5 py-1 transition-colors ${e==="cards"?"bg-muted text-foreground":"text-muted-foreground hover:text-foreground"}`,onClick:()=>r("cards"),children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("rect",{x:"3",y:"3",width:"7",height:"7"}),t.jsx("rect",{x:"14",y:"3",width:"7",height:"7"}),t.jsx("rect",{x:"3",y:"14",width:"7",height:"7"}),t.jsx("rect",{x:"14",y:"14",width:"7",height:"7"})]})}),t.jsx("button",{type:"button",title:"List view",className:`rounded-r-md px-1.5 py-1 transition-colors ${e==="table"?"bg-muted text-foreground":"text-muted-foreground hover:text-foreground"}`,onClick:()=>r("table"),children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("line",{x1:"3",y1:"6",x2:"21",y2:"6"}),t.jsx("line",{x1:"3",y1:"12",x2:"21",y2:"12"}),t.jsx("line",{x1:"3",y1:"18",x2:"21",y2:"18"})]})})]})}const Zo=m.memo(function({activeStatus:r,counts:s,onStatusChange:o,repos:a,activeRepo:l,onRepoChange:u,viewMode:d,onViewChange:c}){const i=[{key:"open",label:"Open",count:s.open},{key:"backlog",label:"Backlog",count:s.backlog},{key:"closed",label:"Closed",count:s.closed}];return t.jsxs("div",{className:"mb-3 flex items-center justify-between border-b border-border",children:[t.jsx("div",{className:"flex gap-1",children:i.map(p=>t.jsxs("button",{className:`px-3 py-2 text-sm font-medium ${r===p.key?"border-b-2 border-primary text-foreground":"text-muted-foreground hover:text-foreground"}`,onClick:()=>o(p.key),children:[p.label," ",t.jsxs("span",{className:"tabular-nums text-xs",children:["(",p.count,")"]})]},p.key))}),t.jsxs("div",{className:"flex items-center gap-2",children:[a.length>1&&t.jsx(Xo,{repos:a,activeRepo:l,onRepoChange:u}),t.jsx(Jo,{viewMode:d,onViewChange:c})]})]})});function Qo(e){return t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",...e,children:[t.jsx("path",{d:"M18 6 6 18"}),t.jsx("path",{d:"m6 6 12 12"})]})}function en({...e}){return t.jsx(Yr,{"data-slot":"dialog",...e})}function tn({...e}){return t.jsx(Ur,{"data-slot":"dialog-trigger",...e})}function rn({...e}){return t.jsx(Jr,{"data-slot":"dialog-portal",...e})}function sn({className:e,...r}){return t.jsx(Zr,{"data-slot":"dialog-overlay",className:K("fixed inset-0 isolate z-50 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",e),...r})}function on({className:e,children:r,showCloseButton:s=!0,...o}){return t.jsxs(rn,{children:[t.jsx(sn,{}),t.jsxs(qr,{"data-slot":"dialog-content",className:K("fixed top-1/2 left-1/2 z-50 grid w-full max-w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 gap-4 rounded-xl bg-background p-4 text-sm ring-1 ring-foreground/10 duration-100 outline-none sm:max-w-sm data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",e),...o,children:[r,s&&t.jsxs(Kr,{"data-slot":"dialog-close",render:t.jsx(V,{variant:"ghost",className:"absolute top-2 right-2",size:"icon-sm"}),children:[t.jsx(Qo,{}),t.jsx("span",{className:"sr-only",children:"Close"})]})]})]})}function nn({className:e,...r}){return t.jsx("div",{"data-slot":"dialog-header",className:K("flex flex-col gap-2",e),...r})}function an({className:e,...r}){return t.jsx(Xr,{"data-slot":"dialog-title",className:K("text-base leading-none font-medium",e),...r})}function it({className:e,type:r,...s}){return t.jsx(Qr,{type:r,"data-slot":"input",className:K("h-8 w-full min-w-0 rounded-lg border border-input bg-transparent px-2.5 py-1 text-base transition-colors outline-none file:inline-flex file:h-6 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",e),...s})}function Ft({className:e,...r}){return t.jsx("textarea",{"data-slot":"textarea",className:K("flex field-sizing-content min-h-16 w-full rounded-lg border border-input bg-transparent px-2.5 py-2 text-base transition-colors outline-none placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:bg-input/50 disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:disabled:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",e),...r})}function Be({className:e,...r}){return t.jsx("label",{"data-slot":"label",className:K("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",e),...r})}function ln(e){const r=Date.now(),s=new Date(e+"Z").getTime(),o=Math.max(0,r-s),a=Math.floor(o/6e4);if(a<60)return`${a}m ago`;const l=Math.floor(a/60);return l<24?`${l}h ago`:`${Math.floor(l/24)}d ago`}function hr({onCreated:e}){const[r,s]=m.useState(!1),[o,a]=m.useState(""),[l,u]=m.useState(""),[d,c]=m.useState(""),[i,p]=m.useState(""),[n,b]=m.useState(""),[z,E]=m.useState(""),[S,_]=m.useState([]),[T,se]=m.useState(""),[X,J]=m.useState(!1),[Z,P]=m.useState(!1),[Q,v]=m.useState(!1),[O,ge]=m.useState(!1),[ve,oe]=m.useState(null),[F,ue]=m.useState([]),[H,j]=m.useState(!1),[M,ee]=m.useState(null),[ne,h]=m.useState(!1),[te,xe]=m.useState({}),[y,A]=m.useState("idle"),[k,R]=m.useState(!0),q=w=>xe(I=>({...I,[w]:!0})),L=o.trim()&&l.trim()&&d.trim()&&!O;m.useEffect(()=>{r&&ce.recentRepos().then(ue).catch(()=>ue([]))},[r]),m.useEffect(()=>{const w=d.trim();if(!w){_([]),E(""),A("idle");return}let I=!1;A("loading");const Ze=setTimeout(async()=>{try{const[De,Se]=await Promise.all([ce.listBranches(w),ce.getDefaultBranch(w)]);I||(_(De),E(Se.branch),A("valid"))}catch{I||(_([]),A("invalid"))}},500);return()=>{I=!0,clearTimeout(Ze)}},[d]),m.useEffect(()=>{if(!k)return;const w=o.trim();if(!w){b("");return}const I=w.toLowerCase().replace(/\s+/g,"-").replace(/[^a-z0-9-]/g,"").replace(/-+/g,"-").replace(/^-|-$/g,"");b(I?`feat/${I}`:"")},[o,k]);const B=S.filter(w=>w.toLowerCase().includes(T.toLowerCase())),me=m.useCallback(async w=>{h(!0);try{const I=await ce.browse(w);ee(I)}catch{}finally{h(!1)}},[]);m.useEffect(()=>{H&&!M&&me()},[H,M,me]);function pe(w){c(w),j(!1)}async function ae(w){if(w.preventDefault(),!!L){ge(!0),oe(null);try{await ce.createTask({title:o.trim(),description:l.trim(),repo_path:d.trim(),branch:n.trim()||void 0,base_branch:z.trim()||void 0,initial_prompt:i.trim()||void 0,draft:Q||void 0}),a(""),u(""),c(""),b(""),E(""),_([]),se(""),p(""),P(!1),v(!1),xe({}),A("idle"),R(!0),s(!1),e==null||e()}catch(I){oe(I.message)}finally{ge(!1)}}}return t.jsxs(en,{open:r,onOpenChange:s,children:[t.jsxs(tn,{render:t.jsx(V,{}),children:[t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","data-icon":"inline-start",children:[t.jsx("path",{d:"M12 5v14"}),t.jsx("path",{d:"M5 12h14"})]}),"New Task"]}),t.jsxs(on,{className:"max-h-[90vh] overflow-y-auto sm:max-w-xl",children:[t.jsx(nn,{children:t.jsx(an,{children:"Create Task"})}),t.jsxs("form",{onSubmit:ae,className:"flex flex-col gap-4",children:[t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx(Be,{htmlFor:"title",children:"Title"}),t.jsx(it,{id:"title",placeholder:"Fix order validation",value:o,onChange:w=>a(w.target.value),onBlur:()=>q("title")}),te.title&&!o.trim()&&t.jsx("p",{className:"text-xs text-destructive",children:"Title is required"})]}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx(Be,{htmlFor:"description",children:"Description"}),t.jsx(Ft,{id:"description",placeholder:"Add negative quantity checks to the order form...",rows:3,value:l,onChange:w=>u(w.target.value),onBlur:()=>q("description")}),te.description&&!l.trim()&&t.jsx("p",{className:"text-xs text-destructive",children:"Description is required"})]}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx(Be,{htmlFor:"repo-path",children:"Repository Path"}),t.jsxs("div",{className:"flex gap-2",children:[t.jsxs("div",{className:"relative flex-1",children:[t.jsx(it,{id:"repo-path",placeholder:"/Users/you/projects/my-repo",className:"font-mono text-sm pr-8",value:d,onChange:w=>c(w.target.value),onBlur:()=>q("repoPath")}),d.trim()&&t.jsxs("span",{className:"absolute right-2 top-1/2 -translate-y-1/2",children:[y==="loading"&&t.jsxs("svg",{className:"h-4 w-4 animate-spin text-muted-foreground",xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","aria-label":"Validating repo",children:[t.jsx("circle",{className:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"4"}),t.jsx("path",{className:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"})]}),y==="valid"&&t.jsx("svg",{className:"h-4 w-4 text-emerald-500",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-label":"Valid git repo",children:t.jsx("path",{d:"M20 6 9 17l-5-5"})}),y==="invalid"&&t.jsxs("svg",{className:"h-4 w-4 text-destructive",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-label":"Not a git repository",children:[t.jsx("path",{d:"M18 6 6 18"}),t.jsx("path",{d:"m6 6 12 12"})]})]})]}),t.jsxs(dt,{open:H,onOpenChange:j,children:[t.jsx(ut,{render:t.jsx(V,{type:"button",variant:"outline",className:"shrink-0",children:"Browse"})}),t.jsx(mt,{align:"end",side:"bottom",sideOffset:4,className:"w-[420px] p-0",children:t.jsx(cn,{data:M,loading:ne,onNavigate:me,onSelect:pe})})]})]}),d.trim()&&y==="valid"&&t.jsx("p",{className:"text-xs text-emerald-500",children:"Valid git repo"}),d.trim()&&y==="invalid"&&t.jsx("p",{className:"text-xs text-destructive",children:"Not a git repository"}),te.repoPath&&!d.trim()&&t.jsx("p",{className:"text-xs text-destructive",children:"Repository path is required"}),!d.trim()&&F.length>0&&t.jsxs("div",{className:"flex flex-col gap-1",children:[t.jsx("span",{className:"text-xs text-muted-foreground font-medium",children:"Recent"}),t.jsx("div",{className:"rounded-md border border-border overflow-hidden",children:F.slice(0,5).map(w=>t.jsxs("button",{type:"button",className:"flex w-full items-center justify-between px-3 py-1.5 text-left text-sm hover:bg-muted transition-colors",onClick:()=>c(w.repo_path),children:[t.jsx("span",{className:"font-mono text-xs truncate mr-3",children:w.repo_path}),t.jsx("span",{className:"text-xs text-muted-foreground shrink-0",children:ln(w.last_used)})]},w.repo_path))})]})]}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(Be,{htmlFor:"branch",children:"Branch Name"}),k&&n&&t.jsx("span",{className:"rounded bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground",children:"auto"})]}),t.jsx(it,{id:"branch",placeholder:"feat/my-feature",className:"font-mono text-sm",value:n,onChange:w=>{b(w.target.value),R(!1)}})]}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx(Be,{children:"Base Branch"}),t.jsxs(dt,{open:X,onOpenChange:J,children:[t.jsx(ut,{render:t.jsxs("button",{type:"button",className:"flex h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-xs transition-colors hover:bg-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",children:[t.jsx("span",{className:z?"font-mono text-xs":"text-muted-foreground",children:z||"Select base branch..."}),t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-muted-foreground",children:t.jsx("path",{d:"m6 9 6 6 6-6"})})]})}),t.jsx(mt,{align:"start",side:"bottom",sideOffset:4,className:"w-[--trigger-width] p-0",children:t.jsxs("div",{className:"flex flex-col",children:[t.jsx("div",{className:"border-b border-border px-3 py-2",children:t.jsx("input",{type:"text",placeholder:"Search branches...",className:"w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground",value:T,onChange:w=>se(w.target.value),autoFocus:!0})}),t.jsxs("div",{className:"max-h-[200px] overflow-y-auto",children:[B.length===0&&t.jsx("div",{className:"px-3 py-3 text-center text-xs text-muted-foreground",children:S.length===0?"Select a repository first":"No matching branches"}),B.map(w=>t.jsx("button",{type:"button",className:`flex w-full items-center px-3 py-1.5 text-left text-sm hover:bg-muted transition-colors ${w===z?"bg-muted font-medium":""}`,onClick:()=>{E(w),se(""),J(!1)},children:t.jsx("span",{className:"font-mono text-xs truncate",children:w})},w))]})]})})]})]}),t.jsxs("div",{className:"flex flex-col gap-2",children:[t.jsx(V,{type:"button",variant:"ghost",size:"sm",className:"w-fit h-auto px-2 py-1 text-xs text-muted-foreground hover:text-foreground",onClick:()=>P(!Z),children:Z?"- Hide initial prompt":"+ Add initial prompt"}),Z&&t.jsx(Ft,{id:"initial-prompt",placeholder:"Custom prompt to send to the agent on start...",rows:4,value:i,onChange:w=>p(w.target.value)})]}),t.jsxs("label",{className:"flex items-center gap-2 text-sm text-muted-foreground cursor-pointer",children:[t.jsx("input",{type:"checkbox",checked:Q,onChange:w=>v(w.target.checked),className:"rounded border-border"}),"Save as draft (start later)"]}),ve&&t.jsx("p",{className:"text-sm text-destructive",children:ve}),t.jsxs("div",{className:"sticky bottom-0 flex justify-end gap-2 border-t border-border bg-background pt-3 -mb-1",children:[t.jsx(V,{type:"button",variant:"ghost",onClick:()=>s(!1),children:"Cancel"}),t.jsx(V,{type:"submit",disabled:!L,children:O?"Creating...":"Create"})]})]})]})]})}function cn({data:e,loading:r,onNavigate:s,onSelect:o}){return!e&&r?t.jsx("div",{className:"flex items-center justify-center py-8 text-sm text-muted-foreground",children:"Loading..."}):e?t.jsxs("div",{className:"flex flex-col",children:[t.jsxs("div",{className:"flex items-center gap-2 border-b border-border px-3 py-2",children:[t.jsx("button",{type:"button",disabled:!e.parent,className:"shrink-0 rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground disabled:opacity-30 disabled:hover:bg-transparent",onClick:()=>e.parent&&s(e.parent),children:t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:t.jsx("path",{d:"m15 18-6-6 6-6"})})}),t.jsx("span",{className:"font-mono text-xs text-muted-foreground truncate direction-rtl text-left",children:e.current})]}),t.jsxs("div",{className:"max-h-[280px] overflow-y-auto",children:[e.entries.length===0&&t.jsx("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:"No subdirectories"}),e.entries.map(a=>t.jsxs("button",{type:"button",className:"flex w-full items-center gap-2 px-3 py-1.5 text-left text-sm hover:bg-muted transition-colors",onClick:()=>s(a.path),onDoubleClick:()=>a.isGit&&o(a.path),children:[t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:a.isGit?"text-emerald-500":"text-muted-foreground",children:t.jsx("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"})}),t.jsxs("span",{className:"font-mono text-xs truncate",children:[a.name,t.jsx("span",{className:"text-muted-foreground",children:"/"})]}),a.isGit&&t.jsx("span",{className:"ml-auto shrink-0 rounded bg-emerald-500/10 px-1.5 py-0.5 text-[10px] font-medium text-emerald-600 dark:text-emerald-400",children:"git"})]},a.path))]}),t.jsxs("div",{className:"flex items-center justify-between border-t border-border px-3 py-2",children:[t.jsx("span",{className:"font-mono text-[10px] text-muted-foreground truncate mr-2",children:e.current}),t.jsx(V,{type:"button",size:"sm",className:"shrink-0 h-7 text-xs",onClick:()=>o(e.current),children:"Select"})]})]}):null}function dn(){const{tasks:e,loading:r,error:s,refresh:o}=ht(),{filters:a,setFilter:l,filtered:u,counts:d,repos:c}=Ds(e),[i,p]=m.useState(()=>localStorage.getItem("octomux-view-mode")||"cards"),n=m.useCallback(async S=>{try{await ce.updateTask(S,{status:"closed"}),o()}catch(_){console.error("Failed to close task:",_)}},[o]),b=m.useCallback(async S=>{try{await ce.deleteTask(S),o()}catch(_){console.error("Failed to delete task:",_)}},[o]),z=m.useCallback(S=>{p(S),localStorage.setItem("octomux-view-mode",S)},[]),E=m.useCallback(async S=>{try{await ce.updateTask(S,{status:"running"}),o()}catch(_){console.error("Failed to resume task:",_)}},[o]);return t.jsx("div",{className:"h-full overflow-auto",children:t.jsxs("div",{className:"mx-auto max-w-6xl px-4 py-4",children:[s&&t.jsx(Xe,{icon:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z"}),t.jsx("path",{d:"M12 9v4"}),t.jsx("path",{d:"M12 17h.01"})]}),heading:"Unable to load tasks",subtext:`Check that the server is running on port 7777. ${s}`,action:t.jsx(V,{variant:"outline",size:"sm",onClick:o,children:"Retry"})}),r?t.jsx("div",{className:"flex flex-col gap-3",children:[1,2,3].map(S=>t.jsxs("div",{className:"animate-pulse rounded-xl border border-border bg-card p-4",children:[t.jsxs("div",{className:"flex items-start justify-between gap-3",children:[t.jsx("div",{className:"h-5 w-48 rounded bg-muted"}),t.jsx("div",{className:"h-5 w-16 rounded bg-muted"})]}),t.jsx("div",{className:"mt-2 h-4 w-64 rounded bg-muted"}),t.jsxs("div",{className:"mt-3 flex items-center gap-2",children:[t.jsx("div",{className:"h-5 w-20 rounded bg-muted"}),t.jsx("div",{className:"h-4 w-32 rounded bg-muted"})]})]},S))}):t.jsxs(t.Fragment,{children:[t.jsx(Zo,{activeStatus:a.status,counts:d,onStatusChange:S=>l("status",S),repos:c,activeRepo:a.repo,onRepoChange:S=>l("repo",S),viewMode:i,onViewChange:z}),t.jsx(Ko,{tasks:u,totalCount:e.length,emptyAction:t.jsx(hr,{onCreated:o}),onClose:n,onDelete:b,onResume:E,viewMode:i})]})]})})}const un=["running","setting_up","error"];function Ht(e){return e.status==="error"?2:e.derivedStatus==="needs_attention"?1:e.status==="running"||e.status==="setting_up"?0:3}function mn(e){const r=e.filter(a=>un.includes(a.status)),s=new Map;for(const a of r){const l=a.repo_path.split("/").pop()||a.repo_path,u={id:a.id,title:a.title,status:a.status,derivedStatus:a.derived_status??null},d=s.get(l);d?(d.items.push(u),d.tasks.push(a)):s.set(l,{items:[u],tasks:[a]})}const o=[];for(const[a,{items:l,tasks:u}]of s){const d=new Map(u.map(c=>[c.id,c.created_at]));l.sort((c,i)=>{const p=Ht(c)-Ht(i);return p!==0?p:(d.get(i.id)??"").localeCompare(d.get(c.id)??"")}),o.push({repo:a,items:l})}return o.sort((a,l)=>a.repo.localeCompare(l.repo)),o}const gr="octomux-sidebar-collapsed";function pn(){try{return localStorage.getItem(gr)==="true"}catch{return!1}}function fn({item:e}){switch(e.derivedStatus??e.status){case"working":case"running":return t.jsxs("svg",{className:"h-4 w-4 shrink-0 text-green-400 animate-spin",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[t.jsx("circle",{cx:"8",cy:"8",r:"6",stroke:"currentColor",strokeWidth:"2",opacity:"0.3"}),t.jsx("path",{d:"M14 8a6 6 0 0 0-6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]});case"setting_up":return t.jsx("svg",{className:"h-4 w-4 shrink-0 text-yellow-400",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:t.jsx("circle",{cx:"8",cy:"8",r:"6",stroke:"currentColor",strokeWidth:"2",strokeDasharray:"4 2"})});case"needs_attention":return t.jsxs("svg",{className:"h-4 w-4 shrink-0 text-amber-400",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[t.jsx("path",{d:"M8 1.5l6.5 12H1.5L8 1.5z",stroke:"currentColor",strokeWidth:"1.5",strokeLinejoin:"round"}),t.jsx("line",{x1:"8",y1:"6",x2:"8",y2:"9.5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"}),t.jsx("circle",{cx:"8",cy:"11.5",r:"0.75",fill:"currentColor"})]});case"error":return t.jsxs("svg",{className:"h-4 w-4 shrink-0 text-red-400",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[t.jsx("circle",{cx:"8",cy:"8",r:"6",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("path",{d:"M5.5 5.5l5 5M10.5 5.5l-5 5",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round"})]});default:return t.jsx("svg",{className:"h-4 w-4 shrink-0 text-muted-foreground",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:t.jsx("circle",{cx:"8",cy:"8",r:"6",stroke:"currentColor",strokeWidth:"1.5"})})}}function hn(e){switch(e.derivedStatus??e.status){case"working":case"running":return"Running";case"setting_up":return"Setting up";case"needs_attention":return"Needs attention";case"error":return"Error";default:return e.status}}function gn(){const[e,r]=m.useState(pn),{tasks:s}=ht(),{id:o}=Mr(),a=m.useMemo(()=>mn(s),[s]),l=m.useMemo(()=>a.flatMap(c=>c.items),[a]),u=m.useMemo(()=>l.filter(c=>{const i=c.derivedStatus??c.status;return i==="error"||i==="needs_attention"}).length,[l]),d=m.useCallback(()=>{r(c=>{const i=!c;try{localStorage.setItem(gr,String(i))}catch{}return i})},[]);return m.useEffect(()=>{function c(i){(i.metaKey||i.ctrlKey)&&i.key==="b"&&(i.preventDefault(),d())}return window.addEventListener("keydown",c),()=>window.removeEventListener("keydown",c)},[d]),t.jsxs("nav",{"aria-label":"Task list",className:"hidden md:flex flex-col border-r border-border bg-muted/30 overflow-y-auto overflow-x-hidden transition-[width] duration-150 ease-out",style:{width:e?48:240},children:[t.jsxs("div",{className:"flex items-center gap-2 p-2 border-b border-border shrink-0",children:[t.jsx("button",{onClick:d,className:"p-1 rounded hover:bg-muted","aria-label":e?"Expand sidebar":"Collapse sidebar",children:t.jsxs("svg",{className:"h-4 w-4",viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",children:[t.jsx("rect",{x:"1.5",y:"2.5",width:"13",height:"11",rx:"1.5",stroke:"currentColor",strokeWidth:"1.5"}),t.jsx("path",{d:"M5.5 2.5v11",stroke:"currentColor",strokeWidth:"1.5"}),e?t.jsx("path",{d:"M9 6l2 2-2 2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}):t.jsx("path",{d:"M11 6l-2 2 2 2",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})}),u>0&&t.jsx("span",{"data-testid":"attention-count",className:e?"sr-only":"ml-auto inline-flex items-center justify-center rounded-full bg-red-500/20 text-red-400 text-xs font-medium min-w-5 h-5 px-1.5",children:u})]}),t.jsx("div",{className:"flex-1 py-1",children:a.map(c=>t.jsxs("div",{children:[!e&&t.jsx("div",{className:"px-3 py-1.5 text-[11px] font-medium text-muted-foreground uppercase tracking-wider truncate",children:c.repo}),c.items.map(i=>{const p=i.id===o;return t.jsxs(Gt,{to:`/tasks/${i.id}`,"aria-current":p?"page":void 0,title:e?`${i.title} — ${hn(i)}`:void 0,className:`flex items-center gap-2 px-2 py-1.5 text-sm transition-colors hover:bg-muted/60 ${p?"bg-muted border-l-2 border-l-primary":"border-l-2 border-l-transparent"}`,children:[t.jsx(fn,{item:i}),!e&&t.jsx("span",{className:"truncate max-w-[180px]",children:i.title})]},i.id)})]},c.repo))})]})}function xn(){return t.jsxs("div",{className:"flex h-full",children:[t.jsx(gn,{}),t.jsx("div",{className:"min-w-0 flex-1",children:t.jsx(m.Suspense,{fallback:t.jsx("div",{className:"flex h-full items-center justify-center text-muted-foreground",children:"Loading..."}),children:t.jsx(Br,{})})})]})}function bn(){const[e,r]=m.useState(!1),s=Rs(),o=m.useCallback(()=>r(!0),[]),a=m.useCallback(()=>r(!1),[]),l=m.useCallback(()=>r(u=>!u),[]);return{isOpen:e,open:o,close:a,toggle:l,...s}}const xr=m.createContext(null);function vn({children:e}){const r=bn();return t.jsx(xr.Provider,{value:r,children:e})}function br(){const e=m.useContext(xr);if(!e)throw new Error("useOrchestratorContext must be used within OrchestratorProvider");return e}function wn(){const[e,r]=m.useState(Kt),s=m.useCallback(()=>{const o=!e;Is(o),r(o)},[e]);return t.jsx(V,{variant:"ghost",size:"icon",onClick:s,title:e?"Disable notifications":"Enable notifications",className:"relative h-8 w-8",children:e?t.jsx(yn,{className:"h-4 w-4"}):t.jsx(kn,{className:"h-4 w-4 text-muted-foreground"})})}function yn({className:e}){return t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",className:e,children:t.jsx("path",{fillRule:"evenodd",d:"M5.25 9a6.75 6.75 0 0 1 13.5 0v.75c0 2.123.8 4.057 2.118 5.52a.75.75 0 0 1-.573 1.23H3.705a.75.75 0 0 1-.573-1.23A8.973 8.973 0 0 0 5.25 9.75V9ZM8.159 18.753a.75.75 0 0 1 .932-.514 3.756 3.756 0 0 0 5.818 0 .75.75 0 0 1 1.446.418 5.256 5.256 0 0 1-7.678 0 .75.75 0 0 1-.518-.904Z",clipRule:"evenodd"})})}function kn({className:e}){return t.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.5,className:e,children:t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M14.857 17.082a23.848 23.848 0 0 0 5.454-1.31A8.967 8.967 0 0 1 18 9.75V9A6 6 0 0 0 6 9v.75a8.967 8.967 0 0 1-2.312 6.022c1.733.64 3.56 1.085 5.455 1.31m5.714 0a24.255 24.255 0 0 1-5.714 0m5.714 0a3 3 0 1 1-5.714 0"})})}const jn=m.lazy(()=>Yt(()=>import("./TerminalView-CguHyqU9.js"),__vite__mapDeps([0,1,2,3])).then(e=>({default:e.TerminalView})));function Nn({isOpen:e,running:r,toggle:s}){return t.jsxs(V,{variant:e?"secondary":"ghost",size:"sm",onClick:s,title:"Toggle orchestrator",className:"relative gap-1.5",children:[t.jsx(Sn,{className:"h-4 w-4"}),t.jsx("span",{className:"text-xs hidden sm:inline",children:"Orchestrator"}),r&&t.jsxs("span",{className:"absolute -top-0.5 -right-0.5 flex h-2.5 w-2.5",children:[t.jsx("span",{className:"absolute inline-flex h-full w-full animate-ping rounded-full bg-emerald-400 opacity-75"}),t.jsx("span",{className:"relative inline-flex h-2.5 w-2.5 rounded-full bg-emerald-500"})]})]})}function Cn(){const{isOpen:e,close:r,running:s,loading:o,start:a,stop:l}=br();return m.useEffect(()=>{if(!e)return;const u=d=>{d.key==="Escape"&&r()};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[e,r]),t.jsxs("div",{className:`fixed inset-0 z-50 flex items-center justify-center transition-all duration-200 ${e?"visible opacity-100":"invisible opacity-0 pointer-events-none"}`,children:[t.jsx("div",{className:"absolute inset-0 bg-black/50",onClick:r}),t.jsxs("div",{role:"dialog","aria-modal":"true","aria-labelledby":"orchestrator-title",className:`relative z-10 flex h-[80vh] w-[90vw] max-w-5xl flex-col overflow-hidden rounded-xl border border-border bg-card shadow-2xl transition-transform duration-200 ${e?"scale-100":"scale-95"}`,children:[t.jsxs("div",{className:"flex items-center justify-between border-b border-border px-4 py-3",children:[t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("span",{className:`h-2 w-2 rounded-full ${s?"bg-emerald-500 animate-pulse":"bg-muted-foreground/30"}`}),t.jsx("span",{id:"orchestrator-title",className:"text-sm font-medium",children:"Orchestrator"})]}),t.jsxs("div",{className:"flex items-center gap-1",children:[s&&t.jsx(V,{variant:"ghost",size:"sm",className:"h-7 text-xs",onClick:l,children:"Stop"}),t.jsx("button",{onClick:r,className:"rounded p-1 text-muted-foreground hover:bg-muted hover:text-foreground",children:t.jsx(Tn,{})})]})]}),t.jsx("div",{className:"flex-1 overflow-hidden",children:o?t.jsx("div",{className:"flex h-full items-center justify-center text-sm text-muted-foreground",children:"Loading..."}):s?t.jsx(m.Suspense,{fallback:t.jsx("div",{className:"flex h-full items-center justify-center text-sm text-muted-foreground",children:"Loading terminal..."}),children:t.jsx(jn,{wsUrl:"/ws/terminal/orchestrator",visible:e})}):t.jsx(Xe,{icon:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("polyline",{points:"4 17 10 11 4 5"}),t.jsx("line",{x1:"12",x2:"20",y1:"19",y2:"19"})]}),heading:"Orchestrator not running",subtext:"Start the orchestrator to manage task queues",action:t.jsx(V,{onClick:a,children:"Start Orchestrator"}),className:"h-full"})})]})]})}function Sn({className:e}){return t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:e,children:[t.jsx("polyline",{points:"4 17 10 11 4 5"}),t.jsx("line",{x1:"12",x2:"20",y1:"19",y2:"19"})]})}function Tn(){return t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[t.jsx("path",{d:"M18 6 6 18"}),t.jsx("path",{d:"m6 6 12 12"})]})}function En(){const e=br();return t.jsxs("header",{className:"flex h-12 shrink-0 items-center justify-between border-b border-border bg-card px-4",children:[t.jsxs(Gt,{to:"/",className:"flex items-center gap-2.5",children:[t.jsx("img",{src:"/logo.png",alt:"octomux",className:"h-6 w-6 brightness-150 saturate-200"}),t.jsx("span",{className:"text-base font-semibold tracking-tight",children:"octomux"})]}),t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx(Nn,{isOpen:e.isOpen,running:e.running,toggle:e.toggle}),t.jsx(wn,{}),t.jsx(hr,{})]})]})}const _n=m.lazy(()=>Yt(()=>import("./TaskDetail-DwEaxpJc.js"),__vite__mapDeps([4,1,0,2,3,5,6])));function zn(){const{tasks:e}=ht(),r=Je();return Bs(e),Os(e,r),null}class An extends m.Component{constructor(){super(...arguments);St(this,"state",{error:null})}static getDerivedStateFromError(s){return{error:s}}render(){return this.state.error?t.jsxs("div",{className:"flex h-screen flex-col items-center justify-center gap-4 bg-background text-foreground",children:[t.jsx("p",{className:"text-lg font-semibold text-destructive",children:"Something went wrong"}),t.jsx("p",{className:"max-w-md text-center text-sm text-muted-foreground",children:this.state.error.message}),t.jsx("button",{className:"rounded-md bg-primary px-4 py-2 text-sm text-primary-foreground",onClick:()=>{this.setState({error:null}),window.location.reload()},children:"Reload"})]}):this.props.children}}function Rn(){return t.jsx(An,{children:t.jsxs(vn,{children:[t.jsxs("div",{className:"flex h-screen flex-col bg-background text-foreground",children:[t.jsx(Es,{theme:"dark",position:"bottom-right",richColors:!0}),t.jsx(zn,{}),t.jsx(En,{}),t.jsx("div",{className:"min-h-0 flex-1",children:t.jsxs(Ir,{children:[t.jsx(tt,{path:"/",element:t.jsx(dn,{})}),t.jsx(tt,{element:t.jsx(xn,{}),children:t.jsx(tt,{path:"/tasks/:id",element:t.jsx(_n,{})})})]})})]}),t.jsx(Cn,{})]})})}Rr.createRoot(document.getElementById("root")).render(t.jsx(m.StrictMode,{children:t.jsx(Pr,{children:t.jsx(Rn,{})})}));export{V as B,en as D,Xe as E,it as I,Be as L,dt as P,pr as S,Ft as T,tn as a,on as b,K as c,nn as d,an as e,ce as f,ut as g,mt as h,Oe as i,On as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-yellow-400:oklch(85.2% .199 91.936);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-600:oklch(44.2% .017 285.786);--color-black:#000;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-xl:36rem;--container-2xl:42rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--leading-snug:1.375;--radius-md:calc(var(--radius) * .8);--ease-out:cubic-bezier(0, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0, 0, .2, 1) infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-xs:4px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring) 50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-0\.5{top:calc(var(--spacing) * -.5)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.-right-0\.5{right:calc(var(--spacing) * -.5)}.right-2{right:calc(var(--spacing) * 2)}.bottom-0{bottom:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-auto{margin-inline:auto}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-3{margin-right:calc(var(--spacing) * 3)}.-mb-1{margin-bottom:calc(var(--spacing) * -1)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.ml-0\.5{margin-left:calc(var(--spacing) * .5)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-12{height:calc(var(--spacing) * 12)}.h-\[80vh\]{height:80vh}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[200px\]{max-height:200px}.max-h-\[280px\]{max-height:280px}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-8{width:calc(var(--spacing) * 8)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-32{width:calc(var(--spacing) * 32)}.w-48{width:calc(var(--spacing) * 48)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[--trigger-width\]{width:--trigger-width}.w-\[90vw\]{width:90vw}.w-\[200px\]{width:200px}.w-\[420px\]{width:420px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-2xl{max-width:var(--container-2xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[180px\]{max-width:180px}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-md{max-width:var(--container-md)}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-5{min-width:calc(var(--spacing) * 5)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-95{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-90{rotate:90deg}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-pointer{cursor:pointer}.resize{resize:both}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md),10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md),12px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-md{border-top-left-radius:calc(var(--radius) * .8);border-top-right-radius:calc(var(--radius) * .8)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-l-md{border-top-left-radius:calc(var(--radius) * .8);border-bottom-left-radius:calc(var(--radius) * .8)}.rounded-r-md{border-top-right-radius:calc(var(--radius) * .8);border-bottom-right-radius:calc(var(--radius) * .8)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-amber-500{border-color:var(--color-amber-500)}.border-amber-500\/30{border-color:#f99c004d}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/30{border-color:color-mix(in oklab,var(--color-amber-500) 30%,transparent)}}.border-blue-500\/30{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/30{border-color:color-mix(in oklab,var(--color-blue-500) 30%,transparent)}}.border-border{border-color:var(--border)}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--destructive) 30%,transparent)}}.border-emerald-500\/30{border-color:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/30{border-color:color-mix(in oklab,var(--color-emerald-500) 30%,transparent)}}.border-green-500\/30{border-color:#00c7584d}@supports (color:color-mix(in lab,red,red)){.border-green-500\/30{border-color:color-mix(in oklab,var(--color-green-500) 30%,transparent)}}.border-input{border-color:var(--input)}.border-primary{border-color:var(--primary)}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500) 30%,transparent)}}.border-transparent{border-color:#0000}.border-yellow-500\/30{border-color:#edb2004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/30{border-color:color-mix(in oklab,var(--color-yellow-500) 30%,transparent)}}.border-zinc-500\/30{border-color:#71717b4d}@supports (color:color-mix(in lab,red,red)){.border-zinc-500\/30{border-color:color-mix(in oklab,var(--color-zinc-500) 30%,transparent)}}.border-l-primary{border-left-color:var(--primary)}.border-l-transparent{border-left-color:#0000}.bg-\[\#09090b\]{background-color:#09090b}.bg-accent{background-color:var(--accent)}.bg-amber-500{background-color:var(--color-amber-500)}.bg-amber-500\/5{background-color:#f99c000d}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/5{background-color:color-mix(in oklab,var(--color-amber-500) 5%,transparent)}}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/15{background-color:color-mix(in oklab,var(--color-amber-500) 15%,transparent)}}.bg-amber-500\/20{background-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/20{background-color:color-mix(in oklab,var(--color-amber-500) 20%,transparent)}}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.bg-black\/10{background-color:color-mix(in oklab,var(--color-black) 10%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black) 50%,transparent)}}.bg-blue-500\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/20{background-color:color-mix(in oklab,var(--color-blue-500) 20%,transparent)}}.bg-card{background-color:var(--card)}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500) 10%,transparent)}}.bg-emerald-500\/20{background-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/20{background-color:color-mix(in oklab,var(--color-emerald-500) 20%,transparent)}}.bg-green-400{background-color:var(--color-green-400)}.bg-green-500{background-color:var(--color-green-500)}.bg-green-500\/20{background-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/20{background-color:color-mix(in oklab,var(--color-green-500) 20%,transparent)}}.bg-muted{background-color:var(--muted)}.bg-muted-foreground\/30{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.bg-muted-foreground\/30{background-color:color-mix(in oklab,var(--muted-foreground) 30%,transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/30{background-color:color-mix(in oklab,var(--muted) 30%,transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/20{background-color:color-mix(in oklab,var(--color-red-500) 20%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-yellow-500\/20{background-color:#edb20033}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/20{background-color:color-mix(in oklab,var(--color-yellow-500) 20%,transparent)}}.bg-zinc-400{background-color:var(--color-zinc-400)}.bg-zinc-500\/20{background-color:#71717b33}@supports (color:color-mix(in lab,red,red)){.bg-zinc-500\/20{background-color:color-mix(in oklab,var(--color-zinc-500) 20%,transparent)}}.bg-clip-padding{background-clip:padding-box}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-16{padding-block:calc(var(--spacing) * 16)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-3{padding-left:calc(var(--spacing) * 3)}.text-center{text-align:center}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.whitespace-nowrap{white-space:nowrap}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-blue-400{color:var(--color-blue-400)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-foreground{color:var(--foreground)}.text-green-400{color:var(--color-green-400)}.text-muted-foreground,.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/40{color:color-mix(in oklab,var(--muted-foreground) 40%,transparent)}}.text-muted-foreground\/50{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/50{color:color-mix(in oklab,var(--muted-foreground) 50%,transparent)}}.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/60{color:color-mix(in oklab,var(--muted-foreground) 60%,transparent)}}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-red-400{color:var(--color-red-400)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-yellow-400{color:var(--color-yellow-400)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-600{color:var(--color-zinc-600)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-75{opacity:.75}.opacity-100{opacity:1}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-0{outline-style:var(--tw-outline-style);outline-width:0}.brightness-150{--tw-brightness:brightness(150%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.saturate-200{--tw-saturate:saturate(200%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\!running{animation-play-state:running!important}.fade-in{--tw-enter-opacity:0}.running{animation-play-state:running}@media(hover:hover){.group-hover\:inline-flex:is(:where(.group):hover *){display:inline-flex}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-data-\[size\=sm\]\/card\:p-3:is(:where(.group\/card)[data-size=sm] *){padding:calc(var(--spacing) * 3)}.group-data-\[size\=sm\]\/card\:px-3:is(:where(.group\/card)[data-size=sm] *){padding-inline:calc(var(--spacing) * 3)}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media(hover:hover){.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent) 50%,transparent)}}.hover\:bg-amber-500\/10:hover{background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-amber-500\/10:hover{background-color:color-mix(in oklab,var(--color-amber-500) 10%,transparent)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}.hover\:bg-muted\/60:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/60:hover{background-color:color-mix(in oklab,var(--muted) 60%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-green-400:hover{color:var(--color-green-400)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-yellow-500:hover{color:var(--color-yellow-500)}.hover\:underline:hover{text-decoration-line:underline}}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:outline-0:focus{outline-style:var(--tw-outline-style);outline-width:0}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring:focus-visible,.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-0:focus-visible{outline-style:var(--tw-outline-style);outline-width:0}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}@media(hover:hover){.disabled\:hover\:bg-transparent:disabled:hover{background-color:#0000}}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-end\]\:pr-3:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 3)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.has-data-\[icon\=inline-start\]\:pl-3:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 3)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:calc(var(--spacing) * 0)}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start],.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=sm\]\:gap-3[data-size=sm]{gap:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:py-3[data-size=sm]{padding-block:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:calc(var(--spacing) * 0)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media(min-width:40rem){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:max-w-xl{max-width:var(--container-xl)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}@media(min-width:48rem){.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.dark\:text-emerald-400:is(.dark *){color:var(--color-emerald-400)}@media(hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab,var(--destructive) 30%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--muted) 50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab,var(--input) 80%,transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab,var(--destructive) 50%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\.border-b\]\:pb-4.border-b{padding-bottom:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/card\:\[\.border-b\]\:pb-3:is(:where(.group\/card)[data-size=sm] *).border-b{padding-bottom:calc(var(--spacing) * 3)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media(hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab,var(--primary) 80%,transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab,var(--secondary) 80%,transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-CHSlOQsW.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DMtmJ5ZE.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-Dm3htQBi.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(97% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(58% .22 27);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(80.9% .105 251.813);--chart-2:oklch(62.3% .214 259.815);--chart-3:oklch(54.6% .245 262.881);--chart-4:oklch(48.8% .243 264.376);--chart-5:oklch(42.4% .199 265.638);--radius:.625rem;--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(87% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(37.1% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(80.9% .105 251.813);--chart-2:oklch(62.3% .214 259.815);--chart-3:oklch(54.6% .245 262.881);--chart-4:oklch(48.8% .243 264.376);--chart-5:oklch(42.4% .199 265.638);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(26.9% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
|
package/dist/index.html
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
<link rel="icon" type="image/png" href="/logo.png" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>octomux</title>
|
|
8
|
-
<script type="module" crossorigin src="/assets/index-
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-Ct-i9Kci.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="/assets/vendor-react-BZ8ItZjw.js">
|
|
10
10
|
<link rel="modulepreload" crossorigin href="/assets/vendor-router-DRLGqALp.js">
|
|
11
11
|
<link rel="modulepreload" crossorigin href="/assets/vendor-ui-BEZHWVRx.js">
|
|
12
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
12
|
+
<link rel="stylesheet" crossorigin href="/assets/index-SCRVdJLu.css">
|
|
13
13
|
</head>
|
|
14
14
|
<body>
|
|
15
15
|
<div id="root"></div>
|