@overlordai/server 1.0.120 → 1.0.122

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/dist/dispatcher/scheduler.service.d.ts.map +1 -1
  2. package/dist/dispatcher/scheduler.service.js +10 -0
  3. package/dist/dispatcher/scheduler.service.js.map +1 -1
  4. package/dist/dispatcher/task-creation.service.d.ts.map +1 -1
  5. package/dist/dispatcher/task-creation.service.js +7 -3
  6. package/dist/dispatcher/task-creation.service.js.map +1 -1
  7. package/package.json +4 -4
  8. package/public/assets/{AccessTokensPage-DO5nLn2j.js → AccessTokensPage-DLTN5nmE.js} +1 -1
  9. package/public/assets/{AdminPage-C_wy-It6.js → AdminPage-D-hMOsb5.js} +1 -1
  10. package/public/assets/{AgentCliPage-DaiaERBx.js → AgentCliPage-BwbVXApp.js} +1 -1
  11. package/public/assets/{ApiReferencePage-DgMneAgC.js → ApiReferencePage-DaRQ22DW.js} +1 -1
  12. package/public/assets/{ArchitecturePage-B6q1zUYo.js → ArchitecturePage-Crd9NuvT.js} +2 -2
  13. package/public/assets/{AuditLogPage-CzBbA79C.js → AuditLogPage-D8YjXaeq.js} +1 -1
  14. package/public/assets/{BindPlatformPage-C8gVZh1l.js → BindPlatformPage-Dhr5sUeg.js} +1 -1
  15. package/public/assets/{BotIntegrationPage-C8osvRni.js → BotIntegrationPage-CgtSxeY1.js} +1 -1
  16. package/public/assets/{BotManage-CXgA77Yj.js → BotManage-Baa9rkqE.js} +1 -1
  17. package/public/assets/{BotSetupPage-BRQMxFi1.js → BotSetupPage-Brb0A9mt.js} +1 -1
  18. package/public/assets/{ChangelogPage-DZWbGqgz.js → ChangelogPage-3bfOSdqH.js} +1 -1
  19. package/public/assets/{CliReferencePage-BHDYPPif.js → CliReferencePage-DiaqlXDX.js} +2 -2
  20. package/public/assets/{DeploymentPage-6U8mjtC5.js → DeploymentPage-BWX8QZx8.js} +1 -1
  21. package/public/assets/{DevWorkflowPage-CuX_Irfd.js → DevWorkflowPage-rW71jol_.js} +1 -1
  22. package/public/assets/{DeveloperManage-Bgj1rV1M.js → DeveloperManage-D4JBZo8c.js} +1 -1
  23. package/public/assets/{DeveloperSetupPage-Ch6bwf8z.js → DeveloperSetupPage-DRKEi5en.js} +1 -1
  24. package/public/assets/{DocsIndexPage-DZ1OoINZ.js → DocsIndexPage-2F69LGaQ.js} +1 -1
  25. package/public/assets/{DocsLayout-CsvmIbLT.js → DocsLayout-ZSlTD632.js} +1 -1
  26. package/public/assets/{DocsPrimitives-J-B5f6VK.js → DocsPrimitives-Tt5F4b8u.js} +1 -1
  27. package/public/assets/{EditProjectPage-CuF1pvrG.js → EditProjectPage-BFnyOm8a.js} +1 -1
  28. package/public/assets/{EmptyState-DK5XEtXd.js → EmptyState-CB-j6-lX.js} +1 -1
  29. package/public/assets/{EnvVariablesPage-DIverlvl.js → EnvVariablesPage-Bn54o5EI.js} +1 -1
  30. package/public/assets/{HomePage-BAxV91I0.js → HomePage-CHy8dWn6.js} +1 -1
  31. package/public/assets/{InfoRow-Fs80rj1k.js → InfoRow-CuY9Kd8Z.js} +1 -1
  32. package/public/assets/{InstallationPage-UVSiZ9Z8.js → InstallationPage-CZrNHQzK.js} +1 -1
  33. package/public/assets/{LandingPage-CmJKs5HF.js → LandingPage-DkTpcPF7.js} +1 -1
  34. package/public/assets/{LocalDevelopmentPage-Dh2NsOS-.js → LocalDevelopmentPage-CS_x4bw1.js} +1 -1
  35. package/public/assets/{LoginPage-CAyaPasn.js → LoginPage-Dt_4iOEb.js} +1 -1
  36. package/public/assets/{MetricBar-CsEsq05l.js → MetricBar-Dw-gKq-A.js} +1 -1
  37. package/public/assets/{NotFoundPage-DOceAhy8.js → NotFoundPage-BMV3gUuY.js} +1 -1
  38. package/public/assets/{OnboardingGuide-DfO6T1ZU.js → OnboardingGuide-CIO4T0dC.js} +1 -1
  39. package/public/assets/{PermissionsPage-DyEufFle.js → PermissionsPage-i-csvf_y.js} +1 -1
  40. package/public/assets/{PipelineConfigPage-BbBXH-Zh.js → PipelineConfigPage-Bg5pyyh5.js} +1 -1
  41. package/public/assets/{PipelineEditorPage-LGqZzLtA.js → PipelineEditorPage-DwiLS1Qo.js} +2 -2
  42. package/public/assets/{ProfilePage-NcDGS_gW.js → ProfilePage-DGjfFkuJ.js} +1 -1
  43. package/public/assets/{ProjectDetailPage-BkhaWw5v.js → ProjectDetailPage-_p8yyCp9.js} +1 -1
  44. package/public/assets/{ProjectListPage-D5ClNT8G.js → ProjectListPage-CoW3bncg.js} +1 -1
  45. package/public/assets/{PtyTerminal-ag46DP_J.js → PtyTerminal-BiGCH_od.js} +1 -1
  46. package/public/assets/{QuickAuth-ChsJqpOa.js → QuickAuth-lXUPdJd0.js} +1 -1
  47. package/public/assets/{RemoveMemberConfirmDialog-Dnh361N9.js → RemoveMemberConfirmDialog-BpaRyjKT.js} +1 -1
  48. package/public/assets/{Select-BBIpQajq.js → Select-B6xa4zWl.js} +1 -1
  49. package/public/assets/{SettingsPage-sL2AXVX4.js → SettingsPage-DfNMy10j.js} +1 -1
  50. package/public/assets/{Skeleton-Cv9gz7j0.js → Skeleton-fB1MkAg8.js} +1 -1
  51. package/public/assets/{SkillPage-D_aGoLqf.js → SkillPage-axNw0Nvj.js} +1 -1
  52. package/public/assets/{TaskDetailPage-DYa32Te0.js → TaskDetailPage-BnSSPgc1.js} +1 -1
  53. package/public/assets/TaskListPage-BpfNmztM.js +1 -0
  54. package/public/assets/{TaskStatusBadge-VazopB5x.js → TaskStatusBadge-4f3JZe9b.js} +1 -1
  55. package/public/assets/{TerminalHomePage-XEpXnk5-.js → TerminalHomePage-BzRF9ncA.js} +1 -1
  56. package/public/assets/{TokenManage-Bg_HNwyq.js → TokenManage-DRZBRNmx.js} +1 -1
  57. package/public/assets/{Tooltip-qAKe-yIh.js → Tooltip-_O6F694q.js} +1 -1
  58. package/public/assets/{TotpSetupPage-BdxxnDRK.js → TotpSetupPage-BqlbNq86.js} +1 -1
  59. package/public/assets/{WorkerDetailPage-B4DsdOid.js → WorkerDetailPage-dTGUel7V.js} +1 -1
  60. package/public/assets/{WorkerListPage-DJeXxet0.js → WorkerListPage-DIOXnq74.js} +1 -1
  61. package/public/assets/{WorkerOperationsPage-BpMTU70w.js → WorkerOperationsPage-DG6ITLFW.js} +1 -1
  62. package/public/assets/{WorkerSetupGuidePage-CEa1vP2x.js → WorkerSetupGuidePage-n1lf1f0A.js} +1 -1
  63. package/public/assets/{WorkerSetupPage-BmLXPF17.js → WorkerSetupPage-mT-sH4X3.js} +1 -1
  64. package/public/assets/{arrow-left-BciAJc0C.js → arrow-left-CZDJrF_X.js} +1 -1
  65. package/public/assets/{arrow-right-Dt6VsmRV.js → arrow-right-B-qnAssQ.js} +1 -1
  66. package/public/assets/{bot-D5131CZG.js → bot-CA2ly-rB.js} +1 -1
  67. package/public/assets/{chevron-right-Blb2ic3C.js → chevron-right-DVHQ1sMw.js} +1 -1
  68. package/public/assets/{copy-BQrGTOtp.js → copy-CEwTDJC1.js} +1 -1
  69. package/public/assets/{download-CJoiZNbu.js → download-CL0jNZsV.js} +1 -1
  70. package/public/assets/{external-link-DiDABF9Z.js → external-link-DPEKiHIB.js} +1 -1
  71. package/public/assets/{git-fork-D5pdmhYe.js → git-fork-De8OBCff.js} +1 -1
  72. package/public/assets/{index-ZRlHMeHE.js → index--aF0i_eD.js} +4 -4
  73. package/public/assets/{key-Y6HNahnR.js → key-CKbQXsMY.js} +1 -1
  74. package/public/assets/{loader-circle-D_ZUfXzL.js → loader-circle-Cg-6kEdk.js} +1 -1
  75. package/public/assets/{pencil-BQGvf5zx.js → pencil-CMqis0WK.js} +1 -1
  76. package/public/assets/{plus-CwyZHjTN.js → plus-Cjp-i5dd.js} +1 -1
  77. package/public/assets/{rotate-ccw-pjymz2hv.js → rotate-ccw-DHN83mBA.js} +1 -1
  78. package/public/assets/{scroll-text-ESBd3O11.js → scroll-text-D92ZPPUM.js} +1 -1
  79. package/public/assets/{settings-gsHzEeFU.js → settings-1KadpSnN.js} +1 -1
  80. package/public/assets/{status-colors-COXH3iq8.js → status-colors-BvOn_eJV.js} +1 -1
  81. package/public/assets/{task-constants-DI8wywYm.js → task-constants-CrRk_tKl.js} +1 -1
  82. package/public/assets/{trash-2-BzLabGqv.js → trash-2-BP1wsKgX.js} +1 -1
  83. package/public/assets/useFetch-DV0Yynml.js +1 -0
  84. package/public/assets/{users-CL1uwEG8.js → users-BCOMx1T4.js} +1 -1
  85. package/public/assets/{wifi-DySsTxzQ.js → wifi-BImD06w3.js} +1 -1
  86. package/public/assets/{workflow-B_rJbQD0.js → workflow-D_LvNj84.js} +1 -1
  87. package/public/index.html +1 -1
  88. package/public/sw.js +1 -1
  89. package/public/assets/TaskListPage-C62bb8tH.js +0 -1
  90. package/public/assets/useFetch-DP7sZvMV.js +0 -1
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as a}from"./index-ZRlHMeHE.js";/**
1
+ import{c as a}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as t}from"./index-ZRlHMeHE.js";/**
1
+ import{c as t}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as a}from"./index-ZRlHMeHE.js";/**
1
+ import{c as a}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as a}from"./index-ZRlHMeHE.js";/**
1
+ import{c as a}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- import{W as r,n as e,_ as s,$ as u,Q as a}from"./index-ZRlHMeHE.js";const n={[e.QUEUED]:"var(--text-muted)",[e.ASSIGNED]:"#60a5fa",[e.RUNNING]:"var(--accent)",[e.SUSPENDED]:"var(--warning)",[e.COMPLETED]:"var(--info)",[e.FAILED]:"var(--destructive)",[e.CANCELLED]:"var(--text-muted)"};function v(t){return n[t]??"var(--text-muted)"}const o={[r.ONLINE]:"var(--accent)",[r.OFFLINE]:"var(--destructive)",[r.DRAINING]:"var(--warning)",[r.DECOMMISSIONED]:"var(--text-muted)"};function E(t){return o[t]??"var(--text-muted)"}function x(t){switch(t){case s.ACTIVE:return"text-green-400";case s.DISABLED:return"text-red-400";default:return"text-[var(--text-muted)]"}}function S(t){switch(t){case a.ACTIVE:return"text-green-400";case a.USED:return"text-blue-400";case a.REVOKED:return"text-red-400";case a.EXPIRED:return"text-[var(--text-muted)]";default:return"text-[var(--text-muted)]"}}function d(t){switch(t){case u.ACTIVE:return"text-green-400";case"error":return"text-red-400";default:return"text-[var(--text-muted)]"}}function i(t){return t>.8?"var(--destructive)":t>.6?"var(--warning)":"var(--accent)"}export{v as a,i as b,x as c,d,S as e,E as g,n as t,o as w};
1
+ import{W as r,n as e,_ as s,$ as u,Q as a}from"./index--aF0i_eD.js";const n={[e.QUEUED]:"var(--text-muted)",[e.ASSIGNED]:"#60a5fa",[e.RUNNING]:"var(--accent)",[e.SUSPENDED]:"var(--warning)",[e.COMPLETED]:"var(--info)",[e.FAILED]:"var(--destructive)",[e.CANCELLED]:"var(--text-muted)"};function v(t){return n[t]??"var(--text-muted)"}const o={[r.ONLINE]:"var(--accent)",[r.OFFLINE]:"var(--destructive)",[r.DRAINING]:"var(--warning)",[r.DECOMMISSIONED]:"var(--text-muted)"};function E(t){return o[t]??"var(--text-muted)"}function x(t){switch(t){case s.ACTIVE:return"text-green-400";case s.DISABLED:return"text-red-400";default:return"text-[var(--text-muted)]"}}function S(t){switch(t){case a.ACTIVE:return"text-green-400";case a.USED:return"text-blue-400";case a.REVOKED:return"text-red-400";case a.EXPIRED:return"text-[var(--text-muted)]";default:return"text-[var(--text-muted)]"}}function d(t){switch(t){case u.ACTIVE:return"text-green-400";case"error":return"text-red-400";default:return"text-[var(--text-muted)]"}}function i(t){return t>.8?"var(--destructive)":t>.6?"var(--warning)":"var(--accent)"}export{v as a,i as b,x as c,d,S as e,E as g,n as t,o as w};
@@ -1 +1 @@
1
- import{m as f,h as e,n as c,A as k}from"./index-ZRlHMeHE.js";const b=f((t,n)=>({tasks:[],currentTask:null,loading:!1,error:null,nextCursor:null,_fetchTasksAbort:null,fetchTasks:async a=>{const s=n()._fetchTasksAbort;s&&s.abort();const o=new AbortController;t({loading:!0,error:null,_fetchTasksAbort:o});try{const r={};a!=null&&a.status&&(r.status=a.status),a!=null&&a.projectKey&&(r.projectKey=a.projectKey),a!=null&&a.developerId&&(r.developerId=a.developerId),a!=null&&a.cursor&&(r.cursor=a.cursor),a!=null&&a.limit&&(r.limit=String(a.limit));const l=await e.get("web/tasks",{searchParams:r,signal:o.signal}).json();a!=null&&a.cursor?t(i=>({tasks:[...i.tasks,...l.data],nextCursor:l.nextCursor??null,_fetchTasksAbort:null})):t({tasks:l.data,nextCursor:l.nextCursor??null,_fetchTasksAbort:null})}catch(r){if(r instanceof DOMException&&r.name==="AbortError")return;t({error:r instanceof Error?r.message:"Failed to fetch tasks"})}finally{t({loading:!1})}},fetchTask:async a=>{t({loading:!0,error:null});try{const s=await e.get(`web/tasks/${a}`).json();t({currentTask:s})}catch(s){t({error:s instanceof Error?s.message:"Failed to fetch task"})}finally{t({loading:!1})}},createTask:async a=>{t({error:null});try{const s=await e.post("web/tasks",{json:a}).json();return t(o=>({tasks:[s,...o.tasks]})),s}catch(s){throw t({error:s instanceof Error?s.message:"Failed to create task"}),s}},cancelTask:async a=>{t({error:null});try{await e.post(`web/tasks/${a}/cancel`);const{currentTask:s}=n();(s==null?void 0:s.id)===a&&await n().fetchTask(a)}catch(s){throw t({error:s instanceof Error?s.message:"Failed to cancel task"}),s}},reset:()=>{t({tasks:[],currentTask:null,loading:!1,error:null,nextCursor:null})}})),d=[c.COMPLETED,c.FAILED,c.CANCELLED],h=[{value:"feat",label:"feat"},{value:"fix",label:"fix"},{value:"refactor",label:"refactor"},{value:"docs",label:"docs"},{value:"chore",label:"chore"}],A=[{value:"",label:"default"},...Object.values(k).map(t=>({value:t,label:t}))];export{A,d as T,h as a,b as u};
1
+ import{m as f,h as e,n as c,A as k}from"./index--aF0i_eD.js";const b=f((t,n)=>({tasks:[],currentTask:null,loading:!1,error:null,nextCursor:null,_fetchTasksAbort:null,fetchTasks:async a=>{const s=n()._fetchTasksAbort;s&&s.abort();const o=new AbortController;t({loading:!0,error:null,_fetchTasksAbort:o});try{const r={};a!=null&&a.status&&(r.status=a.status),a!=null&&a.projectKey&&(r.projectKey=a.projectKey),a!=null&&a.developerId&&(r.developerId=a.developerId),a!=null&&a.cursor&&(r.cursor=a.cursor),a!=null&&a.limit&&(r.limit=String(a.limit));const l=await e.get("web/tasks",{searchParams:r,signal:o.signal}).json();a!=null&&a.cursor?t(i=>({tasks:[...i.tasks,...l.data],nextCursor:l.nextCursor??null,_fetchTasksAbort:null})):t({tasks:l.data,nextCursor:l.nextCursor??null,_fetchTasksAbort:null})}catch(r){if(r instanceof DOMException&&r.name==="AbortError")return;t({error:r instanceof Error?r.message:"Failed to fetch tasks"})}finally{t({loading:!1})}},fetchTask:async a=>{t({loading:!0,error:null});try{const s=await e.get(`web/tasks/${a}`).json();t({currentTask:s})}catch(s){t({error:s instanceof Error?s.message:"Failed to fetch task"})}finally{t({loading:!1})}},createTask:async a=>{t({error:null});try{const s=await e.post("web/tasks",{json:a}).json();return t(o=>({tasks:[s,...o.tasks]})),s}catch(s){throw t({error:s instanceof Error?s.message:"Failed to create task"}),s}},cancelTask:async a=>{t({error:null});try{await e.post(`web/tasks/${a}/cancel`);const{currentTask:s}=n();(s==null?void 0:s.id)===a&&await n().fetchTask(a)}catch(s){throw t({error:s instanceof Error?s.message:"Failed to cancel task"}),s}},reset:()=>{t({tasks:[],currentTask:null,loading:!1,error:null,nextCursor:null})}})),d=[c.COMPLETED,c.FAILED,c.CANCELLED],h=[{value:"feat",label:"feat"},{value:"fix",label:"fix"},{value:"refactor",label:"refactor"},{value:"docs",label:"docs"},{value:"chore",label:"chore"}],A=[{value:"",label:"default"},...Object.values(k).map(t=>({value:t,label:t}))];export{A,d as T,h as a,b as u};
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -0,0 +1 @@
1
+ import{r as e}from"./index--aF0i_eD.js";function p(s,l){const[i,d]=e.useState(null),[R,a]=e.useState(!0),[m,o]=e.useState(null),f=e.useRef(s);f.current=s;const r=e.useRef(0),t=e.useRef(!0),u=e.useCallback(async()=>{const c=++r.current;a(!0),o(null);try{const n=await f.current();t.current&&c===r.current&&d(n)}catch(n){if(t.current&&c===r.current){const E=n instanceof Error?n.message:"An unexpected error occurred";o(E)}}finally{t.current&&c===r.current&&a(!1)}},l);return e.useEffect(()=>{u()},[u]),e.useEffect(()=>()=>{t.current=!1,r.current+=1},[]),{data:i,loading:R,error:m,refetch:u}}export{p as u};
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c as e}from"./index-ZRlHMeHE.js";/**
1
+ import{c as e}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,4 +1,4 @@
1
- import{c}from"./index-ZRlHMeHE.js";/**
1
+ import{c}from"./index--aF0i_eD.js";/**
2
2
  * @license lucide-react v0.469.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
package/public/index.html CHANGED
@@ -28,7 +28,7 @@
28
28
  href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap"
29
29
  rel="stylesheet"
30
30
  />
31
- <script type="module" crossorigin src="/assets/index-ZRlHMeHE.js"></script>
31
+ <script type="module" crossorigin src="/assets/index--aF0i_eD.js"></script>
32
32
  <link rel="stylesheet" crossorigin href="/assets/index-D4RS0YML.css">
33
33
  <link rel="manifest" href="/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/registerSW.js"></script></head>
34
34
  <body>
package/public/sw.js CHANGED
@@ -1 +1 @@
1
- if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(i,n)=>{const r=s||("document"in self?document.currentScript.src:"")||location.href;if(e[r])return;let a={};const o=s=>l(s,r),u={module:{uri:r},exports:a,require:o};e[r]=Promise.all(i.map(s=>u[s]||o(s))).then(s=>(n(...s),a))}}define(["./workbox-6e9b121d"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"og-image.png",revision:"f1563b4bdc7d1a4ab0aef864b0c2294e"},{url:"index.html",revision:"c8ed1c4c2048dcf632d9e0243e0401ab"},{url:"icon-maskable-512x512.png",revision:"69ada030d99c4a087bc309c00d716654"},{url:"icon-maskable-192x192.png",revision:"bf88226fe789dcb35bf89a307d3ba1af"},{url:"icon-512x512.png",revision:"74e561c3eb152bbb9cdcb333b5f1f3be"},{url:"icon-192x192.png",revision:"0bc2b74efb274c01d9eb50f717f4b7cf"},{url:"favicon.svg",revision:"e91ea32c7308cc2267ae15a5974a27f8"},{url:"apple-touch-icon-180x180.png",revision:"34c1b155ebc55bee221777f86f4612d8"},{url:"apple-touch-icon-152x152.png",revision:"8cc7ef3bc3aa19c3d8a29a58646d0636"},{url:"apple-touch-icon-120x120.png",revision:"7057fb6fb60df3fcf3cd49883db13be9"},{url:"assets/workflow-B_rJbQD0.js",revision:null},{url:"assets/wifi-DySsTxzQ.js",revision:null},{url:"assets/users-CL1uwEG8.js",revision:null},{url:"assets/useFetch-DP7sZvMV.js",revision:null},{url:"assets/trash-2-BzLabGqv.js",revision:null},{url:"assets/task-constants-DI8wywYm.js",revision:null},{url:"assets/status-colors-COXH3iq8.js",revision:null},{url:"assets/settings-gsHzEeFU.js",revision:null},{url:"assets/scroll-text-ESBd3O11.js",revision:null},{url:"assets/rotate-ccw-pjymz2hv.js",revision:null},{url:"assets/plus-CwyZHjTN.js",revision:null},{url:"assets/pencil-BQGvf5zx.js",revision:null},{url:"assets/password-CHk45-jw.js",revision:null},{url:"assets/loader-circle-D_ZUfXzL.js",revision:null},{url:"assets/key-Y6HNahnR.js",revision:null},{url:"assets/index-ZRlHMeHE.js",revision:null},{url:"assets/index-D4RS0YML.css",revision:null},{url:"assets/git-fork-D5pdmhYe.js",revision:null},{url:"assets/external-link-DiDABF9Z.js",revision:null},{url:"assets/download-CJoiZNbu.js",revision:null},{url:"assets/date-BdNtiQTP.js",revision:null},{url:"assets/copy-BQrGTOtp.js",revision:null},{url:"assets/chevron-right-Blb2ic3C.js",revision:null},{url:"assets/bot-D5131CZG.js",revision:null},{url:"assets/arrow-right-Dt6VsmRV.js",revision:null},{url:"assets/arrow-left-BciAJc0C.js",revision:null},{url:"assets/WorkerSetupPage-BmLXPF17.js",revision:null},{url:"assets/WorkerSetupGuidePage-CEa1vP2x.js",revision:null},{url:"assets/WorkerOperationsPage-BpMTU70w.js",revision:null},{url:"assets/WorkerListPage-DJeXxet0.js",revision:null},{url:"assets/WorkerDetailPage-B4DsdOid.js",revision:null},{url:"assets/TotpSetupPage-BdxxnDRK.js",revision:null},{url:"assets/Tooltip-qAKe-yIh.js",revision:null},{url:"assets/TokenManage-Bg_HNwyq.js",revision:null},{url:"assets/TerminalHomePage-XEpXnk5-.js",revision:null},{url:"assets/TaskStatusBadge-VazopB5x.js",revision:null},{url:"assets/TaskListPage-C62bb8tH.js",revision:null},{url:"assets/TaskDetailPage-DYa32Te0.js",revision:null},{url:"assets/SkillPage-D_aGoLqf.js",revision:null},{url:"assets/Skeleton-Cv9gz7j0.js",revision:null},{url:"assets/SettingsPage-sL2AXVX4.js",revision:null},{url:"assets/Select-BBIpQajq.js",revision:null},{url:"assets/RemoveMemberConfirmDialog-Dnh361N9.js",revision:null},{url:"assets/QuickAuth-ChsJqpOa.js",revision:null},{url:"assets/PtyTerminal-ag46DP_J.js",revision:null},{url:"assets/PtyTerminal-Beg8tuEN.css",revision:null},{url:"assets/ProjectListPage-D5ClNT8G.js",revision:null},{url:"assets/ProjectDetailPage-BkhaWw5v.js",revision:null},{url:"assets/ProfilePage-NcDGS_gW.js",revision:null},{url:"assets/PipelineEditorPage-LGqZzLtA.js",revision:null},{url:"assets/PipelineConfigPage-BbBXH-Zh.js",revision:null},{url:"assets/PermissionsPage-DyEufFle.js",revision:null},{url:"assets/OnboardingGuide-DfO6T1ZU.js",revision:null},{url:"assets/NotFoundPage-DOceAhy8.js",revision:null},{url:"assets/MetricBar-CsEsq05l.js",revision:null},{url:"assets/LoginPage-CAyaPasn.js",revision:null},{url:"assets/LocalDevelopmentPage-Dh2NsOS-.js",revision:null},{url:"assets/LandingPage-CmJKs5HF.js",revision:null},{url:"assets/InstallationPage-UVSiZ9Z8.js",revision:null},{url:"assets/InfoRow-Fs80rj1k.js",revision:null},{url:"assets/HomePage-BAxV91I0.js",revision:null},{url:"assets/EnvVariablesPage-DIverlvl.js",revision:null},{url:"assets/EmptyState-DK5XEtXd.js",revision:null},{url:"assets/EditProjectPage-CuF1pvrG.js",revision:null},{url:"assets/DocsPrimitives-J-B5f6VK.js",revision:null},{url:"assets/DocsLayout-CsvmIbLT.js",revision:null},{url:"assets/DocsIndexPage-DZ1OoINZ.js",revision:null},{url:"assets/DeveloperSetupPage-Ch6bwf8z.js",revision:null},{url:"assets/DeveloperManage-Bgj1rV1M.js",revision:null},{url:"assets/DevWorkflowPage-CuX_Irfd.js",revision:null},{url:"assets/DeploymentPage-6U8mjtC5.js",revision:null},{url:"assets/CliReferencePage-BHDYPPif.js",revision:null},{url:"assets/ChangelogPage-DZWbGqgz.js",revision:null},{url:"assets/BotSetupPage-BRQMxFi1.js",revision:null},{url:"assets/BotManage-CXgA77Yj.js",revision:null},{url:"assets/BotIntegrationPage-C8osvRni.js",revision:null},{url:"assets/BindPlatformPage-C8gVZh1l.js",revision:null},{url:"assets/AuditLogPage-CzBbA79C.js",revision:null},{url:"assets/ArchitecturePage-B6q1zUYo.js",revision:null},{url:"assets/ApiReferencePage-DgMneAgC.js",revision:null},{url:"assets/AgentCliPage-DaiaERBx.js",revision:null},{url:"assets/AdminPage-C_wy-It6.js",revision:null},{url:"assets/AccessTokensPage-DO5nLn2j.js",revision:null},{url:"apple-touch-icon-180x180.png",revision:"34c1b155ebc55bee221777f86f4612d8"},{url:"favicon.svg",revision:"e91ea32c7308cc2267ae15a5974a27f8"},{url:"icon-192x192.png",revision:"0bc2b74efb274c01d9eb50f717f4b7cf"},{url:"icon-512x512.png",revision:"74e561c3eb152bbb9cdcb333b5f1f3be"},{url:"icon-maskable-192x192.png",revision:"bf88226fe789dcb35bf89a307d3ba1af"},{url:"icon-maskable-512x512.png",revision:"69ada030d99c4a087bc309c00d716654"},{url:"manifest.webmanifest",revision:"fefa2ba09d815fe1773d1fdaaf97d9e5"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("/index.html"))),s.registerRoute(/^https:\/\/fonts\.googleapis\.com/,new s.CacheFirst({cacheName:"google-fonts-stylesheets",plugins:[]}),"GET"),s.registerRoute(/^https:\/\/fonts\.gstatic\.com/,new s.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new s.ExpirationPlugin({maxEntries:10,maxAgeSeconds:31536e3})]}),"GET")});
1
+ if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(i,n)=>{const r=s||("document"in self?document.currentScript.src:"")||location.href;if(e[r])return;let a={};const o=s=>l(s,r),u={module:{uri:r},exports:a,require:o};e[r]=Promise.all(i.map(s=>u[s]||o(s))).then(s=>(n(...s),a))}}define(["./workbox-6e9b121d"],function(s){"use strict";self.skipWaiting(),s.clientsClaim(),s.precacheAndRoute([{url:"registerSW.js",revision:"1872c500de691dce40960bb85481de07"},{url:"og-image.png",revision:"f1563b4bdc7d1a4ab0aef864b0c2294e"},{url:"index.html",revision:"5b4f528e9d476f9db6368a7430b5c83a"},{url:"icon-maskable-512x512.png",revision:"69ada030d99c4a087bc309c00d716654"},{url:"icon-maskable-192x192.png",revision:"bf88226fe789dcb35bf89a307d3ba1af"},{url:"icon-512x512.png",revision:"74e561c3eb152bbb9cdcb333b5f1f3be"},{url:"icon-192x192.png",revision:"0bc2b74efb274c01d9eb50f717f4b7cf"},{url:"favicon.svg",revision:"e91ea32c7308cc2267ae15a5974a27f8"},{url:"apple-touch-icon-180x180.png",revision:"34c1b155ebc55bee221777f86f4612d8"},{url:"apple-touch-icon-152x152.png",revision:"8cc7ef3bc3aa19c3d8a29a58646d0636"},{url:"apple-touch-icon-120x120.png",revision:"7057fb6fb60df3fcf3cd49883db13be9"},{url:"assets/workflow-D_LvNj84.js",revision:null},{url:"assets/wifi-BImD06w3.js",revision:null},{url:"assets/users-BCOMx1T4.js",revision:null},{url:"assets/useFetch-DV0Yynml.js",revision:null},{url:"assets/trash-2-BP1wsKgX.js",revision:null},{url:"assets/task-constants-CrRk_tKl.js",revision:null},{url:"assets/status-colors-BvOn_eJV.js",revision:null},{url:"assets/settings-1KadpSnN.js",revision:null},{url:"assets/scroll-text-D92ZPPUM.js",revision:null},{url:"assets/rotate-ccw-DHN83mBA.js",revision:null},{url:"assets/plus-Cjp-i5dd.js",revision:null},{url:"assets/pencil-CMqis0WK.js",revision:null},{url:"assets/password-CHk45-jw.js",revision:null},{url:"assets/loader-circle-Cg-6kEdk.js",revision:null},{url:"assets/key-CKbQXsMY.js",revision:null},{url:"assets/index-D4RS0YML.css",revision:null},{url:"assets/index--aF0i_eD.js",revision:null},{url:"assets/git-fork-De8OBCff.js",revision:null},{url:"assets/external-link-DPEKiHIB.js",revision:null},{url:"assets/download-CL0jNZsV.js",revision:null},{url:"assets/date-BdNtiQTP.js",revision:null},{url:"assets/copy-CEwTDJC1.js",revision:null},{url:"assets/chevron-right-DVHQ1sMw.js",revision:null},{url:"assets/bot-CA2ly-rB.js",revision:null},{url:"assets/arrow-right-B-qnAssQ.js",revision:null},{url:"assets/arrow-left-CZDJrF_X.js",revision:null},{url:"assets/WorkerSetupPage-mT-sH4X3.js",revision:null},{url:"assets/WorkerSetupGuidePage-n1lf1f0A.js",revision:null},{url:"assets/WorkerOperationsPage-DG6ITLFW.js",revision:null},{url:"assets/WorkerListPage-DIOXnq74.js",revision:null},{url:"assets/WorkerDetailPage-dTGUel7V.js",revision:null},{url:"assets/TotpSetupPage-BqlbNq86.js",revision:null},{url:"assets/Tooltip-_O6F694q.js",revision:null},{url:"assets/TokenManage-DRZBRNmx.js",revision:null},{url:"assets/TerminalHomePage-BzRF9ncA.js",revision:null},{url:"assets/TaskStatusBadge-4f3JZe9b.js",revision:null},{url:"assets/TaskListPage-BpfNmztM.js",revision:null},{url:"assets/TaskDetailPage-BnSSPgc1.js",revision:null},{url:"assets/SkillPage-axNw0Nvj.js",revision:null},{url:"assets/Skeleton-fB1MkAg8.js",revision:null},{url:"assets/SettingsPage-DfNMy10j.js",revision:null},{url:"assets/Select-B6xa4zWl.js",revision:null},{url:"assets/RemoveMemberConfirmDialog-BpaRyjKT.js",revision:null},{url:"assets/QuickAuth-lXUPdJd0.js",revision:null},{url:"assets/PtyTerminal-BiGCH_od.js",revision:null},{url:"assets/PtyTerminal-Beg8tuEN.css",revision:null},{url:"assets/ProjectListPage-CoW3bncg.js",revision:null},{url:"assets/ProjectDetailPage-_p8yyCp9.js",revision:null},{url:"assets/ProfilePage-DGjfFkuJ.js",revision:null},{url:"assets/PipelineEditorPage-DwiLS1Qo.js",revision:null},{url:"assets/PipelineConfigPage-Bg5pyyh5.js",revision:null},{url:"assets/PermissionsPage-i-csvf_y.js",revision:null},{url:"assets/OnboardingGuide-CIO4T0dC.js",revision:null},{url:"assets/NotFoundPage-BMV3gUuY.js",revision:null},{url:"assets/MetricBar-Dw-gKq-A.js",revision:null},{url:"assets/LoginPage-Dt_4iOEb.js",revision:null},{url:"assets/LocalDevelopmentPage-CS_x4bw1.js",revision:null},{url:"assets/LandingPage-DkTpcPF7.js",revision:null},{url:"assets/InstallationPage-CZrNHQzK.js",revision:null},{url:"assets/InfoRow-CuY9Kd8Z.js",revision:null},{url:"assets/HomePage-CHy8dWn6.js",revision:null},{url:"assets/EnvVariablesPage-Bn54o5EI.js",revision:null},{url:"assets/EmptyState-CB-j6-lX.js",revision:null},{url:"assets/EditProjectPage-BFnyOm8a.js",revision:null},{url:"assets/DocsPrimitives-Tt5F4b8u.js",revision:null},{url:"assets/DocsLayout-ZSlTD632.js",revision:null},{url:"assets/DocsIndexPage-2F69LGaQ.js",revision:null},{url:"assets/DeveloperSetupPage-DRKEi5en.js",revision:null},{url:"assets/DeveloperManage-D4JBZo8c.js",revision:null},{url:"assets/DevWorkflowPage-rW71jol_.js",revision:null},{url:"assets/DeploymentPage-BWX8QZx8.js",revision:null},{url:"assets/CliReferencePage-DiaqlXDX.js",revision:null},{url:"assets/ChangelogPage-3bfOSdqH.js",revision:null},{url:"assets/BotSetupPage-Brb0A9mt.js",revision:null},{url:"assets/BotManage-Baa9rkqE.js",revision:null},{url:"assets/BotIntegrationPage-CgtSxeY1.js",revision:null},{url:"assets/BindPlatformPage-Dhr5sUeg.js",revision:null},{url:"assets/AuditLogPage-D8YjXaeq.js",revision:null},{url:"assets/ArchitecturePage-Crd9NuvT.js",revision:null},{url:"assets/ApiReferencePage-DaRQ22DW.js",revision:null},{url:"assets/AgentCliPage-BwbVXApp.js",revision:null},{url:"assets/AdminPage-D-hMOsb5.js",revision:null},{url:"assets/AccessTokensPage-DLTN5nmE.js",revision:null},{url:"apple-touch-icon-180x180.png",revision:"34c1b155ebc55bee221777f86f4612d8"},{url:"favicon.svg",revision:"e91ea32c7308cc2267ae15a5974a27f8"},{url:"icon-192x192.png",revision:"0bc2b74efb274c01d9eb50f717f4b7cf"},{url:"icon-512x512.png",revision:"74e561c3eb152bbb9cdcb333b5f1f3be"},{url:"icon-maskable-192x192.png",revision:"bf88226fe789dcb35bf89a307d3ba1af"},{url:"icon-maskable-512x512.png",revision:"69ada030d99c4a087bc309c00d716654"},{url:"manifest.webmanifest",revision:"fefa2ba09d815fe1773d1fdaaf97d9e5"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("/index.html"))),s.registerRoute(/^https:\/\/fonts\.googleapis\.com/,new s.CacheFirst({cacheName:"google-fonts-stylesheets",plugins:[]}),"GET"),s.registerRoute(/^https:\/\/fonts\.gstatic\.com/,new s.CacheFirst({cacheName:"google-fonts-webfonts",plugins:[new s.ExpirationPlugin({maxEntries:10,maxAgeSeconds:31536e3})]}),"GET")});
@@ -1 +0,0 @@
1
- import{R as ne,f as G,a as O,j as e,l as V,n as b,u as le,i as ce,r as a,h as S,X as ie,k as de,q as xe,H as pe,t as U,s as me,v as W}from"./index-ZRlHMeHE.js";import{a as ue,A as he,u as ve}from"./task-constants-DI8wywYm.js";import{T as X}from"./TaskStatusBadge-VazopB5x.js";import{f as Z}from"./date-BdNtiQTP.js";import{T as be}from"./Tooltip-qAKe-yIh.js";import{G as ee}from"./git-fork-D5pdmhYe.js";import{S as w}from"./Select-BBIpQajq.js";import{C as fe}from"./copy-BQrGTOtp.js";import{E as Q}from"./EmptyState-DK5XEtXd.js";import{T as Y}from"./Skeleton-Cv9gz7j0.js";import{P as ye}from"./plus-CwyZHjTN.js";import"./status-colors-COXH3iq8.js";const ge=ne.memo(function({task:s}){const d=G(),{t:c}=O(),x=(l,r)=>c(`common.${l}`,{n:r});return e.jsxs("tr",{onClick:()=>d(`/tasks/${s.id}`),className:"cursor-pointer border-b border-[var(--border-row)] transition-colors hover:bg-[var(--bg-input)]",children:[e.jsxs("td",{className:"w-16 py-3 pr-4 font-mono text-xs font-medium text-[var(--text-secondary)] text-right tabular-nums",children:["#",s.id]}),e.jsx("td",{className:"py-3 pr-4 text-sm text-[var(--text-primary)]",children:e.jsx(be,{content:s.name??s.description,children:V(s)})}),e.jsx("td",{className:"py-3 pr-4",children:e.jsx(X,{status:s.status})}),e.jsx("td",{className:"py-3 pr-4 font-mono text-xs text-[var(--text-secondary)]",children:s.projectKey}),e.jsx("td",{className:"py-3 pr-4 font-mono text-xs text-[var(--text-secondary)]",children:s.developerName??s.creatorName??"-"}),e.jsx("td",{className:"py-3 pr-4 font-mono text-xs text-[var(--text-secondary)]",children:s.workerName??"—"}),e.jsx("td",{className:"py-3 font-mono text-xs text-[var(--text-muted)]",children:e.jsxs("span",{className:"flex items-center gap-2",children:[Z(s.createdAt,x),(s.status===b.COMPLETED||s.status===b.FAILED)&&e.jsx("button",{onClick:l=>{l.stopPropagation(),d(`/tasks/${s.id}?action=fork`)},className:"shrink-0 rounded-[4px] p-1 text-[var(--text-muted)] hover:text-[var(--accent)] hover:bg-[var(--bg-input)] transition-colors",title:c("tasks.fork_task"),children:e.jsx(ee,{className:"h-3 w-3"})})]})})]})});function je({isOpen:n,onClose:s,projects:d,projectsLoading:c,onSubmit:x,isSubmitting:l}){const{t:r}=O();le(o=>o.user);const g=ce(),[m,D]=a.useState(""),[u,F]=a.useState(""),[p,C]=a.useState("feat"),[h,j]=a.useState(""),[k,f]=a.useState(""),[y,_]=a.useState(""),[T,E]=a.useState(""),[K,q]=a.useState([]),[I,v]=a.useState("");a.useEffect(()=>{if(!n||(D(""),F(""),C("feat"),j(""),f(""),_(""),E(""),v(""),!g))return;const o=new AbortController;return S.get("admin/developers",{signal:o.signal}).json().then(q).catch(()=>{}),()=>o.abort()},[n,g]),a.useEffect(()=>{if(!n)return;function o(N){N.key==="Escape"&&s()}return document.addEventListener("keydown",o),()=>document.removeEventListener("keydown",o)},[n,s]);async function z(o){if(o.preventDefault(),v(""),!m||!u.trim()){v(r("tasks.project_and_description_required"));return}try{await x({projectKey:m,description:u.trim(),workerId:y||void 0,developerId:T?Number(T):void 0,taskType:p,branchSlug:k.trim()||void 0,agentType:h||void 0})}catch(N){const B=N instanceof Error?N.message:r("tasks.failed_to_create_task");v(B)}}return n?e.jsx("div",{className:"fixed inset-0 z-50 flex items-center justify-center p-4 font-mono",style:{backgroundColor:"var(--modal-backdrop, rgba(12,12,12,0.6))"},onClick:o=>{o.target===o.currentTarget&&s()},children:e.jsxs("div",{className:"w-full max-w-[480px] rounded-[4px] border border-[var(--border)] bg-[var(--bg-card)]",onClick:o=>o.stopPropagation(),children:[e.jsxs("div",{className:"flex items-center justify-between border-b border-[var(--border)] px-6 py-4",children:[e.jsxs("h2",{className:"text-sm text-[var(--text-primary)]",children:["// ",r("tasks.new_task")]}),e.jsx("button",{onClick:s,className:"text-[var(--text-muted)] transition-colors hover:text-[var(--text-primary)]",children:e.jsx(ie,{className:"h-4 w-4"})})]}),e.jsxs("form",{onSubmit:z,className:"px-6 py-5",children:[e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.project")}),e.jsx(w,{value:m,onChange:D,options:d.map(o=>({value:o.key,label:o.name})),placeholder:r(c?"common.loading":"tasks.select_project"),disabled:c})]}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.task_type")}),e.jsx(w,{value:p,onChange:C,options:ue})]}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.form_agent_type")}),e.jsx(w,{value:h,onChange:j,options:he})]}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.task_description")}),e.jsx("textarea",{value:u,onChange:o=>F(o.target.value),placeholder:r("tasks.describe_task_placeholder"),rows:4,className:"w-full resize-none rounded-[4px] border border-[var(--border)] bg-[var(--bg-input)] px-3 py-2.5 text-xs text-[var(--text-primary)] placeholder:text-[var(--text-muted)] outline-none focus:border-[var(--accent)]"})]}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.target_worker")}),e.jsx("input",{type:"text",value:y,onChange:o=>_(o.target.value),placeholder:r("tasks.any_able"),className:"w-full rounded-[4px] border border-[var(--border)] bg-[var(--bg-input)] px-3 py-2.5 text-xs text-[var(--text-primary)] placeholder:text-[var(--text-muted)] outline-none focus:border-[var(--accent)]"})]}),e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.branch_slug")}),e.jsx("input",{type:"text",value:k,onChange:o=>f(o.target.value),placeholder:r("tasks.branch_slug_placeholder"),className:"w-full rounded-[4px] border border-[var(--border)] bg-[var(--bg-input)] px-3 py-2.5 text-xs text-[var(--text-primary)] placeholder:text-[var(--text-muted)] outline-none focus:border-[var(--accent)]"})]}),g&&e.jsxs("div",{className:"flex flex-col gap-1.5",children:[e.jsx("label",{className:"text-xs text-[var(--text-muted)]",children:r("tasks.assign_developer")}),e.jsx(w,{value:T,onChange:E,options:K.map(o=>({value:String(o.id),label:o.name})),placeholder:r("tasks.select_developer")})]}),I&&e.jsx("div",{className:"rounded-[4px] bg-[#2a1515] border border-[var(--destructive)]/30 px-3 py-2 text-xs text-[var(--destructive)]",children:I})]}),e.jsxs("div",{className:"mt-6 flex items-center justify-end gap-3",children:[e.jsx("button",{type:"button",onClick:s,className:"rounded-[4px] border border-[var(--border)] bg-transparent px-4 py-2 text-xs text-[var(--text-secondary)] transition-colors hover:text-[var(--text-primary)]",children:r("common.cancel")}),e.jsx("button",{type:"submit",disabled:l||!m||!u.trim(),className:"rounded-[4px] bg-[var(--accent)] px-4 py-2 text-xs text-black transition-opacity hover:opacity-90 disabled:opacity-40",children:r(l?"common.creating":"tasks.create_task")})]})]})]})}):null}function ke({isOpen:n,onClose:s,onForceCreate:d,onViewExisting:c,similarTask:x,isLoading:l}){const{t:r}=O();return!x||!n?null:e.jsx("div",{onClick:s,style:{position:"fixed",inset:0,zIndex:50,display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:"var(--modal-backdrop, rgba(12,12,12,0.6))"},children:e.jsxs("div",{onClick:g=>g.stopPropagation(),style:{width:"100%",maxWidth:"480px",backgroundColor:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:"4px",padding:"1.5rem",fontFamily:"'JetBrains Mono', monospace"},children:[e.jsxs("div",{style:{marginBottom:"1.25rem"},children:[e.jsxs("div",{style:{color:"var(--accent)",fontSize:"0.875rem",fontWeight:600,display:"flex",alignItems:"center",gap:"0.5rem"},children:[e.jsx(fe,{style:{width:"1rem",height:"1rem"}}),r("tasks.dedup_title")]}),e.jsx("div",{style:{color:"var(--text-muted)",fontSize:"0.7rem",marginTop:"0.25rem"},children:r("tasks.dedup_description")})]}),e.jsxs("div",{style:{marginBottom:"1.25rem",padding:"0.75rem",border:"1px solid var(--border)",borderRadius:"4px",backgroundColor:"var(--bg-primary)"},children:[e.jsxs("div",{style:{color:"var(--text-muted)",fontSize:"0.65rem",fontFamily:"'JetBrains Mono', monospace"},children:["#",x.id," · ",x.status]}),e.jsx("div",{style:{color:"var(--text-primary)",fontSize:"0.75rem",marginTop:"0.375rem",lineHeight:"1.5"},children:x.description})]}),e.jsxs("div",{style:{display:"flex",gap:"0.75rem"},children:[e.jsx("button",{type:"button",onClick:s,disabled:l,className:"text-[var(--text-muted)] hover:text-[var(--text-primary)] hover:border-[var(--text-muted)]",style:{flex:1,padding:"0.5rem",backgroundColor:"transparent",border:"1px solid var(--border)",borderRadius:"4px",fontSize:"0.75rem",fontFamily:"'JetBrains Mono', monospace",cursor:l?"not-allowed":"pointer",opacity:l?.7:1,transition:"color 0.15s, border-color 0.15s"},children:r("common.cancel")}),e.jsx("button",{type:"button",onClick:()=>c(x.id),style:{flex:1,padding:"0.5rem",backgroundColor:"transparent",color:"var(--text-muted)",border:"1px solid var(--border)",borderRadius:"4px",fontSize:"0.75rem",fontFamily:"'JetBrains Mono', monospace",cursor:"pointer"},children:r("tasks.view_existing")}),e.jsx("button",{type:"button",onClick:d,disabled:l,style:{flex:1,padding:"0.5rem",backgroundColor:"var(--warning)",color:"#0C0C0C",border:"none",borderRadius:"4px",fontSize:"0.75rem",fontWeight:600,fontFamily:"'JetBrains Mono', monospace",cursor:l?"not-allowed":"pointer",opacity:l?.7:1},children:r(l?"common.creating":"tasks.dedup_create_anyway")})]})]})})}function Ne({task:n}){const s=G(),d=n.status===b.COMPLETED||n.status===b.FAILED;return e.jsxs("div",{onClick:()=>s(`/tasks/${n.id}`),className:"cursor-pointer rounded-[4px] border border-[var(--border)] bg-[var(--bg-card)] p-3 transition-colors active:bg-[var(--bg-input)]",children:[e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsxs("span",{className:"text-[11px] text-[var(--text-primary)] leading-tight line-clamp-2",title:`#${n.id} ${n.name??n.description}`,children:["#",n.id," ",V(n)]}),e.jsxs("span",{className:"flex items-center gap-1.5 shrink-0",children:[d&&e.jsx("button",{onClick:c=>{c.stopPropagation(),s(`/tasks/${n.id}?action=fork`)},className:"rounded-[4px] p-1 text-[var(--text-muted)] hover:text-[var(--accent)] transition-colors",children:e.jsx(ee,{className:"h-3 w-3"})}),e.jsx(X,{status:n.status})]})]}),e.jsxs("div",{className:"mt-1.5 flex items-center gap-2 text-[11px] text-[var(--text-muted)]",children:[e.jsx("span",{children:Z(n.createdAt)}),e.jsx("span",{children:"·"}),e.jsx("span",{children:n.projectKey}),n.workerName&&e.jsxs(e.Fragment,{children:[e.jsx("span",{children:"·"}),e.jsx("span",{children:n.workerName})]})]})]})}const Se=[{key:"all",labelKey:"tasks.tab_all"},{key:b.RUNNING,labelKey:"tasks.tab_running"},{key:b.QUEUED,labelKey:"tasks.tab_queued"},{key:b.COMPLETED,labelKey:"tasks.tab_completed"},{key:b.FAILED,labelKey:"tasks.tab_failed"},{key:b.CANCELLED,labelKey:"tasks.tab_cancelled"}],L=20;function Re(){const n=G(),{t:s}=O(),{tasks:d,loading:c,fetchTasks:x}=ve(),l=de(t=>t.taskSeq),[r,g]=a.useState("all"),[m,D]=a.useState(""),[u,F]=a.useState(""),[p,C]=a.useState(""),[h,j]=a.useState(1),[k,f]=a.useState(!1);xe(a.useMemo(()=>e.jsxs("button",{onClick:()=>f(!0),className:"flex items-center gap-1.5 rounded-[4px] bg-[var(--accent)] px-3 py-1.5 text-xs font-mono text-black transition-opacity hover:opacity-90",children:[e.jsx(ye,{className:"h-3.5 w-3.5"}),s("tasks.new_task")]}),[s]));const[y,_]=a.useState([]),[T,E]=a.useState(!1),[K,q]=a.useState([]),[I,v]=a.useState(!1),[z,o]=a.useState(!1),[N,B]=a.useState(null),[P,te]=a.useState(null);a.useEffect(()=>{const t={limit:String(L)};r!=="all"&&(t.status=r),m&&(t.projectKey=m),u&&(t.developerId=u),x(t)},[r,m,u,x,l]),a.useEffect(()=>{j(1)},[p,r,m,u]),a.useEffect(()=>{S.get("web/projects").json().then(t=>_(t)).catch(()=>{}),S.get("web/projects/-/developers").json().then(t=>q(t)).catch(()=>{})},[]),a.useEffect(()=>{!k||y.length>0||(E(!0),S.get("web/projects").json().then(t=>_(t)).catch(()=>{}).finally(()=>E(!1)))},[k,y.length]);const se=a.useCallback(async t=>{v(!0);try{const i=await S.post("web/tasks",{json:{projectKey:t.projectKey,description:t.description,workerId:t.workerId,developerId:t.developerId,taskType:t.taskType,branchSlug:t.branchSlug,agentType:t.agentType}}).json();f(!1),n(`/tasks/${i.task.id}`)}catch(i){if(i instanceof pe&&i.response.status===409){try{const A=await i.response.json();if(A.confirmRequired){B({id:A.confirmRequired.taskId,description:A.confirmRequired.message,status:"active"}),te(t),f(!1),o(!0);return}}catch{}U.error(s("tasks.similar_task_exists"))}else{const A=i instanceof Error?i.message:String(i);U.error(A)}}finally{v(!1)}},[n]),re=a.useCallback(async()=>{if(P){v(!0);try{const t=await S.post("web/tasks",{json:{projectKey:P.projectKey,description:P.description,workerId:P.workerId,force:!0}}).json();o(!1),n(`/tasks/${t.task.id}`)}finally{v(!1)}}},[P,n]),M=a.useMemo(()=>{if(!p.trim())return d;const t=p.toLowerCase();return d.filter(i=>(i.name??"").toLowerCase().includes(t)||i.description.toLowerCase().includes(t)||String(i.id).includes(p))},[d,p]),R=Math.max(1,Math.ceil(M.length/L)),$=M.slice((h-1)*L,h*L),ae=a.useMemo(()=>[{value:"",label:s("tasks.filter_project")},...y.map(t=>({value:t.key,label:t.name}))],[y,s]),oe=a.useMemo(()=>[{value:"",label:s("tasks.filter_developer")},...K.map(t=>({value:String(t.id),label:t.name}))],[K,s]),J=s(p?"tasks.try_adjusting_search":"tasks.create_first_task"),H=p?void 0:e.jsx("button",{onClick:()=>f(!0),className:"rounded-[4px] bg-[var(--accent)] px-5 py-2 text-[11px] font-bold text-black",children:s("tasks.create_task")});return e.jsxs("div",{className:"mx-auto max-w-6xl px-2 py-4 md:px-4 md:py-6 font-mono",children:[e.jsxs("div",{className:"mb-4 flex flex-col gap-3 md:gap-4 md:flex-row md:items-center",children:[e.jsx("div",{className:"flex items-center gap-1 overflow-x-auto pb-1 md:pb-0 no-scrollbar pr-4 md:pr-0",children:Se.map(t=>e.jsx("button",{onClick:()=>g(t.key),className:`shrink-0 rounded-[4px] px-3 py-2 h-10 md:h-8 text-xs transition-colors ${r===t.key?"text-[var(--accent)] bg-[var(--bg-input)]":"text-[var(--text-muted)] bg-[var(--bg-card)] hover:text-[var(--text-secondary)]"}`,children:s(t.labelKey)},t.key))}),e.jsxs("div",{className:"flex flex-col gap-2 md:ml-auto md:flex-row md:items-center",children:[e.jsxs("div",{className:"relative md:w-52",children:[e.jsx(me,{className:"absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-[var(--text-muted)]"}),e.jsx("input",{type:"text",placeholder:s("tasks.search_tasks"),value:p,onChange:t=>C(t.target.value),className:"w-full rounded-[4px] border border-[var(--border)] bg-[var(--bg-input)] py-1.5 pl-8 pr-3 text-xs text-[var(--text-primary)] placeholder:text-[var(--text-muted)] outline-none focus:border-[var(--accent)]"}),p&&e.jsx("button",{onClick:()=>C(""),className:"absolute right-2 top-1/2 -translate-y-1/2 text-xs text-[var(--text-muted)] hover:text-[var(--text-secondary)]",children:"x"})]}),e.jsx(w,{value:m,onChange:D,options:ae,className:"md:w-40"}),e.jsx(w,{value:u,onChange:F,options:oe,className:"md:w-40"})]})]}),e.jsx("div",{className:"hidden md:block rounded-[4px] border border-[var(--border)] bg-[var(--bg-card)]",children:e.jsxs("table",{className:"w-full text-left",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b border-[var(--border)] text-[11px] font-medium text-[#525252]",children:[e.jsx("th",{className:"w-16 px-4 py-2.5 text-right",children:s("tasks.id")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.description_col")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.status_col")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.project_col")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.assignee")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.worker")}),e.jsx("th",{className:"px-4 py-2.5",children:s("tasks.time")})]})}),e.jsxs("tbody",{children:[c&&$.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:7,className:"p-4",children:e.jsx(Y,{rows:5})})}),!c&&M.length===0&&e.jsx("tr",{children:e.jsx("td",{colSpan:7,className:"p-4",children:e.jsx(Q,{icon:W,title:s("tasks.no_tasks_found"),description:J,action:H})})}),$.map(t=>e.jsx(ge,{task:t},t.id))]})]})}),e.jsxs("div",{className:"flex flex-col gap-2 md:hidden",children:[c&&$.length===0&&e.jsx("div",{className:"p-4",children:e.jsx(Y,{rows:5})}),!c&&M.length===0&&e.jsx(Q,{icon:W,title:s("tasks.no_tasks_found"),description:J,action:H}),$.map(t=>e.jsx(Ne,{task:t},t.id))]}),R>1&&e.jsxs("div",{className:"mt-6 flex items-center justify-center gap-1",children:[e.jsx("button",{onClick:()=>j(Math.max(1,h-1)),disabled:h===1,className:"rounded-[4px] px-2 py-1 text-xs text-[var(--text-muted)] hover:text-[var(--text-primary)] disabled:opacity-30 min-w-[44px] min-h-[44px] flex items-center justify-center",children:s("tasks.prev")}),Array.from({length:R},(t,i)=>i+1).map(t=>e.jsx("button",{onClick:()=>j(t),className:`rounded-[4px] px-2.5 py-1 text-xs transition-colors min-w-[44px] min-h-[44px] flex items-center justify-center ${h===t?"text-[var(--accent)] bg-[var(--bg-input)]":"text-[var(--text-muted)] hover:text-[var(--text-secondary)]"}`,children:t},t)),e.jsx("button",{onClick:()=>j(Math.min(R,h+1)),disabled:h===R,className:"rounded-[4px] px-2 py-1 text-xs text-[var(--text-muted)] hover:text-[var(--text-primary)] disabled:opacity-30 min-w-[44px] min-h-[44px] flex items-center justify-center",children:s("common.next")})]}),e.jsx(je,{isOpen:k,onClose:()=>f(!1),projects:y,projectsLoading:T,onSubmit:se,isSubmitting:I}),e.jsx(ke,{isOpen:z,onClose:()=>o(!1),onForceCreate:re,onViewExisting:t=>{o(!1),n(`/tasks/${t}`)},similarTask:N,isLoading:I})]})}export{Re as default};
@@ -1 +0,0 @@
1
- import{r as e}from"./index-ZRlHMeHE.js";function p(c,f){const[l,i]=e.useState(null),[d,u]=e.useState(!0),[R,a]=e.useState(null),o=e.useRef(c);o.current=c;const r=e.useRef(0),n=e.useCallback(async()=>{const s=++r.current;u(!0),a(null);try{const t=await o.current();s===r.current&&i(t)}catch(t){if(s===r.current){const g=t instanceof Error?t.message:"An unexpected error occurred";a(g)}}finally{s===r.current&&u(!1)}},f);return e.useEffect(()=>{n()},[n]),{data:l,loading:d,error:R,refetch:n}}export{p as u};